SVM(Support Vector Machine)에 대해서 알아보겠습니다.
이런 데이터셋이 있는데, 이 데이터셋을 구분해보고 싶은 겁니다.
그래서 이렇게 구분선을 긋는데 아래와 같이 구분해주는 항목(빨간색)기준으로 선을 긋습니다.
이 과정에서 빨간 선을 늘릴 수도 있고, 좁힐 수도 있습니다. 이 것을 margin이라고 합니다.
만약에 아래와 같이 좁게 했을 때
엄격하게 데이터를 구분합니다. 하지만, 오버피팅이 일어날 수 있습니다.
하지만 위와 같이 마진을 늘리면, 언더피팅이 일어날 수 있습니다.
그리고 gamma라는 개념이 나오는데, gamma라는 값을 늘리면
아래와 같이 구분선이 구불구불하게 그여집니다.
감마 값을 작게하면 아래와 같이 구불구불하지 않은 형태로 구성됩니다.
구현하면 아래와 같이 할 수 있습니다.
'개발 > Kaggle' 카테고리의 다른 글
ROC curve (0) | 2020.09.13 |
---|---|
StandardScaler (0) | 2020.07.20 |
KNN (0) | 2020.07.09 |
Stacking 실습 (0) | 2020.06.07 |
보팅(Voting)이란 (0) | 2020.06.07 |