연관토픽
기출문제
회차 | 문제 |
관리132-2 | 2. 머신러닝의 분류 모델인 서포트 벡터 머신(Support Vector Machine) 중 선형 서포트 벡터 머신의 마진(Margin) 분류 방법 2가지를 설명하시오. |
응용132-4 | 5. 서포트 벡터 머신(Support Vector Machine)은 기계학습 분야에서 많이 활용되는 학습 모델이다. 아래 사항을 설명하시오. 가. SVM 의 개념 나. SVM 의 동작방식 다. SVM 의 장단점 및 활용사례 |
관리127-1 | 10. SVM(Support Vector Machine) |
개념
- 학습 데이터를 두 개의 클래스로 나누는데 Margin을 최대로 하는 결정직선을 찾는 분류 알고리즘
- 데이터가 사상된 공간에서 경계선과 가장 근접한 데이터(Support Vector)간의 거리가 가장 큰 경계를 식별하는 지도학습 기반 분류 알고리즘
- 두 범주를 갖는 데이터를 가능한 멀리 두 개의 집단으로 분리하는 분류 방법
SVM 특징
- 지도학습
- 분류기법
- 회귀분석 활용
- 차원의 저주 회피
SVM 분류방식
- 초평면(Optimal Hyperplane)을 구하여 최대 마진 기준으로 데이터를 2 개의 그룹으로 분류
SVM 핵심요소
구분 | 설명 |
support vector |
|
margin |
|
초평면(hyperplane) |
|
커널함수 |
|
SVM의 원리
- training data에서 두 클래스의 어떤 point로 부터도 최대한 멀리 떨어져 있는 decision boundary를 찾는 것
- Hyperplane(초평면) : 데이터를 분류하는 선
- Support Vector와 Margin을 통해 두 클래스 사이를 분류하는 최적의 Hyperplane을 구함
- Hard Margin 방법 : 매우 엄격하게 두 개의 그룹을 분리하는 경계식을 구하는 방법으로 몇 개의 노이즈가 있으면 사용 어려움
- Soft Margine 방법 : Support Vector가 위치한 경계선에 약간의 여유(Slack)을 두는 방식
SVM의 마진(margin)
- 두 범주를 나누는 분류 문제에서 직선 B1과 B2 모두 두 클래스를 무난하게 분류하고 있음을 확인
- 위 그림에서 b12을 minus-plane, b11을 plus-plane, 이 둘 사이의 거리를 마진(margin)이라고 함
- SVM은 이 마진을 최대화하는 분류 경계면을 찾는 기법
- minus-plane과 plus-plane 사이의 거리 = 마진(margin)
- w는 경계면과 수직인 법선벡터
마진길이 유도 설명
- norm(놈) 계산 참고(위 식에서는 L2 norm이 사용되었으며, 출발점에서 도착점까지 거리를 직선으로 계산하는 방식임)
SVM 마진 계산방식
SVM의 커널(kernel) 트릭
- 비선형 분류를 하기 위해서 주어진 데이터를 고차원 특징 공간으로 사상(mapping)하는 방식
- 저차원의 입력 데이터를 고차원의 공간의 값으로 변환(비선형 분류 문제)
<입력 데이터>
<커널 트릭 적용>
- 직선으로 주어져 있던 입력 샘플의 공간을 휘어진 공간으로 변형시키고 이전에 직선으로 잘라내는 방법
SVM의 장단점
장점 | 단점 |
- 분류와 예측에 모두 사용 가능 - 신경망 기법에 비해 과적합 정도가 낮음 - 예측의 정확도가 높음 - 저차원과 고차원 데이터에 대해 모두 잘 작동 - 비선형 분리 데이터를 커널트릭을 사용해 분류 모델링 가능 |
- 데이터 전처리와 매개변수 설정에 따라 정확도가 달라질 수 있음 - 예측이 어떻게 이루어지는지에 대한 이해와 모델에 대한 해석이 어려움 - 대용량 데이터에 대한 모형 구축 시 속도가 느리며, 메모리 할당이 큼 |
모범답안
참고 동영상
참고 사이트
참고 자료
- SVM(Support Vector Machine) 질문으로 이해하기 [file]