在前面两篇文章中,笔者已经介绍了两种聚类算法,同时还通过sklearn完成相应的示例。但是,到目前为止笔者还没有介绍如何来聚类的经过进行评估。这接下来的这篇文章中,笔者将会介绍在聚类算法中几种常见的评估指标,以及其中两种相应的原理。同时,如果不用关系其具体计算过程的,可以直接阅读第三部分即可。
如同之前介绍的其它算法模型一样,对于聚类来讲我们同样会通过一些评价指标来衡量聚类算法的优与劣。在聚类任务中,常见的评价指标有:准确率(Accuracy)、F值(F-score)、调整兰德系数(Adjusted Rand Index, ARI)和标准互信息素(Normalized Mutual Info, NMI),而这四种评价指标也是聚类相关论文中出现得最多的评价方法。下面,我们首先将对准去率和F值进行一个介绍,然后再对后面两个指标进行介绍。
1 准确率与F值
准确率与F值这两个评估指标相信大家听起来都不会感到陌生,因为我们在第一次介绍分类算法的时候已经介绍过了这两个指标。既然已经介绍过了为什么这里还要拿出来说呢?这是因为分类中的准确率和F值仅仅只是聚类中的某种情况而已,什么意思呢?
为了能够更加清楚的介绍这两种指标,我们还是以之前的猫狗图片识别的任务场景为例:假设我们现在有猫狗图片100张,其中猫又25张,狗有75张。现在我们通过某种聚类算法对其进行聚类,聚类的结果为簇A中有38张图片(其中20张猫18张狗),簇B中有62张图片(其中5张猫57张狗)。那么请问如何计算该聚类算法的准确率与F值?
由于聚类算法只会将原始数据样本划分为K个簇,但是并不会告诉我们每个簇分别对应那个类别。正如上述聚类结果一样,聚类算法只将这100张图片聚成了A、B两个簇,