从霍普金斯系数到k-means聚类再到轮廓系数

霍普金斯系数

目的:在进行数据聚类时,我们要进行评估数据集的聚类趋势,因为我们希望数据是非均匀分布的(均匀分布没有聚类的意义),因此采用霍普金斯统计量,用于检验空间分布的变量的空间随机性,从而判断数据是否可以聚类

霍普金斯系数的计算步骤:

  • 第一步:从所有样本中随机找n个样本点,然后为每一个点在整个样本空间(除了自己)中找到一个离他最近的点,并将并计算它们之间的距离xi,从而得到距离向量x1,x2,…,xn;

img

  • 第二步:从所有样本中随机找n个样本点q1,q2,…qn,对每个点qi(1≤i≤n),找出qi在D-{qi}中的最近邻,并令yi为qi与它在D-{qi}中的最近邻之间的距离,即

img

  • 第三步:计算霍普金斯系数

从霍普金斯系数到k-means聚类再到轮廓系数_第1张图片

如果样本接近随机分布,那么在这里插入图片描述在这里插入图片描述的取值会比较接近,即H的值接近于0.5;如果聚类趋势明显,则随机生成的样本点距离应该远大于实际样本点的距离,即 从霍普金斯系数到k-means聚类再到轮廓系数_第2张图片,H的值接近于1.


k-means聚类

  • 核心思想:一共有M个样本,聚为K类,首先随机抽取K个样本作为初始的K个簇中心的值,随后把所有的样本与k个簇中心求欧氏距离(默认,也可以使用其他距离),选取K个中最短的欧氏距离,把样本放入该簇中,重复,直到所有的样本都划分到K个簇中;随后更更新簇中心(其为簇中所有样本均值)。随后继续把所有样本与更新的k个簇中心求欧氏距离,放入簇中…不断重复,直到簇中心只不变,即可得到K个簇的簇中心。
从霍普金斯系数到k-means聚类再到轮廓系数_第3张图片

​ K-Means算法的伪代码 来源:周志华《机器学习》


轮廓系数

目的:对于进行K-means聚类后,进行评估的标准,其值范围[-1,1],取值越接近1则说明聚类性能越好,相反,取值越接近-1则说明聚类性能越差。

计算公式

a(i):某个样本与其所在簇内其他样本的平均距离。(内聚合度,越小越好)

b(i): 某个样本与其他簇样本的平均距离(可以进行随机采样,外离性,越大越好)

则针对某个样本的轮廓系数s为:
在这里插入图片描述

抽取N个样本,总的轮廓系数为均即可。

你可能感兴趣的:(聚类,机器学习,kmeans)