- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
大数据论.doc
K-means算法及其相关优化算法
学 院:数理学院
专 业:统计学
姓 名:陈
学 号:
课 程:大数据分析方法与应用
2015年7月10日
目录
摘 要 1
一、 问题提出 2
二、问题分析 3
三、问题的进一步探索 4
四、总结 5
五、关于互联网寻找资料启发 6
六、参考文献 7
摘 要
聚类分析是数据挖掘中的重要分析方法。在实际分析中,我们看到的数据通常非常复杂,所以对于聚类方法有着比较特殊的要求。在聚类的时候,我们通常需要去确定点与点的距离,类与类之间的距离。作为一个初学者,我翻找了网上很多资料,我发现无论是课件或者书籍,通常都使用文字去描述K-均值聚类。然而在实际过程中,我们会发现不同的聚类方式得出的图形大致相同,这使得我有一个非常大的疑问。所以,我将在本次论文中把我的学习经过记录下来。
在此次论文中数据聚类采用方式为K-means聚类。在实际中,我们会发现一种算法并不是万能。所以需要对其进行优化,使其能有更大的用途。在对K-means优化的过程中,简单的介绍了一下,遗传算法,模拟退火算法,K-means粗糙化算法,初始中心点优化算法。
[关键词] :聚类方法,K-means算法,算法优化
一、 问题提出
聚类分析是数据挖掘的重要方法。在传统统计分析中,聚类分析方法包括:系统聚类、加入法、动态聚类法、重心法、类平均法。这些算法都是基于距离得出类别。而K-均值算法,是实际中应用很广的聚类方法。我突然对于K-means算法感兴趣。这些算法,都是基于点之间距离与类之间距离进行类别分析。K-means算法,究竟与其它算法有什么区别。
所以我提取样本数据集Irs,已经知道花有3种,我们对其数据进行聚类对比。
上图为重心法对数据进行聚类
上图为K-means进行聚类
二、问题分析
我们直观可以看出,重心法分成3类,K-means法也分成3类。但是重心法的图形由于数据过多使得谱系图过于拥挤,很难以观察。而k-means法结果虽然一致,但需要我们主观的去判断大致类数。
当然,简单的通过一个例子无法说明什么问题。所以,我通过网上进行搜索,综合各种资料,得出一下结果:
1.K-means算法概要
上图有5个点,准备分为2类,我们假设点为A到E,灰点为2个类。随机在图中取K(这里K=2)个种子点。然后对图中的所有点求到这K个种子点的距离,假如点Pi离种子点Si最近,那么Pi属于Si点群。(上图中,我们可以看到A,B属于上面的种子点,C,D,E属于下面中部的种子点),接下来,我们要移动种子点到属于他的“点群”的中心。(见图上的第三步)然后重复第2)和第3)步,直到,种子点没有移动(我们可以看到图中的第四步上面的种子点聚合了A,B,C,下面的种子点聚合了D,E)。
我们可以在上述过程中发现,在K-均值算法中,我们不需要去计算任意两点的距离。因此在大数据中,K-均值算法能比其他方法更为快速的收敛。
但是,在实际过程中我们对于初始点的判断是不确切的,一旦初始值选择不好,那么将会导致聚类结果的误判。这是K-means聚类的一个很大不问题。
当然,其优点也是显而易见的。
1.算法快速、简单;
2.对大数据集有较高的效率并且是可伸缩性的;
3.时间复杂度近于线性,而且适合挖掘大规模数据集。K-Means聚类算法的时间复杂度是O(nkt) ,其中n代表数据集中对象的数量,t代表着算法迭代的次数,k代表着簇的数目。
那么,我们将怎么去解决关于点的选择或者使其达到全局最优。
三、问题的进一步探索
在我们所学的教材中,有这么一句话。全局最优需要借助模拟退火算法或遗传算法。所以,我在下面我就简单的描述下我对于这两种算法思想的学习。
1、模拟退火算法
网上对于这种算法的描述是:模拟退火:兔子喝醉了。它随机地跳了很长时间。这期间,它可能走向高处,也可能踏入平地。但是,它渐渐清醒了并朝最高方向跳去。这就是模拟退火。
算法定义如下:
? 若J( Y(i+1) )= J( Y(i) ) ?(即移动后得到更优解),则总是接受该移动
若J( Y(i+1) ) J( Y(i) ) ?(即移动后的解比当前解要差),则以一定的概率接受移动,而且这个概率随着时间推移逐渐降低(逐渐降低才能趋向稳定)。
遗传算法
借鉴生物进化论,遗传算法将要解决的问题模拟成一个生物进化的过程,通过复制、交叉、突变等操作产生下一代的解,并逐步淘汰掉适应度函数值低的解,增加适应度函数值高的解。这样进化N代后就很有可能会进化出适应度函数值很高的个体。
由于篇幅过大,此处就不一一解释了。
以上,两种算法都是基于随机使全局最优。当然,这两种
文档评论(0)