소프트웨어 공부/알고리즘

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

야곰야곰+책벌레 2021. 10. 14. 18:49
728x90
반응형

  K-NN 알고리즘이란 새로운 데이터가 들어왔을 때 특성 공간 내에 데이터 간의 거리가 가까운 데이터를 찾아서 그것의 레이블의 값으로 분류하는 알고리즘이다. 이때 K는 특성 값을 기준으로 가장 거리가 가까운 데이터의 개수를 의미한다. 

주황색, 파란색 색깔 분류

  그림에서 초록색으로 표시된 새로운 데이터를 노란색으로 분류할지 파란색으로 분류할지를 결정하는 문제를 가정해 보자. K-NN 알고리즘으로 분류한다면, 입력된 데이터의 특성 공간에서 가장 가까운 거리의 데이터가 어떤 색인지 확인한다.

    만약 K가 1인 경우, 다음 그림과 같이 새로 입력된 초록색 데이터에서 가장 가까운 거리에는 주황색 데이터가 있다. 그러므로 새로 입력된 데이터는 주황색 데이터로 분류된다.

  K가 3인 경우를 보면 새로 입력된 초록색 데이터를 중심으로 가장 거리가 가까운 데이터 3개를 찾는다. 파란색으로 분류될 것이다. K를 짝수로 두지 않는 것은 동률이 발생할 수 있기 때문이다. 만약 짝수개로 구현하려면 거리에 따른 추가적인 가중치를 부여하는 등의 판단이 필요하다.

728x90
반응형

'소프트웨어 공부 > 알고리즘' 카테고리의 다른 글

중심 정렬, 4point alignment  (0) 2023.10.31
중심 정렬, 2point alignment  (0) 2023.10.31