Scikit-learn:用于集群评估的 ARI 分数

Posted

技术标签:

【中文标题】Scikit-learn:用于集群评估的 ARI 分数【英文标题】:Scikit-learn: ARI score for cluster evaluation 【发布时间】:2020-06-27 23:52:17 【问题描述】:

我正在计算 evaluating the cluster performance 的调整后兰德指数分数。假设,真实的集群和预测的集群如下所示。 i, "x" 格式表明元素 "x" 位于 ith 簇中。

>>> labels_true = [0,"a", 0,"b", 0,"c", 1,"d", 1,"e", 1,"f"]
>>> labels_pred = [0,"a", 0,"b", 1,"c", 1,"d", 2,"e", 2,"f"]
>>> metrics.adjusted_rand_score(labels_true, labels_pred)

ARI 分数即将达到 1.0,但它似乎不应该是 1.0,因为预测的集群与真实的集群不同。

我想知道这是否是计算 ARI 分数的有效方法。

【问题讨论】:

【参考方案1】:

您只需将标签放在 ARI 分数函数中:labels_true = [0, 0, 0, 1, 1, 1]labels_pred = [0, 0, 1, 1, 2, 2]metrics.adjusted_rand_score(labels_true, labels_pred)

【讨论】:

以上是关于Scikit-learn:用于集群评估的 ARI 分数的主要内容,如果未能解决你的问题,请参考以下文章

聚类的外部指标(Purity, ARI, NMI, ACC) 和内部指标(NCC,Entropy,Compactness,Silhouette Index),附代码 (Python 和 Matlab)

scikit-learn 中常用的评估模型

根据 Pairs 评估 Scikit-learn 中的聚类

如何在 Python 中使用带有 Keras 的 scikit-learn 评估指标函数?

如何使用scikit-learn中的持久性模型计算评估指标

评估 scikit-learn GridSearchCV 中交叉验证分数的平均值、标准差