Hessian矩阵及其辨识 实变函数 极值 无约束梯度分析

Hessian矩阵及其辨识 实变函数 极值 无约束梯度分析

本文主要介绍Hessian矩阵的定义以及与实变函数无约束极值的关系,主要内容来自张贤达《矩阵分析与优化(第二版)》第三章和第四章的相关内容。

Hessian矩阵的定义

Hessian矩阵可以理解为矩阵的二阶偏导。
实值标量函数f(x)f(x)在列向量xRm×1x\in\mathbb{R}^{m\times 1}处的Hessian矩阵为:
H[f(x)]=f2(x)xxT=x[f(x)xT]Rm×m H[f(x)]= \frac{\partial f^2(x)}{\partial x\partial x^T} = \frac{\partial}{\partial x} [ \frac{\partial f(x)}{\partial x^T}]\in\mathbb{R}^{m\times m}
其第(i,j)(i,j)个元素定义为:
H[f(x)]i,j=[f2(x)xxT]i,j=xi[f(x)xj] H[f(x)]_{i,j}=[\frac{\partial f^2(x)}{\partial x\partial x^T}]_{i,j}= \frac{\partial}{\partial x_i}[ \frac{\partial f(x)}{\partial x_j}]
展开的形式为:
H[f(x)]=f2(x)xxT=[f2(x)x1x1f2(x)x1xmf2(x)xmx1f2(x)xmxm]Rm×m H[f(x)]=\frac{\partial f^2(x)}{\partial x\partial x^T}=\left[ \begin{matrix} \frac{\partial f^2(x)}{\partial x_1\partial x_1} & \cdots & \frac{\partial f^2(x)}{\partial x_1\partial x_m} \\ \vdots & \ddots & \vdots \\ \frac{\partial f^2(x)}{\partial x_m\partial x_1} & \cdots & \frac{\partial f^2(x)}{\partial x_m\partial x_m} \\ \end{matrix} \right]\in \mathbb{R}^{m\times m}
同样,实值标量函数f(X)f(X)对矩阵变元XRm×nX\in \mathbb{R}^{m\times n}的Hessian矩阵定义为:
H[f(X)]=[2f(X)X11X112f(X)X11Xm1f2(X)X11Xmn2f(X)Xm1X112f(X)Xm1Xm12f(X)Xm1Xmn2f(X)XmnX112f(X)XmnXm12f(X)XmnXmn]Rmn×mn H[f(X)] =\left[ \begin{matrix} \frac{\partial^2 f(X)}{\partial X_{11}\partial X_{11}} & \cdots & \frac{\partial^2 f(X)}{\partial X_{11} \partial X_{m1}} & \cdots & \frac{\partial f^2(X)}{\partial X_{11}\partial X_{mn}} \\ \vdots & \ddots & \vdots &\ddots & \vdots\\ \frac{\partial^2 f(X)}{\partial X_{m1}\partial X_{11}} & \cdots & \frac{\partial^2 f(X)}{\partial X_{m1}\partial X_{m1}} & \cdots & \frac{\partial^2 f(X)}{\partial X_{m1}\partial X_{mn}} \\ \vdots & \ddots & \vdots &\ddots & \vdots\\ \frac{\partial^2 f(X)}{\partial X_{mn}\partial X_{11}} & \cdots & \frac{\partial^2 f(X)}{\partial X_{mn}\partial X_{m1}} &\cdots & \frac{\partial^2 f(X)}{\partial X_{mn}\partial X_{mn}} \\ \end{matrix} \right]\in \mathbb{R}^{mn\times mn}
可以看出,实标量函数的Hessian矩阵是对称矩阵

Hessian矩阵的辨识

同Jacobian矩阵类似,Hessian矩阵与矩阵微分的关系称为Hessian矩阵的辨识,提供了除定义外求Hessian矩阵的另一种方法。

实标量函数对向量变元xRm×1x\in \mathbb{R}^{m\times 1}的Hessian矩阵的辨识为:
d2f(x)=(dx)TH[f(x)]dx d^2f(x)=(dx)^TH[f(x)]dx
在运算中,如果矩阵BB满足:
d2f(x)=(dx)TBdx d^2f(x)=(dx)^TBdx
则可得:
H[f(x)]=12(BT+B) H[f(x)]=\frac{1}{2}(B^T+B)
这是为了保证所得Hessian矩阵的对称性。

实值标量函数对矩阵变元XRm×nX\in \mathbb{R}^{m\times n}的Hessian矩阵的辨识为:
d2f(X)=(d(vecX))TH[f(X)]d(vecX) d^2f(X)=(d(vecX))^TH[f(X)]d(vecX)
这里vecvec表示矩阵向量化运算,vecXvecX定义为:
vecX=[X11,,Xm1,,X1n,,Xmn]T vecX=[X_{11},\cdots,X_{m1},\cdots,X_{1n},\cdots,X_{mn}]^T
在运算中,如果矩阵BB满足:
d2f(X)=(d(vecX))TBd(vecX) d^2f(X)=(d(vecX))^TBd(vecX)
则可得:
H[f(x)]=12(BT+B) H[f(x)]=\frac{1}{2}(B^T+B)
这同样是为了保证所得Hessian矩阵的对称性。

实变函数平稳点与极值点的条件

上一篇Jacobian矩阵,梯度矩阵和这一篇Hessian矩阵都是为了下面这个表。
Hessian矩阵及其辨识 实变函数 极值 无约束梯度分析
解释一下,RR\mathbb{R}→\mathbb{R}即表示实数到实数的映射函数,RnR\mathbb{R^n}→\mathbb{R}表示向量到实数的映射函数,Rm×nR\mathbb{R^{m\times n}}→\mathbb{R}表示矩阵到实数的映射函数。
实数到实数我们很熟悉了,一阶导为0则为极点,二阶导大于0则为极小点,二阶导小于0则为极大点。矩阵和向量到实数的函数,一阶导为0或0矩阵则为极点,二阶导正定则为极小点,二阶导负定则为极大点。半正定的情况都不是严格的极大点和极小点。

张贤达书上第四章还谈了复变函数的Hessian矩阵及其平稳点和极点条件,由于我暂时不关注,也未做总结。