← 返回《人工智能数学基础》
📑 查看全课大纲(第 51 / 93 节)
  1. 1.概论和集合的定义
  2. 2.逼疯康托的实数集理论
  3. 3.常用不等式与映射
  4. 4.函数及特殊函数
  5. 5.序列极限的定义
  6. 6.序列极限的性质与夹逼定理
  7. 7.重要极限
  8. 8.无穷小量,无穷大量和一组重要的阶的比较关系
  9. 9.聚点原理
  10. 10.函数极限及其性质
  11. 11.重要极限与等价无穷小
  12. 12.连续函数
  13. 13.导数的概念(那些年,扛起牛顿的胡克)
  14. 14.定义法求导
  15. 15.函数四则运算的导数与反函数求导法则
  16. 16.复合函数,隐函数,参数式求导
  17. 17.不定式求导之“洛必达与伯努利的师生情”
  18. 18.一阶微分
  19. 19.高阶导数
  20. 20.高阶微分
  21. 21.罗尔中值定理与拉格朗日中值定理
  22. 22.柯西空降科学院遭排挤
  23. 23.泰勒公式与泰勒的克妻属性
  24. 24.利用泰勒展开唯一性定理计算泰勒展开
  25. 25.泰勒公式的余项估计
  26. 26.极值问题与导数
  27. 27.函数凹凸性
  28. 28.无卵用的渐近线与函数作图
  29. 29.不定积分的定义
  30. 30.第一换元法
  31. 31.第二换元法
  32. 32.分部积分法
  33. 33.有理式积分
  34. 34.三角替换
  35. 35.定积分的概念
  36. 36.定积分的性质与积分中值定理
  37. 37.变上限定积分
  38. 38.微积分基本定理之“高斯教你如何优雅地装逼”
  39. 39.定积分的换元法
  40. 40.奇偶函数与周期函数的定积分
  41. 41.曲线求长与不可求长曲线(海岸线居然算不出长度?)
  42. 42.旋转体体积
  43. 43.旋转体侧面积
  44. 44.极坐标下图形的面积(数学系常用表白曲线)
  45. 45.欧式空间
  46. 46.点列极限,开集与闭集
  47. 47.多元函数的定义
  48. 48.多元函数的极限
  49. 49.多元连续函数
  50. 50.一阶偏导数
  51. 51.高阶偏导数
  52. 52.全微分
  53. 53.方向导数与梯度
  54. 54.链式法则
  55. 55.一阶全微分形式的不变性与高阶微分
  56. 56.多元函数的泰勒公式
  57. 57.隐函数存在定理与逆映射存在定理
  58. 58.多元函数的极值
  59. 59.矩阵基础知识
  60. 60.行列式的定义与特殊矩阵的行列式
  61. 61.行列式的性质
  62. 62.行列式按k行展开
  63. 63.线性方程组初步与高斯消元法
  64. 64.齐次线性方程组与Cramer法则
  65. 65.线性空间
  66. 66.线性相关与线性无关
  67. 67.向量组的秩
  68. 68.矩阵的秩与线性方程组有解的充要条件
  69. 69.齐次线性方程组的解集结构
  70. 70.非齐次线性方程组解集结构
  71. 71.基与维数
  72. 72.矩阵的乘法
  73. 73.特殊矩阵
  74. 74.矩阵乘积的秩与行列式
  75. 75.矩阵的逆
  76. 76.正交矩阵
  77. 77.矩阵对角化与特征值特征向量
  78. 78.实对称矩阵对角化
  79. 79.二次型与正定矩阵
  80. 80.LU分解
  81. 81.Cholesky分解
  82. 82.SVD分解
  83. 83.线搜索
  84. 84.步长
  85. 85.最速下降法和牛顿法
  86. 86.共轭梯度法
  87. 87.拟牛顿法
  88. 88.无约束优化
  89. 89.若干知识点补充(一)
  90. 90.若干知识点补充(二)
  91. 91.凸优化问题
  92. 92.对偶问题(一)
  93. 93.对偶问题(二)

高阶偏导数

约 22 分钟

📺 正在播放小象官方高清录播(支持倍速与清晰度调节)

高阶偏导数

小象实战讲义 · 人工智能数学基础

在上一节,我们掌握了多元函数关于单个变量的变化率——偏导数。然而,要深入理解多元函数的局部形态,例如判断其极值点或进行二阶近似,仅有一阶信息是不够的。本节我们将学习高阶偏导数,即对偏导数再次求导。这不仅是多元微分学的核心内容,更是后续学习最优化算法(如梯度下降法的二阶改进)和机器学习模型(如神经网络的Hessian矩阵)的数学基石。学完本节,你将能够计算任意多元函数的二阶偏导数,理解混合偏导数的对称性,并初步认识描述函数局部曲率的重要工具——Hessian矩阵。

💡 核心导读

  • 高阶偏导数的定义:理解如何对一阶偏导函数继续求偏导,从而得到二阶乃至更高阶的偏导数。
  • 混合偏导数的对称性:掌握一个关键定理:在偏导数连续的条件下,混合偏导数的求导顺序可以交换。这对于简化计算至关重要。
  • Hessian矩阵的引入:学习如何将多元函数的所有二阶偏导数组织成一个对称方阵,这是描述函数局部二阶性质的核心工具。
  • 拉普拉斯算子简介:了解一个由二阶偏导数构成的特殊线性算子,它在物理和图像处理等领域有广泛应用。

9.7.1 从一阶到高阶:定义与记号

对于一个二元函数 z=f(x,y)z = f(x, y),我们有两个一阶偏导数: fxfy.\frac{\partial f}{\partial x} \quad \text{和} \quad \frac{\partial f}{\partial y}. 需要明确的是,fx\frac{\partial f}{\partial x}fy\frac{\partial f}{\partial y} 本身仍然是关于 xxyy 的二元函数。因此,我们可以对它们再次求偏导。

fx\frac{\partial f}{\partial x} 为例,它可以对 xxyy 再次求导:

  1. xx 再求一次导x(fx)\frac{\partial}{\partial x} \left( \frac{\partial f}{\partial x} \right),记作 2fx2\frac{\partial^2 f}{\partial x^2}fxxf_{xx}zxxz_{xx}
  2. yy 再求一次导y(fx)\frac{\partial}{\partial y} \left( \frac{\partial f}{\partial x} \right),记作 2fxy\frac{\partial^2 f}{\partial x \partial y}fxyf_{xy}zxyz_{xy}

类似地,对 fy\frac{\partial f}{\partial y} 也可以求导:

  1. xx 求一次导x(fy)\frac{\partial}{\partial x} \left( \frac{\partial f}{\partial y} \right),记作 2fyx\frac{\partial^2 f}{\partial y \partial x}fyxf_{yx}zyxz_{yx}
  2. yy 再求一次导y(fy)\frac{\partial}{\partial y} \left( \frac{\partial f}{\partial y} \right),记作 2fy2\frac{\partial^2 f}{\partial y^2}fyyf_{yy}zyyz_{yy}

因此,一个二元函数的二阶偏导数共有四个。其中,fxxf_{xx}fyyf_{yy} 称为纯偏导数,而 fxyf_{xy}fyxf_{yx} 称为混合偏导数

关于记号的顺序:需要特别注意莱布尼茨记号 2fxy\frac{\partial^2 f}{\partial x \partial y} 的读法。它表示先对 xx 求偏导,再对 yy 求偏导,求导顺序与下标记法 fxyf_{xy} 一致,即从左到右。同理,2fyx\frac{\partial^2 f}{\partial y \partial x} 表示先对 yy 求导,再对 xx 求导,对应 fyxf_{yx}

推广到 nn 元函数 f(x1,x2,,xn)f(x_1, x_2, \dots, x_n),其一阶偏导数有 nn 个,每个一阶偏导数又可以分别对 nn 个变量求导,因此其二阶偏导数共有 n2n^2 个。以此类推,我们可以定义三阶及更高阶的偏导数。

9.7.2 混合偏导数的对称性

一个自然的问题是:混合偏导数 fxyf_{xy}fyxf_{yx} 是否总是相等?答案是否定的,但它们相等的条件非常宽松且在实际应用中经常满足。

定理(混合偏导数相等条件):如果函数 z=f(x,y)z = f(x, y) 的两个混合偏导数 fxyf_{xy}fyxf_{yx} 在点 (x0,y0)(x_0, y_0) 的某个邻域内存在且连续,则在点 (x0,y0)(x_0, y_0) 处有 fxy(x0,y0)=fyx(x0,y0).f_{xy}(x_0, y_0) = f_{yx}(x_0, y_0).

这个定理的意义非常重大。在人工智能和科学计算中,我们处理的函数大多是由基本初等函数经过有限次四则运算和复合构成的初等函数。初等函数在其定义域内通常是任意阶连续可导的(CC^\infty 函数)。因此,对于这类函数,其二阶混合偏导数必然连续,从而求导顺序可以交换。

这意味着,在计算一个二元初等函数的四个二阶偏导数时,我们实际上只需要计算三个:fxxf_{xx}, fxyf_{xy}, fyyf_{yy},而 fyxf_{yx} 必然等于 fxyf_{xy}。这大大简化了计算,并体现了一种美妙的对称性。

例1:验证函数 z=yexyz = y e^{xy} 的混合偏导数相等。 首先求一阶偏导: zx=y2exy,zy=(1+xy)exy.\frac{\partial z}{\partial x} = y^2 e^{xy}, \quad \frac{\partial z}{\partial y} = (1 + xy) e^{xy}. 然后求二阶偏导: 2zx2=x(y2exy)=y3exy,2zxy=y(y2exy)=(2y+xy2)exy,2zyx=x((1+xy)exy)=(y+y(1+xy))exy=(2y+xy2)exy,2zy2=y((1+xy)exy)=(x+x(1+xy))exy=(2x+x2y)exy.\begin{aligned} \frac{\partial^2 z}{\partial x^2} &= \frac{\partial}{\partial x}(y^2 e^{xy}) = y^3 e^{xy}, \ \frac{\partial^2 z}{\partial x \partial y} &= \frac{\partial}{\partial y}(y^2 e^{xy}) = (2y + xy^2) e^{xy}, \ \frac{\partial^2 z}{\partial y \partial x} &= \frac{\partial}{\partial x}((1+xy)e^{xy}) = (y + y(1+xy)) e^{xy} = (2y + xy^2) e^{xy}, \ \frac{\partial^2 z}{\partial y^2} &= \frac{\partial}{\partial y}((1+xy)e^{xy}) = (x + x(1+xy)) e^{xy} = (2x + x^2 y) e^{xy}. \end{aligned} 可以清楚地看到 2zxy=2zyx\frac{\partial^2 z}{\partial x \partial y} = \frac{\partial^2 z}{\partial y \partial x}

我们可以用 Python 的符号计算库 sympy 来验证这一结果。

import sympy as sp

# 定义符号和函数
x, y = sp.symbols('x y')
z = y * sp.exp(x * y)

# 计算一阶偏导
z_x = sp.diff(z, x)
z_y = sp.diff(z, y)
print("一阶偏导数:")
print(f"∂z/∂x = {z_x}")
print(f"∂z/∂y = {z_y}")

# 计算二阶偏导
z_xx = sp.diff(z_x, x)
z_xy = sp.diff(z_x, y)
z_yx = sp.diff(z_y, x)
z_yy = sp.diff(z_y, y)

print("\n二阶偏导数:")
print(f"∂²z/∂x² = {z_xx}")
print(f"∂²z/∂x∂y = {z_xy}")
print(f"∂²z/∂y∂x = {z_yx}")
print(f"∂²z/∂y² = {z_yy}")

# 验证混合偏导相等
print(f"\n验证 ∂²z/∂x∂y == ∂²z/∂y∂x: {sp.simplify(z_xy - z_yx) == 0}")

9.7.3 拉普拉斯方程简介

由二阶偏导数可以构造一个非常重要的微分算子——拉普拉斯算子(Laplacian)。对于二元函数 u(x,y)u(x, y),其拉普拉斯算子定义为: Δu=2ux2+2uy2.\Delta u = \frac{\partial^2 u}{\partial x^2} + \frac{\partial^2 u}{\partial y^2}. 形如 Δu=0\Delta u = 0 的方程称为拉普拉斯方程,它的解称为调和函数。拉普拉斯方程在物理学(如电磁学、流体力学)和图像处理(如图像平滑)中无处不在。

例2:验证函数 u=12ln(x2+y2)u = \frac{1}{2} \ln(x^2 + y^2) 满足拉普拉斯方程 Δu=0\Delta u = 0。 首先求一阶偏导: ux=xx2+y2,uy=yx2+y2.\frac{\partial u}{\partial x} = \frac{x}{x^2 + y^2}, \quad \frac{\partial u}{\partial y} = \frac{y}{x^2 + y^2}. 然后求二阶偏导: 2ux2=(x2+y2)x2x(x2+y2)2=y2x2(x2+y2)2,2uy2=(x2+y2)y2y(x2+y2)2=x2y2(x2+y2)2.\begin{aligned} \frac{\partial^2 u}{\partial x^2} &= \frac{(x^2+y^2) - x \cdot 2x}{(x^2+y^2)^2} = \frac{y^2 - x^2}{(x^2+y^2)^2}, \ \frac{\partial^2 u}{\partial y^2} &= \frac{(x^2+y^2) - y \cdot 2y}{(x^2+y^2)^2} = \frac{x^2 - y^2}{(x^2+y^2)^2}. \end{aligned} 两者相加: Δu=y2x2(x2+y2)2+x2y2(x2+y2)2=0.\Delta u = \frac{y^2 - x^2}{(x^2+y^2)^2} + \frac{x^2 - y^2}{(x^2+y^2)^2} = 0. 因此,该函数是调和函数。注意观察函数 uu 关于 xxyy 是对称的,这帮助我们快速写出了 2uy2\frac{\partial^2 u}{\partial y^2} 的形式。

9.7.4 Hessian矩阵:二阶信息的组织方式

对于 nn 元函数 f(x)f(\mathbf{x}), x=(x1,x2,,xn)T\mathbf{x} = (x_1, x_2, \dots, x_n)^T,其所有二阶偏导数可以系统地组织成一个 n×nn \times n 的矩阵,称为 Hessian矩阵(或海森矩阵),记作 H(f)\mathbf{H}(f)2f\nabla^2 f

H(f)=[2fx122fx1x22fx1xn2fx2x12fx222fx2xn2fxnx12fxnx22fxn2].\mathbf{H}(f) = \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} \[6pt] \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} \[6pt] \vdots & \vdots & \ddots & \vdots \[6pt] \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}.

Hessian矩阵的性质

  1. 方阵:总是 n×nn \times n 的方阵。
  2. 对称性:如果函数 ff 的所有二阶偏导数连续,则根据混合偏导数定理,有 2fxixj=2fxjxi\frac{\partial^2 f}{\partial x_i \partial x_j} = \frac{\partial^2 f}{\partial x_j \partial x_i},这意味着 Hessian 矩阵是对称矩阵,即 HT=H\mathbf{H}^T = \mathbf{H}
  3. 与梯度的关系:Hessian 矩阵可以看作是梯度向量 f=(fx1,fx2,,fxn)T\nabla f = \left( \frac{\partial f}{\partial x_1}, \frac{\partial f}{\partial x_2}, \dots, \frac{\partial f}{\partial x_n} \right)^T 的导数。向量对向量求导的结果是一个矩阵(Jacobian 矩阵),梯度向量的 Jacobian 就是 Hessian 矩阵:H(f)=J(f)\mathbf{H}(f) = \mathbf{J}(\nabla f)

Hessian 矩阵在优化算法中扮演着核心角色。它描述了函数在一点附近的局部曲率。在梯度下降法中,利用 Hessian 矩阵信息的算法(如牛顿法)可以更智能地选择下降方向和步长,从而加速收敛。

例3:求二元函数 f(x,y)=x3+2xyy2f(x, y) = x^3 + 2xy - y^2 在点 (1,1)(1, -1) 处的 Hessian 矩阵。 首先求一阶和二阶偏导: fx=3x2+2y,fy=2x2y,fxx=6x,fxy=2,fyx=2,fyy=2.\begin{aligned} f_x &= 3x^2 + 2y, \quad f_y = 2x - 2y, \ f_{xx} &= 6x, \quad f_{xy} = 2, \quad f_{yx} = 2, \quad f_{yy} = -2. \end{aligned} 因此,Hessian 矩阵为: H(f)(x,y)=[6x222].\mathbf{H}(f)(x, y) = \begin{bmatrix} 6x & 2 \ 2 & -2 \end{bmatrix}. 在点 (1,1)(1, -1) 处,Hessian 矩阵为: H(f)(1,1)=[6222].\mathbf{H}(f)(1, -1) = \begin{bmatrix} 6 & 2 \ 2 & -2 \end{bmatrix}. 这是一个对称矩阵。

📝 动手练一练

  1. 计算二阶偏导数:求函数 f(x,y)=sin(x2y)f(x, y) = \sin(x^2 y) 的所有二阶偏导数。
  2. 验证调和函数:证明函数 u(x,y)=excosyu(x, y) = e^x \cos y 满足拉普拉斯方程 Δu=0\Delta u = 0

参考答案

  1. 一阶偏导:fx=2xycos(x2y)f_x = 2xy \cos(x^2 y), fy=x2cos(x2y)f_y = x^2 \cos(x^2 y)。 二阶偏导: fxx=2ycos(x2y)4x2y2sin(x2y)f_{xx} = 2y \cos(x^2 y) - 4x^2y^2 \sin(x^2 y), fxy=2xcos(x2y)2x3ysin(x2y)f_{xy} = 2x \cos(x^2 y) - 2x^3y \sin(x^2 y), fyy=x4sin(x2y)f_{yy} = -x^4 \sin(x^2 y), 且 fyx=fxyf_{yx} = f_{xy}
  2. 计算得 uxx=excosyu_{xx} = e^x \cos y, uyy=excosyu_{yy} = -e^x \cos y,故 Δu=uxx+uyy=0\Delta u = u_{xx} + u_{yy} = 0

本章小结

本节我们深入探讨了多元微分学中的高阶偏导数。我们从二元函数出发,定义了二阶偏导数,理解了纯偏导与混合偏导的区别。最关键的是,我们学习了混合偏导数在连续条件下相等的定理,这为简化计算和理解函数对称性提供了依据。我们还介绍了由二阶偏导构成的拉普拉斯算子及其方程。最后,我们将所有二阶偏导数组织成Hessian矩阵,它是连接一阶梯度与函数局部曲率的核心桥梁,在最优化理论中至关重要。

行动清单

  1. 掌握计算:任选一个二元初等函数,手动计算其所有一阶和二阶偏导数,并验证混合偏导相等。
  2. 代码验证:使用 sympy 库重复上述计算,确保符号计算的结果与手动计算一致。
  3. 联想应用:搜索“牛顿法优化”或“神经网络的二阶优化”,了解 Hessian 矩阵在这些算法中的具体作用,建立数学概念与实际应用的连接。

— 小象教研组

配套学习资源与课件
  • 第9章讲义(含板书):多元微分学(PDF · 28.2MB)
    下载
🎁 免费学习资源

领取《小象 11GB VIP 课件资料包与大厂真题手册》

包含全套实战 Jupyter 源码、清洗后数据集、大厂高频面试真题与专属学员答疑交流群。

  • 完整 Python / 数据分析 Jupyter 实战源码
  • 大厂真实业务数据集与练习题
  • 微信扫码添加课程顾问,免费获取网盘下载链接
微信二维码:扫码添加课程顾问微信扫码添加顾问