K-Means算法(K-Means Clustering)

聚类(clustering):把相似的东西分成一组。与分类(classification)不同,聚类不需要从训练集中“学习”,只需要计算相似度就可以了。因此被归为无监督学习。

原理思想:对每一个cluster,选出一个中心点(center),使该cluster中的所有点到该中心点的距离小于到其他cluster的中心的距离。

算法大致步骤:

          1.选定k个中心的初值,一般采用随机选取的办法。这里由于J函数并非凸函数,因此K-Means可能会落在局部最小值上。所以需要多次取初值。

          2.按照每一个数据与k个中心点的距离,将每个点归类到中心点所代表的的cluster中。

          3.计算每个cluster的平均值,将中心点移动到平均值的位置。

          4.重复2、3步,直到中心点位置稳定下来。

猜你喜欢

转载自blog.csdn.net/g28_gwf/article/details/81606169