본문 바로가기
ISLR

Chap 09 Support Vector Machines - The Support Vector Classifier

by 지식광부키우기 2019. 10. 15.

 

Separable Hyperplanes

 

두 개의 predictors $X_{1}$과 $X_{2}$를 가진 two class classification problem이 있습니다.

 

두 classes는 "linearly separable"이라고 가정해봅니다.

 

즉, 직선을 긋고 한쪽의 모든 포인트는 첫 번째 class에 그리고 나머지 사이드의 포인트는 두 번째 class에 속합니다. 

 

자연스럽게 접근하는 방법은 가장 classes를 잘 나눌 수 있는 직선을 찾는 것입니다. 즉, 포인트들이 직선하고 멀 수록 좋습니다. 

 

이것이 support vecotr classifier의 기본적인 아이디어입니다.

 

 

Tis Easiest To See With A Picture

 

C는 각 포인트와 분리하는 선 사이의 최소 수직거리입니다.

 

C를 최대화하는 직선을 찾는 것이 목표입니다.

 

이 직선은 "optimal separating hyperplane"라고 불립니다.

 

점의 분류는 점이 맞아 떨어진 line이 어느 쪽이냐에 따라 달라집니다. 

 

그림1

 

More Than Two Predictors

 

위의 아이디어는 two predictors 이상일 때도 잘 작동합니다.

 

예를 들어, 세 개의 predictors이면 classes들을 가장 크게 나눌 수 있는 plaine을 찾으면 됩니다.

 

3차원 이상일 경우 palne을 시각화하기는 어렵지만 여전히 유효합니다. 

 

일반적으로 hyper-planes라고 부릅니다. 

 

 

Non-Separating Classes

 

물론 two classes를 완벽하게 나누는 hyper-plane을 찾는 것이 가능하지 않을 수 있습니다. 

 

다시 말하면 찾은 직선이냐 평면이 항상 적어도 몇 개의 잘못된 쪽의 포인트가 있을 수 있습니다.

 

이러한 상황에서는 올바르게 분류된 포인트들을 가장 잘 분리해내는 plane을 찾으려고 시도해야 합니다. 

 

그림으로 보면 이해가 빠릅니다.

 

그림2

 

Non-Separating Example

 

$\xi^{*}_{i}$는 점선으로 표시된 margin의 잘못된 쪽에 있는 i번째 포인트들의 양을 나타냅니다.

 

목표는 $\frac{1}{C}\sum_{i=1}^{n}\xi^{*}_{i} \leq Constant$를 따르는 C의 최댓값을 찾는 것입니다.

 

The constant는 tuning parameter로 사용자가 선택해야합니다. 

 

 

A Simulation Example With A Small Constant

 

점선 사이의 거리는 margin 또는 2C를 나타냅니다. 

 

보라색 선은 Bayes decision boundaries를 나타냅니다. 

 

그림3

 

The Same Example With A Larger Constant 

 

더 큰 constant를 사용할 수록 margin은 커지고 살짝 다른 분류기가 됩니다.

 

항상 decision boundary는 선형이라는 것을 잊지 마세요. 

 

그림4

댓글