每天五分钟机器学习:如何初始化聚类算法的聚簇中心点?

k-means聚类算法中,初始聚类中心的选择对结果至关重要。通常做法是随机选取K个训练实例作为初始中心,以防止陷入局部最优。由于初始化的不同可能导致不同的聚类结果,为获取最佳效果,可以多次运行算法并比较,选择代价函数最小的方案。对于大值的k,这种方法可能效率不高。
摘要由CSDN通过智能技术生成

本文重点

聚类算法k-means的第一步的是初始化k个聚簇中心,那么现在的问题是如何初始化不同的聚簇中心

具体做法如下:

1. 我们应该选择 K<m,即聚类中心点的个数要小于所有训练集实例的数量

2. 随机选择 K 个训练实例,然后这 K 个训练实例就是这K个聚类中心

k-means的意义

K-均值的一个问题在于,因为随机聚类中心的不同,我们在最小化代价函数J的时候,它有可能会停留在一个局部最小值处,而这取决于初始化的情况。随机初始化聚类中心的不同,我们最终得到的簇也有可能不一样,有时候聚类的效果特别好,但有些时候聚类效果不是很好。

局部最小值

 

全局最小值

解决局部最优问题

如果我们担心K均值算法可能遇到的局部最优问题,如果你想要让我们们k均值算法找到最好的聚类效果,我们能做的就是:

我们通常需要多次运行 K-均值算法,每一次都重新进行随机初始化,最后再比较多次运行 K-均值的结果,选择代价函数最小的结果。这种方法在 k 较小的时候(k<10)还是可行的,但是如果 k 较大,这么做也可能不会有明显地改善。 最终保证我们得到一个最优的结果,一个尽可能局部或者全局最优的结果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

幻风_huanfeng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值