서포트 벡터 머신
서포트 벡터 머신
서포트 벡터 머신(Support Vector Machine, SVM)은 두 클래스 사이의 마진(margin)을 최대화하는 결정 경계(초평면)를 찾는 이진 분류 알고리즘이다. 커널 기법과 결합하면 비선형 분류도 가능하다.
핵심
- 마진을 최대화하는 초평면을 찾는 것이 목표이며, 이는 볼록 최적화(convex optimization) 문제로 정식화된다
- 결정 경계에 가장 가까운 훈련 데이터 포인트를 서포트 벡터라 한다
- 슬랙 변수(slack variable)를 도입한 소프트 마진 SVM으로 노이즈에 강인하게 확장된다
- 커널 트릭을 사용하면 원래 특징 공간을 고차원으로 매핑하지 않고도 비선형 분류가 가능하다
- 이중(dual) 문제로 변환하면 내적만으로 학습이 가능해 커널 적용이 쉬워진다
수식
\[\min_{w,b} \frac{1}{2}\|w\|^2 \quad \text{subject to } y^{(i)}(w^Tx^{(i)}+b) \geq 1\]