K-Means - 为啥最佳聚类数随轮廓分析而变化?

Posted

技术标签:

【中文标题】K-Means - 为啥最佳聚类数随轮廓分析而变化?【英文标题】:K-Means - Why the optimal number of cluster is varying with Silhouette Analysis?K-Means - 为什么最佳聚类数随轮廓分析而变化? 【发布时间】:2022-01-19 09:06:11 【问题描述】:

我正在使用 K-means 聚类中的轮廓分析,使用在这里找到的代码:

https://medium.com/@cmukesh8688/silhouette-analysis-in-k-means-clustering-cefa9a7ad111

但是,当我运行代码(使用我自己的数据框)时,我得到了不同的结果。在某些情况下,我会得到

集群的最佳数量是 2,而其他集群是 5。谁能解释为什么会发生这种情况?

【问题讨论】:

【参考方案1】:

KMeans 算法在执行梯度下降之前开始设置随机聚类中心。

由于算法的随机性,您的数据可能不太适合使用它。

尝试在每次迭代时将随机状态设置为 0 来执行分析,例如:

km = KMeans(n_clusters=k, random_state=0)

这会导致相同的最优吗?

【讨论】:

以上是关于K-Means - 为啥最佳聚类数随轮廓分析而变化?的主要内容,如果未能解决你的问题,请参考以下文章

您使用啥方法来选择 k-means 和 EM 中的最佳聚类数?

实施肘部方法以找到 R 中 K-Means 聚类的最佳聚类数 [关闭]

K-Means聚类若干问题

层次聚类:确定最佳聚类数并统计描述聚类

第十四章聚类方法.14.2.4确定最佳聚类数

聚类算法(K-means聚类算法)