图

海森矩阵

   一个二阶可导的多元函数 $f(\bvec x)$ 的海森矩阵(Hessian) $\mat H$ 定义为

\begin{equation} H_{ij} = \pdvThree{f}{x_i}{x_j} \end{equation}
$f(\bvec x)$ 的泰勒展开的前两项可以用梯度矢量和海森矩阵表示为
\begin{equation} f(\bvec x) = f(\bvec x_0) + (\bvec x - \bvec x_0) \grad f(\bvec x_0) + \frac12(\bvec x - \bvec x_0) \mat H (\bvec x - \bvec x_0) + \order{(x-x_0)^3} \end{equation}
海森矩阵可以看做梯度矢量 $\grad f$ 的雅可比矩阵, 即
\begin{equation} H_{ij} = \pdv{x_j} \qtyRound{\pdvTwo{f}{x_i}} \end{equation}
所以有
\begin{equation} \dd{(\grad f)} = \mat H \dd{\bvec x} \end{equation}

   如果 $f(\bvec x)$ 是一个二阶函数, 海森矩将不随 $\bvec x$ 变化. 所以有

\begin{equation} \grad f(\bvec x) - \grad f(\bvec x_0) = \mat H (\bvec x - \bvec x_0) \end{equation}
则函数的极值点为(令 $\grad f = 0$)
\begin{equation} \bvec x = \bvec x_0 - \mat H^{-1} \grad f(\bvec x_0) \end{equation}
这就是牛顿法寻找函数极小值的主要思路.

致读者: 小时物理百科一直以来坚持所有内容免费且不做广告,这导致我们处于日渐严重的亏损状态。长此以往很可能会最终导致我们不得不选择商业化,例如大量广告,内容付费,会员制,甚至被收购。因此,我们鼓起勇气在此请求广大读者热心捐款,使网站得以健康发展。如果看到这条信息的每位读者能慷慨捐助 10 元,我们几天内就能脱离亏损状态,并保证网站能在接下来的一整年里向所有读者继续免费提供优质内容。感谢您的支持。
—— 小时(项目创始人)

编辑词条 返回目录 返回主页 捐助项目 © 小时物理百科 保留一切权利