k-means算法及其对应的优化点

k-means实现的步骤:

1  随机选取k个质心的值

2 计算每个点到质心的距离

3 将点的类划分到离他最近的质心,形成k个cluster

4 根据分类好的cluster,在每个cluster内重新计算质心(平均每个点的值)

5 重复迭代2-4步直到满足迭代次数或者误差小于指定的值

 

K-medoids实现的步骤:

1 随机选取K个质心的值 质心必须是某些样本点的值,而不是任意值

2 计算每个点到质心的距离

3 将点的类划分为离他最近的质心,形成K个cluster

4 根据分类好的cluster,在每个cluster内重新计算质心

4.1 计算cluster内所有样本点到其中一个样本点的曼哈顿距离和

4.2  选出是cluster绝对误差最小的样本点作为质心

5 重复迭代2-4步直到满足迭代次数或者误差小于指定的值

以上就是看出两者的区别:

1  一开始随机选择的质心,kmeans是随机的,可能就不是群内的任意一个点

2 kmeans的质心是各个样本的平均,可能是样本中不存在的点,kmedoids中的质心一定是某一个样本中点,包括迭代中更换的质心

posted @ 2020-03-09 18:32  大大的海棠湾  阅读(294)  评论(0)    收藏  举报