此條目或其章節极大或完全地依赖于某个单一的来源。 (2021年5月24日) |
在数值优化中, Broyden–Fletcher–Goldfarb–Shanno(BFGS)算法是一种求解无约束非线性优化问题的迭代算法。 [1]和相关的Davidon–Fletcher–Powell算法类似,BFGS算法通过利用曲率信息对梯度进行预处理来确定下降方向。曲率信息则是通过维护一个使用广义的割线法逐步近似的关于损失函数的Hessian矩陣来获得。
从起始点和初始的Hessian矩阵,重复以下步骤,会收敛到优化问题的解:
表示要最小化的目标函数。可以通过检查梯度的范数 来判斷收敛性。如果初始化为,第一步将等效于梯度下降,但接下来的步骤会受到近似于Hessian矩阵的的调节。