Clustering은 비지도 학습으로, feature 정보들만 있는 데이터를 사용하여 최대한 비슷한 데이터들을 묶어 군집(Cluster)을 만드는 것을 목표로 한다. 반면, 지도 학습에서는 정답인 Y label이 있는 데이터를 사용하며 정답을 맞히는 것을 목표로 한다. 지도 학습은 정답 label을 사용하여 모델의 성능을 평가할 수 있으나, 비지도 학습은 군집화가 잘 된 정도를 평가해야 하기 때문에 비교적 평가가 쉽지 않다.
Cluster validation measure(군집 유효성 지표)
Cluster를 평가하기 위해 다음 지표들을 사용할 수 있다.
- Compactness: Cluster 내 데이터들이 잘 뭉쳐있는 정도를 의미한다.
- Separation: Cluster와 cluster간 잘 분리되어 있는 정도를 의미한다.
- Connectivity: Cluster 내 연결성이 좋은 정도로, 한 곳에 뭉쳐 있지 않아도 근접 데이터 간 연결 이 잘 된 정도를 의미한다.
클러스터링 평가(Cluster evaluation)를 위한 여러 방법들
클러스터링이 잘 된 정도를 평가하기 위하여, compactness와 separation이 잘 된 정도를 확인하는 다음 지표들을 사용해 확인해볼 수 있다.
1. Silhouette coefficient
한 데이터 $i$에 대해서 동일한 cluster 내 점들 과의 평균 거리를 $a_i$, 다른 여러 cluster 중cluster 내 점들 과의 평균 거리가 가장 min값인 $b_i$로 계산할 수 있다. 다음 수식을 사용하여 데이터 $i$가 상대적으로 잘 클러스터화 되었는지를 확인할 수 있다. 값이 1에 가까울수록 잘 클러스터화 되었다고 볼 수 있다.
$S_i = (b_i-a_i)/max(a_i,b_i)$
이는 데이터 차원이 높은 경우에도 사용할 수 있다. 이를 사용하여 개별적인 점들이 cluster내에 있는지 boundary에 있는지를 파악할 수 있다.
2. Dunn index
Dunn index는 다음 두 값을 사용하여 계산할 수 있다.
- min.separation: 모든 Cluster 간 거리 중 가장 짧은 값
- max.diameter: 각각의 Cluster 내 거리 중 가장 큰 값
$D= \frac{min.separation}{max.diameter}$
클러스터링을 처음 적용하였을 때 그 결과 값에 익숙해지면, 점차 이 결과 값이 사실이라는 쪽으로 마음이 기울게 된다. 이에 보다 객관적인 평가 방법을 사용하여 클러스터의 개수가 적정한지, 클러스터링 평가지표가 비교적 괜찮게 나왔는지 확인해볼 필요가 있다.
참고자료:
https://www.datanovia.com/en/lessons/cluster-validation-statistics-must-know-methods/
'IT > ML' 카테고리의 다른 글
은닉 마르코프 모델 예시로 쉽게 이해, HMM(Hidden Markov Model) (0) | 2020.12.12 |
---|---|
EM 알고리즘 예시로 쉽게 이해하기 (Expectation maximization, EM algorithm) (0) | 2020.11.30 |
Hierarchical clustering(계층적 군집화) 예시로 쉽게 이해하기 (0) | 2020.11.19 |
K-Means Clustering(K-평균 군집화) 예시로 쉽게 이해하기 (0) | 2020.11.19 |
SVM 쉽게 이해하기 - (2) Support Vector Machine(서포트벡터머신) (0) | 2020.11.10 |