模式识别--K均值聚类简单实现.doc

模式识别--K均值聚类简单实现.doc

ID:55588903

大小:54.00 KB

页数:4页

时间:2020-05-19

模式识别--K均值聚类简单实现.doc_第1页
模式识别--K均值聚类简单实现.doc_第2页
模式识别--K均值聚类简单实现.doc_第3页
模式识别--K均值聚类简单实现.doc_第4页
资源描述:

《模式识别--K均值聚类简单实现.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验三K均值算法一、实验目的:1.对动态聚类算法有一个初步的理解,能够根据自己的设计对K均值算法有一个深刻地认识;2.理解聚类准则。二、实验条件:1.PC微机一台和MATLAB软件。三、实验原理:给定一个数据点集合和需要的聚类数目k,k由用户指定,k均值算法根据某个距离函数反复把数据分入k个聚类中。实验步骤:已知样本集合是d维特征向量,j=1,2,…,n;已知类别数K和初始聚类中心的距离;相似性测度可以采用欧氏距离;聚类准则采用误差平方和准则,其准则函数为是第i类的聚类中心。步骤如下:1)初始化:给定类别数K,初始化聚类中心2)第次迭代的修正:逐个将样本按照最

2、小距离原则分配给K个聚类中心的某一个。若,则是聚类中心为的样本集。3)计算新的聚类中心:其中为第一个聚类所包含的样本个数。用均值向量作为新的聚类中心,可使准则函数最小。4)若令转(2);将样本逐个重新分类,重复迭代计算。若算法收敛,计算完毕。一、实验内容:1)用MATLAB得出30个随机二维向量2)通过K均值算法kmeans对30个随机二维向量进行分类二、实验程序及结果:clc;clear;x1=1.2*randn(10,1)+3y1=1.1*randn(10,1)+3a=[x1,y1];x2=1.2*randn(10,1)+6y2=1.1*randn(10,

3、1)+6b=[x2,y2];x3=1.2*randn(10,1)+9y3=1.1*randn(10,1)+9c=[x3,y3]figure(1);plot(x1,y1,'k.',x2,y2,'k.',x3,y3,'k.');%用黑点画出30个随机点;X=[a;b;c][idx,c]=kmeans(X,3)%kmeans进行分类figure(2);plot(X(idx==1,1),X(idx==1,2),'r.')%用红点画出第一类holdonplot(X(idx==2,1),X(idx==2,2),'b.')%用蓝点画出第二类holdonplot(X(idx=

4、=3,1),X(idx==3,2),'g.')%用绿点画出第三类效果图:一、实验总结:通过本次实验我进一步熟悉了K均值算法的相关知识。此外还在一定程度上锻炼了我的编程能力及对matlab的使用。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。