클러스터링(군집화) 타당성 평가
클러스터링은 정답이 없기 때문에 실제값과 예측값의 오차 또는 단순 정확도 지표로 평가할 수 없다.
군집 간 거리, 군집의 지름, 군집의 분산을 고려하여 클러스터링 목표 달성 여부를 확인할 수 있다.
대표적인 평가 지표로 Dunn Index, Silhouette 지표가 있다.
1. Dunn Index
\[ \text{Dunn Index} = \frac{\min(\text{inter-cluster distances})}{\max(\text{intra-cluster distances})} \]
군집 간 거리의 최소값 / 군집 내 요소 간 거리의 최대값
분자값이 클수록 군집 간 거리가 크고,
분모값이 작을수록 군집 내의 데이터들이 모여 있다.
해당 지표가 클 수록 높은 성능을 나타낸다.
2. 실루엣(Silhouette) 지표
실루엣 지표란?
각 데이터 포인트의 군집 내 응집도와 군집 간 분리도를 측정하여 클러스터링이 얼마나 잘 되었는지를 나타낸다. 실루엣 지표는 -1에서 1 사이의 값을 가지며, 값이 클수록 클러스터링의 품질이 높다.
실루엣 지표의 계산식

- ( a ): 특정 데이터 포인트와 같은 군집 내 다른 데이터 포인트들 간의 평균 거리 (군집 내 응집도)
- ( b ): 특정 데이터 포인트와 가장 가까운 다른 군집의 데이터 포인트들 간의 평균 거리 (군집 간 분리도)
실루엣 지표의 의미
- 1에 가까운 값: 데이터 포인트가 잘 군집화되어 있고, 다른 군집과 잘 분리되어 있음을 의미합니다.
- 0에 가까운 값: 데이터 포인트가 두 군집의 경계에 있음을 의미합니다.
- -1에 가까운 값: 데이터 포인트가 잘못된 군집에 속해 있음을 의미합니다.
왜 1을 넘지 않는가?
실루엣 지표가 1 이상의 값을 가지지 않는 이유는 분모가 항상 분자보다 크거나 같기 때문입니다. 분모는 ( \max(a, b) )로, ( a )와 ( b ) 중 더 큰 값을 사용합니다. 따라서, 실루엣 지표는 항상 -1에서 1 사이의 값을 가지게 됩니다.
예시를 통해 이해하기
- 최대값이 1인 경우: ( b )가 ( a )보다 훨씬 크다면, ( s )는 1에 가까워집니다.
- 예: ( a = 2 ), ( b = 10 )일 때, ( s = \frac{10 - 2}{10} = 0.8 )
- 최소값이 -1인 경우: ( a )가 ( b )보다 훨씬 크다면, ( s )는 -1에 가까워집니다.
- 예: ( a = 10 ), ( b = 2 )일 때, ( s = \frac{2 - 10}{10} = -0.8 )