【发布时间】:2011-09-28 17:16:22
【问题描述】:
我有一个有限的度量空间,作为(对称)k x k 距离矩阵给出。我想要一种算法来(大约)等距地将其嵌入欧几里得空间 R^(k-1) 中。虽然并不总是可以通过求解距离给出的方程组来精确地做到这一点,但我正在寻找一个嵌入一些(非常小的)可控误差的解决方案。
我目前使用输出维度设置为 (k-1) 的多维缩放 (MDS)。我突然想到,通常 MDS 可能会针对您试图将环境嵌入维度减少到小于 (k-1)(通常为 2 或 3)的情况进行优化,并且可能有更好的算法来解决我的受限问题案例。
问题:使用欧几里得距离在 R^{k-1} 中实现大小为 k 的度量空间有什么好的/快速算法?
一些参数和指针:
(1) 我的 k 相对较小。说 3
(2) 我实际上并不关心是否嵌入 R^{k-1}。如果它简化了事情/使事情变得更快,任何 R^N 也可以,只要它是等距的。如果我增加到 R^k 或 R^(2k+1),如果有更快的算法或错误更少的算法,我会很高兴。
(3) 如果你能指出一个 python 实现,我会更开心。
(4) 任何比 MDS 更好的东西都可以工作。
【问题讨论】:
-
你的距离真的服从三角不等式吗?
-
这可能更适合 math.stackexchange.com(对于 mathoverflow 可能不够先进)。
-
我不确定在这种情况下是否有比 MDS 更快的算法来解决这个问题。你的距离矩阵来自哪里?您最好立即减少生成距离矩阵的数据的维度(当然,只有在可能的情况下)。
-
@j_random_hacker:是的。这是一个度量空间link
-
@LiKao:距离矩阵来自点云集合的持久同源之间的瓶颈距离。
标签: python algorithm graph-algorithm metric