SVM과 퍼셉트론의 차이점


29

SVM과 퍼셉트론의 차이점과 약간 혼동됩니다. 여기에 나의 이해를 요약하려고 노력하고, 내가 잘못한 부분을 수정하고 내가 놓친 것을 채우십시오.

  1. 퍼셉트론은 분리 "거리"를 최적화하려고 시도하지 않습니다. 두 세트를 분리하는 초평면을 찾으면 좋습니다. 반면에 SVM은 "지원 벡터", 즉 가장 가까운 두 개의 샘플 지점 사이의 거리를 최대화하려고합니다.

  2. SVM은 일반적으로 "커널 기능"을 사용하여 샘플 포인트를 고차원 공간에 투영하여 선형으로 분리 할 수 ​​있도록하는 반면, 퍼셉트론에서는 샘플 포인트가 선형으로 분리 가능한 것으로 가정합니다.


답변:


18

나에게 맞는 소리. 사람들은 때때로 분류기와 함께 훈련 알고리즘을 지칭하기 위해 "Perceptron"이라는 단어를 사용합니다. 예를 들어 누군가 가이 질문 에 대한 답변으로 이것을 설명했습니다 . 또한 퍼셉트론과 함께 커널을 사용하는 것을 막을 방법이 없으며, 이는 종종 더 나은 분류기입니다. 커널 퍼셉트론을 구현하는 방법에 대한 일부 슬라이드 (pdf)는 여기 를 참조 하십시오 .

(커널) 퍼셉트론과 SVM의 주요 실제 차이점은 퍼셉트론을 온라인으로 학습 할 수 있다는 것입니다 (즉, 새로운 예제가 한 번에 하나씩 도착하면 가중치를 업데이트 할 수 있음). SVM을 온라인으로 학습 할 수 있는지에 대한 정보는 이 질문 을 참조하십시오 . 따라서 SVM이 일반적으로 더 나은 분류 기인 경우에도 퍼셉트론은 새로운 교육 데이터가 지속적으로 도착하는 상황에서 저렴하고 재 훈련하기 쉽기 때문에 여전히 유용 할 수 있습니다.


3
SVM은 온라인으로 교육 할 수 있습니다. 이중 솔루션에서 해당하는 원초를 얻을 수 있으며이 중 하나에서 확률 적으로 가중치를 업데이트합니다.
Firebug


4

SVM : 퍼셉트론

minw2+Ci=1n(1yi(wxi+w0))+
mini=1n(yi(wxi+w0))+

우리는 SVM이 L2 정규화 퍼셉트론과 거의 같은 목표를 가지고 있음을 알 수 있습니다.

목적이 다르기 때문에이 두 알고리즘에 대해 다른 최적화 체계가 있습니다. 와는 SVM을 최적화하기 위해 2 차 프로그래밍을 사용하는 것이 중요한 이유입니다.w2

perceptron이 온라인 업데이트를 허용하는 이유는 무엇입니까? 경첩 손실에 대한 경사 하강 업데이트 규칙이 표시되면 (힌지 손실은 SVM과 퍼셉트론 모두에서 사용됨)

wt=wt1+η1Ni=1NyixiI(yiwtxi0)

모든 머신 러닝 알고리즘은 손실 함수와 최적화 알고리즘의 조합으로 볼 수 있습니다.

퍼셉트론은 힌지 손실 (손실 기능) + 확률 적 경사 하강 (최적화) 이상입니다.

wt=wt1+yy+1xt+1I(yt+1wtxt+10)

그리고 SVM은 힌지 손실 + l2 정규화 (손실 + 정규화) + 2 차 프로그래밍 또는 SMO (최적화)와 같은 다른 환상적인 최적화 알고리즘으로 볼 수 있습니다.


-1

퍼셉트론은 SVM의 일반화로 SVM은 최적의 안정성을 가진 퍼셉트론입니다. 따라서 퍼셉트론이 분리 거리를 최적화하려고하지 않는다고 말할 때 정확합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.