机器学习:聚类算法实现流程

Posted 黑马程序员官方

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习:聚类算法实现流程相关的知识,希望对你有一定的参考价值。

学习目标

  • 掌握K-means聚类的实现步骤

  • k-means其实包含两层内容:
    • ​ K : 初始中心点个数(计划聚类数)
    • ​ means:求中心点到其他数据点距离的平均值

1 k-means聚类步骤

  • 1、随机设置K个特征空间内的点作为初始的聚类中心
  • 2、对于其他每个点计算到K个中心的距离,未知的点选择最近的一个聚类中心点作为标记类别
  • 3、接着对着标记的聚类中心之后,重新计算出每个聚类的新中心点(平均值)
  • 4、如果计算得出的新中心点与原中心点一样(质心不再移动),那么结束,否则重新进行第二步过程

通过下图解释实现流程:

 k聚类动态效果图-图片太大无法上传,你们看看不动的吧~

 

2 案例练习

  • 案例:

 

  • 1、随机设置K个特征空间内的点作为初始的聚类中心(本案例中设置p1和p2)

2、对于其他每个点计算到K个中心的距离,未知的点选择最近的一个聚类中心点作为标记类别

 3、接着对着标记的聚类中心之后,重新计算出每个聚类的新中心点(平均值)

 4、如果计算得出的新中心点与原中心点一样(质心不再移动),那么结束,否则重新进行第二步过程【经过判断,需要重复上述步骤,开始新一轮迭代】

 5、当每次迭代结果不变时,认为算法收敛,聚类完成,K-Means一定会停下,不可能陷入一直选质心的过程。

 


3 小结

  • K-means聚类实现流程【掌握】
    • 事先确定常数K,常数K意味着最终的聚类类别数;
    • 随机选定初始点为质心,并通过计算每一个样本与质心之间的相似度(这里为欧式距离),将样本点归到最相似的类中,
    • 接着,重新计算每个类的质心(即为类中心),重复这样的过程,直到质心不再改变
    • 最终就确定了每个样本所属的类别以及每个类的质心。
    • 注意:
      • 由于每次都要计算所有的样本与每一个质心之间的相似度,故在大规模的数据集上,K-Means算法的收敛速度比较慢。

以上是关于机器学习:聚类算法实现流程的主要内容,如果未能解决你的问题,请参考以下文章

机器学习 - 算法 - 聚类 K-MEANS 算法

最近质心

机器学习K-Means

机器学习-K-means聚类及算法实现(基于R语言)

基于k-means的聚类算法—机器学习

机器学习应用:颜色量化实现示例