数据聚类实验报告记录(附代码)2————————————————————————————————作者:————————————————————————————————日期:3实验题目:数据聚类实验1实验目的(1)了解常用聚类算法及其优缺点;(2)掌握k-means聚类算法对数据进行聚类分析的基本原理和划分方法
(3)利用k-means聚类算法对“ch7iris
txt”数据集进行聚类实验
(4)熟悉使用matlab进行算法的实现
2实验步骤2
1算法原理聚类就是按照某个特定标准(如距离准则)把一个数据集分割成不同的类或簇,使得同一个簇内的数据对象的相似性尽可能大,同时不在同一个簇中的数据对象的差异性也尽可能地大
即聚类后同一类的数据尽可能聚集到一起,不同数据尽量分离
k-means是划分方法中较经典的聚类算法之一
由于该算法的效率高,所以在对大规模数据进行聚类时被广泛应用
目前,许多算法均围绕着该算法进行扩展和改进
k-means算法以k为参数,把n个对象分成k个簇,使簇内具有较高的相似度,而簇间的相似度较低
k-means算法的处理过程如下:首先,随机地选择k个对象,每个对象初始地代表了一个簇的平均值或中心;对剩余的每个对象,根据其与各簇中心的距离,将它赋给最近的簇;然后重新计算每个簇的平均值
这个过程不断重复,直到准则函数收敛
通常,采用平方误差准则,其定义如下:kiCpiimpE12,这里E是数据集中所有对象的平方误差的总和,p是空间中的点,im是簇iC的平均值
该目标函数使生成的簇尽可能紧凑独立,使用的距离度量是欧几里得距离,当然也可以用其他距离度量
本实验便采用k-means聚类方法对样本数据对象进行聚类
该方法易实现,对不存在极大值的数据有很好的聚类效果,并且对大数据集有很好的伸缩性
2算法流程本实验采用的是k-means聚类算法,类中心的选择基于簇中对象的