基本说明
矩阵求导无非就是:一个矩阵里的元素对另一个矩阵里的元素进行对应求导,只要符合一些规则而已;这些规则就是:
分子布局(Numerator layout):即分子为列向量,分母为行向量分母布局(Denominator layout):即分子为行向量,分母为列向量
分子布局(Numerator layout)
假设:x,y为常数
x
⃗
=
[
x
1
,
x
2
,
…
,
x
n
]
T
\vec{x}=[x_1,x_2,…,x_n ]^T
x
=[x1,x2,…,xn]T
y
⃗
=
[
y
1
,
y
2
,
…
,
y
m
]
T
\vec{y}=[y_1,y_2,…,y_m ]^T
y
=[y1,y2,…,ym]T
X
=
[
x
11
,
x
12
⋯
x
1
n
x
21
,
x
22
⋯
x
2
n
⋮
,
⋮
⋱
⋮
x
n
1
,
x
n
2
⋯
x
n
n
]
X=\begin{bmatrix} x_{11},x_{12} & \cdots & x_{1n} \\ x_{21},x_{22} & \cdots & x_{2n} \\ \vdots ,\vdots & \ddots & \vdots \\ x_{n1},x_{n2} & \cdots & x_{nn} \\ \end{bmatrix}
X=⎣⎢⎢⎢⎡x11,x12x21,x22⋮,⋮xn1,xn2⋯⋯⋱⋯x1nx2n⋮xnn⎦⎥⎥⎥⎤
Y
=
[
y
11
,
y
12
⋯
y
1
n
y
21
,
y
22
⋯
y
2
n
⋮
,
⋮
⋱
⋮
y
n
1
,
y
n
2
⋯
y
n
n
]
Y=\begin{bmatrix} y_{11},y_{12} & \cdots & y_{1n} \\ y_{21},y_{22} & \cdots & y_{2n} \\ \vdots ,\vdots & \ddots & \vdots \\ y_{n1},y_{n2} & \cdots & y_{nn} \\ \end{bmatrix}
Y=⎣⎢⎢⎢⎡y11,y12y21,y22⋮,⋮yn1,yn2⋯⋯⋱⋯y1ny2n⋮ynn⎦⎥⎥⎥⎤ 向量/标量 :
∂
y
⃗
∂
x
=
[
∂
y
1
∂
x
,
∂
y
2
∂
x
,
.
.
.
,
∂
y
m
∂
x
]
T
\frac{∂\vec{y}}{∂x}=[\frac{∂y_1}{∂x},\frac{∂y_2}{∂x},...,\frac{∂y_m}{∂x}]^T
∂x∂y
=[∂x∂y1,∂x∂y2,...,∂x∂ym]T标量/向量:
∂
y
∂
x
⃗
=
[
∂
y
∂
x
1
,
∂
y
∂
x
2
,
.
.
.
,
∂
y
∂
x
n
]
\frac{∂y}{∂\vec{x}}=[\frac{∂y}{∂x_1},\frac{∂y}{∂x_2},...,\frac{∂y}{∂x_n}]
∂x
∂y=[∂x1∂y,∂x2∂y,...,∂xn∂y]向量/向量:
这就是著名的雅可比(Jacobian)矩阵矩阵/标量:
标量/矩阵:
矩阵/向量:
向量/矩阵:
∂
(
x
⃗
T
)
∂
Y
=
[
∂
x
1
∂
y
11
,
∂
x
2
∂
y
21
⋯
∂
x
n
∂
y
n
1
∂
x
1
∂
y
12
,
∂
x
2
∂
y
22
⋯
∂
x
n
∂
y
n
2
⋮
,
⋮
⋱
⋮
∂
x
1
∂
y
1
n
,
∂
x
2
∂
y
2
n
⋯
∂
x
n
∂
y
n
n
]
\frac{∂(\vec{x}^T)}{∂Y}=\begin{bmatrix} \frac{∂x_1}{∂y_{11}},\frac{∂x_2}{∂y_{21}} & \cdots & \frac{∂x_n}{∂y_{n1}} \\\\ \frac{∂x_1}{∂y_{12}},\frac{∂x_2}{∂y_{22}} & \cdots & \frac{∂x_n}{∂y_{n2}} \\\\ \vdots ,\vdots & \ddots & \vdots \\\\ \frac{∂x_1}{∂y_{1n}},\frac{∂x_2}{∂y_{2n}} & \cdots & \frac{∂x_n}{∂y_{nn}} \\ \end{bmatrix}
∂Y∂(x
T)=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡∂y11∂x1,∂y21∂x2∂y12∂x1,∂y22∂x2⋮,⋮∂y1n∂x1,∂y2n∂x2⋯⋯⋱⋯∂yn1∂xn∂yn2∂xn⋮∂ynn∂xn⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤矩阵/矩阵:
∂
Y
∂
X
=
[
∂
y
11
∂
x
11
,
∂
y
12
∂
x
21
⋯
∂
y
1
n
∂
x
n
1
∂
y
21
∂
x
12
,
∂
y
22
∂
x
22
⋯
∂
y
2
n
∂
y
n
2
⋮
,
⋮
⋱
⋮
∂
y
n
1
∂
x
1
n
,
∂
y
n
2
∂
x
2
n
⋯
∂
y
n
n
∂
y
n
n
]
\frac{∂Y}{∂X}=\begin{bmatrix} \frac{∂y_{11}}{∂x_{11}},\frac{∂y_{12}}{∂x_{21}} & \cdots & \frac{∂y_{1n}}{∂x_{n1}} \\\\ \frac{∂y_{21}}{∂x_{12}},\frac{∂y_{22}}{∂x_{22}} & \cdots & \frac{∂y_{2n}}{∂y_{n2}} \\\\ \vdots ,\vdots & \ddots & \vdots \\\\ \frac{∂y_{n1}}{∂x_{1n}},\frac{∂y_{n2}}{∂x_{2n}} & \cdots & \frac{∂y_{nn}}{∂y_{nn}} \\ \end{bmatrix}
∂X∂Y=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡∂x11∂y11,∂x21∂y12∂x12∂y21,∂x22∂y22⋮,⋮∂x1n∂yn1,∂x2n∂yn2⋯⋯⋱⋯∂xn1∂y1n∂yn2∂y2n⋮∂ynn∂ynn⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤分母布局(Denominator layout)
就是上面所有结果的转置。
运算公式
知道啥叫分子布局和分母布局了,然后对于要求导的式子,就可以对照着快速查阅下面的表格了:
参考链接:https://yq.aliyun.com/articles/411340