User:Gaussrz/BFGS算法:修订间差异
外观
删除的内容 添加的内容
内容扩充 |
无编辑摘要 |
||
第22行: | 第22行: | ||
* [[梯度下降]] |
* [[梯度下降]] |
||
* [[牛顿法]] |
* [[牛顿法]] |
||
<nowiki> |
|||
⚫ | |||
== 参考文献 == |
== 参考文献 == |
||
⚫ |
2021年5月12日 (三) 08:17的最新版本
在数值优化中, Broyden–Fletcher–Goldfarb–Shanno(BFGS)算法是一种求解无约束非线性优化问题的迭代算法。 [1]和相关的Davidon–Fletcher–Powell算法类似,BFGS通过利用曲率信息对梯度进行预处理来确定下降方向。曲率信息通过维护一个使用广义的割线法逐步近似的关于损失函数的Hessian矩陣来获得。
算法
[编辑]从起始点和初始的Hessian矩阵,重复以下步骤,会收敛到优化问题的解:
- 通过求解方程,获得下降方向。
- 在方向上进行一维的优化(线搜索),找到合适的步长。如果这个搜索是完全的,则 。在实际应用中,不完全的搜索一般就足够了,此时只要求满足Wolfe条件。
- 令,并且令。
- 。
- 。
表示要最小化的目标函数。可以通过检查梯度的范数 来判断收敛性。如果初始化为,第一步将等效于梯度下降,但接下来的步骤会受到近似于Hessian矩阵的的调节。
拓展阅读
[编辑]参考文献
[编辑]- ^ Fletcher, Roger, Practical Methods of Optimization 2nd, New York: John Wiley & Sons, 1987, ISBN 978-0-471-91547-8
[[Category:优化算法与方法]]