군집분석은 머신러닝의 대표적인 방법이다.
- 머신러닝의 종류로 supervised learning, 지도학습(라벨이 있는 데이터로 학습시키는 경우)와 unsupervised learning, 비지도학습(라벨이 없는 데이터로 구분하는 경우-원래 어떤 클래스에 들어가는지 답이 없는 것)
- 군집분석의 종류
- 계층적 군집분석: 군집의 개수를 모르는 경우에, 군집의 개수를 결정하기 위해 사용되기도 한다.
- 군집분석 vs 요인분석/주성분분석: 요인이나 주성분분석은 유사한 변수를 묶어서 변수의 개수를 줄여나가는 것이고(즉, column의 한 두개의 요인으로 묶는 것) 군집분석은 사람들을 여러개의 군집으로 묶는 것이다(row를 묶는 것)
- 군집분석에서 군집은 거리에 따라서 나뉘어진다. 거리의 개념은 즉, 유사도와 비유사도의 의미이다. 주로 가장 기본적인 피타고라스 정리를 이용한 유클리드 거리(Euclidean distance)를 사용한다. 여기선 측정된 거리 중 가장 최단거리의 두 군집을 하나로 묶는다.
- hard clustering 은 데이터 하나는 하나의 cluster에만 할당되며, 일반적으로 쓰는 종류이다.
- k-means clustering : k개의 군집 수 사전에 결정 -> 군집의 초기값이나 초기분할에 의해 결정된 초기 군집에 개체를 할당 -> k개의 군집의 중심점(centroid)를 계산하여 각 개체를 가장 가까운 군집에 재할당하고 새로운 군집의 중심을 다시 계산하여 다시 재할당을 해야 하는지 판정한다.(euclidean distance이용 일반적으로) ->이를 재할당이 없을때까지 반복한다.
- 군집개수 결정방법: 1)the elbow method 2)shiluett method 3)덴드로그램(두 개씩 묶어서 맨 위까지 묶는 그 그림)