机器学习——K-means算法

K-means是一种经典的聚类算法,属于机器学习中的无监督学习。算法通过迭代将数据分配到k个聚类中,目标是最小化样本点与簇中心的距离之和。其特点包括简单高效、需要指定群数k、结果可能为局部最优以及初始中心点选择的影响。文章通过实例展示了算法过程,并提供了测试数据集链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、K-Means算法简介

       聚类是一个将数据集中在某些方面相似的数据成员进行分类组织的过程,聚类就是一种发现这种内在结构的技术,聚类技术属于机器学习中的无监督学习。k-means聚类是最著名的划分聚类算法,由于简洁和效率使得他成为所有聚类算法中最广泛使用的。给定一个数据点集合和需要的聚类数目k,k由用户指定,k均值算法根据某个距离函数反复把数据分入k个聚类中。

  二、算法基本思想

       k-means算法比较简单。在k-means算法中,用cluster来表示簇;容易证明k-means算法收敛等同于所有质心不再发生变化。基本的k-means算法流程如下:

  1. 选取k个初始质心(作为初始cluster,每个初始cluster只包含一个点);
  2. repeat:
  3.           对每个样本点,计算得到距离最近的质心,将其类别标为该质心所对应的cluster;
  4.           重新计算k个cluster个对应的质心(质心是cluster样本点的均值);
  5. until 质心不再发生改变;

k-means的目标函数:

          K-measn的目标是最小化畸变(样本点与簇中心的距离之和):

                                                         \underset{S}{arg min}\sum_{i=1}^{k}\sum_{x_{j}\in S_{i}}\left \| x_{j} -\mu _{i}\right \|^{2}                   

S表示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值