kmeans聚类及Matlab实现

本文深入探讨了K均值聚类算法的基本原理、实现步骤,并通过实例展示了如何有效利用该算法进行数据分类。同时强调了初始聚类中心选取的重要性,以及算法效率与分类准确性的关系。

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

kmeans(K均值聚类)是一种常用的聚类算法,因其简单且性能还算良好而受广泛应用。

kmeans聚类的中心思想是:确定k个类,计算模式特征矢量到每个聚类中心的“距离”,将特征矢量归并到距离最小的聚类中心所在的类中。把每一类的平均向量特征的均值作为新的类心。最后,使得样本与类均值的误差平方和最小。

步骤:

1. 初始化。输入矢量特征集的矩阵X,输入指定聚类数目N,随机从X中选取聚类中心C。并设定迭代终止条件即最大迭代次数M和收敛误差容限TH。

2. 进行迭代,按照一定的相似度准则(如最短欧氏距离)将数据分配到最近的类心。迭代结束时,更新类心为每一类的平均向量。

3. 反复执行第二步至满足终止条件。

 

部分代码:

 

 

示例:

1. 初始化中心选取恰当,分类正确


2.初始化中心选取不合适,导致分类不正确:

 

也就是kmeans聚类,算法的效率及有效性与初始聚类中心的选取有关,如果选取的不恰当,可能会出现错误分类甚至无法分类的情况。因此在使用该算法的时候,要注意选取初始聚类中心:

(1)将模式随机分为k类,计算每类中心。

(2)选择k个密度集中的点作为聚类中心。

(3)选择相距最远的特征点中的k个作为类心。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值