【发布时间】:2016-10-27 07:08:17
【问题描述】:
所以我正在运行 KNN 来创建集群。从每个集群中,我想获得集群的中心点。
我使用分数距离度量来计算距离:
其中d是维数,第一个数据点的坐标是x^i,第二个数据点的坐标是y^i,f是0到1之间的任意数
然后我会将中心点计算为:
其中 S 是数据点的集合,δ 是上面使用的距离度量的绝对值。
我在网上寻找 medoid 的实现无济于事(即使有其他距离指标,但大多数东西都是专门的 k-means 或 k-medoid [我认为]与我想要的相对不同。
基本上这归结为我无法将数学转化为有效的编程。任何帮助或正确方向的指示将不胜感激!以下是我目前所拥有的简短列表:
- 我已经弄清楚了如何计算分数距离度量(第一个方程),所以我认为我很好。
- 我知道 numpy 有一个 argmin() 函数(记录在 here)。
- 在不缺乏准确性的情况下提高效率的额外分数(我试图通过计算每个分数距离度量来避免蛮力(因为点对的数量可能会导致阶乘复杂性...)。
【问题讨论】:
标签: python numpy cluster-analysis distance