본문 바로가기

공부/Machine Learning

[KNN] 1. Classification (분류) vs Clustering (군집화)


[KNN] 1. Classification (분류) vs Clustering (군집화)



KNN 에 앞서



이번 시리즈 에서는 KNN 알고리즘에 대해서 설명하려고 합니다. 

그런데 KNN 알고리즘을 설명하기 이전에 먼저 알고 가야 할 것이 있는데요, 

바로 Classification 과 Clustering 의 차이 입니다.


Classification    vs    Clustering


'분류' 와 '군집화' 라는 두 단어는 언뜻 보기에는 같은 말처럼 들리기도 합니다.

하지만 머신러닝 알고리즘 내에서 분류와 군집화는 아주 다른 중요한 개념입니다.


'분류' 와 '군집화'



'분류'란, 소속집단의 정보를 이미 알고 있는 상태에서, 비슷한 집단으로 묶는 방법입니다.

다시말해, Label 이 있는 data를 나누는 방법으로, Supervised Learning (지도학습)의 일종입니다.

'군집화'란, 소속집단의 정보가 없고, 모르는 상태에서, 비슷한 집단으로 묶는 방법입니다.

즉, Label이 없는 data를 군집단위로 나누는 것으로, Unsupervised Learning (비지도학습) 의 일종입니다.


 Classification (분류)

Clustering (군집화)

 소속집단에 대한 정보

O

 Label 유무

 O 

종류 

Supervised Learning (지도 학습) 

Unsupervised Learning (비지도 학습) 

공통점

 데이터를 비슷한 집단으로 묶는 방법


분류와 군집화의 차이를 그림으로 간단히 나타내보면 다음과 같습니다.



첫번째 그림에서는, 각 데이터들이 주황색/초록색/파란색 이라는 색깔로 라벨링된 사전 정보가 존재합니다. 
이러한 라벨링된 데이터들의 분포에서 비슷한 집단으로 적당하게 분류하는 것이 필요한데, 이 때는 Classification (분류) 을 사용합니다.

한번 두번째 그림에서는, 각 데이터들이 어떤 소속집단을 가지는지에 대한 사전정보가 존재하지 않습니다.
따라서 이러한 경우에는 라벨링되지 않은 데이터들을 비슷한 집단으로 분류하는 Clustering (군집화) 방법이 필요합니다.