《数据挖掘》实验报告
专业班级
计算机2班
实验地点
邱天生202
学生学号
101304057
指导教师
郭淼霞
学生姓名
周杰
实验时间
实验项目
实验2 k 平均算法(K means )
实验类别
操作性() 验证性()设计性()综合性(“)其它()
实 验 目 的 及 要 求
;
2•掌握使用K—平均算法的方法;
成绩评定表
类 另y
评分标准
分值
得分
合计
上机表现
积极出勤、遵守纪律
主动完成实验设计任务
30分
程序代码
比较规范、基本正确 功能达到实验要求
30分
实验报告
及时递交、填写规范 内容完整、体现收获
40分
说明:
评阅教师:
日期:2013年5 月28 日
实验内容
(1) 从n个数据对象任意选择 k个对象作为初始聚类中心;
(2) 循环(3)到(4)直到每个聚类不再发生变化为止;
(3) 根据每个聚类对象的均值(中心对象) ,计算每个对象与这些中心对象的距离;并根 据最小距离重新对相应对象进行划分;
(4) 重新计算每个(有变化)聚类的均值(中心对象) 。
k-means算法接受输入量 k ;然后将n个数据对象划分为 k个聚类以便使得所获得
的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小。聚类相似度 是利用各聚类中对象的均值所获得一个 “中心对象”(引力中心)来进行计算的。k-means算
法的工作过程说明如下:首先从 n个数据对象任意选择 k个对象作为初始聚类中心;而对
于所剩下其它对象,则根据它们与这些聚类中心的相似度(距离) ,分别将它们分配给与其
最相似的(聚类中心所代表的)聚类;然后再计算每个所获新聚类的聚类中心(该聚类中所 有对象的均值);不断重复这一过程直到标准测度函数开始收敛为止。一般都采用均方差作 为标准测度函数• k个聚类具有以下特点:各聚类本身尽可能的紧凑,而各聚类之间尽可能 的分开。
2 •源程序使用的数据结构
int N;〃 数据个数
int K;〃 集合个数
int * Centerin dex;〃 初始化质心数组的索引
double * Ce nter;// 质心集合
double * Cen terCopy;// 质心集合副本
double * AllData;// 数据集合
double ** Cluster;// 簇的集合 #include<>
int * Top;// 集合中元素的个数,也会用作栈处理
3•源程序
#in clude<>
#i nclude <> #i nclude <> int N;// 数据个数 int K;// 集合个数 int * Centerin dex;// 初始化质心数组的索引
double * Ce nter;// 质心集合 double * Cen terCopy;// 质心集合副本
double * AllData;// 数据集合 double ** Cluster;// 簇的集合 #include<>
int * Top;// 集合中元素的个数,也会用作栈处
(聚类)k平均算法实验报告 来自淘豆网m.daumloan.com转载请标明出处.