[머신러닝] Support Vector Machine(SVM) 1

Support Vector Machine(SVM)-이론

서포트 벡터 머신ML 분야 중 하나로 패턴 인식, 자료 분석을 위한 지도 학습 모델이며 주로 분류와 회귀 분석을 위해 사용한다.

img

SVM 이란?

SVMMargin 이라는것을 최대화 하는 training set에 대해서 데이터를 분류하는 최적의 hyperplane 을 찾는다. Margin은 그림상에서 w·x-b=1에서 부터 w·x-b=-1 거리 또는 w·x-b=1 에서 w·x-b=0 까지의 거리를 나타낸다. 밑에서 더 장확하게 정의한다.

Linear SVM

다음과 같이 n개의 training dataset이 주어졌다고 하자.

image-20201020011630890

image-20201020015527948

image-20201020020132264

​ 기하적으로 두 hyperplane의 거리는 normal vector의 L2-norm 의 역수의 2배값이다.

​ 따라서

(\vec{x_1}, y_1), ~(\vec{x_2}, y_2),\cdots, (\vec{x_n}, y_n)~~ \text{여기서}~y_i=1 ~또는~0 이고~\vec{x_i}은~n차원~ 벡터이다.\~~ \~~ \

그러면~모든~\text{hyperplane}은~ \vec{w}\cdot\vec{x}-b=0~ \text{꼴로 작성할 수 있다. 여기서 } \vec{w}\text{는 hyperplane의 normal vector이다.}