728x90
6.2 LIBSVM을 사용하고, 수박 데이터 세트 3.0𝛼상에서 선형 커널과 가우스 커널을 사용하여 SVM을 훈련하라. 그리고 각 서포트 벡터의 차이에 대해 비교하라.
*굳이 LIBSVM을 사용하지 않고, sklearn의 svm을 사용해도 무방합니다!
코드는 기본 svm에서 하이퍼파라미터 설정만 바꿔주면 되기 때문에 생략합니다.
일단 다른 하이퍼 파라미터를 사용하면 서포트 벡터가 바뀌게 됩니다.
수박 데이터세트 3.0a는 선형으로 분리하기 어렵기 때문에 선형 커널을 사용했을 시,
c를 아무리 높여도 오분류 상황이 나옵니다.
그러나 가우스커널을 사용해 c를 높이면 훈련 데이터에 완전히 핏팅할 수 있습니다.
c가 비교적 작다면 두 서포트벡터는 비슷하고, c계수가 비교적 크다면(c계수가 클수록 정규화 정도는 낮음)
가우스 커널 서포트벡트의 수는 줄어들지만 선형 커널은 변화가 없을것 입니다.
C=100일 경우,
가우스 커널 서포트 벡터 : [ 8 9 11 12 13 14 16 2 3 4 5 6 7]
선형 커널 서포트 벡터: [ 8 9 11 12 13 14 16 2 3 4 5 6 7]
C = 10000일 때,
가우스 커널 서포트 벡터: [11 13 14 1 5 6]
선형 커널 서포트 벡터: [ 9 11 12 13 14 16 2 3 4 5 6 7]
'단단한 머신러닝' 카테고리의 다른 글
[단단한 머신러닝 - 연습문제 참고 답안]Chapter6 - 서포트 벡터 머신 6.4 (0) | 2021.08.24 |
---|---|
[단단한 머신러닝 - 연습문제 참고 답안]Chapter6 - 서포트 벡터 머신 6.3 (0) | 2021.08.24 |
[단단한 머신러닝 - 연습문제 참고 답안]Chapter6 - 서포트 벡터 머신 6.1 (0) | 2021.08.23 |
[단단한 머신러닝 - 연습문제 참고 답안]Chapter5 - 의사결정 트리 5.7 (0) | 2021.08.23 |
[단단한 머신러닝 - 연습문제 참고 답안]Chapter5 - 의사결정 트리 5.6 (0) | 2021.08.23 |