是否可以修改kmeans包中的距离概念?
我有周期性数据,并希望使用替代的距离概念。
答案 0 :(得分:0)
K-means 不应与其他距离一起使用。 不是基于距离的算法。 K-means正在优化平方和。如果你想要一个适当的基于距离的k均值变化,它就叫做PAM。 PAM是将k-means与其他距离函数一起使用的正确方法。
因为均值是最小二乘估计,所以它只会优化平方和。
如果将不同的距离函数放入k-means,它可能会停止收敛。这是一个反例:
考虑绝对相关距离。两个系列
+1 +2 +3 +4 +5
-1 -2 -3 -4 -5
完全负相关,因此它们具有绝对相关距离0。
取这两个载体的平均值
0 0 0 0 0
不再真正定义相关性。如果你略微摆动数字,你可以避免这个定义差距,但是矢量与它们的平均值不同。因为平均值优化了平方偏差,并没有找到最佳相关中心。
重点是平均值。如果你想使用不同的距离函数,你也也需要替换均值函数。一种可能的选择是medoid,它产生PAM(在Medoids周围分区)。