首页 > 解决方案 > adjust_rand_score 和adjusted_mutual_info_score 的输入是什么?

问题描述

我阅读了文档,我知道它是 labels_true 和 labels_pred 但它们必须是什么形式?

对于我使用的 labels_pred kmeans.labels_ ,它是一个包含 0、1、2 或 3 的 numpy 数组。对于 labels_true,我使用top100.Genre. Top100 是一个包含不同类型电影的数据框,共有 4 个类型。我在某处读到,我可以只插入这两个标签,并且这两个分数度量将找到一种将数字分配给流派的方法。

这是真的?我得到的值略高于 0(如 0.014),所以这对我来说没什么意义。或者我是否也必须将 top100.Genre 转换为 numpy 数组并将流派的名称更改为 0、1、2 和 3?我将如何分配每个号码?

标签: scikit-learndata-science

解决方案


我认为分数测量会找到一种方法来匹配分配的标签和预测的标签。根据 Scikit-learn 文档,输入应该是一个数组。在这种情况下,为您提到的 0、1、2、3 等类型分配类标签。它们可以随机分配。

Scikit_learn 文档还提到分数不必是完美的 0,而是接近 0。因此 0.014 的分数是可以接受的。

下面的链接有一些很好的信息: https ://esigma6.wordpress.com/2018/11/03/2-3-9-clustering-performance-evaluation/


推荐阅读