서포트 벡터 머신에 비해 인공 신경망의 장점은 무엇입니까? [닫은]


381

ANN (Artificial Neural Networks) 및 SVM (Support Vector Machines)은 감독되는 기계 학습 및 분류를위한 두 가지 인기있는 전략입니다. 특정 프로젝트에 어떤 방법이 더 좋은지 종종 명확하지 않으며, 그 대답이 항상 "의존"한다고 확신합니다. 종종 베이지안 분류와 함께이 둘의 조합이 사용됩니다.

Stackoverflow에 대한 이러한 질문은 ANN과 SVM에 대해 이미 요청되었습니다.

ANN 및 SVM 분류

분류 질문에서 ANN, SVM 및 KNN의 차이점

텍스트 처리를 위해 Vector Machine 또는 인공 신경망을 지원합니까?

이 질문에서 ANN (특히 멀티 레이어 퍼셉트론)의 어떤 측면이 SVM을 사용하는 것이 바람직 할 수 있는지 구체적 으로 알고 싶습니다 . 내가 묻는 이유는 반대의 질문 에 대답하기가 쉽기 때문입니다 . Support Vector Machine은 ANN의 두 가지 주요 약점을 피하기 때문에 ANN보다 우월합니다.

(1) ANN은 종종 글로벌 최소보다 지역 최소에 수렴합니다 . 즉, 기본적으로 때때로 "큰 그림을 놓치거나"(또는 나무의 숲이 없음)

(2) 훈련이 너무 오래 걸리면 ANN이 종종 과적 합 합니다. 즉, 주어진 패턴에 대해 ANN이 노이즈를 패턴의 일부로 고려하기 시작할 수 있습니다.

SVM은이 두 가지 문제 중 하나를 겪지 않습니다. 그러나 SVM이 ANN을 완전히 대체한다는 것은 분명하지 않습니다. 그렇다면 ANN이 특정 상황에 적용 할 수있는 SVM에 비해 어떤 특별한 이점이 있습니까? ANN에 비해 SVM의 특정 이점을 나열했습니다 . 이제 ANN 장점 (있는 경우) 목록을보고 싶습니다.


61
불행히도 이것은 아마도 닫히거나 곧 옮겨 질 것이지만 나는 그 질문을 절대적으로 좋아합니다. 나는 이것에 대한 사려 깊은 답변을 보는 것보다 낫지 않습니다.
duffymo

10
나는이 질문에 대한 대부분의 대답이 추측에 근거하거나 근거에 근거한다고 생각한다. 왜냐하면이 기계의 힘에 대한 이론적 인 보장은 거의 없기 때문이다. 예를 들어 (정확히 기억한다면) n- 계층 피드 포워드 신경망이 2 계층 네트워크보다 강력한 지 알 수 없습니다. 그렇다면 동일한 모델의 약간의 변형 간의 관계를 이해하지 못하는 경우 원칙적으로 하나가 다른 것보다 낫다고 말할 수 있습니까?
JeremyKun

13
매우 건설적이지 않아 폐쇄되었습니다 ... Lol!
erogol

65
StackOverflow가 질문의 질과 답변을 높게 유지하려고 노력하는 것을 좋아합니다. 나는 StackOverflow가 메스 대신 도끼로 이것을 시행하는 것을 싫어한다. "HTML stuffz는 어떻게합니까?"와 다른 점이 있습니다. 다른 곳에서는 답을 찾기 어려운 도메인 관련 질문이 있습니다. 140 개의 공감대가있는 이유가 있지만 "비 건설적"으로 간주됩니다. 이와 같은 질문 은 건설 의 전형 입니다. 확실히 내가 매일 보는 많은 사람들보다 훨씬 더 많은 것들이 깔끔하게 Q & A 형식으로 떨어지지 만 그럼에도 불구하고 거의 모든 사람에게는 쓸모가 없습니다.
Chase Ries

20
이것은 분명히 건설적인 것입니다. 왜 닫혀 있는지 이해할 수 없습니다. 하나의 알고리즘을 사용하는 것이 대체 알고리즘을 사용하는 것보다 장점이있는 특정 상황을 요구합니다. 물어 보는 것이 합리적이지 않습니까?
Rab

답변:


137

귀하가 제공 한 예를 살펴보면 ANN은 다중 계층 퍼포 트론과 같은 다중 계층 피드 포워드 네트워크 (SFF)와 같은 다중 계층 피드 포워드 네트워크를 의미한다고 가정합니다 (SVM과 직접 경쟁하기 때문).

이러한 모델이 SVM에 비해 갖는 이점 중 하나는 크기가 고정되어 있다는 것입니다. 모델 은 파라 메트릭 모델이고 SVM은 비 파라 메트릭입니다. 즉, ANN에서는 크기가 h 인 숨겨진 레이어가 많이 있습니다 1 - h n기능의 수와 바이어스 매개 변수 및 모델을 구성하는 기능에 따라 다릅니다. 대조적으로, SVM (적어도 커널 화 된 것)은 훈련 세트에서 선택된 일련의 지원 벡터로 구성되며 각각에 대한 가중치가 있습니다. 최악의 경우, 지원 벡터의 수는 정확히 훈련 샘플의 수 (주로 작은 훈련 세트 또는 변질 된 경우에서 발생하지만)이며 일반적으로 모델 크기는 선형으로 스케일됩니다. 자연어 처리에서 수십만 개의 기능을 가진 수만 개의 지원 벡터를 가진 SVM 분류기는 들어 본 적이 없습니다.

또한 FF net의 온라인 교육 은 온라인 SVM 피팅에 비해 매우 간단하며 예측이 훨씬 빠릅니다.

편집 : 위의 모든 것은 커널 화 된 SVM의 일반적인 경우와 관련이 있습니다. 그들이 그 선형 SVM은 특별한 경우 입니다 파라 메트릭 및 확률 그라데이션 하강과 같은 간단한 알고리즘 온라인 학습을 할 수 있습니다.


12
이 백서에서 또 다른 이유를 찾을 수 있습니다 : yann.lecun.com/exdb/publis/pdf/bengio-lecun-07.pdf . 요컨대, 저자는 "심층 아키텍처"가 SVM과 같은 "얕은 아키텍처"보다 "지능적"동작 / 기능 등을보다 효율적으로 나타낼 수 있다고 말합니다.
alfa

1
따로, 딥 러닝은 MLP (고정 된 크기, 간단한 훈련)에 대해 여기에 주어진 "이점"을 다소 상실합니다. 그래도 이러한 이점이 가치가 있는지 확실하지 않습니다.
무하마드 알카로 우리

6
@ MuhammadAlkarouri : 딥 러닝은 매우 광범위한 기술이지만 익숙한 기술은 모델이 파라 메트릭 (고정 크기)이라는 이점을 유지합니다.
프레드 푸

두 가지 의견 : 온라인 교육 요점은 사실이지만 온라인 학습을 위해 특별히 설계된 SVM 유사 분류기의 변형이 있는데, MIRA (수동적 공격적 분류기의 일종)는 업데이트가 사소한 것입니다. 둘째, 많은 신경망이 커널 트릭을 통해 SVM으로 공식화 될 수 있음을 지적 할 가치가 있습니다.
벤 앨리슨

1
@FredFoo 또한 ANN은 지원 벡터 시스템 이이 문제를 일으키지 않는 로컬 최소 점에 갇힐 수 있습니다.
관광객

62

서포트 벡터 머신에 비해 인공 뉴럴 네트워크의 명백한 이점 중 하나는 인공 뉴럴 네트워크가 여러 개의 출력을 가질 수있는 반면, 서포트 벡터 머신은 하나만 가질 수 있다는 것입니다. 서포트 벡터 머신으로 n-ary 분류기를 작성하는 가장 직접적인 방법은 n 개의 서포트 벡터 머신을 작성하고 각각을 하나씩 학습하는 것입니다. 반면에 신경망을 갖춘 n-ary 분류기는 한 번에 훈련 할 수 있습니다. 또한, 신경망은 하나의 전체이기 때문에 더 의미가있는 반면, 서포트 벡터 머신은 격리 된 시스템입니다. 이것은 출력이 서로 관련되어있는 경우에 특히 유용합니다.

예를 들어, 손으로 쓴 숫자를 분류하는 것이 목표라면 10 개의 지원 벡터 머신이됩니다. 각 서포트 벡터 머신은 정확히 한 자리를 인식하고 다른 모든 머신을 인식하지 못합니다. 각 필기 숫자는 클래스보다 더 많은 정보를 보유 할 수 없기 때문에 인공 신경망으로이 문제를 해결하려고 시도하는 것은 의미가 없습니다.

그러나 목표는 마지막 식사 이후의 시간, 심박수 등과 같이 쉽게 측정되는 생리적 요인의 함수로 여러 호르몬에 대한 사람의 호르몬 균형을 모델링하는 것이라고 가정합니다. 이러한 요인은 모두 서로 관련되어 있으며 인공 신경 네트워크 회귀는 벡터 머신 회귀를 지원하는 것보다 더 의미가 있습니다.


18
실제로, 서포트 벡터 머신의 진정한 멀티 클래스 공식이 존재합니다 (Crammer & Singer 's 논문 참조). LibSVM에 이러한 구현이 포함되어 있다고 생각합니다.
프레드 푸

3
그러나 멀티 클래스 SVM을 교육하는 것은 그리 쉬운 일이 아니며 AVA 방식보다 OVA에서 성능이 더 좋아 보입니다.
crodriguezo 2016 년

3
"인공 신경망으로이 문제를 해결하려고 시도하는 것은 의미가 없습니다."신경망을 사용하여 필기 숫자의 분류를 해결할 수 있습니다. 나는 이것을 수업을위한 hw 과제로했다. 출력 레이어에는 모든 숫자의 확률이 포함됩니다. 확률이 가장 높은 클래스가 가설로 사용됩니다. 정확도는 94 %였습니다.
user3266824

당신은 n 개의 1 대 N-1 SVM 분류기 대 NN을 사용하여 n 개의 출력을 만드는 것을 의미합니다. 이런 식으로 SVM이 더 느린 것 같습니까?
mskw

글쎄, 그 인용문은 나이가 들지 않았다.
runDOSrun

46

한 가지 주목할 점은 두 가지는 실제로 매우 관련이 있다는 것입니다. 선형 SVM은 단일 계층 NN (즉, 퍼셉트론)과 동일하며 다중 계층 NN은 SVM으로 표현 될 수 있습니다. 자세한 내용은 여기 를 참조 하십시오 .


18

커널 SVM을 사용하려면 커널을 추측해야합니다. 그러나 ANN은 너비 (근사 정확도)와 높이 (근사 효율) ​​만 추측 할 수있는 범용 근 사기입니다. 최적화 문제를 올바르게 설계하면 과적 합하지 않습니다 (과적 합에 대한 참고 문헌 참조). 검색 공간이 정확하고 균일하게 검색되는 경우 교육 예제에 따라 다릅니다. 폭 및 깊이 발견은 정수 프로그래밍의 주제입니다.

함수 f (.)와 I = [0,1]에서 다시 범위 I = [0,1]으로 범위가 지정된 함수 f (.)와 바운딩 된 범용 지원 (예 : 시퀀스가 존재하는 속성

lim sup { |f(x) - U(x,a(k) ) | : x } =0

(x,y)에 분포 D를 사용하여 예제와 테스트 를 그 립니다 IxI.

처방 된 지원을 위해, 당신이하는 일은 최선을 찾는 것입니다.

sum {  ( y(l) - U(x(l),a) )^{2} | : 1<=l<=N } is minimal

a=aa랜덤 변수 인 이것을 보자 !

평균 사용 D and D^{N} of ( y - U(x,aa) )^{2}

aa오류를 최소화하도록 선택 하면 드문 값 집합에 완벽하게 맞는 이유를 설명하겠습니다 . 그러나 드물기 때문에 평균은 절대 0이 아닙니다. D에 대한 이산 근사값을 갖더라도 초를 최소화하려고합니다.지지 길이는 자유 롭다는 점을 명심하십시오.


14

여기서 누락 된 한 가지 대답 : 다층 퍼셉트론은 기능 간의 관계를 찾을 수 있습니다. 예를 들어 원시 이미지가 학습 알고리즘에 제공되고 이제 정교한 기능이 계산 될 때 컴퓨터 비전에 필요합니다. 기본적으로 중간 수준은 알려지지 않은 새로운 기능을 계산할 수 있습니다.


12

또한 SVM 시스템 을 레이블이 지정된 그래프 또는 문자열 세트와 같은 비 메트릭 공간 에 직접 적용 할 수 있다는 점도 고려해야합니다 . 실제로 커널의 긍정적 인 요구 사항이 충족되면 내부 커널 기능을 거의 모든 종류의 입력에 맞게 일반화 할 수 있습니다. 반면에 레이블이 지정된 그래프 세트에서 ANN을 사용할 수 있으려면 명시적인 임베딩 절차를 고려해야합니다.


6
내 생각에, 합리적인 커널을 구성하고 합리적인 메트릭 임베딩을 구성하는 것도 똑같이 문제가된다. 따라서 이것은 메트릭보다 다양한 커널이있을 수 있다는 의견 일뿐이지만 실제로는 구입하지는 않습니다. ohli.de/download/papers/Deza2009.pdf
JeremyKun
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.