Machine Learning

KNN - K-nearest neighborhood

robin0309 2020. 6. 27. 01:42

 

 

 

 

종속 변수 

1. 범주형변수

-> knn 중 가장많이 나타나는 범주로 Y를 추정

-> Tie 문제를 막기 위해 k는 홀수로 정하는 것이 좋다.

2. 연속형 변수

-> K-nearest neighbors 의 대표 값(평균)으로 y를 추정

-> inverse distance weighted average 고려 가능.

 

 

거리가 가까우면 크고 멀머는 작게끔 역수형태로 weight 를 줌

ex)

너무 큰 K

-> 미세한 경계부분 분류가 아쉬 움

너무 작은 K

-> 나눠진 것이 복잡해서 과적합우려

-> 이상치의 영향을 크게 받을 것

-> 패턴이 직관적이지 않음

 

K의 결정

1.training error

->k=1에서 가장 낮음

-> 과적합의 가능성

2.Test error

->데이터에 따라 최적의 k가 존재

3.k의 결정

-> test error 를 작게하는 k

-> cross-validation을 이용

 

 

K-fold Cross-validation

* 네이버안에있더라도 가까우면 weight 더 주고 멀면 덜줘서 distance로 웨이트를 준것이 2번

2번이 uniform(weight를 주지 않은 것) 보다 퍼포먼스가 잘 나와있는 것을 볼 수 있음

반응형