大数据分析算法研究:K-Means ,算法小白成长记 ~

K-Means是聚类算法中的最常用的一种,最大的特点是简单、好理解、运算快,但是只适用于连续型的数据,并且一定要在事先确定数据集要分成几类(k)。

本质上,聚类也是一种数据分类算法,聚类和分类最大的不同在于“分类的标准是已知的,而聚类并不知道具体的分类标准”,聚类是通过算法来判断数据之间的相似性,将相似的数据放在一组。

一、K-Means 的算法逻辑:

1、确定k值,即我们希望将数据集经过聚类得到几个分组(比如优良中差)。

2、从数据集中随机选择k个数据点作为带头大哥(K-Means中叫质心)。

3、对集合中每一个小弟,计算它与每个大哥的距离,离哪个大哥距离近,就跟定哪个大哥,形成K个分组。

4、不断循环运算,每次每个分组各选一个新大哥,如果新大哥和老大哥之间的距离小于某一个设置的阈值,则认为聚类结果达到预期,算法结束,将各组数据按最终结果分类。

二、K-Means的几个关键问题:

1、K值确定:取决于个人的经验,通常的做法是多尝试几个K值,或由业务专家基于分析目标来确定。

2、初始的K个质心确定:(1)随机选择,(2)选择彼此距离最远的点,先选第一个点,然后选离它最远的作为第二个点,然后两点连线,选距离他们两个点的距离之和最小的点作为第三个点以此类推。(3)根据其他聚类算法得到的聚类结果来确定K值。

3、要进行数据的标准化,包括(1)将数据按比例缩放,使之落入一个小的特定区间,比如X和Y值差异很大,X是1到10之间的数,Y是1000以上的数,(2)去除数据的单位限制,将其转化为无量纲的数值,比如X的单位是米,Y是吨。

后续我会继续分享大数据算法方面的内容,有共同兴趣的可以持续关注,当然算法最终也是为业务、为管理服务,而如何做业务开发、如何做好企业管理,需要一些方法工具的支持,这样才能事半功倍。

比如我的高效能职场人士工具箱专栏,内容就包含麦肯锡、埃森哲的方法论和实战案例,比如金字塔原理、麦肯锡方法、麦肯锡提问术、埃森哲大数据分析等方法,欢迎点击下方的看一看订阅购买,获取配套的方法工具。