大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的知识进行总结与归纳,不仅形成深入且独到的理解,而且能够帮助新手快速入门。
本文主要介绍了数、向量、矩阵的导数法则及矩阵基本知识,希望能对学习线性代数的同学们有所帮助。
文章目录
1. 数的导数
1.1 导数运算法则
条件:
f
(
x
)
,
g
(
x
)
f(x), g(x)
f(x),g(x)都是可导的。
结论:
- [ f ( x ) ± g ( x ) ] ′ = f ′ ( x ) + g ′ ( x ) [f(x)\pm g(x)]^{'}=f^{'}(x)+g^{'}(x) [f(x)±g(x)]′=f′(x)+g′(x)
- [ f ( x ) g ( x ) ] ′ = f ′ ( x ) g ( x ) + f ( x ) g ′ ( x ) [f(x)g(x)]^{'}=f^{'}(x)g(x)+f(x)g^{'}(x) [f(x)g(x)]′=f′(x)g(x)+f(x)g′(x)
- [ f ( x ) g ( x ) ] ′ = f ′ ( x ) g ( x ) − f ( x ) g ′ ( x ) [ g ( x ) ] 2 [\frac{f(x)}{g(x)}]^{'}=\frac{f^{'}(x)g(x)-f(x)g^{'}(x)}{[g(x)]^2} [g(x)f(x)]′=[g(x)]2f′(x)g(x)−f(x)g′(x)
- 常数的导数为0
1.2 复合函数求导
- 如果函数
μ
=
ψ
(
x
)
\mu=\psi(x)
μ=ψ(x)在点
x
0
x_0
x0处可导,而
y
=
f
(
μ
)
y = f(\mu)
y=f(μ)在点
μ
0
=
ψ
(
x
0
)
\mu_0=\psi(x_0)
μ0=ψ(x0)可导,则复合函数
y
=
f
[
ψ
(
x
)
]
y=f[\psi(x)]
y=f[ψ(x)]在点
x
0
x_0
x0可导,且其导数为:
f
′
(
μ
0
)
⋅
ψ
′
(
x
0
)
f^{'}(\mu_0)·\psi^{'}(x_0)
f′(μ0)⋅ψ′(x0)
即因变量对自变量求导,等于因变量对中间变量求导,乘以中间变量对自变量求导(链式法则) - 扩展:设
y
=
f
(
μ
)
,
μ
=
ψ
(
ν
)
,
ν
=
Ψ
(
x
)
y=f(\mu),\mu=\psi(\nu),\nu=\Psi(x)
y=f(μ),μ=ψ(ν),ν=Ψ(x),则复合函数
y
=
f
{
ψ
[
Ψ
(
x
)
]
}
y=f\left\{\psi[\Psi(x)]\right\}
y=f{ψ[Ψ(x)]}的导数为:
d y d x = d y d μ ⋅ d μ d ν ⋅ d ν d x \frac{dy}{dx}=\frac{dy}{d\mu}·\frac{d\mu}{d\nu}·\frac{d\nu}{dx} dxdy=dμdy⋅dνdμ⋅dxdν
上述被称为链式法则
1.3 反函数求导
函数
x
=
f
(
y
)
x=f(y)
x=f(y)在区间内单调、可导,且
f
′
(
y
)
≠
0
f^{'}(y) \ne 0
f′(y)=0,则其反函数
y
=
f
−
1
(
x
)
y=f ^{-1}(x)
y=f−1(x)在区间内也单调可导,且导数满足
d
y
d
x
=
1
d
x
d
y
\frac{dy}{dx}=\frac{1}{\frac{dx}{dy}}
dxdy=dydx1
举例:设x=siny,
y
∈
[
−
π
2
,
π
2
]
y\in[-\frac{π}{2},\frac{π}{2}]
y∈[−2π,2π],则y=arcsinx为其反函数。求
d
y
d
x
\frac{dy}{dx}
dxdy
(
a
r
c
s
i
n
x
)
′
=
1
(
s
i
n
y
)
′
=
1
c
o
s
y
(arcsinx)^{'}=\frac{1}{(siny)^{'}}=\frac{1}{cosy}
(arcsinx)′=(siny)′1=cosy1
1.4 隐函数求导
- 方法1:将隐函数化成显函数
- 方法2:有时候化成显函数是非常困难的,因此方法1不适用。如求 e y + x y − e = 0 e^y+xy-e=0 ey+xy−e=0的导数 d y d x \frac{dy}{dx} dxdy。方程左右两边同时对x求导数(注意y=y(x),对x求导为 y ′ y^{'} y′: e y ⋅ y ′ + y + x y ′ = 0 e^y·y^{'}+y+xy^{'}=0 ey⋅y′+y+xy′=0由此可以解得 y ′ y{'} y′
- 方法3:方程 F ( x , y ) = 0 , d y d x = − F x F y F(x,y)=0,\frac{dy}{dx}=-\frac{F_x}{F_y} F(x,y)=0,dxdy=−FyFx
1.5 基本初等函数导数及总结
2. 矩阵基本知识
2.1 矩阵的字母表示
2.2 广义逆
之前学习的 A − 1 A^{-1} A−1是逆的特殊形式,仅存在于可逆方阵中。接下来会讨论逆的两种形式,减号逆和加号逆。(本质上,加号逆和逆都是减号逆的一种特殊存在形式)
2.2.1 减号逆 A − A^{-} A−
对于矩阵
A
m
×
n
A_{m×n}
Am×n以及矩阵X。若满足AXA=A,则称X为A的减号逆,记做
X
=
A
−
X=A^{-}
X=A−。减号逆一定存在,但不一定唯一。
减号逆的性质:
- 对于任意矩阵A, A − A^{-} A−总是存在的(存在性)
- 当A为可逆方阵时, A − A^{-} A−唯一,且 A − = A − 1 A^{-}=A^{-1} A−=A−1
- r k ( A − ) ≥ r k ( A ) = r k ( A − A ) = r k ( A A − ) rk(A^{-})\ge rk(A)=rk(A^{-}A)=rk(AA^{-}) rk(A−)≥rk(A)=rk(A−A)=rk(AA−)
2.2.2 加号逆 A + A^{+} A+(伪逆)
一般来讲,减号逆有无穷多个,在这无穷多个减号逆中,有一个逆,同时满足以下四个条件:
A
X
A
=
A
;
X
A
X
=
X
;
(
A
X
)
′
=
A
X
;
(
X
A
)
′
=
X
A
AXA=A; XAX=X; (AX)^{'}=AX; (XA)^{'}=XA
AXA=A;XAX=X;(AX)′=AX;(XA)′=XA
X称为A的加号逆(也称为伪逆),记做
A
+
A^{+}
A+,加号逆一定存在,且唯一。
从上数描述中,可以得到,A的加号逆一般有无穷多个,但是当A为可逆矩阵时,减号逆只有一个,同时A的加号逆一定存在且唯一,故当A为可逆方阵时,A的逆,减号逆,加号逆是一样的。
加号逆的性质:
2.3 幂等矩阵
2.4 kronecker(克罗内克)乘积与向量化运算
2.4.1 kronecker定义
2.4.2 kronecker性质
推论:
2.4.3 向量化运算
向量化运算的性质
2.5 矩阵的微商
涉及对矩阵求导时,这里的矩阵指的是函数空间,或者矩阵函数,即矩阵(或者向量)中的每个元素都为函数
f
(
X
)
f(X)
f(X),这里的X指的是向量
X
(
x
1
,
x
2
,
.
.
.
,
x
n
)
X(x_1, x_2,...,x_n)
X(x1,x2,...,xn),详细可参见线性空间。例如函数矩阵Y:
[
y
11
y
12
y
21
y
22
]
=
[
x
1
+
x
2
x
1
2
+
x
2
2
x
1
3
+
x
2
3
x
1
4
+
x
2
4
]
\begin{bmatrix} y_{11} & y_{12} \\ y_{21} & y_{22} \end{bmatrix}= \begin{bmatrix} x_1+x_2 & x^2_1+x^2_2 \\ x^3_1+x^3_2 & x^4_1+x^4_2 \end{bmatrix}
[y11y21y12y22]=[x1+x2x13+x23x12+x22x14+x24]
可以看到矩阵Y中的每个元素都是向量
X
(
x
1
,
x
2
)
X(x_1,x_2)
X(x1,x2)的函数。下面讲述中认为:当Y只有一个元素时,称为标量;当Y的元素只有一行或者一列时称为向量(行向量与列向量);当有m行n列时才称为矩阵。
上述涉及标量、向量、矩阵,因此y对x求导的情况共有9种类型+1类:
标量y对标量x求导;
标量y对向量
x
⃗
\vec{x}
x求导;
标量y对矩阵X求导;
向量
y
⃗
\vec{y}
y对标量x求导;
向量
y
⃗
\vec{y}
y对向量
x
⃗
\vec{x}
x求导(y为行向量,x为列向量以及y为列向量,x为行向量。行行求导与列列求导也可以,但是不常用。因此下文仅介绍前两种,其他种类涉及向量的也常用列向量,但行向量理论也是可以的);
向量
y
⃗
\vec{y}
y对矩阵X求导;
矩阵Y对标量x求导;
矩阵Y对向量
x
⃗
\vec{x}
x求导;
矩阵Y对矩阵X求导。
2.5.1 标量y对标量x求导
y
=
f
(
x
)
→
d
y
d
x
=
d
f
d
x
y=f(x)\rightarrow \frac{dy}{dx}=\frac{df}{dx}
y=f(x)→dxdy=dxdf
例子:大学高等数学上涉及的全导数。
如
y
=
x
2
y=x^2
y=x2。此时标量y为
x
2
x^2
x2,x也是标量。导数为
d
y
d
x
=
d
x
2
d
x
=
2
x
\frac{dy}{dx}=\frac{dx^2}{dx}=2x
dxdy=dxdx2=2x
2.5.2 标量y对向量 x ⃗ \vec{x} x求导
d
y
d
X
=
[
d
f
x
1
.
.
.
d
f
d
x
m
]
\frac{dy}{dX}= \begin{bmatrix} \frac{df}{x_1} \\ ... \\ \frac{df}{dx_m} \end{bmatrix}
dXdy=
x1df...dxmdf
例子:
y
=
x
1
2
+
x
2
2
y=x^2_1+x^2_2
y=x12+x22
d
y
d
X
=
[
2
x
1
2
x
2
]
\frac{dy}{dX}= \begin{bmatrix} 2x_1\\ 2x_2 \end{bmatrix}
dXdy=[2x12x2]
2.5.3 标量y对矩阵X求导
d
y
d
X
=
[
d
f
d
x
11
.
.
.
d
f
d
x
1
n
.
.
.
.
.
.
.
.
.
d
f
d
x
m
1
.
.
.
d
f
d
x
m
n
]
\frac{dy}{dX}= \begin{bmatrix} \frac{df}{dx_{11}} & ...& \frac{df}{dx_{1n}}\\ ...&...&...\\ \frac{df}{dx_{m1}}&...&\frac{df}{dx_{mn}} \end{bmatrix}
dXdy=
dx11df...dxm1df.........dx1ndf...dxmndf
例子:
y
=
x
1
2
+
x
2
2
+
x
3
2
+
x
4
2
y=x^2_1+x^2_2+x^2_3+x^2_4
y=x12+x22+x32+x42其中
X
=
[
x
1
x
2
x
3
x
4
]
X= \begin{bmatrix} x_1&x_2\\ x_3& x_4 \end{bmatrix}
X=[x1x3x2x4]
只是举例时y的函数仍写成向量的形式,故看到这样的表达,需要指明X时向量还是矩阵。不写默认为向量。
d
f
d
X
=
[
2
x
1
2
x
2
2
x
3
2
x
4
]
\frac{df}{dX}= \begin{bmatrix} 2x_1& 2x_2\\ 2x_3& 2x_4 \end{bmatrix}
dXdf=[2x12x32x22x4]
总结:从以上三种情况来看,其实都是标量y对X中每个随机变量求偏导,然后构成一个新的向量或者矩阵。
2.5.4 向量 y ⃗ \vec{y} y对标量x求导
d
y
⃗
d
x
=
[
d
f
1
d
x
.
.
.
d
f
n
d
x
]
\frac{d\vec{y}}{dx}= \begin{bmatrix} \frac{df_1}{dx} \\ ... \\ \frac{df_n}{dx} \end{bmatrix}
dxdy=
dxdf1...dxdfn
例子:
y
⃗
=
[
x
x
2
x
3
]
\vec{y}= \begin{bmatrix} x\\ x^2\\ x^3 \end{bmatrix}
y=
xx2x3
d
y
⃗
d
x
=
[
1
2
x
3
x
2
]
\frac{d\vec{y}}{dx}= \begin{bmatrix} 1\\ 2x\\ 3x^2 \end{bmatrix}
dxdy=
12x3x2
2.5.5 向量 y ⃗ T \vec{y}^T yT对向量 x ⃗ \vec{x} x求导
d
y
⃗
T
d
x
⃗
=
[
d
f
1
d
x
1
.
.
.
d
f
n
d
x
1
.
.
.
.
.
.
.
.
.
d
f
1
d
x
1
.
.
.
d
f
n
d
x
m
]
\frac{d\vec{y}^T}{d\vec{x}}= \begin{bmatrix} \frac{df_1}{dx_1}&...&\frac{df_n}{dx_1}\\ ...&...&...\\ \frac{df_1}{dx_1}&...&\frac{df_n}{dx_m} \end{bmatrix}
dxdyT=
dx1df1...dx1df1.........dx1dfn...dxmdfn
例子:
y
⃗
T
=
[
x
1
+
x
2
x
1
2
+
x
2
2
]
\vec{y}^T= \begin{bmatrix} x_1+x_2 & x^2_1+x^2_2 \end{bmatrix}
yT=[x1+x2x12+x22],其中
x
⃗
=
[
x
1
x
2
]
\vec{x}=\begin{bmatrix} x_1\\ x_2 \end{bmatrix}
x=[x1x2]
d
y
⃗
T
d
x
⃗
=
[
1
2
x
1
1
2
x
2
]
\frac{d\vec{y}^T}{d\vec{x}}= \begin{bmatrix} 1&2x_1\\ 1&2x_2 \end{bmatrix}
dxdyT=[112x12x2]
2.5.6 向量 y ⃗ \vec{y} y对向量 x ⃗ T \vec{x}^T xT求导
d
y
⃗
d
x
⃗
T
=
[
d
f
1
d
x
1
.
.
.
d
f
1
d
x
n
.
.
.
.
.
.
.
.
.
d
f
m
d
x
1
.
.
.
d
f
m
d
x
n
]
\frac{d\vec{y}}{d\vec{x}^T}= \begin{bmatrix} \frac{df_1}{dx_1}&...&\frac{df_1}{dx_n}\\ ...&...&...\\ \frac{df_m}{dx_1}&...&\frac{df_m}{dx_n} \end{bmatrix}
dxTdy=
dx1df1...dx1dfm.........dxndf1...dxndfm
例子:
y
⃗
T
=
[
x
1
+
x
2
x
1
2
+
x
2
2
]
\vec{y}^T= \begin{bmatrix} x_1+x_2 & x^2_1+x^2_2 \end{bmatrix}
yT=[x1+x2x12+x22],其中
x
⃗
T
=
[
x
1
x
2
]
\vec{x}^T=\begin{bmatrix} x_1&x_2 \end{bmatrix}
xT=[x1x2]
d
y
⃗
d
x
⃗
T
=
[
1
1
2
x
1
2
x
2
]
\frac{d\vec{y}}{d\vec{x}^T}= \begin{bmatrix} 1&1\\ 2x_1&2x_2 \end{bmatrix}
dxTdy=[12x112x2]
观察2.5.5与2.5.6两个结果互为转置。究竟结果是哪个,取决于向量x,可以看到当y也是向量时,其实是
y
⃗
\vec{y}
y中的每个元素(标量)对向量
x
⃗
\vec{x}
x求导。每个元素(标量)对向量求导的结果排列成列还是行,取决于
x
⃗
\vec{x}
x,当
x
⃗
\vec{x}
x为行向量时,排列成行;当
x
⃗
\vec{x}
x为行向量时,排列成行。
2.5.7 向量 y ⃗ \vec{y} y对矩阵X求导
d
y
⃗
T
d
X
=
[
d
f
1
d
x
11
.
.
.
d
f
1
d
x
1
q
.
.
.
.
.
.
.
.
.
d
f
1
d
x
p
1
.
.
.
d
f
n
d
x
p
q
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
d
f
m
d
x
11
.
.
.
d
f
m
d
x
1
q
.
.
.
.
.
.
.
.
.
d
f
m
d
x
p
1
.
.
.
d
f
m
d
x
p
q
]
\frac{d\vec{y}^T}{dX}= \begin{bmatrix} \frac{df_1}{dx_{11}}&...&\frac{df_1}{dx_{1q}}\\ ...&...&...\\ \frac{df_1}{dx_{p1}}&...&\frac{df_n}{dx_{pq}}\\ ...&...&...\\ ...&...&...\\ ...&...&...\\ \frac{df_m}{dx_{11}}&...&\frac{df_m}{dx_{1q}}\\ ...&...&...\\ \frac{df_m}{dx_{p1}}&...&\frac{df_m}{dx_{pq}}\\ \end{bmatrix}
dXdyT=
dx11df1...dxp1df1.........dx11dfm...dxp1dfm...........................dx1qdf1...dxpqdfn.........dx1qdfm...dxpqdfm
例子:
y
⃗
=
[
x
1
+
x
2
+
x
3
+
x
4
x
1
2
+
x
2
2
+
x
3
2
+
x
4
2
]
\vec{y}= \begin{bmatrix} x_1+x_2+x_3+x_4 \\ x^2_1+x^2_2+x^2_3+x^2_4 \end{bmatrix}
y=[x1+x2+x3+x4x12+x22+x32+x42],其中
X
=
[
x
1
x
2
x
3
x
4
]
X=\begin{bmatrix} x_1 &x_2\\ x_3&x_4 \end{bmatrix}
X=[x1x3x2x4]
d
y
⃗
d
X
=
[
1
1
1
1
2
x
1
2
x
2
2
x
3
2
x
4
]
\frac{d\vec{y}}{dX}= \begin{bmatrix} 1&1\\ 1&1\\ 2x_1&2x_2\\ 2x_3&2x_4 \end{bmatrix}
dXdy=
112x12x3112x22x4
2.5.8 矩阵Y对标量x求导
d
Y
d
x
=
[
d
f
11
d
x
.
.
.
d
f
1
n
d
x
.
.
.
.
.
.
.
.
.
d
f
m
1
d
x
.
.
.
d
f
m
n
d
x
]
\frac{dY}{dx}= \begin{bmatrix} \frac{df_{11}}{dx} & ...& \frac{df_{1n}}{dx} \\ ... & ...& ... \\ \frac{df_{m1}}{dx} & ...& \frac{df_{mn}}{dx} \end{bmatrix}
dxdY=
dxdf11...dxdfm1.........dxdf1n...dxdfmn
例子:
Y
=
[
x
x
2
x
3
x
4
]
Y= \begin{bmatrix} x & x^2 \\ x^3 & x^4 \end{bmatrix}
Y=[xx3x2x4]
d
Y
d
x
=
[
1
2
x
3
x
2
4
x
3
]
\frac{dY}{dx}= \begin{bmatrix} 1 & 2x \\ 3x^2 & 4x^3 \end{bmatrix}
dxdY=[13x22x4x3]
2.5.9 矩阵Y对向量 x ⃗ \vec{x} x求导
d
Y
d
x
⃗
=
[
d
f
11
d
x
1
.
.
.
d
f
1
m
d
x
1
.
.
.
.
.
.
.
.
.
d
f
11
d
x
p
.
.
.
d
f
1
m
d
x
p
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
d
f
n
1
d
x
1
.
.
.
d
f
n
m
d
x
1
.
.
.
.
.
.
.
.
.
d
f
n
1
d
x
p
.
.
.
d
f
n
m
d
x
p
]
\frac{dY}{d\vec{x}}= \begin{bmatrix} \frac{df_{11}}{dx_{1}}&...&\frac{df_{1m}}{dx_{1}}\\ ...&...&...\\ \frac{df_{11}}{dx_{p}}&...&\frac{df_{1m}}{dx_{p}}\\ ...&...&...\\ ...&...&...\\ ...&...&...\\ \frac{df_{n1}}{dx_{1}}&...&\frac{df_{nm}}{dx_{1}}\\ ...&...&...\\ \frac{df_{n1}}{dx_{p}}&...&\frac{df_{nm}}{dx_{p}}\\ \end{bmatrix}
dxdY=
dx1df11...dxpdf11.........dx1dfn1...dxpdfn1...........................dx1df1m...dxpdf1m.........dx1dfnm...dxpdfnm
例子:
Y
=
[
x
1
+
x
2
x
1
2
+
x
2
2
x
1
3
+
x
2
3
x
1
4
+
x
2
4
]
Y= \begin{bmatrix} x_1+x_2 & x^2_1+x^2_2 \\ x^3_1+x^3_2 & x^4_1+x^4_2 \end{bmatrix}
Y=[x1+x2x13+x23x12+x22x14+x24]
d
Y
d
x
⃗
=
[
1
2
x
1
1
2
x
2
3
x
1
2
4
x
1
3
3
x
2
2
4
x
2
3
]
\frac{dY}{d\vec{x}}= \begin{bmatrix} 1 & 2x_1 \\ 1 & 2x_2\\ 3x^2_1&4x^3_1\\ 3x^2_2&4x^3_2 \end{bmatrix}
dxdY=
113x123x222x12x24x134x23
2.5.10 矩阵Y对矩阵X求导
d
Y
d
X
=
[
d
f
11
d
x
11
.
.
.
d
f
11
d
x
1
q
.
.
.
.
.
.
d
f
1
n
d
x
11
.
.
.
d
f
1
n
d
x
1
q
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
d
f
11
d
x
p
1
.
.
.
d
f
11
d
x
p
q
.
.
.
.
.
.
d
f
1
n
d
x
p
1
.
.
.
d
f
1
n
d
x
p
q
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
d
f
m
1
d
x
11
.
.
.
d
f
m
1
d
x
1
q
.
.
.
.
.
.
d
f
m
n
d
x
11
.
.
.
d
f
m
n
d
x
1
q
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
d
f
m
1
d
x
p
1
.
.
.
d
f
m
1
d
x
p
q
.
.
.
.
.
.
d
f
m
n
d
x
p
1
.
.
.
d
f
m
n
d
x
p
q
]
\frac{dY}{dX}= \begin{bmatrix} \frac{df_{11}}{dx_{11}}&...&\frac{df_{11}}{dx_{1q}}&...&...&\frac{df_{1n}}{dx_{11}}&...&\frac{df_{1n}}{dx_{1q}}\\ ...&...&...&...&...&...&...&...\\ \frac{df_{11}}{dx_{p1}}&...&\frac{df_{11}}{dx_{pq}}&...&...&\frac{df_{1n}}{dx_{p1}}&...&\frac{df_{1n}}{dx_{pq}}\\ ...&...&...&...&...&...&...&...\\ ...&...&...&...&...&...&...&...\\ ...&...&...&...&...&...&...&...\\ \frac{df_{m1}}{dx_{11}}&...&\frac{df_{m1}}{dx_{1q}}&...&...&\frac{df_{mn}}{dx_{11}}&...&\frac{df_{mn}}{dx_{1q}}\\ ...&...&...&...&...&...&...&...\\ \frac{df_{m1}}{dx_{p1}}&...&\frac{df_{m1}}{dx_{pq}}&...&...&\frac{df_{mn}}{dx_{p1}}&...&\frac{df_{mn}}{dx_{pq}}\\ \end{bmatrix}
dXdY=
dx11df11...dxp1df11.........dx11dfm1...dxp1dfm1...........................dx1qdf11...dxpqdf11.........dx1qdfm1...dxpqdfm1......................................................dx11df1n...dxp1df1n.........dx11dfmn...dxp1dfmn...........................dx1qdf1n...dxpqdf1n.........dx1qdfmn...dxpqdfmn
例子:
Y
=
[
x
1
+
x
2
+
x
3
+
x
4
x
1
2
+
x
2
2
+
x
3
2
+
x
4
2
x
1
3
+
x
2
3
+
x
3
3
+
x
4
3
x
1
4
+
x
2
4
+
x
3
4
+
x
4
4
]
Y= \begin{bmatrix} x_1+x_2+ x_3+x_4& x^2_1+x^2_2 +x^2_3+x^2_4\\ x^3_1+x^3_2 +x^3_3+x^3_4& x^4_1+x^4_2+x^4_3+x^4_4 \end{bmatrix}
Y=[x1+x2+x3+x4x13+x23+x33+x43x12+x22+x32+x42x14+x24+x34+x44]
其中
X
=
[
x
1
x
2
x
3
x
4
]
X= \begin{bmatrix} x_1&x_2\\ x_3& x_4 \end{bmatrix}
X=[x1x3x2x4]
d
Y
d
X
=
[
1
1
2
x
1
2
x
2
1
1
2
x
3
2
x
4
3
x
1
2
3
x
2
2
4
x
1
3
4
x
2
3
3
x
3
2
3
x
4
2
4
x
3
3
4
x
4
3
]
\frac{dY}{dX}= \begin{bmatrix} 1 & 1 &2x_1&2x_2\\ 1 & 1&2x_3&2x_4\\ 3x^2_1&3x^2_2&4x^3_1&4x^3_2\\ 3x^2_3&3x^2_4&4x^3_3&4x^3_4 \end{bmatrix}
dXdY=
113x123x32113x223x422x12x34x134x332x22x44x234x43
2.5.11 总结
以上2.5.1 ;2.5.2 ;2.5.3可以看做是最基础的,y都是标量。无论x是标量、向量、矩阵,本质都是y对x中的每个随机变量求偏导,并将其按照x的排列方式进行排列成一个新的向量。
其余2.5.4-2.5.10中y无论是向量还是矩阵,其本质都是按照y的排列顺序,一个元素一个元素进行求导计算(因此每个元素的计算过程就是2.5.1-2.5.3中的某一种),最终按照y的排列顺序将每个元素的求导结果排列成新的向量或者矩阵。
2.6 矩阵微商的推导结论
- 1.标量对列向量x求导:
- 1.1 d ( μ T ν ) d x = d ( μ T ) d x ⋅ ν + d ( ν T ) d x ⋅ μ \frac{d(\mu^T\nu)}{dx}=\frac{d(\mu^T)}{dx}·\nu+\frac{d(\nu^T)}{dx}·\mu dxd(μTν)=dxd(μT)⋅ν+dxd(νT)⋅μ,等式左边本质是标量对列向量求导,结果为列向量;等式右边涉及求导的均为行向量对列向量求导,结果为矩阵,再乘以列向量,最终为列向量。
- 1.2 d y ⃗ T x ⃗ d x = y ⃗ \frac{d\vec{y}^T\vec{x}}{dx}=\vec{y} dxdyTx=y或者 d x ⃗ T y ⃗ d x = y ⃗ \frac{d\vec{x}^T\vec{y}}{dx}=\vec{y} dxdxTy=y
- 1.3 d x T x d x = 2 x \frac{dx^Tx}{dx}=2x dxdxTx=2x(应用1.1的结论)
- 1.4 d x T A x d x = ( A + A T ) x \frac{dx^TAx}{dx}=(A+A^T)x dxdxTAx=(A+AT)x(应用1.1的结论)
- 2.行向量对列向量求导:
- 2.1 d x T d x = I \frac{dx^T}{dx}=I dxdxT=I
- 2.2 d ( A x ) T d x = d x T A T d x = A T \frac{d(Ax)^T}{dx}=\frac{dx^TA^T}{dx}=A^T dxd(Ax)T=dxdxTAT=AT(左边A有转置,故结果也由转置)
- 3.列向量对行向量求导:
- 3.1 d x d T = I \frac{dx}{d^T}=I dTdx=I
- 3.2 d ( A x ) d x T = A \frac{d(Ax)}{dx^T}=A dxTd(Ax)=A(左边A没有转置,右边结果也没有转置)
- 4.标量对矩阵求导:
- 4.1 d x T A y d A = x y T \frac{dx^TAy}{dA}=xy^T dAdxTAy=xyT
- 4.2 d x T A x d x = x x T \frac{dx^TAx}{dx}=xx^T dxdxTAx=xxT
- 4.3 d x T A T A x d A = d ( A X ) T A X d A = 2 A x x T \frac{dx^TA^TAx}{dA}=\frac{d(AX)^TAX}{dA}=2Axx^T dAdxTATAx=dAd(AX)TAX=2AxxT
- 4.4 d ( A x − y ) T ( A x − y ) d A = 2 ( A x − y ) x T \frac{d(Ax-y)^T(Ax-y)}{dA}=2(Ax-y)x^T dAd(Ax−y)T(Ax−y)=2(Ax−y)xT