K-Nearest Neighbors (K-NN, K-최근접 이웃 알고리즘)

머신러닝에서 지도 학습의 한 종류로 거리 기반 분류 분석 모델로
새로운 데이터가 주어졌을 때, 이 데이터에 대한 답을 예측하는 것이라고 할 수 있다.

데이터 간의 거리 측정에 의존하고 유클리디안 거리 계산법을 사용하여
주변의 가까운 데이터 K 개를 지정해서 다수를 차지하는 것을 정답으로 한다.

-> 그렇기에 K의 값에 따라 분류가 달라질 수 있다.

예시를 통해 살펴보자.


Image

(이미지 출처: Wikipedia)

검은 선으로 이루어진 원이 범위로 지정되었다면 의문의 데이터인 초록색 원은 다수인 빨간색 삼각형으로 예측될 것이고

점선으로 이루어진 원이 범위로 지정되었다면 파란색 사각형으로 예측될 것이다.


모델의 정규화 과정  (데이터 편향을 해결하기 위해)

  • 최소- 최대 정규화(min-max normalization)
  • z-점수 표준화(z-score standardization)

최소- 최대 정규화(min-max normalization)

변수 x의 범위를 0%에서 100%까지로 나타낸다. (즉 정규화된 값이 0과 1 사이로 변환된다는 것을 의미)

-> 이렇게 함으로써 특정 데이터값이 어느 위치에 있는지 직관적으로 알기 쉽다.

모든 특성을 같은 범위로 스케일링하므로, 데이터의 분포를 그대로 유지하면서  거리 계산의 영향을 균등하게 한다.

z-점수 표준화(z-score standardization)

변수의 범위를 정규분포화하여 평균을 0, 표준편차가 1이 되도록 한다.

(미리 정의된 최솟값과 최댓값이 없음) 데이터 포인트가 평균에서 얼마나 떨어져 있는지를 측정하는 데 유용하다.

데이터 간의 상대적인 위치 파악 가능 -> 데이터 범위가 달라져도 적용 가능하다.

Categories:

Updated:

Leave a comment