BFGS算法
- 拟牛顿法是在牛顿法的基础上引入了Hessian矩阵的近似矩阵,避免每次迭代都计算Hessian矩阵的逆,它的收敛速度介于梯度下降法和牛顿法之间。拟牛顿法跟牛顿法一样,也是不能处理太大规模的数据,因为计算量和存储空间会开销很多。
- 拟牛顿法虽然每次迭代不像牛顿法那样保证是最优化的方向,但是近似矩阵始终是正定的,因此算法始终是朝着最优化的方向在搜索。具有全局收敛性和超线性收敛速度。
对f(x)进行泰勒展开:
两边对x求导,得到:
,即
,
。
BFGS校正公式为:
完整的BFGS算法: