带 GPS 数据的加权 K 均值

Weighted K-means with GPS Data

OBJECTIVE

问题

  1. 我一直在 researching 研究如何将加权变量添加到 k-means 算法,但不确定 实际 加权变量的过程。例如,如果我有 [纬度、经度和人口(以千为单位)](例如 "New York" = [40.713, 74.005, 8406]),这不会在 3 维 space 中构造质心吗?如果是这样,距离是否会不正确地倾斜并错误地表示仓库配送中心的最佳位置?
  2. 附加 research 暗示 UPGMA,"Unweighted Pair Group Method" 其中考虑了集群的大小。但是,我还没有完全回顾这种方法以及与这种方法相关的复杂性。

参考资料

参考文献 1:http://cs.au.dk/~simina/weighted.pdf(第 5 页)

It can also be shown that a few other algorithms similar to k-means, namely k-median and k-mediods are also weight-separable. The details appear in the appendix. Observe that all of these popular objective functions are highly responsive to weight.

参考文献 2:https://www-users.cs.umn.edu/~kumar/dmbook/ch8.pdf(第 39 页:"Ability to Handle Different cluster sizes"

1)你只想在(经度,纬度)space做k-means。如果将人口添加为第 3 个维度,您会将质心偏向大型人口中心之间的中点,这些中心通常相距甚远。

2) 在 k-means 中加入权重的最简单技巧是根据人口权重重复一个点(经度、纬度)。

3) k-means 可能不是这项工作的最佳聚类算法,因为旅行时间不随距离线性变化。此外,您基本上可以保证永远不会在大型人口中心的中间设置配送中心,这可能不是您想要的。我会使用 DBSCAN,scikit-learn 对此有一个很好的实现: http://scikit-learn.org/stable/modules/clustering.html