luce in altisBLUE SKY

category Photo

Blog


SVM(Support Vector Machines)


SVM의 정의

SVM(Support Vecotr Machines) 는 Linear Classifier 중에 하나입니다.

Linear Classifier이란, 만약 어떠한 데이터가 Positive한 데이터와 Negative 데이터를 가지고 있을때

이러한 구분을 만들어 주는 선을 긋는걸 Boundary 라 한다면

Linear Classifier는 그 Boundary가  Linear 함을 뜻합니다.

이것을 만약 2차원적으로 표현한다면 Line으로 표현할수 있을것이고 만약 좀더 고차원이라고 한다면 HyperPlane이라 부릅니다.


용어 설명

VC Dimension 이라는것은 Shattering 할수 있는 Maximum Number of data Points 입니다.

Dichotomy라는것은 하나의 Set을 두개로 나누는 것

Shattering 이라는것은 데이터를 여러개의 SubSet으로 나눴을때 이것을 우리가 dichotomy라고 하고 Shattering 이라는것은 이 Classifier가 여러개의 subset을 다 표현할수 있는가에 대한 설명입니다.


SVM에서는 중요한 3가지가 존재합니다.


1. Margin

SVM에서 Margin을 Maximize한다는것은 결국엔 Shattering을 할 수 있는 가능성을 낮춘다는 이야기이고 이말은 Shattering을 할수 있는 Potential data Set을 줄인다는 이야기와 같다.

즉, Margin이 커지면 그만큼 VC Dimension이 줄어든다. 그러므로 전체 Data Set에 대해 Error가 줄어든다는 것이 이론이다. 실제로 SVM을 Training 시켜서 data set에 적용해보면 Margin이 클수록 정확도가 높아진다.


2. Support Vector

3. Kernels







'게임 > AI' 카테고리의 다른 글

<작업 일지> 아이엔젤..  (0) 2011.03.07
AI 최적화 전략들  (0) 2010.05.22