AI 기초
지원 벡터 머신이란 무엇인가?
지원 벡터 머신 (SVM)은 클래스 간에 가능한 가장 넓은 마진을 가진 결정 경계를 찾는 지도 학습 방법입니다. 그 경계를 결정하는 학습 예제는 지원 벡터입니다.
SVM은 선형 또는 비선형 분류, 회귀, 그리고 새로운 데이터 탐지를 수행할 수 있습니다. 특히 고차원 희소 데이터를 포함한 정보가 풍부한 특성을 가진 소규모~중규모 데이터셋에 유용하지만, 매우 큰 데이터셋에서는 학습 비용이 비현실적일 수 있습니다.
핵심 요점
- SVM은 경계와 가장 가까운 학습 샘플 사이의 최소 마진을 최대화합니다.
- 지원 벡터는 추가적인 초평면이 아니라 데이터 포인트입니다.
- 파라미터 C는 마진 폭과 위반에 대한 패널티 사이의 균형을 맞춥니다.
- 커널은 모든 변환된 특성을 명시적으로 구현하지 않고도 암시적 특성 공간에서 유사성을 계산합니다.

최대 마진 개념
선형 이진 분류기의 경우, 결정 경계는 초평면입니다:
w · x + b = 0
벡터 w는 방향을, b는 오프셋을 결정합니다. 여러 초평면이 학습 클래스들을 구분할 수 있지만, SVM은 양쪽에서 가장 가까운 예제와의 거리를 최대화하는 초평면을 선택합니다. 그 가장 가까운 예제들이 지원 벡터이며, 이들은 적합된 경계에 가장 큰 영향을 미칩니다.
목표는 경계와 모든 점 사이의 거리를 개별적으로 최대화하는 것이 아니라, 클래스 제약을 만족하거나 위반에 대해 패널티를 부여하면서 최소 마진을 최대화하는 것입니다.
하드 마진과 소프트 마진
하드 마진 SVM은 완벽한 선형 분리를 요구하며 이상치에 민감합니다. 실제 데이터셋에서는 일반적으로 소프트 마진이 필요하며, 이는 마진 내부 또는 경계 반대쪽에 있는 관측값에 대해 슬랙 변수를 도입합니다.
하이퍼파라미터 C는 이러한 위반에 대한 패널티를 제어합니다:
- 더 큰 C는 위반에 대해 더 강하게 패널티를 부과하며, 종종 훈련 예제에 더 가깝게 좁은 마진을 생성합니다.
- 더 작은 C는 더 넓고 정규화된 마진을 얻기 위해 더 많은 위반을 허용합니다.
지원 벡터의 수는 데이터와 해의 결과이며, C를 증가시킨다고 해서 특정 지원 벡터 수가 보장되는 것은 아닙니다.
커널 트릭
일부 클래스는 원래 특성 공간에서 직선 초평면으로 구분될 수 없습니다. 커널은 다른 특성 공간에 해당하는 내적을 계산합니다. 이를 통해 SVM은 모든 변환된 좌표를 명시적으로 계산하지 않고도 비선형 경계를 맞출 수 있습니다.
일반적인 커널은 다음과 같습니다:
- Linear: 텍스트와 같은 고차원 희소 특성에 효율적입니다.
- Polynomial: 선택된 차수까지의 상호작용을 모델링합니다.
- Radial basis function (RBF): 거리를 기반으로 유연한 지역 경계를 생성합니다.
- Sigmoid: 신경 활성화와 유사하지만 기본 선택으로는 덜 일반적입니다.
RBF SVM의 경우, gamma는 각 학습 예제가 경계에 미치는 지역성을 제어합니다. 큰 gamma는 매우 상세한 영역을 만들고 과적합을 초래할 수 있으며, 작은 gamma는 보다 부드러운 영향을 제공합니다.
다중 클래스 분류
전통적인 SVM 목표는 이진 분류입니다. 라이브러리들은 one-vs-rest와 같이 클래스당 하나의 분류기를 학습하거나, one-vs-one처럼 클래스 쌍에 대한 분류기를 학습하고 그 결정을 결합하는 전략을 사용해 이를 확장합니다. 다중 클래스 SVM은 클래스 수보다 한 줄 적게 그리는 것이 아닙니다.
지원 벡터 회귀와 원-클래스 SVM
지원 벡터 회귀(SVR)는 ε 너비의 튜브 안의 오류를 무시하고 큰 편차에 대해 패널티를 부과하면서 함수를 적합합니다. 원-클래스 SVM은 일반 데이터 주변에 경계를 추정하고 새로운 데이터 탐지를 지원할 수 있습니다. 이상한 점이 반드시 사기나 오류를 의미하는 것은 아니며, 적합된 표현 하에서 이상한 것입니다.
실용적인 요구 사항
SVM은 거리와 내적에 의존하므로 수치형 특성은 일반적으로 스케일링이 필요합니다. C, 커널, gamma, 그리고 클래스 가중치는 검증을 통해 선택해야 합니다. 확률 추정은 마진에 내재된 것이 아니며 종종 보정이 필요하고, 이는 비용을 추가하므로 별도로 평가해야 합니다.
커널 SVM 학습은 데이터와 구현에 따라 샘플 수에 대해 2차~3차 시간 복잡도로 확장될 수 있습니다. 선형 SVM 변형이나 확률적 선형 모델은 매우 큰 데이터셋에 더 적합합니다. 원시 이미지, 오디오, 언어의 경우 딥러닝에서 학습된 표현이 더 효과적일 수 있지만, SVM은 고정된 임베딩을 여전히 분류할 수 있습니다.
SVM의 강점과 한계
SVM은 다수의 특성에서도 잘 작동하고, 명확한 정규화 목표를 제공하며, 예측 시 주로 지원 벡터에 의존합니다. 한계로는 스케일링 및 하이퍼파라미터에 대한 민감성, 잠재적으로 높은 학습 비용, 비선형 커널 사용 시 해석 가능성 감소, 그리고 확률 보정 필요성이 있습니다.
마진, 커널 및 최적화 목표
지원 벡터 머신은 클래스 간에 큰 마진을 가진 분리 초평면을 찾습니다. 마진 위 또는 내부에 있는 지원 벡터만이 경계를 결정합니다. 소프트 마진 SVM은 겹침 및 라벨 오류에 대해 슬랙을 도입하며, 파라미터 C는 더 넓은 마진과 학습 위반 사이의 trade‑off를 제공합니다. 입력은 일반적으로 거리와 내적이 해를 좌우하므로 스케일링이 필요합니다. 오류 비용과 발생 빈도가 불균형할 때 클래스 가중치나 재샘플링이 도움이 되지만, 임계값과 확률은 여전히 독립적인 검증이 필요합니다.
커널 트릭은 입력이 더 높은 차원의 특성 공간으로 매핑된 것처럼 유사성을 평가합니다. 선형, 다항식, 방사형 기저 및 특수 커널은 서로 다른 가정을 인코딩합니다. RBF 커널의 경우, gamma는 각 점이 경계에 미치는 지역성을 제어합니다: 높은 gamma는 복잡한 영역을 만들고 과적합을 일으킬 수 있으며, 낮은 gamma는 과소적합을 초래합니다. 커널 행렬은 샘플 수에 따라 2차적으로 성장하므로 비선형 SVM은 대규모 데이터셋에서 비용이 많이 듭니다. 선형 솔버나 근사 특성 맵이 규모에 따라 종종 더 선호됩니다.
다중 클래스 활용, 보정 및 운영 제한
이진 SVM은 one-vs-rest, one-vs-one 또는 구조화된 방식으로 다중 클래스로 확장됩니다. 하이퍼파라미터는 교차 검증 내에서, 필요에 따라 그룹화 또는 시간적 분할을 사용해 튜닝해야 합니다. 클래스별 정밀도와 재현율, 마진 분포, 보정, 그리고 변동 상황에서의 성능을 평가합니다. 원시 결정 점수는 확률이 아니며, Platt 스케일링이나 등온 보정은 별도 데이터를 사용하고 발생 빈도가 변하면 성능이 저하될 수 있습니다. 전처리와 튜닝 노력을 동일하게 맞춘 상태에서 로지스틱 회귀, 트리, 최신 표현 기반 방법과 비교하십시오.
서비스 제공에는 정확한 스케일러, 특성 순서, 커널 파라미터, 지원 벡터 및 클래스 매핑이 필요합니다. 커널 SVM의 예측 비용은 지원 벡터 수에 따라 증가하므로 실제 배치에서 지연 시간과 메모리를 측정해야 합니다. 학습 지원으로부터 멀리 떨어진 입력도 여전히 높은 신뢰도의 라벨을 받을 수 있으므로, 필요에 따라 분포 외 검증이나 보류 정책을 추가하십시오. 민감한 프록시와 데이터셋 아티팩트에 대한 오류를 검사하십시오. SVM은 중규모 고차원 문제에 여전히 강력하지만, 최대 기하학적 마진이 인과 구조나 안전성을 증명하는 것은 아닙니다.
실제 예시: 희귀 문서 라우팅을 위한 SVM
법무 운영 팀은 TF–IDF 특성과 선형 SVM을 사용해 짧은 제출물을 라우팅 카테고리로 분류합니다. 템플릿 누수를 방지하기 위해 사안과 시간별로 데이터를 분할하고, 검토된 오류 비용을 기반으로 클래스 가중치를 스케일링하며, 중첩 검증 내에서 C를 튜닝합니다. 선형 모델은 로지스틱 회귀와 트랜스포머와 비교됩니다. 전체 정확도보다 클래스별 정밀도, 재현율, 보정 및 검토자 작업량이 더 중요합니다.
결정 점수는 별도 데이터로 보정되며, 낮은 마진이나 지원되지 않는 언어의 문서는 수동 접수로 전환됩니다. 서비스 아티팩트에는 토크나이저, 어휘, 가중치, 모델, 보정 및 라벨 맵이 포함됩니다. 모니터링은 새로운 용어, 카테고리 발생 빈도, 마진 및 수정된 라우트를 추적합니다. 텍스트 특성이 기밀 정보를 노출할 수 있기 때문에 문서와 지원 벡터는 보호됩니다. 비선형 커널은 작은 품질 향상이 지연, 메모리 및 해석 비용을 정당화하지 못할 경우 거부됩니다.
구현 증거 및 운영 준비성
프로덕션 의사결정은 성공적인 시연 이상의 것이 필요합니다. 대상 사용자, 운영 환경, 입력·출력, 의존성, 소유자 및 각 주요 실패의 결과를 정의하십시오. 튜닝 전에 재현 가능한 기준선과 버전 관리된 평가 세트를 구축합니다. 일반 케이스, 경계 조건, 형식이 잘못되었거나 누락된 입력, 분포 변화, 의존성 장애, 오용, 그리고 서비스가 부족할 가능성이 높은 그룹이나 환경을 테스트합니다. 작업 품질을 보정·불확실성, 지연 시간, 처리량, 자원 비용, 접근성, 프라이버시 및 보안과 함께 측정합니다. 모든 변환 및 임계값을 기록하여 독립적인 검토자가 결과를 재현하고 매력적인 프로토타입과 증거를 구분할 수 있게 합니다.
출시 전에는 릴리스, 예외, 변경, 롤백 및 폐기에 대한 권한을 지정하십시오. 단계적 롤아웃을 사용하고 안전한 백업을 유지하며, 의도적으로 삽입한 실패를 통해 모니터링을 검증합니다. 운영 텔레메트리는 불필요한 민감 데이터를 수집하지 않으면서 입력 품질, 출력 동작, 모델·규칙 버전, 의존성 상태, 인간 개입 및 확인된 결과를 보여줘야 합니다. 알림 임계값과 대응 담당자를 정의한 뒤, 오프라인 성능이 지속될 것이라 가정하지 말고 배포 후 실제 증거를 검토하십시오. 데이터 소스, 사용자, 모델, 공급업체, 정책, 하드웨어 또는 목표가 변경될 때마다 재평가하십시오. 유지되는 시스템은 문서화된 복구, 사고 학습, 삭제·보존 절차 및 비활성화·교체 시점을 명확히 해야 합니다.
자주 묻는 질문
SVM은 분류만 수행하나요?
아니요. 지원 벡터 회귀는 연속적인 목표를 예측하고, 원-클래스 SVM은 새로운 데이터 경계를 추정할 수 있습니다. 각 변형은 서로 다른 목표와 하이퍼파라미터 집합을 가집니다.
선형 SVM은 언제 강력한 선택이 될까요?
선형 SVM은 전통적인 텍스트 표현과 같은 고차원 희소 특성에 대해 종종 효과적이며, 유연한 커널을 사용하면 명확한 이점 없이 비용만 증가합니다.












