百科问答小站 logo
百科问答小站 font logo



不能直接计算导数值时,有什么优化算法? 第1页

  

user avatar   zi-yuan-35 网友的相关建议: 
       Bayesian optimization

大意是我们首先对目标函数形状有个先验,然后在每次迭代 1. 在当前对目标函数形状的后验估计下(当然首次迭代就直接用先验),在某个“最可能是最优”的地方取点,获得其函数值;2. 根据刚才的点及其函数值,更新函数的后验估计。

上面说的“最优位置”一般是两个指标的折衷:1. 在当前后验估计下,函数最优值的位置(exploitation);2. 尽量也试一试其他的位置,说不定有惊喜(exploration)。

以流行的

GP-UCB

(Gaussian Process - Upper Confidence Bound)为例。我们把目标函数看成一个高斯过程(

Gaussian process

)。那么在第次迭代,我们取,其中和分别为上一次迭代的后验均值和后验标准差在处的值,为某个系数(看论文);然后通过和更新后验估计并得到和。不了解怎么更新的看维基页。很明显一项对应exploitation,而一项对应exploration。论文证明了这个策略的误差界。

这个东西有各种各样的推广,比如说针对 time-varying 的目标函数,比如说如何使所需迭代数更小。比较有意思的一篇论文是

Bayesian optimization explains human active search

,从实验角度证明了 Bayesian optimization(不仅仅是GP-UCB)与人类优化策略之间的相似性。




  

相关话题

  如何对 0,0,0,0 进行运算得到 24? 
  如何解方程 sin(cos(x))=x? 
  大规模电阻的等效电阻计算/模拟应该如何做? 
  如何快速的利用matlab求解拥有大量变量的函数的雅克比矩阵? 
  LU分解法与Gauss消元法两者复杂度的比较,谁跟快? 
  Mathematica 比起 Python 如今还有什么优势? 
  如何对 0,0,0,0 进行运算得到 24? 
  如何证明这个整系数线性方程组解的估计? 
  不能直接计算导数值时,有什么优化算法? 
  做Federated Learning优化就是decentralized optimization吗? 

前一个讨论
有哪些名字看起来很low但内容却很有逼格的书?
下一个讨论
作为一名非数学专业(电子工程,物理)的学生,怎么样让自己的水平达到介于数学专业以及非数学专业的水平?





© 2024-05-20 - tinynew.org. All Rights Reserved.
© 2024-05-20 - tinynew.org. 保留所有权利