基于Matlab环境下的K均值聚类算法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于Matlab环境下的K均值聚类算法
摘要:为了将模式识别方法与图像处理技术相结合,掌握利用均值聚类算法进行图行处理,往往能得到比较好的处理结果,本文在matlab环境下,对有效图像点进行K均值聚类算法,与传统K近邻聚类方法比照,得出了比较好的实验效果。
关键词:K均值聚类算法matlab 图像
引言
k-means算法,也被称为k-平均或k-均值,是一种得到最广泛使用的聚类算法。它是将各个聚类子集内的所有数据样本的均值作为该聚类的代表点,算法的主要思想是通过迭代过程把数据集划分为不同的类别,使得评价聚类性能的准则函数达到最优,从而使生成的每个聚类内紧凑,类间独立。
1、K-均值聚类的分析
K-均值聚类的目的是将数据拆成K个不同的群组,该算法的特点是运算结果受到所选择的聚类中心数目、初始位置、模式样本的几何性质以及读入次序的影响。
具体的算法如下:
1、在n维空间中随机生成K个中心点
2、将每个数据项分配给与其距离最近的中心点。
3、将中心点位置移动到所有分配给它的数据项的中心。如果中心点位置没有改变,则结束算法,否则回到第二步。
2、K均值聚类算法与K近邻算法的区别
K近邻算法的基本思想是是使体积为数据的函数,而不是样本N的函数。K-最近邻也是一种用来进行预测的算法。它的工作原理是接受一个用以进行数值预测的新数据项,然后将它与一组已经赋过值的数据项进行比较。算法会从中找出与待预测数据最为接近的K项,并且这K项其求均值以得到最终的结果。优点:能利用复杂函数进行数值预测,又简单易懂,并且我们可以很容易在算法中实现查看用哪些近邻进行预测。缺点:每次进行预测,它都会使用所有的样本,这会导致效率的低下。因此,寻找缩放因子是一种很乏味的事情。
3、K均值聚类法分为如下几个步骤
一、初始化聚类中心
1、根据具体问题,凭经验从样本集中选出C个比较合适的样本作为初始聚类中心。
2、用前C个样本作为初始聚类中心。
3、将全部样本随机地分成C类,计算每类的样本均值,将样本均值作为初始聚类中心。
二、初始聚类
1、按就近原则将样本归入各聚类中心所代表的类中。
2、取一样本,将其归入与其最近的聚类中心的那一类中,重新计算样本均值,更新聚类中心。然后取下一样本,重复操作,直至所有样本归入相应类中。
三、判断聚类是否合理
采用误差平方和准则函数判断聚类是否合理,不合理则修改分类。循环进行判断、修改直至达到算法终止条件。
4、实验步骤及程序
结论
通过本次matlab环境实验下的K均值聚类分析,我们得出了如下结论,K 均值分析法能很好的区分所需要的聚类点,对于我们选择样本点有很好的事例作用。当我们选定一个目标时,我们很容易的找出目标样本点对应仿真图形中的位置,以及聚类点的对应图形中的比例。
参考文献
[1] Rasmussen D,Yager R R.Summary SQL-A fuzzy tool for data mining[J].Intelligent Data Analysis,1977,(1):49~58.
[2] 史峰,王小川,郁磊,等.MATLAB神经网络30个案例分析[M].北京:北京航空航天大学出版社,2010.