정의
서포트 벡터 머신(Support Vector Machine, 이하 SVM)은 지도 학습(supervised learning) 방식의 기계 학습 알고리즘 중 하나로, 주로 분류(classification)와 회귀(regression) 문제에 사용된다. SVM은 주어진 데이터 포인트들을 고차원 특성 공간 내에서 초평면(hyperplane)으로 분리하여, 두 클래스 간의 경계를 최적화하는 방식으로 작동한다.
개요
SVM은 1990년대 초반 블라드미르 바프닉(Vladimir Vapnik)과 그의 동료들에 의해 발전된 통계적 학습 이론에 기초하고 있으며, 구조적 위험 최소화(Structural Risk Minimization) 원칙을 따르는 알고리즘이다. SVM의 핵심 목표는 훈련 데이터 내에서 두 클래스를 가장 효과적으로 분리하는 초평면을 찾는 것으로, 이 초평면은 두 클래스에 가장 가까운 데이터 포인트들, 즉 서포트 벡터(support vectors)로부터 최대의 마진(margin)을 가지도록 설정된다.
SVM은 선형적으로 분리 가능한 데이터 뿐만 아니라, 커널 트릭(kernel trick)을 통해 비선형 문제에도 적용할 수 있다. 커널 함수는 데이터를 고차원 공간으로 매핑하여 선형 분리를 가능하게 하며, 주로 사용되는 커널로는 선형 커널, 다항 커널, RBF(Radial Basis Function) 커널 등이 있다.
어원/유래
"서포트 벡터 머신"이라는 용어는 영어 "Support Vector Machine"의 직역이다. 여기서 "Support Vector"는 경계 결정 초평면의 위치에 직접적인 영향을 미치는 가장 가까운 훈련 샘플들을 의미하며, "Machine"은 통계적 학습 모델을 지칭하는 용어로, 패턴 인식이나 분류 알고리즘을 일컫는다. 최초의 SVM 아이디어는 1960년대에 로츠만(А.Я. 체르보넨키스와 V. N. Vapnik에 의해 제안된 최소 오분류 기반 모델에서 유래했으며, 1992년 Boser, Guyon, Vapnik에 의해 커널 트릭이 도입되며 본격적으로 발전하였다.
특징
- 높은 일반화 성능: 마진 최대화를 통해 과적합을 줄이고, 테스트 데이터에 대한 일반화 능력을 향상시킨다.
- 비선형 분류 가능: 커널 함수를 이용해 고차원 공간에서의 선형 분리를 통해 비선형 문제를 해결할 수 있다.
- 메모리 효율성: 모델의 결정에 영향을 미치는 데이터는 서포트 벡터에 한정되므로, 훈련 후 모델의 크기가 전체 데이터보다 작을 수 있다.
- 고차원 데이터에 강함: 변수의 수가 샘플 수보다 많은 경우에도 효과적으로 작동할 수 있다.
- 계산 복잡도: 커널을 사용할 경우 훈련 시간이 길어질 수 있으며, 대규모 데이터셋에는 비효율적일 수 있다.
관련 항목
- 기계 학습 (Machine Learning)
- 지도 학습 (Supervised Learning)
- 커널 방법 (Kernel Methods)
- 로지스틱 회귀 (Logistic Regression)
- 신경망 (Neural Networks)
- 패턴 인식 (Pattern Recognition)
- Vapnik-Chervonenkis 이론 (VC Theory)