Hessian 矩阵与函数的凸性

Hessian 矩阵的定义

Hessian 矩阵是一个方形矩阵,用来描述多元函数的二阶偏导数信息。对于一个 n n n 维函数 f ( x 1 , x 2 , ... , x n ) f(x_1, x_2, \dots, x_n) f(x1,x2,...,xn),Hessian 矩阵的定义是:

H = [ ∂ 2 f ∂ x 1 2 ∂ 2 f ∂ x 1 ∂ x 2 ⋯ ∂ 2 f ∂ x 1 ∂ x n ∂ 2 f ∂ x 2 ∂ x 1 ∂ 2 f ∂ x 2 2 ⋯ ∂ 2 f ∂ x 2 ∂ x n ⋮ ⋮ ⋱ ⋮ ∂ 2 f ∂ x n ∂ x 1 ∂ 2 f ∂ x n ∂ x 2 ⋯ ∂ 2 f ∂ x n 2 ] . \mathbf{H} = \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}. H= ∂x12∂2f∂x2∂x1∂2f⋮∂xn∂x1∂2f∂x1∂x2∂2f∂x22∂2f⋮∂xn∂x2∂2f⋯⋯⋱⋯∂x1∂xn∂2f∂x2∂xn∂2f⋮∂xn2∂2f .

Hessian 矩阵是一个对称矩阵(因为二阶偏导数 ∂ 2 f ∂ x i ∂ x j = ∂ 2 f ∂ x j ∂ x i \frac{\partial^2 f}{\partial x_i \partial x_j} = \frac{\partial^2 f}{\partial x_j \partial x_i} ∂xi∂xj∂2f=∂xj∂xi∂2f)。


Hessian 矩阵的求法

  1. 给定函数:

    假设 f ( x 1 , x 2 , ... , x n ) f(x_1, x_2, \dots, x_n) f(x1,x2,...,xn) 是一个二次连续可导的函数。

  2. 求一阶偏导:

    对每个变量 x i x_i xi 求偏导,得到一阶偏导数向量(梯度):
    ∇ f = [ ∂ f ∂ x 1 ∂ f ∂ x 2 ⋮ ∂ f ∂ x n ] . \nabla f = \begin{bmatrix} \frac{\partial f}{\partial x_1} \\ \frac{\partial f}{\partial x_2} \\ \vdots \\ \frac{\partial f}{\partial x_n} \end{bmatrix}. ∇f= ∂x1∂f∂x2∂f⋮∂xn∂f .

  3. 求二阶偏导:

    对每个一阶偏导数 ∂ f ∂ x i \frac{\partial f}{\partial x_i} ∂xi∂f 再分别对每个变量 x j x_j xj 求偏导,构造二阶偏导数矩阵(即 Hessian 矩阵)。


例子:

例1:一元函数

对于 f ( x ) = x 3 − 2 x 2 + x f(x) = x^3 - 2x^2 + x f(x)=x3−2x2+x,

  1. 求一阶导数:
    d f d x = 3 x 2 − 4 x + 1. \frac{df}{dx} = 3x^2 - 4x + 1. dxdf=3x2−4x+1.

  2. 求二阶导数:
    d 2 f d x 2 = 6 x − 4. \frac{d^2f}{dx^2} = 6x - 4. dx2d2f=6x−4.

Hessian 矩阵在一维情况下就是 H = [ 6 x − 4 ] \mathbf{H} = [6x - 4] H=[6x−4](标量)。


例2:多元函数

对于 f ( x 1 , x 2 ) = x 1 2 + 3 x 1 x 2 + x 2 2 f(x_1, x_2) = x_1^2 + 3x_1x_2 + x_2^2 f(x1,x2)=x12+3x1x2+x22,

  1. 求一阶偏导:
    ∂ f ∂ x 1 = 2 x 1 + 3 x 2 , ∂ f ∂ x 2 = 3 x 1 + 2 x 2 . \frac{\partial f}{\partial x_1} = 2x_1 + 3x_2, \quad \frac{\partial f}{\partial x_2} = 3x_1 + 2x_2. ∂x1∂f=2x1+3x2,∂x2∂f=3x1+2x2.

  2. 求二阶偏导,构造 Hessian 矩阵:
    H = [ ∂ 2 f ∂ x 1 2 ∂ 2 f ∂ x 1 ∂ x 2 ∂ 2 f ∂ x 2 ∂ x 1 ∂ 2 f ∂ x 2 2 ] = [ 2 3 3 2 ] . \mathbf{H} = \begin{bmatrix} \frac{\partial^2 f}{\partial x_1^2} & \frac{\partial^2 f}{\partial x_1 \partial x_2} \\ \frac{\partial^2 f}{\partial x_2 \partial x_1} & \frac{\partial^2 f}{\partial x_2^2} \end{bmatrix} = \begin{bmatrix} 2 & 3 \\ 3 & 2 \end{bmatrix}. H=[∂x12∂2f∂x2∂x1∂2f∂x1∂x2∂2f∂x22∂2f]=[2332].


Hessian 矩阵与凸性:

  • 如果 Hessian 矩阵的所有特征值均非负,则函数是凸函数;
  • 如果存在负特征值,则函数不是凸函数(某些方向上是凹的)。
相关推荐
柴猫°7 小时前
离散图扩散模型中的转移公式推导
人工智能·线性代数·机器学习
yeflx13 小时前
本质矩阵、基础矩阵和单应矩阵详解
线性代数·矩阵
AI算法沐枫14 小时前
计算机视觉需要哪些数学基础?常见问题全解析
人工智能·深度学习·线性代数·计算机视觉·自然语言处理
王_teacher1 天前
机器学习 矩阵求导 完整公式+严谨推导
人工智能·线性代数·考研·机器学习·矩阵·线性回归
做cv的小昊1 天前
【TJU】研究生应用统计学课程笔记(2)——第一章 数理统计的基本知识(1.3 统计中常用的分布族)
笔记·线性代数·数学建模·矩阵·概率论·学习方法·抽象代数
二等饼干~za8986682 天前
GEO 源码部署搭建详细操作教程(2026 最新版)
线性代数·django·开源·音视频·ai-native
Pentane.2 天前
【力扣hot100】【Leetcode 54】螺旋矩阵|边界控制 算法笔记及打卡(19/100)
算法·leetcode·矩阵
博.闻广见2 天前
AI_线性代数-6.PCA降维详解
人工智能·线性代数
做cv的小昊2 天前
【TJU】研究生应用统计学课程笔记(3)——第一章 数理统计的基本知识(1.4 正态总体的样本均值和样本方差的分布、1.5 充分统计量和完备统计量)
笔记·学习·线性代数·机器学习·数学建模·概率论
mxwin2 天前
Unity URP 下 TBN 矩阵学习 切线空间、tangent.w 与镜像 UV 的那些坑
学习·unity·矩阵·shader