最近看的文章涉及到矩阵求导,推导着就懵了。看了矩阵论和一些大牛的专栏、博客学习了一波,这里整理一下。
- 标量用小写字母表示
- 向量用粗体小写字母表示
- 矩阵用粗体大写字母表示
导数定义
1、纯量函数对向量变量的导数
设 x = ( x 1 , x 2 , ⋯   , x n ) T \boldsymbol{x}=(x_1, x_2, \cdots, x_n)^T x=(x1,x2,⋯,xn)T 为向量变量, y = f ( x ) = f ( x 1 , x 2 , ⋯   , x n ) y=f(\boldsymbol{x})=f(x_1, x_2, \cdots, x_n) y=f(x)=f(x1,x2,⋯,xn) 为可微的纯量函数,则纯量函数 y = f ( x ) y=f(\boldsymbol{x}) y=f(x) 对向量 x \boldsymbol{x} x 的导数记为 d f d x \frac{df}{d\boldsymbol{x}} dxdf
d f d x = ( ∂ f ∂ x 1 , ∂ f ∂ x 2 , ⋯   , ∂ f ∂ x n ) T \frac{df}{d\boldsymbol{x}}=(\frac{\partial f}{\partial x_1}, \frac{\partial f}{\partial x_2}, \cdots ,\frac{\partial f}{\partial x_n})^T dxdf=(∂x1∂f,∂x2∂f,⋯,∂xn∂f)T
而纯量函数 y = f ( x ) y=f(\boldsymbol{x}) y=f(x) 对向量 x T = ( x 1 , x 2 , ⋯   , x n ) \boldsymbol{x}^T=(x_1,x_2,\cdots,x_n) xT=(x1,x2,⋯,xn) 的导数记为
d f d x T = ( ∂ f ∂ x 1 , ∂ f ∂ x 2 , ⋯   , ∂ f ∂ x n ) \frac{df}{d\boldsymbol{x}^T}=(\frac{\partial f}{\partial x_1}, \frac{\partial f}{\partial x_2}, \cdots ,\frac{\partial f}{\partial x_n}) dxTdf=(∂x1∂f,∂x2∂f,⋯,∂xn∂f)
- 纯量函数 y = f ( x ) y=f(\boldsymbol{x}) y=f(x)是向量变量 x \boldsymbol{x} x 各分量的函数
- 求导结果是和向量 x \boldsymbol{x} x同维数同形式的行或列向量
2、纯量函数对矩阵变量的导数
设 X = ( x i j ) m × n ∈ R m × n \boldsymbol{X}=(x_{ij})_{m×n}\in R^{m×n} X=(xij)m×n∈Rm×n 为矩阵变量, y = f ( X ) = f ( x 11 , x 12 , ⋯   , x 1 n , x 21 , x 22 , ⋯   , x 2 n , ⋯   , x m 1 , x m 2 , ⋯   , x m n ) y=f(\boldsymbol{X})=f(x_{11}, x_{12},\cdots,x_{1n},x_{21}, x_{22}, \cdots, x_{2n},\cdots,x_{m1}, x_{m2},\cdots, x_{mn} ) y=f(X)=f(x11,x12,⋯,x1n,x21,x22,⋯,x2n,⋯,xm1,xm2,⋯,xmn) 为 m n mn mn 元可微的纯量函数,则纯量函数 y = f ( X ) y=f(\boldsymbol{X}) y=f(X)对矩阵变量 X \boldsymbol{X} X的导数记为 d f d X \frac{df}{d\boldsymbol{X}} dX