Machine Learning in Action ch.6.1 & 6.2 SVM (Support Vector Machine)

SVM은 캐글에서 좀 많이 본 알고리즘이다.
SVM은 최고의 주식 분류사가 되고자 하는 일부 사람들에게 중요하게 생각되고 있다.

이번 장에서는 SVM이 무엇인지 배우고 몇 가지 주요 전문 용어가 소개될 것이다.
SVM을 다루는 방법은 여러가지가 있다. 그 중 우리는 SMO 알고리즘에 초점을 두고 공부한다.
그런 다음, 대용량 데이터 집합을 처리하도록 SVMs을 확장하기 위해 커널을 어떻게 사용하는 지 알아본다.
마지막으로 SVMs을 가지고 더 좋은 작업을 할 수 있는 지 알아보기 위해 실습한다.


6.1 최대 마진으로 데이터 분리하기

책에는 그래프가 있어서 설명하기 쉽지만 그래프가 없는 관계로 용어만 알아보자.

선형 분리 : 데이터의 점들을 충분히 분리할 수 있는 경우
초평면 분리 : 선이나 평면이나 N-1 차원으로 데이터 집합을 나누는 경우
마진 : 초평면 분리에 가장 가까운 지점을 찾고 이 지점이 가능한 한 가장 크기를 원할 때, 이것을 마진이라고 한다.
지지 벡터 : 초평면 분리에 가장 가까운 지점이 지지 벡터이다.

이제 우리는 분리선에서 지지 벡터까지의 거리를 가장 크게 해야한다는 것을 알았다.

6.2 최대 마진 찾기

이 선이 데이터를 가장 잘 분리하는 선인지 어떻게 측정할 수 있을까?
초평면 분리는 w^T*x + b 로부터 얻는다.
수직선의 길이를 구해보면 |w^T*x + b| / ||w||으로 구할 수 있다.
뭔 소리인지 아직 모르겠다.

나머지 최대 마진 찾기의 수학적인 부분을 쓰는 것은 패스하기로 했다.
책을 읽고 이해하는 것만으로도 버겁다.














댓글

이 블로그의 인기 게시물

윈도우 설치에서 파티션 설정 오류(NTFS)

[exploit writing] 1_스택 기반 오버플로우 (1) First

하둡 설치 오류 정리