1.算法流程
k-means算法也称K-均值聚类算法。它试图通过基于原型的、划分的距离计算来发现K个使用者预先指定的簇。
-
将一组数据划分为预先设定好的k个簇,也可理解为随机选择k个向量作为初始均值向量。接下来根据均值向量将样本划分到距离最近的均值向量所在的簇中。这是一次迭代过程。
-
重新计算并更新均值向量,不断重复该过程直到前后两次迭代得到的均值向量不再发生变化为止。
注:为避免K-means算法的运行时间过长,可以设置一个最大运行轮数或最小调整幅度阈值。即当达到最大轮数或调整幅度小于阈值时,停止运行。
2.函数表达
样本集: D = ( x 1 , x 2 , . . . , x m )   ; \ D=({x_1,x_2,...,x_m})\,; D=(x1,x2,...,xm);
初始均值向量:( μ 1 , μ 2 , . . . , μ k   ) ; \ {\mu_1,\mu_2,...,\mu_k}\,); μ1,μ2,...,