每个簇的点到各自质心的距离之和, 用于衡量簇的松散度。
S S E = ∑ i = 1 k ∑ p ∈ C i ∣ ∣ p − m i ∣ ∣ 2 SSE = \sum_{i=1}^k\sum_{p\in C_i}||p-m_i||^2 SSE=i=1∑kp∈Ci∑∣∣p−mi∣∣2
二、肘部法(确定K值)步骤:
- 计算k从1到n的的SSE
- SSE会逐渐减小,直到k=n时SSE=0,每个点都是质心
- 在SSE减小过程,会出现拐点,这个拐点就是肘,下降率突然变缓时,就是最佳K值
结合了聚类的凝聚度(Cohesion)和分离度(Separation),用于评估聚类的效果。
S = b − a m a x ( a , b ) S ∈ [ − 1 , 1 ] S = \frac{b-a}{max(a,b)} \qquad S\in[-1, 1] S=max(a,b)b−aS∈[−1,1]
a是 X i X_i Xi与同簇的其他样本的平均距离,称为凝聚度; b是 X i X_i Xi与最近簇(其他簇)中所有样本的平均距离,称为分离度
最近簇定义: C j = arg min C k 1 n ∑ p ∈ C k ∣ p − X i ∣ 2 C_j = \arg \min_{C_k} \frac{1}{n}\sum_{p \in C_k}|p-X_i|^2 Cj=argCkminn1p∈Ck∑∣p−Xi∣2
p是某个簇
C
k
C_k
Ck中的样本。即,用
X
i
X_i
Xi到某个簇所有样本平均距离作为衡量该点到该簇的距离后,选择离Xi最近的一 个簇作为最近簇。 求出所有样本的轮廓系数后再求平均值就得到了平均轮廓系数。 平均轮廓系数的取值范围为[-1,1]
,系数越大,聚类效果越好。 簇内样本的距离越近,簇间样本距离越远
Calinski-Harabasz:类别内部数据的协方差越小越好,类别之间的协方差越大越好,这样的Calinski-Harabasz分 数s会高,分数s高则聚类效果越好。
C H ( k ) = t r ( B k ) t r ( W k ) m − k k − 1 CH(k) = \frac{tr(B_k)}{tr(W_k)}\frac{m-k}{k-1} CH(k)=tr(Wk)tr(Bk)k−1m−k
用尽量少的类别聚类尽量多的样本,同时获得较好的聚类效果。 m为训练集样本数,k为类别数,tr为矩阵的迹。 Bk为类别之间的协方差矩阵,Wk为类别内部数据的协方差矩阵。