聚类之性能度量详解

概念简述

聚类是什么呢?我们都听说过“物以类聚”,即把“志同道合”的 数据分到一起归为一类,不同类之间在”志向“上具有较大分歧。举个栗子,茫茫人生中,我们普通大众会被God根据缘分进行聚类,缘分好的话,会成为朋友,甚至成为了可以互诉衷肠,”余生请指教“的男女盘友,那缘分不好的应该是一生从未谋面或者一面之缘或者是如《再见前任3》中那样成为了最熟悉的陌生人…好像扯远了。
言归正传,用标准的普通话来说,聚类是将数据集中的样本划分为若干个通常是不相交的子集,每个子集成为一个“”,用正规的外星人语言来说,对于样本D={x1,x2,...,xm}包含m个无标记样本,每个样本xi={xi1;xi2;...;xin}是一个n维特征向量,则聚类算法将样本集D划分为k个不相交的簇{Cl|l=1,2,...,k},其中ClllCl=D=l=1kCl,相应地,用λj{1,2,...,k}表示样本xj的“簇标记”,即xjCλj。于是聚类的结果可用包含m个元素的簇标记,记向量λ=(λ1;λ2;...;λm)。举个栗子,对于具有10个样本的数据集D,其中每个样本xi含有2维特征,分成2类的结果如下:
聚类之性能度量详解
聚类通常用来对无标记训练样本的学习来揭示数据内在性质及规律,为进一步的数据分析提供基础,是“无监督学习”中应用最广的研究方法。那么问题来了,如何衡量聚类结果的好坏呢?按照什么样的“缘分”分类呢?官方的话来说聚类有哪些性能度量以及距离计算方法。

性能度量

我们通常按照一个标准来分析聚类之后的结果,简单来说这个标准是“簇内相似度高,簇间相似度低”,下面我们用一堆“指数”,“系数”来数学化引号里面的内容,权当填补那些好奇心强盛的孩纸们…

性能度量分类:

聚类性能度量的主要分为两类,一类是将聚类结果与某个“参考模型”进行比较,成为“外部指标”;另一类是直接考察聚类结果而不用任何参考模型,成为“内部指标”。

  1. 外部指标

“外部指标”通常有Jaccard系数(Jaccard Coefficient,简称JC)、FM系数(Fowlkes and Mallows Index,简称FMI)、Rand指数(Rand Index,简称RI)。

  • JC:
    (1.1)JC=aa+b+c
  • FMI:
    (1.2)FMI=aa+baa+c
  • RI
    (1.3)RI=2(a+d))m(m1)

    假设,数据集D={x1,x2,...,xm},经过聚类后得到的簇划分为C={C1,C2,...,Cs},参考模型给出的簇划分C={C1,C2,...,Cs},相应的,令λλ分别表示与CC对应的簇标记向量,于是abcd定义如下:
    (1.4)a=|SS|,SS={(xi,xj)|λi=λj,λi=λj,i<j}

    (1.5)b=|SD|,SD={(xi,xj)|λi=λj,λiλj,i<j}

    (1.6)c=|DS|,DS={(xi,xj)|λiλj,λi=λj,i<j}

    (1.7)d=|DD|,DD={(xi,xj)|λiλj,λiλj,i<j}

    从上述表达式可知,集合SS包含了在C中隶属于相同簇且在C中也隶属于相同簇的样本对,集合SD包含了在C中隶属于相同簇但在C中隶属于不同簇的样本,集合DS包含了在C中隶属于不同簇但在C中隶属于相同簇的样本,集合DD包含了在C中隶属于不同簇且在C中隶属不同簇的样本,由于每个样本对(xi,xj)(i<j)仅能出现在一个集合中,因此有a+b+c+d=m(m1)/2成立。显然,上述性能度量的结果值均在[0,1]区间,值越大越好。
    2.内部指标
    常用的内部指标有DB指数(Davies-Bouldin Index,简称DBI)和Dunn指数(Dunn Index,简称DI)。
    • DB:
      (2.1)DBI=1ki=1kmaxji(avg(Ci)+avg(Cj)dcen(μi,μj))
    • DI:
      (2.2)DI=min1ik{minji(dmin(Ci,Cj)max1lkdiam(Cl))}

      其中:
      (2.3)avg(C)=2|C|(|C|1)1i<j|C|dist(xi,xj)

      (2.4)diam(C)=maxx1i<j|C|dist(xi,xj)

      (2.5)dmin(Ci,Cj)=minxiCi,xjCjdist(xi,xj)

      (2.6)dcen(Ci,Cj)=dist(μi,μj)

      注意:dist(,)用于计算两个样本之间的距离;μ代表簇C的中心点μ=1|C|1i|C|xiavg(C)对应于簇C内样本间的平均距离,diam(C)对应于簇内最远距离,dmin(Ci,Cj)代表簇Ci与簇Cj内最近样本间的距离,dcen(Ci,Cj)代表簇Ci与簇Cj中心点的距离。显然DBI的值越小越好,而DI则相反,值越大越好。

更多机器学习干货、最新论文解读、AI资讯热点等欢迎关注”AI学院(FAICULTY)
欢迎加入faiculty机器学习交流qq群:451429116 点此进群
版权声明:可以任意转载,转载时请务必标明文章原始出处和作者信息.


参考文献

[1]. 周志华,机器学习,清华大学出版社,2016