通过距离矩阵进行聚类评价(内部指标)

在评价聚类效果中,分为内部指标和外部指标两类。当没有真实聚类标签时,通常采用内部指标进行评价,采用的内部指标主要有轮廓系数、方差比、DB指数三类。本文直接利用距离矩阵对轮廓系数和DB指数进行计算。

注意:聚类中心选取:下文采用距离所有类内样本最近的样本作为聚类中心,sklearn等官方采用类内平均值作为聚类中心

轮廓指数

计算流程:

  1. 计算样本i到组内其他样本平均距离a(i),
  2. 通过样本i到簇中心点距离得到距离样本i最近距离的簇,计算该点到最近簇中所有样本平均距离b(i)
  3. 计算样本轮廓系数 s(i) = (b(i)-a(i))/max(b(i), a(i))
  4. 计算总轮廓系数 s = 1/n*sum(s(i))
def silhouette_score_by_maxtrix(dis_matrix, label):
  s_sum = 0
  for i in rang

你可能感兴趣的:(聚类,矩阵)