Skip to content

Support Vector Machine

서포트 벡터 머신(support vector machine, SVM)은 지도 학습에서 사용되는 방법으로, 기본적이면서 굉장히 유명한 Classification model이다. 주어진 자료에 대해서 그 자료들을 분리하는 초평면 중에서, 자료들과 가장 거리가 먼 초평면 (Optimal hyperplane)을 찾는 방법이다.

이 기법은 비선형 분류에서도 커널 트릭을 사용하여 적용할 수 있다.

개요

SVM(Support Vector Machine)은 너저분한 패턴들의 분포들을 가장 잘 분류할 수 있는 기준선(평면)을 찾아내는 알고리즘이며, 이를 다차원 백터(패턴) 경우까지를 확장할 수 있도록 체계화 시킨 것이다. 복잡하게는 음성 인식에도 사용되기도 한다. 먼저 직관적인 이해를 돕기 위해 아래의 그림을 살펴보자. 2차원 평면 내 여러 개의 점들이 분포되어 있는 것을 확인할 수 있으며 이런 점(패턴)들을 분류할 수 있는(classification) 몇 개의 선들이 있다. 관건은 다차원 공간에서 분류의 기준이 되는 선(이름하여 Support vector)들을 어떻게 찾아낼 것인가라는 것이다. SVM은 바로 그 해답을 제시하는 알고리즘이다. 어떻게 보면 결정 트리(Decision tree)는 레벨이나 깊이 위주로 분류의 기준을 찾아내는 데 반해, SVM은 패턴들이 분표되어 있는 다차원 공간 상에서의 분류 기준을 찾아내는 것으로 유사하다고도 볼 수 있다.

Svm_graph_example.png

SVM 용어

  • 초평면 (Optimal hyperplane)
  • 커널함수 (Kernel function)
  • 학습 (Train)
  • 예측 (Predict)

See also

Favorite site

Machine learning - Supervised learning

Software

References


  1. Svm-ws-cvpr.pdf 

  2. Cheezestick_story_-SVM(Support_Vector_Machine).pdf 

  3. Introduction_to_BCI-Machine_learning-Supervised_learning-1.pdf 

  4. Introduction_to_BCI-Machine_learning-Supervised_learning-2.pdf 

  5. Introduction_to_BCI-Machine_learning-Supervised_learning-3.pdf