我有一个用户和他们的音乐播放数据集,每个播放都有位置数据。对于每个用户,我想将他们的播放聚类以查看他们是否在给定位置播放音乐。
我计划使用 sci-kit learn k-means 包,但我如何让它与位置数据一起使用,而不是默认的欧氏距离?
它工作的一个例子真的对我有帮助!
最佳答案
不要将 k-means 与欧几里得距离以外的任何东西一起使用。
K-means 不旨在与其他距离度量一起使用(请参阅曼哈顿距离的 k-medians,k-medoids 又名。PAM 用于任意其他距离函数)。
k-means 的概念是方差最小化。方差在本质上与平方欧几里得距离相同,但它与其他距离不同。
您是否考虑过 DBSCAN? sklearn 应该有 DBSCAN,它现在应该有索引支持以使其更快。
关于python - 在 Python 中计算位置数据的 K 均值聚类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21802946/