2.牛顿迭代二阶梯度法求多元非线性函数的极小值,以及Hessian矩阵

牛顿迭代求最小值有点区别于求牛顿迭代求根
先复习一下

牛顿迭代求根

是如下表达式

因为是求根,那么函数和轴相交的地方就是解所在的位置,所以一般要稍作变形以构造

于是

因为是依次迭代,所以这里的是初值
后续迭代通式就是

那么

牛顿迭代求极小值,又是咋回事呢

顾名思义,求最小值,也就是说要找的不是和轴的交点,求最小值我们一般想到的就是求其导数为的点
牛顿迭代求最小首先使用的是对函数的泰勒二阶展开对原函数进行拟合

比如下图绿色的是原函数,橙色代表的是对的二阶泰勒拟合
求上式求导可得

image.png

令导数为零,

可知函数在处取得极小值
稍作变形

通式为

可见它和牛顿迭代求根非常相似,不同之处在于,这里每次迭代是原函数的一阶导除以二阶导

牛顿迭代求非线性多元函数的极小值

根据前面牛顿迭代求根高维表达的推导,我们依照葫芦画瓢来进行极小值的高维表达式推导
首先是一维情况

简单点,我们扩展到二维,这里涉及的是二元函数的泰勒展开式,于是有



-----------------------------------
这里相比牛顿迭代求根多了二阶全微分项
我们写成矩阵的形式,于是有

+\frac{1}{2!} \begin{bmatrix}x-x_0&y-y_0\end{bmatrix} \begin{bmatrix} \frac{\partial ^2 f(x_0,y_0)}{\partial x^2}&\frac{\partial ^2 f(x_0,y_0)}{\partial x\partial y} \\\frac{\partial ^2 f(x_0,y_0)}{\partial y\partial x}&\frac{\partial ^2 f(x_0,y_0)}{\partial y^2} \end{bmatrix} \begin{bmatrix}x-x_0\\y-y_0\end{bmatrix}
,那么上式可以简记为

进一步可以记为

其中
H(X^{(0)})=\begin{bmatrix} \frac{\partial ^2 f(x_0,y_0)}{\partial x^2}&\frac{\partial ^2 f(x_0,y_0)}{\partial x\partial y} \\\frac{\partial ^2 f(x_0,y_0)}{\partial y\partial x}&\frac{\partial ^2 f(x_0,y_0)}{\partial y^2} \end{bmatrix} 叫做Hessian矩阵

这种写法叫做函数各方向的全微分,也叫梯度算子,其实本质上也是一个雅可比矩阵,也可计为

继续往下走,对上面的函数求各个方向的偏微分

对等式(1)求各方向的一阶偏导可得
(注意,这里有个知识点,即对于二阶混偏导连续时候,先x后y,与先y后x,这两种方式求偏导的值是一样的)于是得到下面的等式

因为是求极小值,那么此时令

写成矩阵形式有
\begin{bmatrix}\frac{\partial f(x_0,y_0)}{\partial x}\\\frac{\partial f(x_0,y_0)}{\partial y}\end{bmatrix}+\begin{bmatrix} \frac{\partial ^2 f(x_0,y_0)}{\partial x^2}&\frac{\partial ^2 f(x_0,y_0)}{\partial x\partial y} \\\frac{\partial ^2 f(x_0,y_0)}{\partial y\partial x}&\frac{\partial ^2 f(x_0,y_0)}{\partial y^2} \end{bmatrix}\begin{bmatrix}x-x_0\\y-y_0 \end{bmatrix}=0

根据上面对海森矩阵的定义以及函数梯度算子的定义
这里可以直接简写


根据迭代式的定义

上面的推导过程熟练的话,其实可以直接写成下面

你可能感兴趣的:(2.牛顿迭代二阶梯度法求多元非线性函数的极小值,以及Hessian矩阵)