MachineLeaning

Unsupervised Learning - Clustering ( KMeans, Hierarchical, DBSCAN)

MathematiciantoDatascientist 2021. 9. 1. 18:37

Clustering

 

데이터의 유사성을 측정하여 유사성이 높은 대상 집단을 분류하는 방법으로 이전 Classification 과는 다르게 label (정답)이 존재하지 않는 데이터로 결과를 산출한다.

 

Types of Clustering

 

1. K Means Clustering 

 

K 개의 군집을 사용자가 미리 설정하고 각 데이터 포인트에 대하여 가장 가까운 중심점을 찾고, 그 중심점에 해당하는 군집을 할당한다. 할당된 군집을 기반으로 새로운 중심을 계산하는데 이 때 각 군집의 할당에 변화가 없으면 종료한다.

중심점 : 군집 내부의 좌표의 평균(Mean)

 

최적의 K를 찾아가는 과정 ?

Elbow method : 군집간 분산과 전체 분산의 비율로 추정한다. 비율의 한계 비용 (Margin Cost) 이 줄어드는 지점의 최적의 클러스터 갯수

 

Silhouette Method (PDF 참조)

 

Extra) K - Medoids clustering

 

K Means 에서 중심점을 Mean 이 아닌 Median 으로 설정한 것이 차이점이고 이것으로 이상치(Outlier) 에 K-Means 보다 덜 민감하다.

 

2. Hierarchical Clustering

 

개체들을 가까운 집단으로 부터 순차적 / 계층적으로 차근차근 묶어가는 방식. 사전의 K의 설정이 필요하지 않다. / dendogram 시각화 가능

 

유사도 행렬을 이용하여 거리에 따른 순차적 군집화 (이때, Cluster 간 거리에 대한 기준 Min, Max, Ward's method 등은 PDF 를 참조하길 바란다.)

3. DBSCAN (Density - based Spatial clustering of Applications with Noise)

 

Eps-neighbors 와 MinPts 사용하여 군집을 생성

 

Eps-neighbors : 한 데이터를 중심으로 epsilon 거리 이내의 데이터들을 하나의 cluster로 구성

 

MinPts : 하나의 cluster 는 MinPts 보다 많거나 같은 수의 데이터로 구성된다. 만약 MinPts 보다 적은 수의 데이터가 eps-neighbors 형성하면 노이즈로 취급한다.

 

Clustering 이외에도 Outlier detection 의 분야에서도 사용된다. 이런 이유로 곧 있을 Resampling 과정에서도 사용된다...

 

Clustering.pdf
1.22MB
DBSCAN.ipynb
1.16MB
K Means Clustering.ipynb
0.24MB
Hierarchical Clustering.ipynb
0.13MB