前言
(本文主要学习自该博主的文章:http://blog.csdn.net/itplus,以下是本人的笔记,主要记录了结论部分,省略了推导的部分。对具体推导过程有兴趣的同学请访问原博主的博客~)
拟牛顿法是求解非线性优化问题最有效的方法之一,其中DFP方法,BFGS方法以及L-BFGS方法都是重要的拟牛顿法。我们现在考虑如下无约束的极小化问题:
minxf(x),其中x=(x1,x2,...,xN)T∈RN
这里我们假定f为凸函数,且两阶连续可微,并且记该极小化问题的解为 x∗ 。
牛顿法
基本思想:在现有极小点估计值的附近对f(x)做二阶泰勒展开,进而找到极小点的下一个估计值。
当特征向量长度N=1时,可以构造如下的迭代格式,使f(x)收敛到极小点:
xk+1=xk−f′(xk)f″(xk),k=0,1,...
当N>1的情况下,需要对二阶泰勒展开做推广。设 ∇f 为f的梯度向量(记做 gk ), ∇2f 为f的海森矩阵(Hessian matrix,记做 Hk ),其定义分别为:
∇f=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢∂f∂x1∂f∂x2...∂f∂xN⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥,∇2f=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢∂2f∂x21∂2f∂x2∂x1...∂2f∂xN∂x1∂2f∂x1∂x2∂2f∂x22...∂2f∂xN∂x2............∂2f∂x1∂xN∂2f∂x2∂xN...∂2f∂x2N⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥N∗N
于是我们同样可以构造出迭代格式(需要 Hk 非奇异,即行列式不为0的方阵)
xk+1=xk−H