登录
首页大数据时代Kmeans均值聚类算法的基本原理是什么?
Kmeans均值聚类算法的基本原理是什么?
2020-07-08
收藏

Kmeans算法属于无监督学习的一种聚类算法,这种算法的目的为:在数据所属类别及类别数量不明确的前提下,依据数据自身的特点对数据进行聚类。聚类过程中,对于类别数量k的选取,需要一定的先验知识,也可根据“类内间距小,类间间距大“(一种聚类算法的理想情况)为目标进行实现。

一、Kmeans均值聚类算法优缺点

优点:容易实现。

缺点:收敛到局部最小值,在大规模数据集上收敛较慢

适用数据类型:数据型数据

二、Kmeans均值聚类算法

Kmeans均值聚类算法主要思想是:在给定K值和K个初始类簇中心点的情况下,把每个点(亦即数据记录)分到离其最近的类簇中心点所代表的类簇中,所有点分配完毕之后,根据一个类簇内的所有点重新计算该类簇的中心点(取平均值),然后再迭代的进行分配点和更新类簇中心点的步骤,直至类簇中心点的变化很小,或者达到指定的迭代次数。

具体算法描述如下:

(1)适当选择k个类的初始中心,最初一般为随机选取;

(2)在每次迭代中,对任意一个样本,分别求其到k个中心的欧式距离,将该样本归到距离最短的中心所在的类;

(3)利用均值方法更新该k个类的中心的值;

(4)对于所有的k个聚类中心,重复(2)(3),类的中心值的移动距离满足一定条件时,则迭代结束,完成分类。

Kmeans聚类算法原理简单,效果也依赖于k值和类中初始点的选择。

三、Kmeans均值聚类的一般流程

1.收集数据:使用任意方法

2.准备数据:需要数据型数据来计算距离,也可以将标称型数据映射为二值型数据再用于距离计算。

3.分析数据:使用任意方法。

4.训练算法:不适用于无监督学习,即无监督学习没有训练过程。

5.测试算法:应用聚类算法,观察结果。可以使用量化的误差指标如误差平方和来评价算法的结果。

6.使用算法:可以用于所希望的任何应用,通常情况下,簇质心可以代表整个簇的数据来做出决策

数据分析咨询请扫描二维码

客服在线
立即咨询