K-means: 仅有两个最佳聚类

我在R中运行K-means算法,试图找到最佳的聚类数量k。使用轮廓系数法、间隙统计法和肘部法,我确定最佳聚类数量为2。尽管业务中没有预定义的聚类,但我担心k=2的洞察力不足,这让我产生了一些疑问。

1) 在数据自然聚类方面,k=2的最佳值意味着什么?这是否表明可能没有明显的聚类,或者没有聚类比任何聚类都好?

2) 在k=2时,R平方值较低(0.1)。在k=5时,R平方值明显更好(0.32)。知道k=5不是最佳值,选择k=5的具体权衡是什么?是否意味着你可以增加聚类数量,但它们可能不够明显?

3) 我的样本量n=1000,我有100个变量可供选择,但仅根据领域知识选择了5个。增加变量数量是否一定会使聚类效果更好?

4) 作为问题3的补充,如果引入一个变量并降低了R平方值,这说明了什么关于该变量的信息?


回答:

我不是专家,但我会尽我所能回答这些问题:

1) 你的最佳聚类数量方法给你了k=2的结果,这表明确实存在清晰的聚类,只是数量较少(2个)。为了帮助理解这一点,尝试使用你对领域的了解来解释,2个聚类在你的领域中是否有意义?

2) 是的,你的理解是正确的。从R平方值的角度来看,最佳解决方案是拥有与数据点一样多的聚类,但这在你进行K-means的目的上并不是最佳的。你进行K-means是为了从数据中获得更有洞察力的信息,这是你的主要目标。因此,如果你选择k=5,你的数据会更好地适应这5个聚类,但正如你所说,它们之间可能没有太大的区别,所以你不会获得任何新的洞察。

3) 不一定,实际上盲目增加变量可能会使情况变得更糟。K-means在欧几里得空间中运行,因此每个变量在确定聚类时都被赋予了相同的权重。如果你添加了不相关的变量,它们的值仍然会扭曲n维空间,使你的聚类效果变差。

4) (请再次检查我的逻辑,我对这一点不是100%确定)如果在相同的聚类数量下引入一个变量并降低了R平方值,那么是的,添加这个变量是有用的,这意味着它与你的其他变量有相关性。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注