欢迎访问新blog页面:K-Means-Simple understanding and code implementation
一、聚类定义
聚类分析(cluster analysis)是一组将研究对象分为相对同质的群组(clusters)的统计分析技术。 聚类分析区别于分类分析(classification analysis) ,后者是有监督的学习。
-
依据研究对象(样品或指标)的特征,对其进行分类的方法,减少研究对象的数目。
-
各类事物缺乏可靠的历史资料,无法确定共有多少类别,目的是将性质相近事物归入一类。
-
各指标之间具有一定的相关关系。
-
变量类型:定类变量、定量(离散和连续)变量
二、划分聚类方法-Kmeans:
对于给定的样本集,按照样本之间的距离大小,将样本集划分为K个簇。让簇内的点尽量紧密的连在一起,而让簇间的距离尽量的大。
- 步骤1:取得k个初始中心点
- 步骤2:利用中心点划分样本集为k个簇
- 步骤3:根据已经被分类的数据分别重新计算各自的中心点,如果中心点发生变化回到步骤2,未发生变化转到步骤4
- 步骤4:收敛
缺点:
初始值敏感、采用迭代方法,得到的结果只是局部最优、K值的选取不好把握、对于不是凸的数据集比较难收敛
如何衡量Kmeans 算法的精确度?
SSE(Sum of Square Error) 误差平方和, SSE越小,精确度越高。