13. k_means算法原理及代码实现

本文详细介绍了kmeans聚类算法的原理,包括其基于距离的特点,以及与Mean Shift聚类的区别。算法流程包括选择初始中心点、计算距离并分配簇、更新中心点等步骤。此外,还提供了代价函数的公式和Python代码实现。最后,文章强调了kmeans算法在实际应用中的广泛前景,并分享了完整的实验代码链接。
摘要由CSDN通过智能技术生成

kmeans算法原理及代码实现

完整的实验代码在我的github上👉QYHcrossover/ML-numpy: 机器学习算法numpy实现 (github.com) 欢迎star⭐

kmeans算法原理

在上一篇文章中,我们介绍了Mean Shift聚类算法的原理和代码实现。不同于Mean Shift聚类的基于密度的方法,k均值聚类是一种基于距离的聚类算法。它将数据集划分为k个簇,每个簇包含最接近它们的数据点。与Mean Shift聚类不同,k均值聚类需要事先指定簇的数量k。

该算法的实现过程包括以下几个步骤:

  1. 随机选择k个点作为初始中心点。
  2. 对于每个数据点,计算它与k个中心点的距离,并将其归为距离最近的中心点所在的簇。
  3. 对于每个簇,重新计算它们的中心点。
  4. 重复步骤2和3,直到簇不再发生变化或达到预定的迭代次数。

公式

kmeans算法的代价函数为:

J ( c , μ ) = ∑ i = 1 m ∥ x ( i ) − μ c ( i ) ∥ 2 J(c, \mu) = \sum_{i=1}^{m}\|x^{(i)} - \mu_{c^{(i)}}\|^{2} J(c,μ)=i=1mx(i)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值