BFGS更新的直观动机


15

我正在教一个数值分析调查课,并且正在为背景/直觉有限的学生寻求BFGS方法的动力!

Ĵ ķX ķ - X ķ - 1= ˚F X ķ- ˚F X ķ - 1Ĵķ-Ĵķ-1个来回2ĴķXķ-Xķ-1个=FXķ-FXķ-1个

BFGS更新的派生似乎更加复杂和模糊!特别是,我不想先验地认为更新应为等级2或采用特定形式。BFGS Hessian更新是否像Broyden的更新一样具有短暂的变化动机?


4
如果允许任意更新,则可以在牛顿方法中使用完整的Hessian。低秩更新的主要计算优势是,它使您可以非常快速地更新近似Hessian的因式分解。
Brian Borchers 2013年

Answers:


12

当人们(严格地)考虑凸成本函数时,BFGS的推导更加直观:

但是,一些 背景 信息是必需的:假设,要最小化函数 假设有一个近似解x_k。然后,一个近似于最小的˚F由最小截短泰勒展开的 F(X_K + P)\约F(X_K)+ \ nabla F(X_K)^ TP + \压裂{1} {2} p ^ TH( x_k)p。\ quad(*) 就是说,寻找p使得(*)最小并设置x_ {k + 1}:= x_k + p。计算(*)的梯度-“相对于p ”-并将其设置为零可得出以下关系: X ķ ˚F ˚F X ķ + p ˚F X ķ+ ˚F X ķ Ť p + 1

FXX[Rñ
XķFp * X ķ + 1= X ķ + p * p ħ X ķ[ X ķ + 1 - X ķ ] = ˚F X ķ + 1- ˚F X ķ
FXķ+pFXķ+FXķŤp+1个2pŤHXķp
pXķ+1个:=Xķ+pp
HXķ[Xķ+1个-Xķ]=FXķ+1个-FXķ
其中H是“梯度的雅可比”或黑森矩阵。

由于Hessian的计算和反演费用很高...


... 一个简短的答案

(参见Broyden的更新)可能是BFGS更新H_ {k + 1} ^ {-1} 明智选择的加权Frobenius范数中Hķ+1个-1个最小化了

Hķ-1个-H-1个w ^
,服从
  1. H[Xķ+1个-Xķ]=FXķ+1个-FXķ -这就是为什么-
  2. HŤ=H,因为黑森州是对称的。

然后,权重的选择在作为逆平均海森,请参阅。此处为该语句但没有证明,给出了BFGS更新公式()。w ^Hw ^:=w ^1个/2Hw ^1个/2F G:=01个HXķ+τpdταķ=1个

要点是:

  • 人们试图通过二次近似的解来逼近实际成本的解。
  • Hessian及其逆的计算非常昂贵。一个人喜欢简单的更新。
  • 更新选择最适合于而不是实际的Hessian。
  • 这是2级更新,是Frobenius规范中权重的特定选择的结果。

一个较长的答案,应该包括如何选择权,如何使这项工作非凸问题(其中曲率的条件出现,需要寻找方向的缩放),以及如何导出实际公式进行更新。参考在这里(德语)。p


非常感谢,这太棒了(根据Nocedal&Wright的讨论,或多或少地达到了我的期望)。我剩下的一个问题是:为什么我们像我们一样选择和范数?我知道这与单位有关,但是这样做有很多潜在的和范数选择。w ^w ^
贾斯汀·所罗门

没错。好吧,我不知道。一个答案是,它给出了易于计算且运行良好的更新公式。从历史上看,这种更新方法-最小化更新中的差异-是Shanno所采用的方法。一位裁判(Goldfarb)发现,权重的特定选择导致了Broyden和Fletcher的公式。请参阅此博士学位论文BFGS割线方法的历史发展...了解BFGS开发商的直觉。但是,这三种方法都非常抽象。
2013年

1
有趣,谢谢指导!我当前的文章(有一些数学错误需要帮助)在这里: graphics.stanford.edu/courses/cs205a-13-fall/assets/notes / ... (如果您想得到帮助,我很乐意提供-请给我发送适当的联系信息给我)
贾斯汀·所罗门

@jan为什么方程式而不是 不是给出的割线条件,其中。谢谢!
HXķ[Xķ+1个-Xķ]=FXķ+1个-FXķ
HXķ+1个[Xķ+1个-Xķ]=FXķ+1个-FXķ
Hķ+1个sķ=ÿķsķ=Xķ+1个-Xķÿķ=Fķ+1个-Fķ
杰夫·法拉奇
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.