如何分析没有真实标签的聚类的完整性?

Posted

技术标签:

【中文标题】如何分析没有真实标签的聚类的完整性?【英文标题】:How to analyse the integrity of clustering with no ground truth labels? 【发布时间】:2018-12-22 21:31:39 【问题描述】:

我正在对数据进行聚类(尝试多种算法)并尝试评估每种算法生成的聚类的一致性/完整性。我没有任何基本事实标签,这排除了很多用于分析性能的指标。

到目前为止,我一直在使用 Silhouette score 和 calinski harabaz score(来自 sklearn)。然而,有了这些分数,我只能比较集群的完整性,如果我的算法生成的标签建议至少有 2 个集群 - 但我的一些算法建议一个集群是最可靠的。

因此,如果您没有任何基本事实标签,您如何评估算法提出的聚类是否比所有数据都分配在一个聚类中更好?

【问题讨论】:

【参考方案1】:

不要仅仅依赖一些启发式方法,因为有人提出了一个非常不同的问题。

聚类的关键是仔细考虑你正在处理的问题。提出数据的正确方法是什么?如何缩放(或不缩放)?如何以量化对您的领域有意义的事物的方式衡量两条记录的相似性。

这与选择正确的算法无关;你的任务是做数学,将你的领域问题与算法的作用联系起来。不要把它当作一个黑匣子。根据评估步骤选择方法是行不通的:已经太晚了;您可能已经在预处理中做出了一些错误的决定,使用了错误的距离、缩放和其他参数。

【讨论】:

【参考方案2】:

如果您正在寻找除您提到的指标之外的更多无监督聚类指标(为了更确定您的发现),可以尝试以下指标:

差距统计:您可以查看paper here,这里是an implementation。 邓恩指数:您可以阅读更多相关信息 here 和 here。我在 Python 中找到了两个实现 here 和 here。 Davies-Bouldin 指数:您可以阅读有关指标 here、here 和 here 的更多信息。我找到了一个实现 here 和 here。

【讨论】:

以上是关于如何分析没有真实标签的聚类的完整性?的主要内容,如果未能解决你的问题,请参考以下文章

数据挖掘中分类、预测、聚类的定义和区别。

吴恩达《机器学习》课程总结(13)聚类

吴恩达《机器学习》课程总结(13)_聚类

比较具有基本事实的聚类

监督聚类 - 评估每个真实标签的指标?

K-means