聚类算法: 1
划分法 :K-MEANS 算法、K-MEDOIDS 算法、CLARANS 算法; 1)K-means 算法: 基本思想是初始随机给定 K个簇中心,按照最邻近原则把待分类样本点分到各个簇
然后按平均法重新计算各个簇的质心,从而确定新的簇心
一直迭代,直到簇心的移动距离小于某个给定的值
K-Means聚类算法主要分为三个步骤: (1)第一步是为待聚类的点寻找聚类中心 (2)第二步是计算每个点到聚类中心的距离,将每个点聚类到离该点最近的聚类中去 (3)第三步是计算每个聚类中所有点的坐标平均值,并将这个平均值作为新的聚类中心 反复执行(2)、(3),直到聚类中心不再进行大范围移动或者聚类次数达到要求为止 下图展示了对 n个样本点进行 K-means聚类的效果,这里 k取 2: (a)未聚类的初始点集 (b)随机选取两个点作为聚类中心 (c)计算每个点到聚类中心的距离,并聚类到离该点最近的聚类中去 (d)计算每个聚类中所有点的坐标平均值,并将这个平均值作为新的聚类中心 (e)重复(c),计算每个点到聚类中心的距离,并聚类到离该点最近的聚类中去 (f)重复(d),计算每个聚类中所有点的坐标平均值,并将这个平均值作为新的聚类中心 优点: 1
算法快速、简单; 2
对大数据集有较高的效率并且是可伸缩性的; 3
时间复杂度近于线性,而且适合挖掘大规模数据集
在 K-means 算法中 K 是事先给定的,这个 K 值的选定是非常难以估计的
在 K-means 算法中,首先需要根据初始聚类中心来确定一个初始划分,然后对初始划分进行优化
这个初始聚类中心的选择对聚类结果有较大的影响
从 K-means 算法框架可以看出,该算法需要不断地进行样本分类调整,不断地计算调整后的新的聚类中心,因此当数据量非常大时,算法的时间开销是非常大的