【发布时间】:2021-01-27 19:05:56
【问题描述】:
我有一个大型数据集,每个样本都有一个从 0 到 8 的特定类号。我使用了 sklearn python 包中的 K-means 算法。当我多次运行代码时,K-means 的输出是不同的。例如,第 246 个样本在第一次运行中属于集群 3,在第二次运行中属于集群 0。我还附上了一张图片供您参考。
【问题讨论】:
-
你确定cluster_number 3和0不一样吗?
kmeans.cluster_centers_ -
绝对是一样的。但我想通过比较正确的集群 ID 和 k-means 集群 ID 来计算 k-means 性能,因此我需要为我的其余代码提供一个稳定的结果。
-
好吧,它们永远不会或只是偶然,因为算法从随机放置质心开始,然后优化它们的位置。
标签: python scikit-learn cluster-analysis k-means unsupervised-learning