SVM 에 대해 좀 더 자세한 설명을 원하신다면 해당 포스팅 에서 보실 수 있습니다
서포트 벡터 머신은 2차원에서 머무르는 것이 아닌, 3차원 등 차원을 높여서 데이터를 나누는 과정을 뜻한다
즉 고차원에서 데이터를 분류할 수 있는 일종의 칸막이를 만드는 것이다.
이를 좀 더 정확히 설명하면
SVM
데이터에 있는 특성들을 kernel 함수를 이용하여 입체공간에 데이터를 분류할 수 있는 *판을 만들어 주는 것
*판 = 초평면(Hyperplane)
SVM 의 목표
Maximum margin hyperplane 을 찾는 것, 즉 마진을 최대화하는 초평면을 찾는 것
이제 마진은 뭔지, 맥시멈 마진은 어떻게 찾는지 알아보도록 하자.
다시 한번 용어를 정리해보면
Hyperlane 초평면
- 데이터들을 분류할 수 있는 칸막이
Support vectors 서포트 벡터
- 초평면에서 가장 가까운 데이터들
Margin 마진
- 양쪽 Support vectors와 hyperplane 간의 거리의 합
이해가 잘 가지 않으면, 그림을 보면 직관적으로 알 수 있다.
즉 서포트 벡터들의 거리인 마진의 최대치 (Maximum margin)을 찾는 것이 서포트 벡터 머신의 목표이며
이 마진의 최대치를 보여주는 초평면이 최종 초평면이 되는 것이다.
서포트 벡터 머신의 장단점은 아래와 같다.
장점
1. 분류문제나 예측문제 동시에 쓸 수 있다.
2. 신경망 기법에 비해서 과적합 정도가 덜하다.
3. 예측의 정확도가 높음.
4. 사용하기 쉽다.
단점
1. Kernel과 모델 파라미터를 조절하기 위한 테스트를 여러 번 해봐야 최적화된 모형을 만들 수 있다.
2. 모형 구축 시간이 오래걸린다
3. 결과에 대한 설명력이 떨어진다.
'데이터분석 > with R' 카테고리의 다른 글
[R] 상품추천기술: 협업필터링의 정의와 예시 (0) | 2018.01.02 |
---|---|
[R] R로 구현하는 서포트 벡터 머신(SVM) (0) | 2017.12.29 |
[R] R로 구현하는 신경망 이론 (2) | 2017.12.22 |
[R] 암상자 기법과 신경망이론의 정의 및 구성 (0) | 2017.12.19 |
[R] 유클리드 거리 정의와 계산법 (0) | 2017.12.17 |