4. 컴퓨터 시스템 및 정보통신/알고리즘
SVM(Support Vector Machine)
SWExpert
2022. 11. 3. 00:22
I. 하나의 집단을 둘로 나누기 SVM 개요
-. 학습 데이터를 두개의 클래스로 나누는데 margin을 최대로 하는 결정직선을 찾는 분류 알고리즘
-. 데이터가 사상된 공간에서 경계선과 가장 근접한 데이터 간의 거리가 가장 큰 경계를 식별하는 지도학습 기반 분류 알고리즘
-. 두 범주를 갖는 데이터를 가능한 멀리 두개의 집단으로 분리하는 분류방법
-. 특징: 지도학습, 분류기법, 회귀분석 활용, 차원의 저주 회피
II. SVM 개념도 및 구성요소
가. SVM 개념도
나. SVM 구성요소
구분 | 설명 |
support vector | 클래스를 나누는 결정직선에서 가장 근거리에 위치하는 벡터 학습 데이터 중에서 분류 경계에 가장 가까운 곳에 위치한 데이터 |
margin | A Class의 Support Vector와 B Class의 Support Vector 사이의 거리 분류 경계에 가장 가까운 데이터로부터 분류 경계까지의 거리 |
초평면(hyperplane) | n 차원의 공간의 구분을 위해 결정되는 n-1 평면 데이터 분류의 기준이 되는 분류 경계면 |
커널함수 | 비선형 패턴을 분리하기 위하여 비선형 패턴의 입력공간을 선형 패턴의 feature space로 변환(고차공간)하고 해당 비선형 경계면을 찾는 방법 비선형 SVM에서 고차원 특징 공간으로 사상하는 함수 |
III. SVM의 원리
training data에서 두 클래스의 어떤 point로부터 최대한 멀리 떨어져 있는 decision boundary를 찾는 것
- Hyperplane(초평면) : 데이터를 분류하는 선
- Support Vector와 Margin을 통해 두 클래스 사이를 분류하는 최적의 Hyperplane을 구함
방법 | 설명 |
Hard Margin 방법 | 매우 엄격하게 두 개의 그룹을 분리하는 경계식을 구하는 방법으로 몇 개의 노이즈가 있으면 사용 어려움 |
Soft Margine 방법 | Support Vector가 위치한 경계선에 약간의 여유(Slack)을 두는 방식 |