
머신러닝
Support Vector Machine서포트 벡터 머신
서포트 벡터 머신(SVM, Support Vector Machine)은 클래스 간의 마진(Margin)을 최대화하는 결정 경계(Hyperplane) 를 찾는 지도 학습 알고리즘이다. 분류와 회귀 모두 가능하며, 고차원 데이터와 소규모 데이터셋에 강점을 보인다.
핵심 개념
소프트 마진 (Soft Margin, C 파라미터)
데이터가 선형 분리 불가할 때 일부 오분류를 허용한다.
커널 트릭 (Kernel Trick)
비선형 데이터를 고차원 공간으로 매핑해 선형 분리 가능하게 만든다.
| 커널 | 수식 | 사용 |
|---|---|---|
| 선형 (linear) | x·y | 텍스트, 선형 가능 |
| 다항식 (poly) | (γx·y + r)^d | 비선형 |
| RBF (rbf) | exp(-γ | |
| 시그모이드 | tanh(γx·y + r) | 신경망 유사 |
SVM vs 신경망
| 항목 | SVM | 신경망 |
|---|---|---|
| 데이터 | 소규모에 강함 | 대규모에 강함 |
| 해석성 | 서포트 벡터로 해석 가능 | 블랙박스 |
| 학습 속도 | 느림 (대규모) | 빠름 (GPU) |
| 하이퍼파라미터 | C, gamma | 수십~수백개 |
관련 개념
- •머신러닝 — SVM이 속하는 범주
- •PCA — SVM 전처리로 차원 축소
- •과적합 — C 파라미터로 제어
- •K-평균 클러스터링 — 비지도 학습 대조