K-means
这个算法主要是一个迭代的过程
1.在一个数据集中随机选择k个聚类中心
2.按照离各个聚类中心的远近来将数据集中的数据划分到各个分类中。
3.将各个分类中数据点的平均坐标来作为新的聚类中心
一直重复2、3过程直到各个分类中的数据点的平均坐标正好等于聚类中心的坐标为止。
K-means算法也有可能会出现局部最优的情况,比如
上边三幅图的数据点是一样的,但是由于聚类中心的初始化的不同,导致最后的分类结果也是不同的。其实K-means算法也可以理解成是有损失函数的。这个损失函数就是各个数据点到其所在分类的聚类中心的距离。因此我们可以随机初始化多次聚类中心,进行多次K-means算法,得到多个损失函数,我们选择损失函数最小的聚类中心的初始化方式即可避免出现局部最优的情况。