无监督聚类算法该如何评价

原创 2017年07月03日 21:57:29

       学过机器学习的小伙伴应该都很清楚:几乎所有的机器学习理论与实战教材里面都有非常详细的理论化的有监督分类学习算法的评价指标。例如:正确率、召回率、精准率、ROC曲线、AUC曲线。但是几乎没有任何教材上有明确的关于无监督聚类算法的评价指标

       那么学术界到底有没有成熟公认的关于无监督聚类算法的评价指标呢?本文就是为了解决大家的这个疑惑而写的,并且事先明确的告诉大家,关于无监督聚类算法结果好坏的评价指标不仅有,而且还挺多的。接下来我会一一详述!

1、有类标的情况

       既然聚类是把一个包含若干文档的文档集合分成若干类,像上图如果聚类算法应该把文档集合分成3类,而不是2类或者5类,这就设计到一个如何评价聚类结果的问题。下面介绍几种聚类算法的评价指标,看下图:

这里写图片描述

      如图,认为x代表一类文档,o代表一类文档,方框代表一类文档,完美的聚类显然是应该把各种不同的图形放入一类,事实上我们很难找到完美的聚类方法,各种方法在实际中难免有偏差,所以我们才需要对聚类算法进行评价看我们采用的方法是不是好的算法。

1.1 Purity方法

       purity方法是极为简单的一种聚类评价方法,只需计算正确聚类的文档数占总文档数的比例:

purity(Ω,C)=1Nkmaxj|ωkcj|

       其中Ω={ω1,ω2,...,ωk} 是聚类的集合ωk表示第k个聚类的集合。C={c1,c2,...,cj}是文档集合,cj表示第j个文档。N表示文档总数。

如上图的:

purity=(3+4+5)/17=0.71

其中第一类正确的有5个,第二个4个,第三个3个,总文档数17。

       purity方法的优势是方便计算,值在0~1之间,完全错误的聚类方法值为0,完全正确的方法值为1。同时,purity方法的缺点也很明显它无法对退化的聚类方法给出正确的评价,设想如果聚类算法把每篇文档单独聚成一类,那么算法认为所有文档都被正确分类,那么purity值为1!而这显然不是想要的结果。

1.2 RI方法(Rand index兰德指数)

      RI方法实际上这是一种用排列组合原理来对聚类进行评价的手段,公式如下:

RI=TP+FPTP+FP+TN+FN

      其中TP是指被聚在一类的两个文档被正确分类了,TN是只不应该被聚在一类的两个文档被正确分开了,FP只不应该放在一类的文档被错误的放在了一类,FN只不应该分开的文档被错误的分开了。对上图

TPFPC(2,6)+C(2,6)+C(2,5)=15+15+10=40

其中C(n,m)是指在m中任选n个的组合数。

TP=C(2,5)+C(2,4)+C(2,3)+C(2,2)=20

FP=4020=20

相似的方法可以计算出:

TN=72FN=24

所以:

RI(20+72)/(20+20+72+24)=0.68

1.3 F值方法

这是基于上述RI方法衍生出的一个方法,

P=TPTP+FP

R=TPTP+FN

Fβ=(β2+1)PRβ2P+R

       RI方法有个特点就是把准确率和召回率看得同等重要,事实上有时候我们可能需要某一特性更多一点,这时候就适合F值方法

2、无类标的情况

       对于无类标的情况,没有唯一的评价指标。对于数据 凸分布 的情况我们只能通过 类内聚合度、类间低耦合 的原则来作为指导思想,如下如:

这里写图片描述

       当然,有这些还不够,对于如下图所示的数据在N维空间中的不是 凸分布 的情况下,此时我们就需要采用另外的一些评价指标。典型的无监督聚类算法也很多,例如基于局部密度的LOF算法,DBSCAN算法等,在此种情况下的聚类效果就非常的优秀。

这里写图片描述这里写图片描述

2.1 Compactness(紧密性)(CP)

这里写图片描述

这里写图片描述

       CP计算每一个类各点到聚类中心的平均距离CP越低意味着类内聚类距离越近。著名的 K-Means 聚类算法就是基于此思想提出的。

缺点:没有考虑类间效果

2.2 Separation(间隔性)(SP)

这里写图片描述

SP计算 各聚类中心两两之间平均距离,SP越高意味类间聚类距离越远

缺点:没有考虑类内效果

2.3 Davies-Bouldin Index(戴维森堡丁指数)(分类适确性指标)(DB)(DBI)

这里写图片描述

DB计算 任意两类别的类内距离平均距离(CP)之和除以两聚类中心距离求最大值。DB越小意味着类内距离越小 同时类间距离越大

缺点:因使用欧式距离 所以对于环状分布 聚类评测很差

2.4 Dunn Validity Index (邓恩指数)(DVI)

这里写图片描述

DVI计算 任意两个簇元素的最短距离(类间)除以任意簇中的最大距离(类内)。 DVI越大意味着类间距离越大 同时类内距离越小

缺点:对离散点的聚类测评很高、对环状分布测评效果差



对机器学习,人工智能感兴趣的小伙伴,请关注我的公众号:

这里写图片描述



参考文献:

  1. Yanchi Liu, Zhongmou Li, Hui Xiong, Xuedong Gao, Junjie Wu:
    Understanding of Internal Clustering Validation Measures. 911-916

  2. http://blog.csdn.net/u012102306/article/details/52423074

版权声明:本文为博主原创文章,未经博主允许不得转载。

无监督和有监督算法的区别

监督学习(supervised learning):通过已有的训练样本(即已知数据以及其对应的输出)来训练,从而得到一个最优模型,再利用这个模型将所有新的数据样本映射为相应的输出结果,对输出结果进行简...

无监督学习中的常用聚类算法总结

聚类是一个把数据对象集划分成多个组或簇的过程,使得簇内的对象具有很高的相似性,但与其他簇中的对象很不相似。通常涉及距离度量。数据对象的簇可以看做隐含的类。在这种意义下,聚类有时又称自动分类。聚类可以自...

王小草【机器学习】笔记--无监督算法之聚类

标签(空格分隔): 王小草机器学习笔记1. 聚类的概述存在大量未标注的数据集,即只有特征,没有标签的数据。 根据这些特征数据计算样本点之间的相似性。 根据相似性将数据划分到多个类别中。 使得,同...

聚类的评价指标(无监督学习)

详细理论说明,可以查看其他博客:# coding:utf-8from sklearn import metrics""" 聚类性能评估 """ """ 1、Adjusted Rand ...

聚类——监督学习与无监督学习

机器学习的常用方法,主要分为有监督学习(supervised learning)和无监督学习(unsupervised learning)。监督学习,就是人们常说的分类,通过已有的训练样本(即已知...

非监督学习之k-means聚类算法——Andrew Ng机器学习笔记(九)

写在前面的话在聚类问题中,我们给定一个训练集,算法根据某种策略将训练集分成若干类。在监督式学习中,训练集中每一个数据都有一个标签,但是在分类问题中没有,所以类似的我们可以将聚类算法称之为非监督式学习算...

机器学习(十六)无监督学习、聚类和KMeans聚类

无监督学习、聚类聚类是在样本没有标注的情况下,对样本进行特征提取并分类,属于无监督学习的内容。有监督学习和无监督学习的区别就是需要分析处理的数据样本是否事先已经标注。如下图,左边是有监督,右边是无监督...

非监督学习--聚类算法

作者:einyboy or alert俗话说:“物以类聚,人以群分”,在自然科学和社会科学中,存在着大量的分类问题。所谓类,通俗地说,就是指相似元素的集合。 为了进一步理解什么叫做聚类,请看一面的例子...

聚类算法评价指标

一、Not Given Label: 1、Compactness(紧密性)(CP)       CP计算 每一个类  各点到聚类中心的平均距离       CP越低意味着类内...

关于聚类的一些经验及其在R中的实现

1 首先针对数据进行分析,回答下面的问题: 1)想用聚类方法解决什么问题。是想看数据的结构,还是想把数据分为很多类,还是有其他的目的。 2)数据本身的分布。针对样本聚类还是针对变量聚类?样...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:无监督聚类算法该如何评价
举报原因:
原因补充:

(最多只允许输入30个字)