6.2.3 클러스터 평가하기
클러스터링의 목표는 서로 다른 특성을 가진 데이터 포인트들을 분리해서 각 클러스터에 할당하는 것입니다. 이는 다음과 같은 내용을 의미합니다.
• 같은 클러스터에 할당된 데이터 포인트들은 가능한 서로 비슷해야 합니다.
• 다른 클러스터에 할당된 데이터 포인트들은 가능한 서로 달라야 합니다.
클러스터링 결과를 시각화해서 육안으로 품질을 평가할 수도 있지만, 수학적 방법으로도 그 성능을 정량화할 수 있습니다. 실루엣 분석(silhouette analysis)은 k-평균 알고리즘을 이용해 만든 클러스터가 얼마나 뭉쳐 있고 분리되어 있는지 평가하는 기법입니다. 실루엣 분석은 특정 클러스터의 각 데이터 포인트가 다른 클러스터에 속한 포인트와 얼마나 가까운지 보여주는 플롯을 그립니다. 실루엣 점수는 보통 [0, 1] 사이에 위치하며 다음과 같이 해석할 수 있습니다.
▼ 표 6-2 클러스터링 평가 기준
값 |
범위 |
클러스터링 품질 설명 |
0.71-1.0 |
상 |
클러스터들이 서로 상당히 분리되어 있습니다. |
0.51-0.70 |
중 |
클러스터들이 서로 어느 정도 분리되어 있습니다. |
0.26-0.50 |
하 |
클러스터가 만들어지기는 했으나 그 결과를 신뢰하기 어렵습니다. |
<0.25 |
클러스터가 발견되지 않음 |
입력한 파라미터와 데이터를 이용해 클러스터링하는 데 실패했습니다. |
각 클러스터마다 다른 점수를 갖는다는 점을 유의하세요. 또한, 데이터 포인트가 잘못된 클러스터에 할당된 경우 실루엣 점수가 최하 -1을 기록할 수 있습니다. 자세한 내용은 sklearn의 공식 문서(https://scikit-learn.org/stable/modules/generated/sklearn.metrics.silhouette_score.html)를 참조하세요.