使用 sklearn.cluster.KMeans 和 MiniBatchKMeans 时如何在开始时获取惯性

数据挖掘 scikit-学习 k-均值 评估
2022-02-23 13:57:45

当我对大量数据进行聚类时,很难运行 KMeans 并等待它停止直到中心没有改变,所以我必须在 KMeans 达到最大迭代次数时停止它。问题来了:我如何评估这个 KMeans 对我的数据的影响。我知道在 KMeans 拟合我的数据以查看样本到它们最近的聚类中心的距离总和之后,我可以获得惯性_。但是我怎样才能得到 KMeans 拟合之前的惯性_,我可以将它与 KMeans 拟合之后的惯性_进行比较,这样我就可以看到 KMeans 对我的数据所做的改进。

1个回答

听起来您正在努力处理大型数据集,为此我首先建议切换到mini-batch k-means. 小批量规模更好,因此不会那么令人沮丧。

关于 的先验估计inertia_,我建议使用样本数据集以inertia_适当的误差幅度来近似 。但是,小批量可能只是排除了您对 apriori 的需求inertia_

希望这可以帮助!