kmeans中的k的含义_K-means聚类算法中的K如何确定?

直接引用一下普林斯顿课程COS-424中“Interacting With Data”这篇文章,里面用一个例子解释了如何选择聚类算法中的K值(课程资料见文末参考材料)。

在聚类分析中如何选择k值,对于很多工作都是一个棘手的问题,目前大家还没有达成一致的解决方案,有时只是随意来声明一个K值,有时问题会帮我们决定k的取值。集群数量具有自然价值,但总的来说,这个概念定义不明确。

假设有一个K=4的聚类任务,结果显示如下:

现在我们讨论一下,当簇数增加时会发生什么?可能有以下情况:第五聚类簇所含数据点很小或者为空,在这种情况下,目标函数几乎保持不变。

第五聚类簇的聚类中心在数据图的中心,此时,第五个聚类簇会从所有其他聚类簇中提取一部分点。在这种情况下,目标函数会减少,因为如果没有其他方法,这些点将不会转移到新的均值,而我们仍将处于第一种情况。但是,有很多点离聚类均值还很远。

某个聚类簇会一分为二。在这种情况下,由于所有点都接近均值,因此我们降低了目标函数。同时,因为所有点都将更接近均值,所以与前两个方法相比,这是一个更好的选择。在这种情况下,与第二种情况相比,会影响到更多的数据点,且会降低平均的聚类距离之和。

K值的增加和分类图的变化如下:

k=5:

k=6

k=7

k=8

从上面一系列图中可以看出,聚类簇数K从4增加到5、6、7和8的效果。我们发现,在所有这些情况中,一个集群都被细分为两个。

当我们针对聚类数绘制目标函数时,我们会注意到k = 3和k = 5之间的两段下降,从中可以看出4是正确的群集数。这是因为,当k从3增加到4时,目标函数的减小远大于k从4增加到5时目标函数的减小,且k=4时目标函数处于一个相对较小的位置。

参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值