* 기본기를 다지기 위해, 무심코 넘어갔던가, 이해도가 부족한 부분을 정확하게 다시 공부하고 실습하려고 한다.
Support Vector Machine이란?
분류 문제에서 사용 가능한 모델이다. 퍼셉트론 알고리즘은 오차를 최소화하는 결정경계를 찾느다면, 이를 조금 더 확장한 개념인 SVM은 " Support vector"를 활용한다.
Support Vector Machine의 목표
Support vector Machine은 주어진 데이터가 어떤 클래스에 속하는지 분류하는 이진 분류 문제에 활용된다.
이 때, 데이터가 "선형적"으로 잘 분류될 수 있다면, 이 데이터를 가장 잘 분리하는 초평면을 찾는 것을 문제라고 한다.
어떤 평면을 찾게 되는가?
그러면 어떤 평면인지를 답해야하는데, 이는 "마진(margin)"의 최대화에 중점을 둔다.
Margin이란?
각 class별로, 결정 경계와 가장 가까운 data가 있을 것이다. 이들의 data와 결정 경계와의 거리를 margin이라고 한다.
여기서, 결정 경계와 가장 가까운 포인트를 Support Vector이라고 한다.
Remark. Margin 유도.
즉, SVM은 이 margin을 최대화하는 것을 목표로 한다.
SVM vs Logistic Regression 장단점 비교
svm 장점 :
- 예측의 정확도가 높다.
- 학습 데이터가 적어도, svm은 적용할 수 있다.
- 과적합을 피할 수 있다.
- 데이터 특성이 많지 않아도 성능이 좋게 나오며, 잡음에 큰 영향을 받지 않는다.
svm 단점 :
- (비선형의 경우), kernel 함수를 고르기 어렵다.
- 고차원으로 갈수록 연산량의 부담이 커진다.
Remarks 1 ] 그런데, 선형 문제가 아닐때는 어떻게 풀어야 하는가?
kernel 기법을 활용한다. kernel 기법은 저차원 데이터에 차원을 부여하여, 저차원에서 평면으로 분류할 수 없는 상황을 고차원으로 매핑시켜 잘 분류할 수 있게 만들어준다.
Remarks 2 ] SVM을 회귀 문제로 응용할 수 없을까?
가능하다! 분류의 문제는 그룹이 최대로 떨이질 수 있는 최대거리(최대 마진)을 찾는다. 회귀는 이를 반대로 적용하는 느낌을 가지면 된다. 다시 말해, 마진 내부에 최대한 많은 데이터가 들어갈 수 있도록 하면 된다.!
'Archive > 데이터 분석 관련' 카테고리의 다른 글
[Data] A/B Test란? (0) | 2022.02.02 |
---|---|
[Data] 그래프 중심성에 대해 이해하기 (0) | 2022.01.25 |
[Data] 데이터 파이프라인 구축 : 개요잡기 (0) | 2022.01.23 |
[Networkx] 다음 검색어 네트워크 분석 (1) | 2022.01.06 |
[Data] 데이터 분석 용어 - 이용자 및 매출에 대한 지표 요약 (0) | 2021.12.10 |