强裂推荐 | k-均值,最简单的聚类算法!

Posted DataCastle数据城堡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了强裂推荐 | k-均值,最简单的聚类算法!相关的知识,希望对你有一定的参考价值。


中国男足近几年到底在亚洲处于几流水平?


各方对于目前中国男足在亚洲的地位各执一词,有人说中国男足亚洲二流,有人说三流,还有人说根本不入流。既然争论不能解决问题,我们就让数据告诉我们结果吧。


在《算法杂货铺——k均值聚类(K-means)》这篇文章中,作者用亚洲15支足球队从2005年到2010年间大型杯赛的战绩做了一个向量表,接着用k-means算法把球队归类,待结果已收敛时,得出最终结果:


亚洲一流:日本,韩国,伊朗,沙特

亚洲二流:乌兹别克斯坦,巴林,朝鲜

亚洲三流:中国,伊拉克,卡塔尔,阿联酋,泰国,越南,阿曼,印尼


看来数据告诉我们,说国足近几年处在亚洲三流水平真的是没有冤枉他们,至少从国际杯赛战绩是这样的。


其实,业务中也有很多用聚类分析的例子,比如,分析用户类型以使用不同的商业策略,或是分析商品相似度,从而可以用一些不同的销售策略,等等。


最近机器学习开始大火之后,很多人在问,“机器学习从什么开始学起?”“有什么学习路线图?”


根据N多大牛给出的建议,必须先搞定“两个K算法”,这两个算法就是k-均值算法和KNN算法。k-均值算法是非监督学习中最简单的聚类算法。


在实际业务面前,有些命题是需要从得到的训练集中进行“学习”,从而具备对未知数据进行分类的能力,例如挖掘固定人群在公共交通中的行为模式、基于短信文本内容挖掘垃圾短信及其变种、基于用电异常情况识别国家电网窃电用户等,所有的待挖掘数据都有一个已经存在的类别与之对应,这种提供带已知类别标记的训练数据的学习过程叫监督学习,这些场景通常都能够用分类算法来处理。


但是大部分时候上述条件是得不到满足的,比如上述判断国足水平的例子,以及分析用户类型、或者商品相似度。这些业务场景下,我们不关心某一类是什么,我们需要实现的目标是把相似的东西聚到一起,通常这时候就用到了聚类算法,相比于分类,它可以发现数据中未知的分类,识别数据对象的内在关系。


聚类算法已经被大家频繁的用于机器学习、数据挖掘和模式识别工作中,例如:模式识别中的语音识别、字符识别;机器学习中的图像分割;图像处理中的数据压缩、信息检索;以及数据挖掘、时空数据库应用、序列和异常数据分析等。此外,聚类还应用于统计科学、生物学、地质学、地理学以及市场营销、银行客户等级划分等方面。


k-means无疑是聚类算法中最简单、最好懂、最高效、最常见的,也是十大经典数据挖掘算法之一。


k-means算法的基本思想是:在空间中选几个点为聚类中心初始点,对最靠近它们的对象归类。通过迭代的方法,逐次更新各聚类中心的值,直至得到最好的聚类结果。


k-means算法的计算过程非常直观

1.从D中随机取k个元素,作为k个簇的各自的中心。

2.分别计算剩下的元素到k个簇中心的相异度,将这些元素分别划归到相异度最低的簇。

3.根据聚类结果,重新计算k个簇各自的中心,计算方法是取簇中所有元素各自维度的算术平均数。

4.将D中全部元素按照新的中心重新聚类。

5.重复第4步,直到聚类结果不再变化。

6.将结果输出。


k-means有着明显的优点

1.算法快速、简单;

2.当聚类是密集的,且类与类之间区别明显时,效果较好。

3.对大数据集有较高的效率并且是可伸缩性的;

4.时间复杂度近于线性,而且适合挖掘大规模数据集。


k-means使用的场景多到不限于

1.在大量文本中发现隐含的话题;

2.发现图像中包含的颜色种类;

3.从销售数据中发现不同特征顾客的分类

……


如果说你还没开始种草k-means算法;

还不太清楚有监督/无监督学习,聚类/分类算法的区别;

甚至还不太了解数据挖掘?

刚好,我这有课:


用最简单的语言、最贴切有趣的案例带你玩转最简数据挖掘算法,了解k均值的内涵、数学描述及实际应用。


 课程主要内容 

1.什么是聚类算法

聚类算法的任务就是把数据对象划分成多个簇,每一个数据对象在并且只在一个簇中,每一个簇中的数据对象有很高的相似性,而和其他簇的对象则相对没有那么相似。


2.聚类算法的应用场景 

·如何根据火灾易发地点规划消防站选址 


3.聚类问题的数学描述

·无监督学习算法

·聚类问题的代价函数


4.k-均值算法的基本原理

·k均值算法的目标

·k值的定义以及k值的初始化

·如何为每一个对象分配簇

·重新计算每个簇的代表点位置 

·k均值算法如何收敛


5.K均值算法的数学解释

·代价函数收敛性的证明

·两两数据点的距离的平方和等价于每一个数据点到这一群数据的质心的距离的平方和


6.实践:真实数据集上应用K均值算法

·随机初始化簇中心

·初始化的聚类结果

·反复迭代,直到收敛


强裂推荐 | k-均值,最简单的聚类算法!

主讲导师

强裂推荐 | k-均值,最简单的聚类算法!

强裂推荐 | k-均值,最简单的聚类算法!


周涛

DC发起人

电子科技大学教授、大数据研究中心主任,在Physics Reports、PNAS、Nature Communications等国际 SCI期刊发表300余篇学术论文,引用超过17000次,H 指数为63。2009年获教育部自然科学一等奖,2011年获第十二届中国青年科技奖(系我国最年轻的获奖者), 2015年当选全国十大科技创新人物,2017年获全国创新争先奖。超级畅销书《大数据时代》译者,畅销书 《为数据而生:大数据创新实践》作者。



Reference

《算法杂货铺——k均值聚类(K-means)》

http://www.cnblogs.com/leoo2sk/archive/2010/09/20/k-means.html

标题图来源dreamstime,画家Valeriy Kachaev作品

「DataCastle数据城堡」专业的数据科学学习社区,长按右侧二维码关注

以上是关于强裂推荐 | k-均值,最简单的聚类算法!的主要内容,如果未能解决你的问题,请参考以下文章

K均值聚类算法

spark机器学习-聚类

无监督学习——聚类算法

吴恩达《机器学习》课程总结(13)聚类

聚类算法讲解:KMEANS和DBSCAN

吴恩达《机器学习》课程总结(13)_聚类