热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在给定测地线的成对距离矩阵的情况下,哪些算法可用于生成流形的欧几里德嵌入?

如何解决《在给定测地线的成对距离矩阵的情况下,哪些算法可用于生成流形的欧几里德嵌入?》经验,请帮忙看看怎么搞?

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

目前的尝试

局部线性嵌入和isomap等算法能够采用成对测地距离的矩阵并输出嵌入,以便成对的欧氏距离与原始测地线相同.虽然这通常不是同一个任务,但是在输出碰巧接近某个维度的超立方体的情况下,实际发生了所需的变换(考虑瑞士卷),因为嵌入本身就是一个流形,因此欧几里德距离对应于测地线距离.

对于像气缸这样稍微复杂的物体,情况并非如此.通过将测地距离视为欧几里德,期望圆柱上的对映点被映射到彼此远离期望的位置,并且相应的全局优化问题将经常导致分支结构,其中分支的末端对应于最远的对映点,放大气缸随机采样中的小扰动.通常,这些算法的天真应用似乎并不能解决手头的问题.

另一种有点富有成效(虽然昂贵)的方法是一种粗暴的蒙特卡罗技术.我从具有不同参数的管状物体中生成随机样本,直到我找到一组参数生成与我的类似的测地距离矩阵,直到排列(通过求解将该距离矩阵转换为采矿和测试的线性系统处理效率不是太低)查看结果是否接近排列矩阵).然后通过找到与上述近置换矩阵最接近的置换矩阵来执行从我的572点到保持成对距离的对象的近似最佳映射.

这会产生合理的结果,但它预先假定数据的形状并且非常昂贵.我已经执行了一些更明显的优化,比如使用小的随机样本而不是整个数据集,并使用基于梯度的技术进行参数估计,但更通用的技术会很好.

注意事项

这个问题当然没有一个独特的解决方案.即使假设可以通过有限均匀采样在3空间中明确地识别流形,也只是压缩圆柱体产生具有相同测地线和不同欧氏距离的形状(因此不同的嵌入).这不会比LLE和Isomap产生不同的解决方案更让我困扰,我会对任何合理的答案都很好.

关于从有限样本中唯一地识别流形,为了论证,我可以很好地使用来自包中dist_matrix_的拟合Isomap类的属性scikit-learn而没有任何特殊参数来找到测地线.这是一个不必要的MDS步骤,但它并不是非常昂贵,而且开箱即用.然后我们想要一个嵌入,它最小化原始测地距离矩阵和dist_matrix_属性之间的frobenius距离.


推荐阅读
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 提升Python编程效率的十点建议
    本文介绍了提升Python编程效率的十点建议,包括不使用分号、选择合适的代码编辑器、遵循Python代码规范等。这些建议可以帮助开发者节省时间,提高编程效率。同时,还提供了相关参考链接供读者深入学习。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 无损压缩算法专题——LZSS算法实现
    本文介绍了基于无损压缩算法专题的LZSS算法实现。通过Python和C两种语言的代码实现了对任意文件的压缩和解压功能。详细介绍了LZSS算法的原理和实现过程,以及代码中的注释。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 第四章高阶函数(参数传递、高阶函数、lambda表达式)(python进阶)的讲解和应用
    本文主要讲解了第四章高阶函数(参数传递、高阶函数、lambda表达式)的相关知识,包括函数参数传递机制和赋值机制、引用传递的概念和应用、默认参数的定义和使用等内容。同时介绍了高阶函数和lambda表达式的概念,并给出了一些实例代码进行演示。对于想要进一步提升python编程能力的读者来说,本文将是一个不错的学习资料。 ... [详细]
  • “你永远都不知道明天和‘公司的意外’哪个先来。”疫情期间,这是我们最战战兢兢的心情。但是显然,有些人体会不了。这份行业数据,让笔者“柠檬” ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • HTML学习02 图像标签的使用和属性
    本文介绍了HTML中图像标签的使用和属性,包括定义图像、定义图像地图、使用源属性和替换文本属性。同时提供了相关实例和注意事项,帮助读者更好地理解和应用图像标签。 ... [详细]
author-avatar
手机用户2502905627_315
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有