划分聚类,顾名思义,通过划分的方式将数据集划分为多个不重叠的子集(簇),每一个子集作为一个聚类(类别)。
在划分的过程中,首先由用户确定划分子集的个数 K,然后随机选定 K 个点作为每一个子集的中心点,接下来通过迭代的方式:计算数据集中每个点与各个中心点之间的距离,更新中心点的位置;最终将数据集划分为 K 个子集,即将数据划分为 K 类。
对于未聚类数据集,首先随机初始化 K 个(代表拟聚类簇个数)中心点,如图红色五角星所示。
每一个样本按照距离自身最近的中心点进行聚类,等效于通过两中心点连线的中垂线划分区域。
依据上次聚类结果,移动中心点到个簇的质心位置,并将此质心作为新的中心点
反复迭代,直至中心点的变化满足收敛条件(变化很小或几乎不变化),最终得到聚类结果。