一、实验原理
k-means算法是最为经典的基于划分的聚簇方法,是十大经典数据挖掘算法之一。简单地说k-means就是在没有任何监督信号的情况下将数据分为k份的一种方法。k-means算法的基本思想为:在数据集中根据一定策略选择k个点作为每个簇的初始中心,然后观察剩余的数据,将数据划分到距离这k个点最近的簇中,也就是说将数据划分成k个簇完成一次划分,但形成的新簇并不一定是最好的划分,因此生成的新簇中,重新计算每个簇的中心点,然后在重新进行划分,直到每次划分的结果保持不变。
算法步骤如下:
1) 随机选择K个中心点
2) 把每个数据点分配到离它最近的中心点;
3) 重新计算每类中的点到该类中心点距离的平均值;
4) 分配每个数据到它最近的中心点;
5) 重复步骤3和4,直到所有的观测值不再被分配或是达到最大的迭代次数.