商务智能理论与应用6-k-means算法.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
接着用k-means算法进行聚类。设k=3,即将这15支球队分成三个集团。现抽取日本、巴林和泰国的值作为三个簇的种子,即初始化三个簇的中心为A:{0.3, 0, 0.19},B:{0.7, 0.76, 0.5}和C:{1, 1, 0.5}。(为什么选这三个呢?)下面,计算所有球队分别对三个中心点的相异度,这里以欧氏距离度量。下面是用程序求取的结果: * * 从左到右依次表示各支球队到当前中心点的欧氏距离,将每支球队分到最近的簇,可对各支球队做如下聚类:中国C,日本A,韩国A,伊朗A,沙特A,伊拉克C,卡塔尔C,阿联酋C,乌兹别克斯坦B,泰国C,越南C,阿曼C,巴林B,朝鲜B,印尼C。 第一次聚类结果: A:日本,韩国,伊朗,沙特; B:乌兹别克斯坦,巴林,朝鲜; C:中国,伊拉克,卡塔尔,阿联酋,泰国,越南,阿曼,印尼。 * * 下面根据第一次聚类结果,调整各个簇的中心点。 A簇的新中心点为:{(0.3+0+0.24+0.3)/4=0.21, (0+0.15+0.76+0.76)/4=0.4175, (0.19+0.13+0.25+0.06)/4=0.1575} = {0.21, 0.4175, 0.1575}(取簇中所有元素各自维度的算术平均数。) 用同样的方法计算得到B和C簇的新中心点分别为{0.7, 0.7333, 0.4167},{1, 0.94, 0.40625}。 * * 用调整后的中心点再次进行聚类,得到: 第二次迭代后的结果为: 中国C,日本A,韩国A,伊朗A,沙特A,伊拉克C,卡塔尔C,阿联酋C,乌兹别克斯坦B,泰国C,越南C,阿曼C,巴林B,朝鲜B,印尼C。 * * 结果无变化,说明结果已收敛,于是给出最终聚类结果: 亚洲一流:日本,韩国,伊朗,沙特 亚洲二流:乌兹别克斯坦,巴林,朝鲜 亚洲三流:中国,伊拉克,卡塔尔,阿联酋,泰国,越南,阿曼,印尼 看来数据告诉我们,说国足近几年处在亚洲三流水平真的是没有冤枉他们,至少从国际杯赛战绩是这样的。 其实上面的分析数据不仅告诉了我们聚类信息,还提供了一些其它有趣的信息,例如从中可以定量分析出各个球队之间的差距,例如,在亚洲一流队伍中,日本与沙特水平最接近,而伊朗则相距他们较远,这也和近几年伊朗没落的实际相符。 * * 如果变量很大,k均值比层次聚类的计算速度更快(如果k很小)。 与层次聚类相比,k均值可以得到更紧密的簇,尤其是对于球状簇。 对大数据集,是可伸缩和高效率的。 算法尝试找出使平方误差函数值最小的k个划分。当结果簇是密集的,而簇与簇之间区别明显的时候,效果较好。 * * 没有指明初始化均值的方法。常用的方法是随机的选取k个样本作为均值。 产生的结果依赖于均值的初始值,经常发生得到次优划分的情况。解决方法是多次尝试不同的初始值。 可能发生距离簇中心mi最近的样本集为空的情况,因此, mi将得不到更新。这是一个必须处理的问题,但我们忽略该问题。 结果依赖于||x- mi||的度量单位。一个常用的解决方法是用标准差规范各个变量,虽然这并非总是可取的。结果还依赖于k值,所以难以比较聚类结果的优劣。 不适合发现非凸面形状的簇,并对噪声和离群点数据是较敏感的,因为少量的这类数据能够对均值产生极大的影响。 * * 改进措施: (1)样本数据预处理。计算样本对象两两之间的距离,筛掉与其它所有样本的距离和最大的m个对象。 (2)初始聚类中心的选择。如不采用簇中的平均值作为参考点,而选用簇中位置最靠近中心的对象。这样可以避免孤立点的影响。 * * 首先采用层次凝聚算法决定结果簇的数目,并找到一个初始聚类,然后用迭代重定位来改进该聚类。 K众数方法,它扩展了k均值模式来聚类分类数据,用簇的众数来取代簇均值,采用新的相异性度量处理分类对象,采用基于频率的方法更新簇众数。 EM(期望最大化)算法,与k均值算法将每一个对象指派到一个簇相反,在EM算法中,每个对象按照权重指派到每个簇,其中权重表示对象的隶属概率。 * * 假设数据挖掘的任务是将如下的八个点(用(x,y)代表位置)聚类为三个类。 A1(2,10),A2(2,5),A3(8,4),B1(5,8),B2(7,5),B3(6,4),C1(1,2),C2(4,9) * * 假设初始我们选择A1,B1,和C1为每个簇的中心,用k-means算法来给出 * * A1-A2 :dist=(2-2)2 +(5-10)2=25; A1-A3:dist=(8-2)2+(4-10)2=72; A1-B2:dist=(7-2)2+(5-10)2 =50; A1-B3:dist=(6-2)2+(4-10) 2=52; A1-C2:dist=(4-2)2+(9-10)2=5; B1-A2:dist=(2-5)2+(5-8)2=

文档评论(0)

4411184 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档