首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Tensorflow能否用于多变量函数的全局最小化?

Tensorflow能否用于多变量函数的全局最小化?
EN

Stack Overflow用户
提问于 2017-11-06 14:47:52
回答 1查看 941关注 0票数 13

我一直很好奇TF是否可以用于函数的全局优化。例如,它能被用来有效地找到Lennard-Jones势的基态吗?它会比现有的优化方法更好还是更差,比如盆地跳跃?

我的部分研究涉及寻找大的,多组分的分子的基态。传统方法(BH等)对此很好,但也相当慢。我已经研究了TF,有一些部分似乎足够强大,可以应用于这个问题,尽管我有限的网络搜索似乎没有显示出TF对这个问题的任何使用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-31 02:08:29

用来训练神经网络的gradient descent只考虑了函数的局部区域。因此,不能保证它会收敛到全局最小值(这对于大多数机器学习算法来说实际上是很好的;考虑到所考虑的空间的维数非常高,人们通常很乐意找到一个良好的局部最小值,而不必进行太多探索)。

也就是说,人们当然可以使用Tensorflow (或任何这样的框架)来实现全局盆地跳跃方案的局部优化器,例如如下所示(简化算法):

  1. 选择起点;
  2. 使用本地优化器获取局部最小值;
  3. 对此最小值的坐标应用一些扰动;
  4. 从此新位置,重新使用本地优化器获取下一个局部最小值;
  5. 保留最佳最小值,从3开始重复。

实际上,有些人目前正在尝试实现这个确切的方案,将TF与scipy.optimize.basinhopping()接口。在这个Github issue中可以找到当前的开发和讨论。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47131248

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档