聚类算法之K均值聚类

K-Means聚类方法

1. 介绍
k均值聚类是基于样本集合划分的聚类算法。由于每个样本在划分的过程中只能属于一个类别,所以k-Means算法属于硬聚类。

2. 算法过程
k均值聚类算法是一个迭代的过程,每次迭代包括两个步骤:

  • (1)初始化:随机选择k个样本作为初始聚类中心
  • (2)对样本进行聚类:计算每个样本到类中心的距离,将每个样本指派到与其最近的中心得类中,构成聚类结果。
  • (3)计算新的聚类中心:对(2)中得到的聚类结果,计算各个类中的样本的均值,作为新的聚类中心。
  • (4)如果迭代收敛或符合停止条件,输出结果,否则返回(2).

3. 复杂度
K均值聚类算法的复杂度O(mnk),其中k表示类别数,m表示样本维度,n表示样本个数。

4. 初始中心的选择
选择不同的初始中心,会得到不同的聚类结果。对于初始中心的选择,可以用层次聚类对样本进行聚类,得到k个类时停止。然后从每个类中选取一个与中心距离最近的点。

5.类别数k的选择
k均值聚类算法的类别数k需要提前设定,而实际应用中最优的k值是不知道的。因此,可以尝试不同的k值聚类,检验各个得到聚类结果的质量,推测最优的k值。聚类结果的质量可以用类的平均直径来衡量。

你可能感兴趣的:(机器学习,聚类,机器学习)