K均值聚类算法
1.算法思想
K-means算法是最普及的聚类算法,算法接受一个未标记的数据集,然后将数据聚类成不同的组。
对于样本集D={x1,x2,x3,…,xm}。"k均值"算法就是针对聚类划分C={c1,c2,…,ck}最小化平方误差:
是簇Ci的均值向量。从上述公式中可以看出,该公式刻画了簇内样本围绕簇均值向量的紧密程度,E值越小簇内样本的相似度越高。
2.算法流程
现在假设我们要把数据分成K个类,大概可以分为以下几个步骤:
(1).随机选取k个点,作为聚类中心
(2).计算每个点分别到k个聚类中心的聚类,然后将该点分到最近的聚类中心,这样就行成了k个簇
(3).再重新计算每个簇的质心(均值)
(4).重复以上2~4步,直到质心的位置不再发生变化或者达到设定的迭代次数