关闭

[置顶] 无监督聚类算法该如何评价

标签: 机器学习无监督学习
5818人阅读 评论(20) 收藏 举报
分类:

       学过机器学习的小伙伴应该都很清楚:几乎所有的机器学习理论与实战教材里面都有非常详细的理论化的有监督分类学习算法的评价指标。例如:正确率、召回率、精准率、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

8
1
查看评论

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

无监督学习、聚类聚类是在样本没有标注的情况下,对样本进行特征提取并分类,属于无监督学习的内容。有监督学习和无监督学习的区别就是需要分析处理的数据样本是否事先已经标注。如下图,左边是有监督,右边是无监督: 应用场景也有所不同。无监督学习主要用于特征提取分类,其应用场景举例:将市场买家...
  • lonelyrains
  • lonelyrains
  • 2015-11-02 23:00
  • 5873

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

机器学习的常用方法,主要分为有监督学习(supervised learning)和无监督学习(unsupervised learning)。监督学习,就是人们常说的分类,通过已有的训练样本(即已知数据以及其对应的输出)去训练得到一个最优模型(这个模型属于某个函数的集合,最优则表示在某个评价准则下...
  • chaoping315
  • chaoping315
  • 2013-06-27 14:28
  • 10087

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

聚类是一个把数据对象集划分成多个组或簇的过程,使得簇内的对象具有很高的相似性,但与其他簇中的对象很不相似。通常涉及距离度量。数据对象的簇可以看做隐含的类。在这种意义下,聚类有时又称自动分类。聚类可以自动地发现这些分组,这是聚类分析的突出优点。 聚类被称做无监督学习,因为没有提供类标号信息。由于这种...
  • American199062
  • American199062
  • 2016-05-22 14:27
  • 7480

什么是无监督学习(监督学习,半监督学习,无监督聚类)?

作者:王丰 链接:https://www.zhihu.com/question/23194489/answer/25028661 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 这个问题可以回答得很简单:是否有监督(supervised),就看输...
  • PacosonSWJTU
  • PacosonSWJTU
  • 2017-04-16 12:19
  • 1322

『工作』风控——无监督聚类和有监督聚类的思考

最近被调到了新的项目里的风控部,主要负责项目的交易行为的风控,也就是对客户的交易行为进行识别并进行反欺诈,使用的方法主要是数据挖掘里的聚类,未来可能还会使用到时间序列或其它方法,而我个人则希望有一天能够使用深度学习的方法。         由于项目尚未上线,...
  • Sbtgmz
  • Sbtgmz
  • 2016-11-18 15:04
  • 975

无监督分类算法 之 聚类

无监督分类算法 之 聚类标签
  • sinat_33761963
  • sinat_33761963
  • 2016-06-28 20:35
  • 1332

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

标签(空格分隔): 王小草机器学习笔记1. 聚类的概述存在大量未标注的数据集,即只有特征,没有标签的数据。 根据这些特征数据计算样本点之间的相似性。 根据相似性将数据划分到多个类别中。 使得,同一个类别内的数据相似度大,类别之间的数据相似度小。2. 相似性的度量方法2.1 欧式距离欧氏距离指的...
  • sinat_33761963
  • sinat_33761963
  • 2016-12-08 16:48
  • 2832

无监督聚类算法

  • 2017-08-03 09:38
  • 1.48MB
  • 下载

Stanford机器学习---第九讲. 聚类

本栏目(Machine learning)包括单参数的线性回归、多参数的线性回归、Octave Tutorial、Logistic Regression、Regularization、神经网络、机器学习系统设计、SVM(Support Vector Machines 支持向量机)、聚类、降维、异常检...
  • abcjennifer
  • abcjennifer
  • 2012-08-28 13:51
  • 23627

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

监督学习(supervised learning):通过已有的训练样本(即已知数据以及其对应的输出)来训练,从而得到一个最优模型,再利用这个模型将所有新的数据样本映射为相应的输出结果,对输出结果进行简单的判断从而实现分类的目的,那么这个最优模型也就具有了对未知数据进行分类的能力。在社会中,我们在很小...
  • songying2012
  • songying2012
  • 2016-07-06 16:00
  • 5927
    机器学习公众号

    关注微信公众号,专

    为机器学习入门者
    个人资料
    • 访问:228382次
    • 积分:4739
    • 等级:
    • 排名:第7252名
    • 原创:115篇
    • 转载:14篇
    • 译文:3篇
    • 评论:787条
    博客专栏
    最新评论