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中的质心一定是某一个样本中点,包括迭代中更换的质心

浙公网安备 33010602011771号