- K-means 모델 평가 지표
- Inertia
- Sihouette score
- Mixture of Gaussian 모델 평가 지표
- Information Criterion (AIC, BIC)
1. K-means 모델 평가 지표
1-1. Inertia
Inertia는 각 인스턴스와 해당 인스턴스와 가장 가까운 클러스터 중심까지의 거리 제곱 평균 값입니다.
따라서, 잘 된 클러스터링이라면 inertia가 작아야 하겠죠!
당연하게도 클러스터 수가 늘어날수록 Inertia 값은 감소할수밖에 없고,
이 개념을 이용하여 최적의 클러스터 수를 예상할 수 있습니다.
좀 더 이해를 해보자면,
저기 Elbow 포인트를 최적의 클러스터 수로 잡은 이유는 더이상 Inertia가 눈에 띄게 작아지지 않기 때문입니다.
즉 클러스터를 더 늘려도 큰 의미가 없기 때문에 저 부분을 최적의 클러스터 수라고 추측하는 것입니다.
1-2. Sihouette score
실루엣 스코어는 실루엣 계수들의 평균값입니다.
그럼 실루엣 계수는 뭐냐?
실루엣 계수는 각 인스턴스 별로 구할 수 있는데, 자세한 수식은 아래와 같습니다.
실루엣 계수 = b-a/max(a,b)
a : 같은 클러스터의 다른 인스턴스 까지의 거리 평균
b : 두 번째로 가까운 클러스터의 인스턴스 까지의 거리 평균
여기서 좋은 클러스터링이라면 b는 커야하고(클러스터끼리 멀다), a는 작아야겠죠(클러스터 내 인스턴스끼리 가깝다)?
즉 실루엣 계수는 -1(-a/a)과 +1(b/b) 사이의 값을 가지게 되는데, +1일수록 좋은 클러스터링이라고 할 수 있습니다.
(실루엣 계수가 0인 경우에는 a와 b가 비슷하다는 말이고, 즉 클러스터의 경계에 걸쳐있다는 말과 같습니다.)
실루엣 스코어를 한 눈에 시각화 하면 다음과 같습니다.
위 표를 보면 각 클러스터별 인스턴스의 수, 실루엣 계수 분포 등을 한 눈에 볼 수 있습니다.
예를들어 클러스터 수가 4인 경우(k=4), 클러스터 1에 인스턴스가 가장 많고,
클러스터 2를 제외한 나머지 클러스터들의 실루엣 계수가 실루엣 스코어보다 높게 측정됩니다.
즉 대체적으로 클러스터 내부의 인스턴스끼리 잘 뭉쳐있고,
서로 다른 클러스터끼리는 잘 떨어져 있다는 사실을 추측할 수 있습니다.
2. Mixture of Gaussian 모델 평가 지표
2-1. Information Criterion (AIC, BIC)
MoG의 경우에는 Likelihood의 개념을 먼저 알아야 합니다.
아래 그림을 보며 쉽게 설명해보겠습니다.
위 그림의 각 likelihood 는 f(x1) + f(x2) + f(x3) 이고,
x1, x2, x3에 대해 likelihood가 더 높은 것은 주황색 분포입니다.
즉 주황색 분포에서 x1, x2, x3 가 더 높은 확률로 관측된다는 말과 같습니다.
이렇게 양 옆으로 평행이동 하며 likelihood가 가장 높은 순간을 찾고자 하는데,
그 값을 구하는 과정이 바로 maximum likelihood estimate (MLE) 라고 합니다.
(참고로 x1, x2, x3 의 평균 값을 평균으로 하는 분포가 likelihood가 최대가 되는 값입니다)
아무튼 MoG는 이런 likelihood의 성질을 이용하여 최적의 파라미터 (pi, mu, sigma)를 찾고.
그 분포를 이용하여 최적의 클러스터 수를 예상합니다.
이 원리를 간단하게 이해하시고 아래 지표를 보겠습니다.
둘 다 likelihood 값에 -log를 취했습니다.
이로써 AIC 혹은 BIC 값이 작을수록 좋은 클러스터링 모델임을 알 수 있습니다(likelihood는 클수록 좋음).
또한 마지막에 model complexity에 대한 규제 term을 추가해주었는데,
likelihood 측면에서 클러스터 수를 늘리는 것은 절대적으로 좋은 현상이지만
한 편으로는 모델의 복잡도를 높이는 일이기도 하기 때문에 패널티를 부여하는 것으로 이해하면 됩니다.
이를 그래프로 이해해 본다면 아래와 같겠죠?!