欢迎来到天天文库
浏览记录
ID:22287626
大小:330.34 KB
页数:12页
时间:2018-10-28
《数据聚类实验报告(附代码)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、实验题目:〔据聚类实验1实验目的(1)了解常用聚类算法及其优缺点;(2)掌握k-means聚类算法对数据进行聚类分析的基木原理和划分方法。(3)利用k-means聚类算法对“ch7iris,txt"数据集进行聚类实验。(4)熟悉使用matlab进行算法的实现。2实验步骤2.1算法原理聚类就是按照某个特定标准(如距离准则)把-个数据集分割成不同的类或簇,使得同-个簇内的数据对象的相似性尽可能大,同时不在同一个簇巾的数据对象的差异性也尽可能地大。即聚类后同一类的数据尽可能聚集到一起,不同数据尽量分离。k-means是划分方法屮较经典的聚类算法之一。由于该算法的效率高,所以在对大规模
2、数据进行聚类时被广泛应用。目前,许多算法均围绕着该算法进行扩展和改进。k-means算法以k为参数,把n个对象分成k个簇,使簇内具有较高的相似度,而簇间的相似度较低。k-means算法的处理过程如下:首先,随机地选择k个对象,每个对象初始地代表了一个簇的平均值或中心;对剩余的每个对象,根据其与各簇中心的距离,将它赋给最近的簇;然后重新计算每个簇的平均值。这个过程不断重复,直到准则函数收敛。通常,采用平方误差准则,其定义如下:
3、2,这里E是数据集中所有/=1pcCf对象的平方误差的总和,p是空间屮的点,m,.是簇Cz的平均值。该Fife函数使生成的簇尽可能紧凑独立,使用的距离度量
4、是欧儿里得距离,当然也可以用其他距离度呈。本实验便釆用k-means聚类方法对样本数据对象进行聚类。该方法易实现,对不存在极大值的数据有很好的聚类效果,并且对大数据集有很好的伸缩性。2.2算法流程本实验采用的是k-means聚类算法,类中心的选择基于簇中对象的平均值。(1)获取用户的类中心数目k和具有n个对象的数据集;(2)任意选取k个对象作为初始的簇中心;(3)根据簇屮对象的平均伉,将每个对象重新赋给最类似的簇;(4)更新簇的平均值,即类中心,重新计算每个簇中对象的平均值;(5)如果新的平均值发生改变,转至(2)步;(6)新的平均值不在发生改变,算法聚类结朿。2.2算法流程图
5、开始选择k位,选取k个对象作为平均值聚类图1k-means算法流程图k-means算法流程亂如阁1所示。k-means算法屮的k,巾用户输入,最终得到的类别数即为用户输入的数目。聚类过程屮,涉及到初始类屮心的选择。在程序屮,对于类中心,是选择前k个作为初始类中心,对于数据的组织,前k个数据有较大差别,可以提高程序的运行效率和分类结果的准确率。3实验结果分析在实验中,利用k-means聚类算法对“ch7iris,txt”数据集进行聚类实验。当k=3时,k-means算法聚类效果如图2所示:Figure1FileIEditViewInsertToolsDesktopWindowHe
6、lp□己d4fe«®€X,S□S■*r0.90.80.70.60.50.4^0.30.20.10来来来来来来来来来来来来来来来来来来来来来来**来来*来来睾来*来*来****来来来*来*劣劣类劣劣类来来来睾睾来来睾来来来来睾来来来来来来来来来朱来来來*来*来来来来来来来来0.20.40.60.8图2k=3时聚类效果当k=4时,k-means算法聚类效果如图3所示:Figure1
7、File]EditViewInsertToolsDesktopWindowHelp□ad«®ds□ili10.90.80.70.60.50.30.20.1011T来来来■来来来来一来来来一来来来*来
8、来来来-来来来来来来来**来来来来-来来来来来睾来来来来*-来来来*来*^来来来来来来来来来来来来+睾来来_来来来lx>Jxz*JS/JSzJS来来、来来来+来来来-来来来来来+来来来来来一来来来来来来*■来来来来来来来来11
9、0.20.40.60.8图3k=4时聚类效果K-means聚类算法的收敛性和初值的选取有关。初始的聚类屮心的不同,对聚类结果没有很大的影响,而对迭代次数有显著的影响。数据的输入顺序不同,同样影响迭代次数,而对聚类结果没有太大的影响。4实验结论K-means聚类算法对于类别数的选择k值有较商的要求,如果类别数较少,则不能区分数据。K-means聚类算法找
10、出平均误差最小的k个划分。当结果簇是密集的,而簇与簇之间的区别明显吋,它的效果较好。该算法只有在簇的平均值被定义的情况下j能使用。对于初始类中心的选择,特别重要。对于分类的准确度和距离影响明显。而且该算法对孤立点是敏感的。所以如果数据集中存在有极大值的对象,应该消除这种敏感性。5实验心得体会1、初始值可的选取K-means聚类算法对于类别数目的选择,耑要使用该算法的人员对于数据分类有一定的了解,并且川以根据观察部分原始抽样数据,得出该样本数据的大致类别数目,否则,应用该方法的聚类可能会出现较
此文档下载收益归作者所有