ARTICLE

Hessian矩阵

Hessian矩阵 (Hessian Matrix) Hessian矩阵,或称海森矩阵,是多元微积分中的一个核心概念,由一个标量值函数的所有二阶偏导数所组成的方块矩阵。它以19世纪的德国数学家路德维希·奥托·黑塞(Ludwig Otto Hesse)的名字命名。Hessian矩阵可以被看作是单变量函数二阶导数在多维空间中的推广,它描述了一个函数在某一点附近的

浏览 69 更新 2025-10-26

Hessian矩阵 (Hessian Matrix)

Hessian矩阵,或称海森矩阵,是多元微积分中的一个核心概念,由一个标量值函数的所有二阶偏导数所组成的方块矩阵。它以19世纪的德国数学家路德维希·奥托·黑塞(Ludwig Otto Hesse)的名字命名。Hessian矩阵可以被看作是单变量函数二阶导数在多维空间中的推广,它描述了一个函数在某一点附近的局部曲率

Hessian矩阵最重要的应用是在最优化理论中,用于判断多元函数的临界点局部极大值局部极小值还是鞍点

形式化定义

假设有一个定义在 Rn\mathbb{R}^n 上的实值函数 f(x1,x2,,xn)f(x_1, x_2, \ldots, x_n),即 f:RnRf: \mathbb{R}^n \to \mathbb{R}。如果函数 ff 的所有二阶偏导数都存在且在定义域内连续,那么函数 ff 在点 x=(x1,,xn)x = (x_1, \ldots, x_n) 的Hessian矩阵 H(f)(x)H(f)(x) 是一个 n×nn \times n 的矩阵,其定义如下:

H(f)(x) = \begin{bmatrix} \frac{\partial^2 f}{\partial x_1^2} & \frac{\partial^2 f}{\partial x_1 \partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_1 \partial x_n} \\ \frac{\partial^2 f}{\partial x_2 \partial x_1} & \frac{\partial^2 f}{\partial x_2^2} & \cdots & \frac{\partial^2 f}{\partial x_2 \partial x_n} \\

\vdots \& \vdots \& \ddots \& \vdots \\

\frac{\partial^2 f}{\partial x_n \partial x_1} & \frac{\partial^2 f}{\partial x_n \partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_n^2} \end{bmatrix}

矩阵的第 ii 行第 jj 列的元素为:

(H(f)(x))ij=2fxixj(x)(H(f)(x))_{ij} = \frac{\partial^2 f}{\partial x_i \partial x_j}(x)

Hessian矩阵有时也用 2f(x)\nabla^2 f(x) 来表示,以强调它是对梯度 f(x)\nabla f(x) 的再次求导(在某种意义上)。

关键性质:对称性

根据克莱罗定理(Clairaut's Theorem,或称施瓦茨定理),如果函数 ff 的二阶混合偏导数 2fxixj\frac{\partial^2 f}{\partial x_i \partial x_j}2fxjxi\frac{\partial^2 f}{\partial x_j \partial x_i} 都是连续的,那么它们的求导次序可以交换,即:

2fxixj=2fxjxi\frac{\partial^2 f}{\partial x_i \partial x_j} = \frac{\partial^2 f}{\partial x_j \partial x_i}

在这种通常满足的条件下,Hessian矩阵是一个对称矩阵,即 H=HTH = H^T。这一性质在理论分析和计算中都至关重要。

在无约束最优化中的应用:二阶导数检验

Hessian矩阵是多元函数极值判定的核心工具。这套判定准则被称为 二阶导数检验

前提:首先,我们需要找到函数 ff 的所有临界点。临界点是满足梯度为零向量 f(x)=0\nabla f(x^*) = 0 的点 xx^*。这些点是潜在的极值点。

检验步骤:对于一个临界点 xx^*,我们计算其Hessian矩阵 H(f)(x)H(f)(x^*),并判断该矩阵的定性(Definiteness)。

  1. 局部极小值 (Local Minimum):如果Hessian矩阵 H(f)(x)H(f)(x^*)正定矩阵(Positive Definite),则 ffxx^* 处取得一个严格的局部极小值。 \begin{itemize}
  2. 对于正定矩阵,其所有的特征值(Eigenvalues)都为正。这意味着函数在 xx^* 附近向所有方向 "向上弯曲",形成一个盆地状。 \end{itemize}
  3. 局部极大值 (Local Maximum):如果Hessian矩阵 H(f)(x)H(f)(x^*)负定矩阵(Negative Definite),则 ffxx^* 处取得一个严格的局部极大值。 \begin{itemize}
  4. 对于负定矩阵,其所有的特征值都为负。这意味着函数在 xx^* 附近向所有方向 "向下弯曲",形成一个山峰状。 \end{itemize}
  5. 鞍点 (Saddle Point):如果Hessian矩阵 H(f)(x)H(f)(x^*)不定矩阵(Indefinite),即它既有正特征值也有负特征值,则 xx^* 是一个鞍点。 \begin{itemize}
  6. 在鞍点,函数在某些方向上是极大值,而在另一些方向上是极小值,形状如同马鞍。 \end{itemize}
  7. 检验失效:如果Hessian矩阵 H(f)(x)H(f)(x^*)半正定矩阵半负定矩阵(但不是正定或负定),即它有零特征值且其余特征值同号,则二阶导数检验失效。需要更高阶的检验来判断该临界点的性质。

示例

考虑函数 f(x,y)=x33x+y2f(x, y) = x^3 - 3x + y^2

第一步:求梯度和临界点

计算一阶偏导数并令其为零:

f(x,y)=(fx,fy)=(3x23,2y)\nabla f(x, y) = \left( \frac{\partial f}{\partial x}, \frac{\partial f}{\partial y} \right) = (3x^2 - 3, 2y)

f(x,y)=(0,0)\nabla f(x, y) = (0, 0),我们得到方程组:

3x23=0    x=±13x^2 - 3 = 0 \implies x = \pm 1
2y=0    y=02y = 0 \implies y = 0

因此,我们有两个临界点:(1,0)(1, 0)(1,0)(-1, 0)

第二步:计算Hessian矩阵

计算二阶偏导数:

2fx2=6x,2fy2=2,2fxy=2fyx=0\frac{\partial^2 f}{\partial x^2} = 6x, \quad \frac{\partial^2 f}{\partial y^2} = 2, \quad \frac{\partial^2 f}{\partial x \partial y} = \frac{\partial^2 f}{\partial y \partial x} = 0

Hessian矩阵为:

H(f)(x,y)=[6x002]H(f)(x,y) = \begin{bmatrix} 6x & 0 \\ 0 & 2 \end{bmatrix}

第三步:在临界点处评估Hessian矩阵并判断

  • 对于临界点 (1,0)(1, 0): H(f)(1, 0) = \begin{bmatrix} 6(1) \& 0 \\ 0 \& 2 \end{bmatrix} = \begin{bmatrix} 6 \& 0 \\ 0 \& 2 \end{bmatrix} 该矩阵的特征值为 λ1=6,λ2=2\lambda_1 = 6, \lambda_2 = 2。所有特征值均为正,因此矩阵是正定的。 结论:函数在点 (1,0)(1, 0) 处取得一个局部极小值。
  • 对于临界点 (1,0)(-1, 0): \[ H(f)(-1, 0) = \begin{bmatrix} 6(-1) & 0 \\ 0 & 2 \end{bmatrix} = \begin{bmatrix} -6 & 0 \\ 0 & 2 \end{bmatrix} \] 该矩阵的特征值为 λ1=6,λ2=2\lambda_1 = -6, \lambda_2 = 2。特征值有正有负,因此矩阵是不定的。 结论:点 (1,0)(-1, 0) 是一个鞍点。

理论背景:泰勒展开

Hessian矩阵在二阶导数检验中之所以有效,根源于函数的多元泰勒展开。在临界点 xx^* 附近,函数的二阶泰勒展开式为:

f(x)f(x)+f(x)T(xx)+12(xx)TH(f)(x)(xx)f(x) \approx f(x^*) + \nabla f(x^*)^T (x-x^*) + \frac{1}{2} (x-x^*)^T H(f)(x^*) (x-x^*)

由于 xx^* 是临界点,f(x)=0\nabla f(x^*) = 0,上式简化为:

f(x)f(x)12(xx)TH(f)(x)(xx)f(x) - f(x^*) \approx \frac{1}{2} (x-x^*)^T H(f)(x^*) (x-x^*)

右侧的表达式是一个二次型,其符号完全由Hessian矩阵 H(f)(x)H(f)(x^*) 的定性决定。

  • 如果 HH 是正定的,则对于任何非零向量 z=xxz = x - x^*,二次型 zTHz>0z^T H z > 0。这意味着 f(x)>f(x)f(x) > f(x^*),因此 xx^* 是一个局部极小点。
  • 如果 HH 是负定的,则 zTHz<0z^T H z < 0,意味着 f(x)<f(x)f(x) < f(x^*),因此 xx^* 是一个局部极大点。

其他重要应用

除了在最优化中的核心作用,Hessian矩阵在其他领域也扮演着重要角色:

  • 经济学:在微观经济学中,用于检验效用最大化成本最小化的二阶条件。例如,对于带有约束的优化问题,需要使用加边Hessian矩阵(Bordered Hessian)来进行判断。
  • 计量经济学:在最大似然估计(MLE)中,对数似然函数的Hessian矩阵至关重要。在似然函数的峰值处(即MLE估计值处)计算的Hessian矩阵的负逆,可以作为参数估计量的方差-协方差矩阵的一个估计,即信息矩阵的逆。
  • 数值分析:在求解非线性优化问题的算法中,如牛顿法,Hessian矩阵被用来确定搜索方向和步长。更新规则通常涉及Hessian矩阵的逆:xk+1=xk[H(f)(xk)]1f(xk)x_{k+1} = x_k - [H(f)(x_k)]^{-1} \nabla f(x_k)
  • 物理学和工程学:用于分析势能面的稳定点,确定系统的平衡状态是稳定、不稳定还是亚稳态。