哪些算法可以用于根据测地距离矩阵为流形生成欧几里得嵌入?

8
我有一个方阵 D(目前表示为形状为(572,572)的numpy数组),可能对应于沿着大致圆柱体表面的点之间的成对距离。即,值D [i,j]对应于该空心圆柱体表面上沿任何路径的最小长度。如何构建这些572个点的三维(或n维)嵌入到欧几里德空间中,以保留这些测地线距离?

当前尝试

局部线性嵌入等距映射这样的算法能够将那些成对测地距离的矩阵输出为嵌入,使得成对欧几里得距离与原始测地线相同。虽然这通常不是相同的任务,在某些维度下输出近似超立方体的情况下,所需的转换实际上已经发生了(考虑瑞士卷),因为嵌入本身就是流形,所以欧几里得距离对应于测地距离。

即使是稍微复杂一些的物体,例如圆柱体,也不是这种情况。通过将测地距离视为欧几里得距离,所需圆柱体上的对极点映射到距离比预期远得多的位置,相应的全局优化问题通常会导致分支结构,其分支的末端对应于最大距离的对极点,从而放大圆柱体随机抽样中的小扰动。总的来说,这些算法的天真应用似乎不能解决手头的问题。
另一个有些富有成效(但代价高昂)的方法是 brute monte carlo 技术。我从具有不同参数的管状物体中生成随机样本,直到找到一组生成类似于我的测地距离矩阵的参数集合,最多可以进行一次排列(通过求解将该距离矩阵转换为我的线性系统并测试结果是否接近排列矩阵来处理)。然后通过找到最近的排列矩阵来执行将我的 572 个点映射到保持成对距离的对象上的近似最优映射。
这产生了合理的结果,但它预设了数据的形状,并且代价高昂。我已经执行了一些更明显的优化,例如使用小型随机样本而不是整个数据集,并使用基于梯度的技术进行参数估计,但更通用的技术会很好。

注意事项

当然,这个问题并没有唯一的解决方案。即使假设从有限均匀采样中可以明确地在三维空间中识别流形,只需压缩一个圆柱体就会产生具有相同测地线但不同欧几里得距离(因此是不同的嵌入)的形状。这对我来说并不比LLE和Isomap产生不同的解决方案更麻烦,我对任何合理的答案都很满意。

关于如何从有限样本中唯一地识别流形,为了论证,我只需要使用scikit-learn包中已安装的Isomap类的dist_matrix_属性而不需要任何特殊参数来查找测地线。这执行了一个不必要的MDS步骤,但它并不是非常昂贵,而且开箱即用。我们希望得到一种嵌入方式,该方式将原始测地距离矩阵与dist_matrix_属性之间的Frobenius距离最小化。


可能在 https://gis.stackexchange.com/ 上有更多关于此的帮助。 - Evgeny
规则的哪一部分看起来是禁止的?你的问题算作测地线,唯一的更改可以是省略Python并询问算法相关的内容。 - Evgeny
1
@EvgenyPogrebnyak 根据允许的5个主题参考链接,唯一似乎适用的主题是大地测量学。然而,大地测量学是一个地球科学,我不确定任意流形上的测地线是否应被视为大地测量学的一部分,大地测量学仅考虑假球面流形。即便如此,在大地测量学的背景下,流形的形状也是预先知道的,因此特别是这个问题似乎超出了范围。无论如何,他们是否会欢迎它? - Hans Musgrave
你提到了“有限均匀采样”——你的点集中是否有一些结构? - Davis Herring
@DavisHerring 可能存在一些结构。每个数据点对应一个物理细胞,可以说它们是从相应的组织中均匀采样的。这是实验设计的一个意图。但这些数据并不是来自我的大学,我也不知道太多细节。 - Hans Musgrave
显示剩余3条评论
2个回答

1
虽然我最初排除了局部线性嵌入和其他类似技术,但那似乎是仓促的。由于流形实际上是局部线性的,一个足够充分采样、足够好的流形具有这样的特性:其小测地距离与它们对应的欧几里得距离近似相同。
考虑到这一点,任何将最近的测地邻居视为最近的欧几里得邻居,并通过测地距离逼近欧几里得距离的重构都将大致保留全局测地距离,直到积累误差项。这意味着所有只使用本地距离的标准算法都能提供近似正确的嵌入结果,包括但不限于:
- 局部线性嵌入 - Isomap - 谱嵌入
在这种应用中,一些经典嵌入算法将无法正常工作,因为它们试图保留所有距离,而大的测地距离可能是欧几里得距离的不良表示。例如,多维缩放需要修改才能胜任此任务。

注意 在我的初步分析中,LLE似乎产生了较差的结果,原因是我的一个假设被违反了 -- 流形被充分采样。我将其应用于具有已知期望行为的简单形状,但我错误地使用了过少的点来确保分析中的快速反馈循环。采样更好的流形表现出完全符合预期的行为。


0

这篇博士论文的第四章

"On Motion Parameterizations in Image Sequences from Fixed Viewpoints", Manfred Georg, Washington University, 2010

可在https://openscholarship.wustl.edu/cgi/viewcontent.cgi?article=1127&context=etd中获取。

本文讨论了一些相关问题,并提出了一些算法,这些算法依赖于流形是否真正是一个圆柱体(或锥体或其他形状),以及圆柱体的相对宽度和长度等因素。

根据您的最终目标,像t-SNE这样的替代方案可能更适合;它们完全放弃了全局测地距离约束,因此可以更灵活地处理像圆柱体这样无法嵌入欧几里得空间并保持测地线的形状。


你的学生做得很整洁,我会进一步研究。但是对于这个问题,我们可能在谈论不同的事情。我有一组对象,我知道它们的成对测地线,并且我想找到这些对象的欧几里得嵌入,使其具有相同的成对测地线。你的答案似乎更接近问题“给定一组对象及其成对测地线,找到一个欧几里得嵌入,使其成对欧几里得距离与成对测地线匹配。”我是否误解了? - Hans Musgrave

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接