线性代数 · 矩阵 | 向量微分计算及应用

注:本文为 "矩阵 | 向量微分计算" 相关合辑。

略作重排,如有内容异常,请看原文。


矩阵与向量微分计算

一、基础定义

(一)梯度(Gradient)

标量对列向量的微分。设 f ( x ) f(x) f(x) 为标量函数,其中 x = ( x 1 , x 2 , ... , x N ) T x = (x_1, x_2, \dots, x_N)^T x=(x1,x2,...,xN)T 是 N × 1 N \times 1 N×1 列向量。定义 f ( x ) f(x) f(x) 对 x x x 的梯度为列向量形式:
∂ f ( x ) ∂ x = ( ∂ f ( x ) ∂ x 1 ∂ f ( x ) ∂ x 2 ⋮ ∂ f ( x ) ∂ x N ) \frac{\partial f(x)}{\partial x} = \begin{pmatrix} \frac{\partial f(x)}{\partial x_1} \\ \frac{\partial f(x)}{\partial x_2} \\ \vdots \\ \frac{\partial f(x)}{\partial x_N} \end{pmatrix} ∂x∂f(x)= ∂x1∂f(x)∂x2∂f(x)⋮∂xN∂f(x)

梯度的转置为行向量,满足:
( ∂ f ( x ) ∂ x ) T = ∂ f ( x ) ∂ x T = ( ∂ f ( x ) ∂ x 1 , ∂ f ( x ) ∂ x 2 , ... , ∂ f ( x ) ∂ x N ) \left( \frac{\partial f(x)}{\partial x} \right)^T = \frac{\partial f(x)}{\partial x^T} = \left( \frac{\partial f(x)}{\partial x_1}, \frac{\partial f(x)}{\partial x_2}, \dots, \frac{\partial f(x)}{\partial x_N} \right) (∂x∂f(x))T=∂xT∂f(x)=(∂x1∂f(x),∂x2∂f(x),...,∂xN∂f(x))

(二)海塞矩阵(Hessian Matrix)

海塞矩阵是二阶梯度。设 f ( x ) f(x) f(x) 为二阶可微标量函数, x = ( x 1 , x 2 , ... , x N ) T x = (x_1, x_2, \dots, x_N)^T x=(x1,x2,...,xN)T。定义 f ( x ) f(x) f(x) 对 x x x 的海塞矩阵为二阶偏导数构成的方阵:
∂ 2 f ( x ) ∂ x ∂ x T = ( ∂ 2 f ( x ) ∂ x 1 2 ∂ 2 f ( x ) ∂ x 1 ∂ x 2 ⋯ ∂ 2 f ( x ) ∂ x 1 ∂ x N ∂ 2 f ( x ) ∂ x 2 ∂ x 1 ∂ 2 f ( x ) ∂ x 2 2 ⋯ ∂ 2 f ( x ) ∂ x 2 ∂ x N ⋮ ⋮ ⋱ ⋮ ∂ 2 f ( x ) ∂ x N ∂ x 1 ∂ 2 f ( x ) ∂ x N ∂ x 2 ⋯ ∂ 2 f ( x ) ∂ x N 2 ) \frac{\partial^2 f(x)}{\partial x \partial x^T} = \begin{pmatrix} \frac{\partial^2 f(x)}{\partial x_1^2} & \frac{\partial^2 f(x)}{\partial x_1 \partial x_2} & \cdots & \frac{\partial^2 f(x)}{\partial x_1 \partial x_N} \\ \frac{\partial^2 f(x)}{\partial x_2 \partial x_1} & \frac{\partial^2 f(x)}{\partial x_2^2} & \cdots & \frac{\partial^2 f(x)}{\partial x_2 \partial x_N} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial^2 f(x)}{\partial x_N \partial x_1} & \frac{\partial^2 f(x)}{\partial x_N \partial x_2} & \cdots & \frac{\partial^2 f(x)}{\partial x_N^2} \end{pmatrix} ∂x∂xT∂2f(x)= ∂x12∂2f(x)∂x2∂x1∂2f(x)⋮∂xN∂x1∂2f(x)∂x1∂x2∂2f(x)∂x22∂2f(x)⋮∂xN∂x2∂2f(x)⋯⋯⋱⋯∂x1∂xN∂2f(x)∂x2∂xN∂2f(x)⋮∂xN2∂2f(x)

海塞矩阵为对称矩阵,即 ∂ 2 f ( x ) ∂ x i ∂ x j = ∂ 2 f ( x ) ∂ x j ∂ x i \frac{\partial^2 f(x)}{\partial x_i \partial x_j} = \frac{\partial^2 f(x)}{\partial x_j \partial x_i} ∂xi∂xj∂2f(x)=∂xj∂xi∂2f(x)。

(三)雅可比矩阵(Jacobian Matrix)

雅可比矩阵本质上是一阶梯度,向量对向量微分。设 f ( x ) f(x) f(x) 为 K × 1 K \times 1 K×1 列向量函数, x = ( x 1 , x 2 , ... , x L ) T x = (x_1, x_2, \dots, x_L)^T x=(x1,x2,...,xL)T 为 L × 1 L \times 1 L×1 列向量,其中:
f ( x ) = ( f 1 ( x ) f 2 ( x ) ⋮ f K ( x ) ) f(x) = \begin{pmatrix} f_1(x) \\ f_2(x) \\ \vdots \\ f_K(x) \end{pmatrix} f(x)= f1(x)f2(x)⋮fK(x)

定义 f ( x ) f(x) f(x) 对 x T x^T xT 的雅可比矩阵为 K × L K \times L K×L 矩阵:
∂ f ( x ) ∂ x T = ( ∂ f 1 ( x ) ∂ x 1 ∂ f 1 ( x ) ∂ x 2 ⋯ ∂ f 1 ( x ) ∂ x L ∂ f 2 ( x ) ∂ x 1 ∂ f 2 ( x ) ∂ x 2 ⋯ ∂ f 2 ( x ) ∂ x L ⋮ ⋮ ⋱ ⋮ ∂ f K ( x ) ∂ x 1 ∂ f K ( x ) ∂ x 2 ⋯ ∂ f K ( x ) ∂ x L ) \frac{\partial f(x)}{\partial x^T} = \begin{pmatrix} \frac{\partial f_1(x)}{\partial x_1} & \frac{\partial f_1(x)}{\partial x_2} & \cdots & \frac{\partial f_1(x)}{\partial x_L} \\ \frac{\partial f_2(x)}{\partial x_1} & \frac{\partial f_2(x)}{\partial x_2} & \cdots & \frac{\partial f_2(x)}{\partial x_L} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial f_K(x)}{\partial x_1} & \frac{\partial f_K(x)}{\partial x_2} & \cdots & \frac{\partial f_K(x)}{\partial x_L} \end{pmatrix} ∂xT∂f(x)= ∂x1∂f1(x)∂x1∂f2(x)⋮∂x1∂fK(x)∂x2∂f1(x)∂x2∂f2(x)⋮∂x2∂fK(x)⋯⋯⋱⋯∂xL∂f1(x)∂xL∂f2(x)⋮∂xL∂fK(x)

(四)矩阵对标量微分

设 A A A 为 M × N M \times N M×N 矩阵,其元素 a i j a_{ij} aij 是标量变量 x q x_q xq(或 x p , x q x_p, x_q xp,xq)的函数。定义一阶偏导数和二阶偏导数分别为:
∂ A ∂ x q = ( ∂ a 11 ∂ x q ⋯ ∂ a 1 N ∂ x q ⋮ ⋱ ⋮ ∂ a M 1 ∂ x q ⋯ ∂ a M N ∂ x q ) \frac{\partial A}{\partial x_q} = \begin{pmatrix} \frac{\partial a_{11}}{\partial x_q} & \cdots & \frac{\partial a_{1N}}{\partial x_q} \\ \vdots & \ddots & \vdots \\ \frac{\partial a_{M1}}{\partial x_q} & \cdots & \frac{\partial a_{MN}}{\partial x_q} \end{pmatrix} ∂xq∂A= ∂xq∂a11⋮∂xq∂aM1⋯⋱⋯∂xq∂a1N⋮∂xq∂aMN
∂ 2 A ∂ x p ∂ x q = ( ∂ 2 a 11 ∂ x p ∂ x q ⋯ ∂ 2 a 1 N ∂ x p ∂ x q ⋮ ⋱ ⋮ ∂ 2 a M 1 ∂ x p ∂ x q ⋯ ∂ 2 a M N ∂ x p ∂ x q ) \frac{\partial^2 A}{\partial x_p \partial x_q} = \begin{pmatrix} \frac{\partial^2 a_{11}}{\partial x_p \partial x_q} & \cdots & \frac{\partial^2 a_{1N}}{\partial x_p \partial x_q} \\ \vdots & \ddots & \vdots \\ \frac{\partial^2 a_{M1}}{\partial x_p \partial x_q} & \cdots & \frac{\partial^2 a_{MN}}{\partial x_p \partial x_q} \end{pmatrix} ∂xp∂xq∂2A= ∂xp∂xq∂2a11⋮∂xp∂xq∂2aM1⋯⋱⋯∂xp∂xq∂2a1N⋮∂xp∂xq∂2aMN

二、定理

(一)矩阵乘积微分定理

设 A A A 为 K × M K \times M K×M 矩阵, B B B 为 M × L M \times L M×L 矩阵,且 C = A B C = AB C=AB。若 A A A 和 B B B 的元素均为标量变量 x p x_p xp 的函数,则:
∂ C ∂ x p = ∂ A ∂ x p B + A ∂ B ∂ x p \frac{\partial C}{\partial x_p} = \frac{\partial A}{\partial x_p} B + A \frac{\partial B}{\partial x_p} ∂xp∂C=∂xp∂AB+A∂xp∂B
证明 :由矩阵乘法定义, C C C 的元素 c k ℓ = ∑ m = 1 M a k m b m ℓ c_{k\ell} = \sum\limits_{m=1}^M a_{km} b_{m\ell} ckℓ=m=1∑Makmbmℓ。对 x p x_p xp 求偏导:
∂ c k ℓ ∂ x p = ∑ m = 1 M ( ∂ a k m ∂ x p b m ℓ + a k m ∂ b m ℓ ∂ x p ) \frac{\partial c_{k\ell}}{\partial x_p} = \sum_{m=1}^M \left( \frac{\partial a_{km}}{\partial x_p} b_{m\ell} + a_{km} \frac{\partial b_{m\ell}}{\partial x_p} \right) ∂xp∂ckℓ=m=1∑M(∂xp∂akmbmℓ+akm∂xp∂bmℓ)

按矩阵元素排列规则,即得
∂ C ∂ x p = ∂ A ∂ x p B + A ∂ B ∂ x p \frac{\partial C}{\partial x_p} = \frac{\partial A}{\partial x_p} B + A \frac{\partial B}{\partial x_p} ∂xp∂C=∂xp∂AB+A∂xp∂B

(二)逆矩阵微分定理

设 A A A 为 N × N N \times N N×N 非奇异方阵(行列式不为 0),其元素为标量变量 x q x_q xq 的函数,则 A − 1 A^{-1} A−1 的一阶和二阶偏导数分别为:
∂ A − 1 ∂ x q = − A − 1 ∂ A ∂ x q A − 1 , ∂ 2 A − 1 ∂ x p ∂ x q = A − 1 ( ∂ A ∂ x p A − 1 ∂ A ∂ x q − ∂ 2 A ∂ x p ∂ x q + ∂ A ∂ x q A − 1 ∂ A ∂ x p ) A − 1 . \begin{align*} \frac{\partial A^{-1}}{\partial x_q} &= -A^{-1} \frac{\partial A}{\partial x_q} A^{-1}, \\ \frac{\partial^2 A^{-1}}{\partial x_p \partial x_q} &= A^{-1} \left( \frac{\partial A}{\partial x_p} A^{-1} \frac{\partial A}{\partial x_q} - \frac{\partial^2 A}{\partial x_p \partial x_q} + \frac{\partial A}{\partial x_q} A^{-1} \frac{\partial A}{\partial x_p} \right) A^{-1}. \end{align*} ∂xq∂A−1∂xp∂xq∂2A−1=−A−1∂xq∂AA−1,=A−1(∂xp∂AA−1∂xq∂A−∂xp∂xq∂2A+∂xq∂AA−1∂xp∂A)A−1.

定理证明
一阶偏导数证明

已知方阵 A A A 满足 A A − 1 = I A A^{-1} = I AA−1=I( I I I 为单位矩阵)。

对等式两端关于标量变量 x q x_q xq 求偏导,根据乘积微分法则可得:
A ∂ A − 1 ∂ x q + ∂ A ∂ x q A − 1 = ∂ I ∂ x q A \frac{\partial A^{-1}}{\partial x_q} + \frac{\partial A}{\partial x_q} A^{-1} = \frac{\partial I}{\partial x_q} A∂xq∂A−1+∂xq∂AA−1=∂xq∂I

由于单位矩阵 I I I 的元素均为常数,其对任意变量的偏导数为零矩阵 O O O,因此:
A ∂ A − 1 ∂ x q + ∂ A ∂ x q A − 1 = O A \frac{\partial A^{-1}}{\partial x_q} + \frac{\partial A}{\partial x_q} A^{-1} = O A∂xq∂A−1+∂xq∂AA−1=O

等式两端同时左乘 A − 1 A^{-1} A−1,整理后得到一阶偏导数公式:
∂ A − 1 ∂ x q = − A − 1 ∂ A ∂ x q A − 1 \frac{\partial A^{-1}}{\partial x_q} = -A^{-1} \frac{\partial A}{\partial x_q} A^{-1} ∂xq∂A−1=−A−1∂xq∂AA−1

二阶混合偏导数证明

对一阶偏导数公式关于标量变量 x p x_p xp 再次求偏导,即:
∂ 2 A − 1 ∂ x p ∂ x q = − ∂ ∂ x p ( A − 1 ∂ A ∂ x q A − 1 ) \frac{\partial^2 A^{-1}}{\partial x_p \partial x_q} = -\frac{\partial}{\partial x_p} \left( A^{-1} \frac{\partial A}{\partial x_q} A^{-1} \right) ∂xp∂xq∂2A−1=−∂xp∂(A−1∂xq∂AA−1)

根据乘积微分法则展开右边,可得:
∂ 2 A − 1 ∂ x p ∂ x q = − ∂ A − 1 ∂ x p ∂ A ∂ x q A − 1 − A − 1 ∂ 2 A ∂ x p ∂ x q A − 1 − A − 1 ∂ A ∂ x q ∂ A − 1 ∂ x p \frac{\partial^2 A^{-1}}{\partial x_p \partial x_q} = -\frac{\partial A^{-1}}{\partial x_p} \frac{\partial A}{\partial x_q} A^{-1} - A^{-1} \frac{\partial^2 A}{\partial x_p \partial x_q} A^{-1} - A^{-1} \frac{\partial A}{\partial x_q} \frac{\partial A^{-1}}{\partial x_p} ∂xp∂xq∂2A−1=−∂xp∂A−1∂xq∂AA−1−A−1∂xp∂xq∂2AA−1−A−1∂xq∂A∂xp∂A−1

将一阶偏导数公式 ∂ A − 1 ∂ x p = − A − 1 ∂ A ∂ x p A − 1 \frac{\partial A^{-1}}{\partial x_p} = -A^{-1} \frac{\partial A}{\partial x_p} A^{-1} ∂xp∂A−1=−A−1∂xp∂AA−1 代入上式,化简后得到二阶混合偏导数公式:
∂ 2 A − 1 ∂ x p ∂ x q = A − 1 ( ∂ A ∂ x p A − 1 ∂ A ∂ x q − ∂ 2 A ∂ x p ∂ x q + ∂ A ∂ x q A − 1 ∂ A ∂ x p ) A − 1 \frac{\partial^2 A^{-1}}{\partial x_p \partial x_q} = A^{-1} \left( \frac{\partial A}{\partial x_p} A^{-1} \frac{\partial A}{\partial x_q} - \frac{\partial^2 A}{\partial x_p \partial x_q} + \frac{\partial A}{\partial x_q} A^{-1} \frac{\partial A}{\partial x_p} \right) A^{-1} ∂xp∂xq∂2A−1=A−1(∂xp∂AA−1∂xq∂A−∂xp∂xq∂2A+∂xq∂AA−1∂xp∂A)A−1

说明
  • 逆矩阵及偏导数存在的前提是 A A A 为 N × N N \times N N×N 非奇异方阵,即行列式不为 0,否则逆矩阵 A − 1 A^{-1} A−1 不存在,相关偏导数也无法推导。
  • 若 A A A 为 M × N M \times N M×N 非方阵( M ≠ N M \neq N M=N),则不符合逆矩阵的定义要求,且不具备方阵的乘法封闭性、行列式等运算性质,因此不存在逆矩阵 A − 1 A^{-1} A−1,其偏导数更无从谈起。
  • 逆矩阵的偏导数计算依赖 A A − 1 = I A A^{-1} = I AA−1=I 的基本关系和乘积微分法则,一阶偏导数是二阶偏导数推导的基础。

三、典型函数微分示例

(一)二次函数微分

设二次函数 f ( x ) = x T V x f(x) = x^\mathrm{T} V x f(x)=xTVx,其中 x = ( x 1 , x 2 , ... , x k ) T x = (x_1, x_2, \dots, x_k)^\mathrm{T} x=(x1,x2,...,xk)T 是 k × 1 k \times 1 k×1 列向量, V = ( V i j ) k × k V = (V_{ij}){k \times k} V=(Vij)k×k 是 k × k k \times k k×k 矩阵。展开函数得:
f ( x ) = ∑ i = 1 k V i i x i 2 + ∑ 1 ≤ i < j ≤ k ( V i j + V j i ) x i x j f(x) = \sum
{i=1}^k V_{ii} x_i^2 + \sum_{1 \leq i < j \leq k} (V_{ij} + V_{ji}) x_i x_j f(x)=i=1∑kViixi2+1≤i<j≤k∑(Vij+Vji)xixj

对 x x x 求梯度:
∂ f ( x ) ∂ x = ( V + V T ) x \frac{\partial f(x)}{\partial x} = (V + V^\mathrm{T}) x ∂x∂f(x)=(V+VT)x

展开与微分推导
  1. 展开 f ( x ) f(x) f(x)

    • 通过矩阵乘法的"行乘列"规则,将二次型 x T V x x^\mathrm{T} V x xTVx 转化为代数多项式。
    • 计算 V x V x Vx: ( V x ) i = ∑ j = 1 k V i j x j (V x)i = \sum{j=1}^k V_{ij} x_j (Vx)i=∑j=1kVijxj。
    • 计算 x T ( V x ) x^\mathrm{T} (V x) xT(Vx): x T V x = ∑ i = 1 k ∑ j = 1 k V i j x i x j x^\mathrm{T} V x = \sum_{i=1}^k \sum_{j=1}^k V_{ij} x_i x_j xTVx=∑i=1k∑j=1kVijxixj。
    • 拆分双重求和:
      • 对角线项 ( i = j i = j i=j): ∑ i = 1 k V i i x i 2 \sum_{i=1}^k V_{ii} x_i^2 ∑i=1kViixi2
      • 交叉项 ( i ≠ j i \neq j i=j): ∑ 1 ≤ i < j ≤ k ( V i j + V j i ) x i x j \sum_{1 \leq i < j \leq k} (V_{ij} + V_{ji}) x_i x_j ∑1≤i<j≤k(Vij+Vji)xixj
  2. 微分推导

    • 对 f ( x ) f(x) f(x) 关于 x x x 求偏导:
      ∂ f ( x ) ∂ x = ( V + V T ) x \frac{\partial f(x)}{\partial x} = (V + V^\mathrm{T}) x ∂x∂f(x)=(V+VT)x
    • 以 k = 3 k=3 k=3 为例:
      • 设 β = ( β 1 , β 2 , β 3 ) T \beta = (\beta_1, \beta_2, \beta_3)^\mathrm{T} β=(β1,β2,β3)T, V = ( V 11 V 12 V 13 V 21 V 22 V 23 V 31 V 32 V 33 ) V = \begin{pmatrix} V_{11} & V_{12} & V_{13} \\ V_{21} & V_{22} & V_{23} \\ V_{31} & V_{32} & V_{33} \end{pmatrix} V= V11V21V31V12V22V32V13V23V33 。
      • 展开 β T V β \beta^\mathrm{T} V \beta βTVβ:
        β T V β = V 11 β 1 2 + V 22 β 2 2 + V 33 β 3 2 + ( V 12 + V 21 ) β 1 β 2 + ( V 13 + V 31 ) β 1 β 3 + ( V 23 + V 32 ) β 2 β 3 \beta^\mathrm{T} V \beta = V_{11}\beta_1^2 + V_{22}\beta_2^2 + V_{33}\beta_3^2 + (V_{12} + V_{21})\beta_1\beta_2 + (V_{13} + V_{31})\beta_1\beta_3 + (V_{23} + V_{32})\beta_2\beta_3 βTVβ=V11β12+V22β22+V33β32+(V12+V21)β1β2+(V13+V31)β1β3+(V23+V32)β2β3
      • 求偏导:
        ∂ ( β T V β ) ∂ β = ( 2 V 11 V 12 + V 21 V 13 + V 31 V 12 + V 21 2 V 22 V 23 + V 32 V 13 + V 31 V 23 + V 32 2 V 33 ) ( β 1 β 2 β 3 ) = ( V + V T ) β \frac{\partial (\beta^\mathrm{T} V \beta)}{\partial \beta} = \begin{pmatrix} 2V_{11} & V_{12} + V_{21} & V_{13} + V_{31} \\ V_{12} + V_{21} & 2V_{22} & V_{23} + V_{32} \\ V_{13} + V_{31} & V_{23} + V_{32} & 2V_{33} \end{pmatrix} \begin{pmatrix} \beta_1 \\ \beta_2 \\ \beta_3 \end{pmatrix} = (V + V^\mathrm{T}) \beta ∂β∂(βTVβ)= 2V11V12+V21V13+V31V12+V212V22V23+V32V13+V31V23+V322V33 β1β2β3 =(V+VT)β

(二)矩阵迹的微分

矩阵的 Frobenius 范数(F 模)与迹满足 ∥ A ∥ F = tr ( A T A ) \| A \|_F = \sqrt{\text{tr}(A^T A)} ∥A∥F=tr(ATA) (实矩阵情形),迹的微分在机器学习等领域应用广泛。

矩阵 F 范数与迹的关系

对于 m × n m \times n m×n 矩阵 A A A,F 范数可通过迹运算等价表示:

  1. 基本定义
    ∥ A ∥ F = ∑ i = 1 m ∑ j = 1 n ∣ a i j ∣ 2 \|A\|F = \sqrt{\sum{i=1}^{m}\sum_{j=1}^{n} |a_{ij}|^2} ∥A∥F=i=1∑mj=1∑n∣aij∣2
  2. 迹的等价形式
    ∥ A ∥ F = tr ⁡ ( A ∗ A ) ( A ∗ 为共轭转置 ) \|A\|_F = \sqrt{\operatorname{tr}\left(A^* A\right)} \quad (A^* \text{为共轭转置}) ∥A∥F=tr(A∗A) (A∗为共轭转置)
  3. 奇异值表示
    ∥ A ∥ F = ∑ i = 1 min ⁡ ( m , n ) σ i 2 ( σ i 为奇异值 ) \|A\|F = \sqrt{\sum{i=1}^{\min(m,n)} \sigma_i^2} \quad (\sigma_i \text{为奇异值}) ∥A∥F=i=1∑min(m,n)σi2 (σi为奇异值)
    F 范数的微分可转化为对 tr ⁡ ( A ∗ A ) \operatorname{tr}(A^* A) tr(A∗A) 的微分计算。
矩阵迹的性质:循环置换不变性

定理 (循环置换不变性):

对于可顺序相乘的矩阵 A , B , C , D A, B, C, D A,B,C,D,有:
tr ⁡ ( A B C D ) = tr ⁡ ( B C D A ) = tr ⁡ ( C D A B ) = tr ⁡ ( D A B C ) \operatorname{tr}(A B C D) = \operatorname{tr}(B C D A) = \operatorname{tr}(C D A B) = \operatorname{tr}(D A B C) tr(ABCD)=tr(BCDA)=tr(CDAB)=tr(DABC)

此性质是简化矩阵乘积迹运算的基石,尤其在微分计算中可显著降低复杂度。

常用迹函数的微分公式
一阶迹微分

∂ ∂ X tr ( X ) = I ∂ ∂ X tr ( X A ) = A T ∂ ∂ X tr ( A X B ) = A T B T ∂ ∂ X tr ( A X T B ) = B A ∂ ∂ X tr ( X T A ) = A ∂ ∂ X tr ( A X T ) = A ∂ ∂ X tr ( A ⊗ X ) = tr ( A ) I \begin{align*} \frac{\partial}{\partial X} \text{tr}(X) &= I \\ \frac{\partial}{\partial X} \text{tr}(X A) &= A^T \\ \frac{\partial}{\partial X} \text{tr}(AXB) &= A^T B^T \\ \frac{\partial}{\partial X} \text{tr}(AX^T B) &= BA \\ \frac{\partial}{\partial X} \text{tr}(X^T A) &= A \\ \frac{\partial}{\partial X} \text{tr}(AX^T) &= A \\ \frac{\partial}{\partial X} \text{tr}(A \otimes X) &= \text{tr}(A) I \end{align*} ∂X∂tr(X)∂X∂tr(XA)∂X∂tr(AXB)∂X∂tr(AXTB)∂X∂tr(XTA)∂X∂tr(AXT)∂X∂tr(A⊗X)=I=AT=ATBT=BA=A=A=tr(A)I

⊗ \otimes ⊗ 为克罗内克积

二阶迹微分

∂ ∂ X tr ( X 2 ) = 2 X T ∂ ∂ X tr ( X 2 B ) = ( X B + B X ) T ∂ ∂ X tr ( X T B X ) = B X + B T X ∂ ∂ X tr ( B X X T ) = B X + B T X ∂ ∂ X tr ( X X T B ) = B X + B T X ∂ ∂ X tr ( X B X T ) = X B T + X B ∂ ∂ X tr ( B X T X ) = X B T + X B ∂ ∂ X tr ( X T X B ) = X B T + X B ∂ ∂ X tr ( A X B X ) = A T X T B T + B T X T A T ∂ ∂ X tr ( X T X ) = 2 X ∂ ∂ X tr ( B T X T C X B ) = C T X B B T + C X B B T ∂ ∂ X tr [ X T B X C ] = B X C + B T X C T ∂ ∂ X tr ( A X B X T C ) = A T C T X B T + C A X B ∂ ∂ X tr [ ( A X B + C ) ( A X B + C ) T ] = 2 A T ( A X B + C ) B T ∂ ∂ X tr ( X ⊗ X ) = ∂ ∂ X tr ( X ) tr ( X ) = 2 tr ( X ) I \begin{align*} \frac{\partial}{\partial X} \text{tr}(X^2) &= 2X^T \\ \frac{\partial}{\partial X} \text{tr}(X^2 B) &= (X B + B X)^T \\ \frac{\partial}{\partial X} \text{tr}(X^T B X) &= B X + B^T X \\ \frac{\partial}{\partial X} \text{tr}(B X X^T) &= B X + B^T X \\ \frac{\partial}{\partial X} \text{tr}(X X^T B) &= B X + B^T X \\ \frac{\partial}{\partial X} \text{tr}(X B X^T) &= X B^T + X B \\ \frac{\partial}{\partial X} \text{tr}(B X^T X) &= X B^T + X B \\ \frac{\partial}{\partial X} \text{tr}(X^T X B) &= X B^T + X B \\ \frac{\partial}{\partial X} \text{tr}(A X B X) &= A^T X^T B^T + B^T X^T A^T \\ \frac{\partial}{\partial X} \text{tr}(X^T X) &= 2X \\ \frac{\partial}{\partial X} \text{tr}(B^T X^T C X B) &= C^T X B B^T + C X B B^T \\ \frac{\partial}{\partial X} \text{tr}[X^T B X C] &= B X C + B^T X C^T \\ \frac{\partial}{\partial X} \text{tr}(A X B X^T C) &= A^T C^T X B^T + C A X B \\ \frac{\partial}{\partial X} \text{tr}\left[(A X B + C)(A X B + C)^T\right] &= 2A^T (A X B + C) B^T \\ \frac{\partial}{\partial X} \text{tr}(X \otimes X) &= \frac{\partial}{\partial X} \text{tr}(X) \text{tr}(X) = 2\text{tr}(X) I \end{align*} ∂X∂tr(X2)∂X∂tr(X2B)∂X∂tr(XTBX)∂X∂tr(BXXT)∂X∂tr(XXTB)∂X∂tr(XBXT)∂X∂tr(BXTX)∂X∂tr(XTXB)∂X∂tr(AXBX)∂X∂tr(XTX)∂X∂tr(BTXTCXB)∂X∂tr[XTBXC]∂X∂tr(AXBXTC)∂X∂tr[(AXB+C)(AXB+C)T]∂X∂tr(X⊗X)=2XT=(XB+BX)T=BX+BTX=BX+BTX=BX+BTX=XBT+XB=XBT+XB=XBT+XB=ATXTBT+BTXTAT=2X=CTXBBT+CXBBT=BXC+BTXCT=ATCTXBT+CAXB=2AT(AXB+C)BT=∂X∂tr(X)tr(X)=2tr(X)I

高阶迹微分与计算规则

1. 高阶迹微分示例

∂ ∂ X tr ( X k ) = k ( X k − 1 ) T ∂ ∂ X tr ( A X k ) = ∑ r = 0 k − 1 ( X r A X k − r − 1 ) T ∂ ∂ X tr [ B T X T C X X T B ] = C X X T C X B B T + C T X B B T X T C T X + C X B B T X T X + C T X X T C T X B B T \begin{align*} \frac{\partial}{\partial X} \text{tr}(X^k) &= k(X^{k-1})^T \\ \frac{\partial}{\partial X} \text{tr}(AX^k) &= \sum_{r=0}^{k-1} (X^r A X^{k-r-1})^T \\ \frac{\partial}{\partial X} \text{tr} \left[B^T X^T C X X^T B \right] &= C X X^T C X B B^T \\ &\quad + C^T X B B^T X^T C^T X \\ &\quad + C X B B^T X^T X \\ &\quad + C^T X X^T C^T X B B^T \end{align*} ∂X∂tr(Xk)∂X∂tr(AXk)∂X∂tr[BTXTCXXTB]=k(Xk−1)T=r=0∑k−1(XrAXk−r−1)T=CXXTCXBBT+CTXBBTXTCTX+CXBBTXTX+CTXXTCTXBBT

2. 迹微分计算规则

针对迹算子中含矩阵 X X X 及转置 X T X^T XT 的连乘形式( T 1 T_1 T1、 T 2 T_2 T2、 T 3 T_3 T3 为任意长度矩阵连乘表达式,可含 X X X),总结通用计算规则如下:

规则总结
  • 对 tr ( T 1 X T 2 X T T 3 ) \text{tr}(T_1 X T_2 X^T T_3) tr(T1XT2XTT3) 中的每个 X X X(含 X T X^T XT 形式)分别求导,结果为各项导数之和。
  • 若迹算子中直接出现 X X X,其导数为 X X X 左侧矩阵乘积的转置与右侧矩阵乘积的转置之积。
  • 若迹算子中出现 X T X^T XT,其导数可简化为 X T X^T XT 右侧矩阵乘积与左侧矩阵乘积之积。
规则形式化表述

∂ ∂ X tr ( T 1 X T 2 X T T 3 ) = T 1 T ( T 2 X T T 3 ) T + T 3 ( T 1 X T 2 ) \frac{\partial}{\partial X} \text{tr}(T_1 X T_2 X^T T_3) = T_1^T (T_2 X^T T_3)^T + T_3 (T_1 X T_2) ∂X∂tr(T1XT2XTT3)=T1T(T2XTT3)T+T3(T1XT2)

矩阵乘积的转置性质

多个矩阵乘积的转置,等于各矩阵转置的逆序乘积

  • 任意两个可乘矩阵 P P P 和 Q Q Q( P P P 的列数等于 Q Q Q 的行数),它们乘积的转置满足:
    ( P Q ) T = Q T P T (PQ)^T = Q^T P^T (PQ)T=QTPT
  • 推广到多个矩阵的乘积:
    如果有 n n n 个可乘矩阵 M 1 , M 2 , ... , M n M_1, M_2, \dots, M_n M1,M2,...,Mn,则它们乘积的转置为:
    ( M 1 M 2 ⋯ M n ) T = M n T ⋯ M 2 T M 1 T (M_1 M_2 \cdots M_n)^T = M_n^T \cdots M_2^T M_1^T (M1M2⋯Mn)T=MnT⋯M2TM1T
    多个矩阵相乘后转置,等价于把每个矩阵先转置,再按原来的相反顺序相乘。
3. 规则推导过程

基于迹微分的线性性(多变量项的迹函数微分等于各变量项单独求导之和),分步推导如下:

  1. 对 X X X 项求导 :将 X X X 视为关键变量,左侧矩阵连乘为 T 1 T_1 T1,右侧为 T 2 X T T 3 T_2 X^T T_3 T2XTT3。依据基本规则 ∂ ∂ X tr ( A X B ) = B T A T \frac{\partial}{\partial X} \text{tr}(A X B) = B^T A^T ∂X∂tr(AXB)=BTAT( A , B A,B A,B 不含当前 X X X),得导数为 T 1 T ( T 2 X T T 3 ) T T_1^T (T_2 X^T T_3)^T T1T(T2XTT3)T。
  2. 对 X T X^T XT 项求导 :将 X T X^T XT 视为关键变量,左侧矩阵连乘为 T 1 X T 2 T_1 X T_2 T1XT2,右侧为 T 3 T_3 T3。依据扩展规则 ∂ ∂ X tr ( A X T B ) = B ⋅ A \frac{\partial}{\partial X} \text{tr}(A X^T B) = B \cdot A ∂X∂tr(AXTB)=B⋅A( A , B A,B A,B 不含当前 X X X),得导数为 T 3 ( T 1 X T 2 ) T_3 (T_1 X T_2) T3(T1XT2)。
  3. 求和得总微分:两项导数相加,即得到形式化表述中的最终公式。
4. 规则实例验证

以 ∂ ∂ X tr ( A X k ) \frac{\partial}{\partial X} \text{tr}(A X^k) ∂X∂tr(AXk) 为例验证规则有效性:

  1. X k X^k Xk 为 k k k 个 X X X 连乘,按规则需对每个 X X X 分别求导并求和,结果含 k k k 项。
  2. 按规则依次计算各项导数:
    ∂ ∂ X tr ( A X k ) = A T ( X k − 1 ) T + ( A X ) T ( X k − 2 ) T + ( A X 2 ) T ( X k − 3 ) T + ... + ( A X k − 1 ) T \frac{\partial}{\partial X} \text{tr}(A X^k) = A^T (X^{k-1})^T + (A X)^T (X^{k-2})^T + (A X^2)^T (X^{k-3})^T + \ldots + (A X^{k-1})^T ∂X∂tr(AXk)=AT(Xk−1)T+(AX)T(Xk−2)T+(AX2)T(Xk−3)T+...+(AXk−1)T
  3. 整理后得到 ∂ ∂ X tr ( A X k ) = ∑ r = 0 k − 1 ( X r A X k − r − 1 ) T \frac{\partial}{\partial X} \text{tr}(A X^k) = \sum_{r=0}^{k-1} (X^r A X^{k-r-1})^T ∂X∂tr(AXk)=∑r=0k−1(XrAXk−r−1)T,与已知示例完全一致,验证规则有效。
5. 迹微分的线性性

本质是微分运算与"加法""数乘"可交换顺序,对应两个关键性质,是拆分复杂迹函数微分的重要依据。

线性性的两个关键性质
  1. 加法法则 :两个(或多个)迹函数之和的微分,等于各迹函数微分之和。
    ∂ ∂ X [ tr ( F ( X ) ) + tr ( G ( X ) ) ] = ∂ ∂ X tr ( F ( X ) ) + ∂ ∂ X tr ( G ( X ) ) \frac{\partial}{\partial X} \left[ \text{tr}(F(X)) + \text{tr}(G(X)) \right] = \frac{\partial}{\partial X} \text{tr}(F(X)) + \frac{\partial}{\partial X} \text{tr}(G(X)) ∂X∂[tr(F(X))+tr(G(X))]=∂X∂tr(F(X))+∂X∂tr(G(X))
    简单说:先求和再微分,与先微分再求和,结果完全一致。
  2. 数乘法则 :常数与迹函数乘积的微分,等于常数与该迹函数微分的乘积。
    ∂ ∂ X [ c ⋅ tr ( F ( X ) ) ] = c ⋅ ∂ ∂ X tr ( F ( X ) ) \frac{\partial}{\partial X} \left[ c \cdot \text{tr}(F(X)) \right] = c \cdot \frac{\partial}{\partial X} \text{tr}(F(X)) ∂X∂[c⋅tr(F(X))]=c⋅∂X∂tr(F(X))
    简单说:常数可以提到微分符号外面,不影响微分结果( c c c 为与 X X X 无关的标量常数)。
线性性在迹微分中的实际应用

之前推导 ∂ ∂ X tr ( T 1 X T 2 X T T 3 ) \frac{\partial}{\partial X} \text{tr}(T_1 X T_2 X^T T_3) ∂X∂tr(T1XT2XTT3) 时,正是用到了线性性的关键逻辑:

  • 把 tr ( T 1 X T 2 X T T 3 ) \text{tr}(T_1 X T_2 X^T T_3) tr(T1XT2XTT3) 看作"含 X X X 的项"和"含 X T X^T XT 的项"的组合(本质是两个相关变量项的隐含求和)。
  • 依据加法法则,分别对两个项单独求导,再将结果相加,最终得到总微分。

再比如 ∂ ∂ X tr ( A X k ) \frac{\partial}{\partial X} \text{tr}(A X^k) ∂X∂tr(AXk), X k X^k Xk 是 k k k 个 X X X 连乘,线性性允许我们对每个 X X X 分别求导,再把 k k k 个导数项求和,这是推导该公式的关键步骤。

作用总结

线性性将复杂的"多变量项迹函数微分",拆解为"单个变量项迹函数微分的叠加",大幅降低了计算难度。没有线性性,就无法直接拆分含多个 X X X(或 X T X^T XT)的迹函数,后续的规则推导和实例验证也无从谈起。

四、应用场景

(一)线性回归模型参数估计

模型设定与目标

设线性回归模型为 Y = X β + ε Y = X \beta + \varepsilon Y=Xβ+ε,其中:

  • Y Y Y 为 T × 1 T \times 1 T×1 的观测向量;
  • X X X 为 T × k T \times k T×k 的设计矩阵;
  • β \beta β 为 k × 1 k \times 1 k×1 的参数向量;
  • ε \varepsilon ε 为 T × 1 T \times 1 T×1 的误差向量。

最小二乘估计的目标是最小化残差平方和:
β ^ OLS = arg ⁡ min ⁡ β ( Y − X β ) T ( Y − X β ) \hat{\beta}{\text{OLS}} = \arg\min{\beta} (Y - X \beta)^T (Y - X \beta) β^OLS=argβmin(Y−Xβ)T(Y−Xβ)

推导过程
  1. 展开残差平方和

    残差平方和可以表示为:
    ε ^ T ε ^ = Y T Y − 2 Y T X β ^ + β ^ T X T X β ^ \hat{\varepsilon}^T \hat{\varepsilon} = Y^T Y - 2 Y^T X \hat{\beta} + \hat{\beta}^T X^T X \hat{\beta} ε^Tε^=YTY−2YTXβ^+β^TXTXβ^

  2. 对 β ^ \hat{\beta} β^ 求梯度并令其为零

    对 ε ^ T ε ^ \hat{\varepsilon}^T \hat{\varepsilon} ε^Tε^ 关于 β ^ \hat{\beta} β^ 求梯度:
    ∂ ( ε ^ T ε ^ ) ∂ β ^ = − 2 X T Y + 2 X T X β ^ = 0 \frac{\partial (\hat{\varepsilon}^T \hat{\varepsilon})}{\partial \hat{\beta}} = -2 X^T Y + 2 X^T X \hat{\beta} = 0 ∂β^∂(ε^Tε^)=−2XTY+2XTXβ^=0

  3. 解得参数估计

    解上述方程,得到最小二乘估计量:
    β ^ OLS = ( X T X ) − 1 X T Y \hat{\beta}_{\text{OLS}} = (X^T X)^{-1} X^T Y β^OLS=(XTX)−1XTY

    前提是 X X X 列满秩,即 X T X X^T X XTX 非奇异。

  4. 极值验证

    计算海塞矩阵:
    ∂ 2 ( ε ^ T ε ^ ) ∂ β ^ ∂ β ^ T = 2 X T X \frac{\partial^2 (\hat{\varepsilon}^T \hat{\varepsilon})}{\partial \hat{\beta} \partial \hat{\beta}^T} = 2 X^T X ∂β^∂β^T∂2(ε^Tε^)=2XTX

    由于 X T X X^T X XTX 是正定矩阵(在 X X X 列满秩的条件下),因此海塞矩阵为正定矩阵,表明该估计为极小值。

(二)矩阵形式回归模型参数估计

设矩阵形式回归模型为 Y = X W + E Y = X W + E Y=XW+E,其中 Y Y Y 为 T × K T \times K T×K 输出矩阵, X X X 为 T × k T \times k T×k 特征矩阵, W W W 为 k × K k \times K k×K 权重矩阵, E = Y − X W E = Y - X W E=Y−XW 为误差矩阵。目标为最小化误差矩阵的 F 模:
min ⁡ W ∥ E ∥ F 2 = min ⁡ W tr ( E T E ) \min_W \| E \|_F^2 = \min_W \text{tr}(E^T E) Wmin∥E∥F2=Wmintr(ETE)

展开迹函数并求微分:
∂ ∂ W tr ( ( Y − X W ) T ( Y − X W ) ) = − 2 X T Y + 2 X T X W \frac{\partial}{\partial W} \text{tr}((Y - X W)^T (Y - X W)) = -2 X^T Y + 2 X^T X W ∂W∂tr((Y−XW)T(Y−XW))=−2XTY+2XTXW

令微分等于零,解得权重矩阵:
W = ( X T X ) − 1 X T Y W = (X^T X)^{-1} X^T Y W=(XTX)−1XTY

五、矩阵与向量求导分类及规则

(一)求导布局

矩阵求导包含两种布局,需根据需求统一使用以避免歧义。

1. 分子布局(Numerator Layout)

若列向量 y = [ y 1 y 2 ⋮ y m ] y = \begin{bmatrix} y_1 \\ y_2 \\ \vdots \\ y_m \end{bmatrix} y= y1y2⋮ym 对标量 x x x 求导,结果为列向量:
∂ y ∂ x = [ ∂ y 1 ∂ x ∂ y 2 ∂ x ⋮ ∂ y m ∂ x ] \frac{\partial y}{\partial x} = \begin{bmatrix} \frac{\partial y_1}{\partial x} \\ \frac{\partial y_2}{\partial x} \\ \vdots \\ \frac{\partial y_m}{\partial x} \end{bmatrix} ∂x∂y= ∂x∂y1∂x∂y2⋮∂x∂ym

2. 分母布局(Denominator Layout)

同一列向量 y y y 对标量 x x x 求导,结果为行向量:
∂ y ∂ x = [ ∂ y 1 ∂ x ∂ y 2 ∂ x ⋯ ∂ y m ∂ x ] \frac{\partial y}{\partial x} = \begin{bmatrix} \frac{\partial y_1}{\partial x} & \frac{\partial y_2}{\partial x} & \cdots & \frac{\partial y_m}{\partial x} \end{bmatrix} ∂x∂y=[∂x∂y1∂x∂y2⋯∂x∂ym]

两种布局可相互转换,转换时需保持维度一致性。

(二)向量与矩阵求导分类及规则

向量与矩阵的求导可分为五大类别,各类别定义、公式及结论如下:

1. 标量对向量求导
  • 定义:设 y y y 为标量函数, x = [ x 1 x 2 ⋮ x n ] x = \begin{bmatrix} x_1 \\ x_2 \\ \vdots \\ x_n \end{bmatrix} x= x1x2⋮xn 为 n n n 维列向量,导数为与 x x x 同维度的列向量,由 y y y 对 x x x 各元素的偏导数构成。
  • 公式:
    • y = ( X U − V ) ⊤ ( X U − V ) y = (X U - V)^\top (X U - V) y=(XU−V)⊤(XU−V),则 d y d X = 2 ( X U − V ) U ⊤ \frac{d y}{d X} = 2(X U - V) U^\top dXdy=2(XU−V)U⊤
    • y = x ⊤ A x y = x^\top A x y=x⊤Ax,则 d y d x = ( A + A ⊤ ) x \frac{d y}{d x} = (A + A^\top) x dxdy=(A+A⊤)x
    • y = x ⊤ x y = x^\top x y=x⊤x( E E E 为单位矩阵),则 d y d x = 2 E x = 2 x \frac{d y}{d x} = 2 E x = 2 x dxdy=2Ex=2x
2. 向量对标量求导
  • 定义:设 y y y 为向量, x x x 为标量,导数结果与 y y y 维度相关,与标量对向量求导结果互为转置。
  • 结论:向量对标量求导时,结果维度需与原向量保持一致,仅方向随布局调整。
3. 标量对矩阵求导
  • 定义:设 X = ( x i j ) m × n X = (x_{ij}){m \times n} X=(xij)m×n 为 m × n m \times n m×n 矩阵, f ( X ) f(X) f(X) 为标量函数,若 f f f 对 X X X 所有元素的偏导数存在,则导数为 m × n m \times n m×n 矩阵:
    d f d X = [ ∂ f ∂ x 11 ∂ f ∂ x 12 ⋯ ∂ f ∂ x 1 n ∂ f ∂ x 21 ∂ f ∂ x 22 ⋯ ∂ f ∂ x 2 n ⋮ ⋮ ⋱ ⋮ ∂ f ∂ x m 1 ∂ f ∂ x m 2 ⋯ ∂ f ∂ x m n ] \frac{d f}{d X} = \begin{bmatrix} \frac{\partial f}{\partial x
    {11}} & \frac{\partial f}{\partial x_{12}} & \cdots & \frac{\partial f}{\partial x_{1n}} \\ \frac{\partial f}{\partial x_{21}} & \frac{\partial f}{\partial x_{22}} & \cdots & \frac{\partial f}{\partial x_{2n}} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial f}{\partial x_{m1}} & \frac{\partial f}{\partial x_{m2}} & \cdots & \frac{\partial f}{\partial x_{mn}} \end{bmatrix} dXdf= ∂x11∂f∂x21∂f⋮∂xm1∂f∂x12∂f∂x22∂f⋮∂xm2∂f⋯⋯⋱⋯∂x1n∂f∂x2n∂f⋮∂xmn∂f
  • 公式:
    • y = U ⊤ X V y = U^\top X V y=U⊤XV,则 d y d X = U V ⊤ \frac{d y}{d X} = U V^\top dXdy=UV⊤
    • y = U ⊤ X ⊤ X U y = U^\top X^\top X U y=U⊤X⊤XU,则 d y d X = 2 X U U ⊤ \frac{d y}{d X} = 2 X U U^\top dXdy=2XUU⊤
4. 矩阵对标量求导
  • 定义:设 Y = ( y i j ) m × n Y = (y_{ij}){m \times n} Y=(yij)m×n 为 m × n m \times n m×n 矩阵, x x x 为标量,导数为 m × n m \times n m×n 矩阵,由 Y Y Y 各元素对 x x x 的偏导数构成:
    ∂ Y ∂ x = [ ∂ y 11 ∂ x ∂ y 12 ∂ x ⋯ ∂ y 1 n ∂ x ∂ y 21 ∂ x ∂ y 22 ∂ x ⋯ ∂ y 2 n ∂ x ⋮ ⋮ ⋱ ⋮ ∂ y m 1 ∂ x ∂ y m 2 ∂ x ⋯ ∂ y m n ∂ x ] \frac{\partial Y}{\partial x} = \begin{bmatrix} \frac{\partial y
    {11}}{\partial x} & \frac{\partial y_{12}}{\partial x} & \cdots & \frac{\partial y_{1n}}{\partial x} \\ \frac{\partial y_{21}}{\partial x} & \frac{\partial y_{22}}{\partial x} & \cdots & \frac{\partial y_{2n}}{\partial x} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial y_{m1}}{\partial x} & \frac{\partial y_{m2}}{\partial x} & \cdots & \frac{\partial y_{mn}}{\partial x} \end{bmatrix} ∂x∂Y= ∂x∂y11∂x∂y21⋮∂x∂ym1∂x∂y12∂x∂y22⋮∂x∂ym2⋯⋯⋱⋯∂x∂y1n∂x∂y2n⋮∂x∂ymn
5. 向量对向量求导
  • 定义:设 y = [ y 1 y 2 ⋮ y m ] y = \begin{bmatrix} y_1 \\ y_2 \\ \vdots \\ y_m \end{bmatrix} y= y1y2⋮ym 为 m m m 维列向量, x = [ x 1 x 2 ⋮ x n ] x = \begin{bmatrix} x_1 \\ x_2 \\ \vdots \\ x_n \end{bmatrix} x= x1x2⋮xn 为 n n n 维列向量,导数为 n × m n \times m n×m 矩阵:
    ∂ y ∂ x = [ ∂ y 1 ∂ x 1 ∂ y 2 ∂ x 1 ⋯ ∂ y m ∂ x 1 ∂ y 1 ∂ x 2 ∂ y 2 ∂ x 2 ⋯ ∂ y m ∂ x 2 ⋮ ⋮ ⋱ ⋮ ∂ y 1 ∂ x n ∂ y 2 ∂ x n ⋯ ∂ y m ∂ x n ] \frac{\partial y}{\partial x} = \begin{bmatrix} \frac{\partial y_1}{\partial x_1} & \frac{\partial y_2}{\partial x_1} & \cdots & \frac{\partial y_m}{\partial x_1} \\ \frac{\partial y_1}{\partial x_2} & \frac{\partial y_2}{\partial x_2} & \cdots & \frac{\partial y_m}{\partial x_2} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial y_1}{\partial x_n} & \frac{\partial y_2}{\partial x_n} & \cdots & \frac{\partial y_m}{\partial x_n} \end{bmatrix} ∂x∂y= ∂x1∂y1∂x2∂y1⋮∂xn∂y1∂x1∂y2∂x2∂y2⋮∂xn∂y2⋯⋯⋱⋯∂x1∂ym∂x2∂ym⋮∂xn∂ym
  • 特殊情形:
    • 行向量 Y ⊤ Y^\top Y⊤ 对列向量 X X X 求导:结果为 n × m n \times m n×m 矩阵,满足 d ( A X ) ⊤ d X = A ⊤ \frac{d (A X)^\top}{d X} = A^\top dXd(AX)⊤=A⊤
    • 列向量 Y Y Y 对行向量 X ⊤ X^\top X⊤ 求导:转化为行向量 Y ⊤ Y^\top Y⊤ 对列向量 X X X 的导数后转置,结果为 m × n m \times n m×n 矩阵

六、拓展求导规则

(一)向量积对列向量求导

d ( U V ⊤ ) d X = ( d U d X ) V ⊤ + U ( d V ⊤ d X ) \frac{d (U V^\top)}{d X} = \left( \frac{d U}{d X} \right) V^\top + U \left( \frac{d V^\top}{d X} \right) dXd(UV⊤)=(dXdU)V⊤+U(dXdV⊤)

(二)矩阵积对列向量求导

d ( U V ) d X = ( d U d X ) V + U ( d V d X ) \frac{d (U V)}{d X} = \left( \frac{d U}{d X} \right) V + U \left( \frac{d V}{d X} \right) dXd(UV)=(dXdU)V+U(dXdV)

  • 结论: d ( X A ) d X = A \frac{d (X A)}{d X} = A dXd(XA)=A( I I I 为单位矩阵, O O O 为零矩阵)

(三)矩阵对矩阵求导

定义:设 Y Y Y 为矩阵, X X X 为矩阵,导数为"超级矩阵",由 Y Y Y 各元素对 X X X 所有元素的偏导数按原维度排列构成。

七、求导基本推导准则

  1. 先对函数求向量/矩阵各分量的导数,得到标量或向量形式的中间结果。
  2. 若中间结果为标量,直接排列成原向量/矩阵的形状。
  3. 若中间结果为向量:
    • 与原向量形状相同时,取转置后排成矩阵;
    • 与原向量形状不同时,直接排列成矩阵。
  4. 矩阵求导可推广向量求导规则:先对矩阵的列/行向量求导,再按矩阵维度排列结果。

参考文献

  1. Appendix D Vector And Matrix Differentiation
  2. Introduction To Vector And Matrix Differentiation
  3. Matrix CookBook

via: