본문 바로가기

인공지능/머신러닝 이론

6-1. Overview of Support Vector Machine(SVM)


< 목차 >

  1. 용어정의
  2. Overview of support vector machine(SVM)

1. 용어정의

  • 피드백 후 작성예정입니다.

2. Overview of support vector machine(SVM)

Support Vector Machine (SVM)은 각 클래스 간의 거리를 최대화할 수 있는 초평면(Hyperplane)을 찾는 feed-forward networks 중 하나이며, Outlier의 영향을 받지않고 네트워크의 Generalization을 향상시킬 수 있다.

 

 

또한, SVM은 데이터가 입력공간에서 비선형적으로 존재할 때, Non-linear mapping function 을 이용해서 더 높은 차원으로 데이터를 변환하여 분류할 수 있다. 이때 Non-linear mapping function은 직접 구할 필요없이 Kernel method를 통해서 구할 수 있고 이것이 SVM의 뚜렷한 특징이다.

 

 

예로 들어, N개의 입력데이터(x1, x2, ..., x_n)와 타겟데이터(t1, t2, ..., t_n)가 존재하는  C_1, C_2의 Two-class classification 문제가 있다. 이때의 타겟데이터는 앞서 나왔던 뉴럴네트워크와 달리 y(x)=0 이라는 Decision boundary를 기준으로 두고 -1에서 1까지의 범위를 갖고 있고,  -1일 경우에는 C_2로 1일 경우에는 C_1으로 분류된다고 가정한다.

 

SVM의 목적은 'Margin'을 이용하여 모든 데이터에 대해 Overfitting없이 Generalization error를 최소화하는 Decision boundary를 찾는 것인데, 여기서 'Margin'은 각각 데이터에서 Decision boundary 까지의 거리의 최소값으로 정의된다.

 

즉, Decision boundary로부터 최소거리(Margin)에 있는 데이터들을 Support vector라고하며, Support vector 간의 거리를 최대화하는 Decision boundary를 찾아내는 minimax problem을 푸는 것이 바로 SVM이다.

 


 

728x90
반응형