问题描述
我正在学习k均值聚类算法。我已经读过,该算法的特征之一是它可能陷入局部最小值,而增加找到全局最优值的机会的一种简单方法是使用不同的随机种子重新启动算法。我了解算法的基本概念,该算法会在第一次迭代中初始化任意质心/均值,然后将数据点分配给这些聚类。在所有分配点之后更新质心,然后再次重新分配点。该算法将继续迭代,直到簇不再变化为止。
但是,在此算法的上下文中,我无法准确了解局部最小值的含义。任何见解都会受到赞赏。
解决方法
k-means算法是一种迭代方法,收敛到某种配置,以使点到中心的分配不再更改,并保持在该配置中。实际上,有许多这样的“吸引子”配置,每个配置都对应于“拟合误差”(点到中心的总距离)的某个值。
如果将拟合误差作为配置(中心位置)的函数进行绘制,则此函数将具有许多局部最小值,并且需要很多运气才能落入全局变量。
下图显示了问题所在:
左图显示了您要最小化的“拟合误差”。您要达到的目标全局最小值是右图中的红点。但是,由于每个蓝点也是一个局部最小值,因此算法很可能会卡在这些点之一中。