目录索引
一 矩阵
1.线性代数的应用(以SVD为例)
SVD是在机器学习中广泛使用的算法,不光可以用于降维算法的特征分解,也可以用于推荐系统,以及自然语言处理等领域,是很多机器学习算法的基石。
奇异值分解是一种重要的矩阵分解方法,可以看作方阵在任意矩阵上的推广。
假设A是一个
m
×
n
m\times n
m×n阶实矩阵,则存在一个分解使得
A
m
×
n
=
U
m
×
m
∑
m
×
n
V
n
×
n
T
A_{m\times n}=U_{m\times m}\sum_{m\times n}V_{n\times n}^{T}
Am×n=Um×mm×n∑Vn×nT
求解如下
(
A
T
⋅
A
)
ν
i
=
λ
i
ν
i
⇒
{
δ
i
=
λ
i
μ
i
=
1
δ
i
A
⋅
ν
i
(A^T\cdot A)\nu_i=\lambda_i\nu_i\Rightarrow \begin{cases} \delta_i=\sqrt{\lambda_i} \\ \mu_i=\frac{1}{\delta_i}A\cdot \nu_i \end{cases}
(AT⋅A)νi=λiνi⇒{δi=λiμi=δi1A⋅νi
其中,
∑
\sum
∑对角线上的元素称为矩阵A的奇异值
U
U
U的第
i
i
i列称为A的关于
δ
i
\delta_i
δi的右奇异向量
V
V
V的第
i
i
i列称为A的关于
δ
i
\delta_i
δi的左奇异向量
2.方阵的行列式
(1)方阵的行列式
一阶方阵的行列式为元素的本身;
n
n
n阶方阵的行列式等于它的任一行(或列)的各元素与其对应的代数余子式和。
(2)代数余子式
任一个 n n n阶行列式A中,把 ( i , j ) (i,j) (i,j)元素 a i j a_{ij} aij所在的第i行和第j列划去后,留下的n-1阶方阵的行列式叫做 a i j a_{ij} aij的余子式,记作 M i j M_{ij} Mij,代数余子式为 A i j = ( − 1 ) i + j M i j A_{ij}=(-1)^{i+j}M_{ij} Aij=(−1)i+jMij。
(3)行列式计算
∀
1
≤
i
≤
n
,
∣
A
∣
=
∑
j
=
1
n
a
i
j
⋅
(
−
1
)
i
+
j
M
i
j
\forall 1 \le i \le n, |A|=\sum_{j=1}^{n}a_{ij}\cdot (-1)^{i+j}M_{ij}
∀1≤i≤n,∣A∣=j=1∑naij⋅(−1)i+jMij
∀
1
≤
j
≤
n
,
∣
A
∣
=
∑
i
=
1
n
a
i
j
⋅
(
−
1
)
i
+
j
M
i
j
\forall 1 \le j \le n, |A|=\sum_{i=1}^{n}a_{ij}\cdot (-1)^{i+j}M_{ij}
∀1≤j≤n,∣A∣=i=1∑naij⋅(−1)i+jMij
(4)范德蒙行列式
D
n
=
∣
1
1
1
⋯
1
x
1
x
2
x
3
⋯
x
n
x
1
2
x
2
2
x
3
2
⋯
x
n
2
⋮
⋮
⋮
⋱
⋮
x
1
n
−
1
x
2
n
−
1
x
3
n
−
1
⋯
x
n
n
−
1
∣
=
∏
i
,
j
(
n
≥
i
>
j
≥
1
)
(
x
i
−
x
j
)
D_n=\begin{vmatrix} 1 & 1 & 1 & \cdots & 1 \\ x_1 & x_2 & x_3 & \cdots & x_n \\ x_1^2 & x_2^2 & x_3^2 & \cdots & x_n^2 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ x_1^{n-1} & x_2^{n-1} & x_3^{n-1} & \cdots & x_n^{n-1} \\ \end{vmatrix}=\prod_{i,j(n\ge i>j \ge 1)}(x_i-x_j)
Dn=∣∣∣∣∣∣∣∣∣∣∣1x1x12⋮x1n−11x2x22⋮x2n−11x3x32⋮x3n−1⋯⋯⋯⋱⋯1xnxn2⋮xnn−1∣∣∣∣∣∣∣∣∣∣∣=i,j(n≥i>j≥1)∏(xi−xj)
举例:
D
=
∣
1
1
1
1
1
2
3
4
1
4
9
16
1
8
27
64
∣
=
(
2
−
1
)
(
3
−
2
)
(
3
−
1
)
(
4
−
3
)
(
4
−
2
)
(
4
−
1
)
=
12
D=\begin{vmatrix} 1 & 1 & 1 & 1 \\ 1 & 2 & 3 & 4 \\ 1 & 4 & 9 & 16 \\ 1 & 8 & 27 & 64 \\ \end{vmatrix}=(2-1)(3-2)(3-1)(4-3)(4-2)(4-1)=12
D=∣∣∣∣∣∣∣∣1111124813927141664∣∣∣∣∣∣∣∣=(2−1)(3−2)(3−1)(4−3)(4−2)(4−1)=12
3.矩阵乘法和状态转移矩阵
(1)矩阵乘法
A
A
A为
m
×
s
m\times s
m×s阶矩阵,
B
B
B为
s
×
n
s\times n
s×n阶矩阵,那么
C
=
A
×
B
C=A\times B
C=A×B是
m
×
n
m\times n
m×n阶矩阵,其中
c
i
j
=
∑
k
=
1
s
a
i
k
b
k
j
c_{ij}=\sum_{k=1}^{s}a_{ik}b_{kj}
cij=k=1∑saikbkj
(2)概率转移矩阵
考虑某随机过程
π
\pi
π,它的状态有
n
n
n个,用
1
∼
n
1\sim n
1∼n表示。记在当前时刻
t
t
t时位于
i
i
i状态,它在
t
+
1
t+1
t+1时刻位于
j
j
j状态的概率为
P
(
i
,
j
)
=
P
(
j
∣
i
)
P(i,j)=P(j|i)
P(i,j)=P(j∣i),即状态转移概率只依赖于前一个概率。
举例,假定按照经济状况将人群分成上、中、下三个阶乘,用1、2、3表示。假定当前处于某阶层只和上一代有关,即:考虑父代为第
i
i
i阶层,则子代为第
j
j
j阶层的概率。如果一个人的收入属于下层类别,则它的孩子属于下层收入的概率为0.65,属于中层收入的概率为0.28,属于上层收入的概率为0.07。从父代到子代,有如下转移概率矩阵:
转移状态图为
第
n
+
1
n+1
n+1代中处于第
j
j
j个阶层的概率为
π
n
+
1
=
∑
i
=
1
k
π
(
X
n
=
i
)
⋅
P
(
X
n
+
1
=
j
∣
X
n
=
i
)
\pi_{n+1}=\sum_{i=1}^{k}\pi(X_n=i)\cdot P(X_{n+1}=j|X_n=i)
πn+1=i=1∑kπ(Xn=i)⋅P(Xn+1=j∣Xn=i)
⇒
π
n
+
1
=
π
n
⋅
P
\Rightarrow \pi^{n+1}=\pi^{n}\cdot P
⇒πn+1=πn⋅P
因此,矩阵
P
P
P为(条件)概率转移矩阵,第
i
i
i行元素表示为在上一个状态为
i
i
i时的分布概率,即每一行元素概率和为1。
思考:初始概率分布
π
\pi
π对最终分布的影响?
探索1:初始概率分布为
π
=
[
0.21
,
0.68
,
0.1
]
\pi=[0.21,0.68,0.1]
π=[0.21,0.68,0.1]迭代结果
探索2:初始概率分布为
π
=
[
0.75
,
0.15
,
0.1
]
\pi=[0.75,0.15,0.1]
π=[0.75,0.15,0.1]迭代结果
可以看出,初始概率不同,但经过若干次迭代,
π
\pi
π将最终稳定到某个分布上,这是概率转移矩阵的性值,事实上P矩阵的n次幂最终也会收敛。具体原因以及深入的研究会在马尔可夫模型中继续探讨,本次暂不深入探讨。
(3)矩阵和向量的乘法
A为
m
×
n
m \times n
m×n的矩阵,x为
n
×
1
n \times 1
n×1的列向量,则Ax为
m
×
1
m \times 1
m×1的列向量,记为
y
⃗
=
A
⋅
x
⃗
\vec{y}=A\cdot \vec{x}
y=A⋅x
由于
n
n
n维向量和
n
n
n维空间上的点一一对应,上式实际上给出了从n维空间上的点到m维空间上的点的线性变换。特殊地,若
m
=
n
m=n
m=n,则Ax完成了n维空间内的线性变换,比如旋转或者平移等。
4.矩阵和向量组
(1)矩阵的秩
设在矩阵A中有一个不等于零的r阶子式D,且所有r+1阶子式(若存在)为0,那么D为矩阵A的最高阶非零子式,r称为矩阵A的秩,记为
R
(
A
)
=
r
R(A)=r
R(A)=r。
n
×
n
n\times n
n×n可逆矩阵秩为n;
可逆矩阵又称为满秩矩阵;
矩阵的秩等于它行(列)向量组的秩。
(2)秩和线性方程组解的关系
{
a
11
x
1
+
a
12
x
2
+
⋯
+
a
1
n
x
n
=
b
1
a
21
x
1
+
a
22
x
2
+
⋯
+
a
2
n
x
n
=
b
2
⋯
⋯
a
m
1
x
1
+
a
m
2
x
2
+
⋯
+
a
m
n
x
n
=
b
m
⇒
A
x
⃗
=
b
⃗
\left\{ \begin{array}{c} a_{11}x_1+a_{12}x_2+\cdots+a_{1n}x_n=b_1 \\ a_{21}x_1+a_{22}x_2+\cdots+a_{2n}x_n=b_2 \\ \cdots \cdots \\ a_{m1}x_1+a_{m2}x_2+\cdots+a_{mn}x_n=b_m \\ \end{array} \right. \Rightarrow A\vec{x}=\vec{b}
⎩⎪⎪⎨⎪⎪⎧a11x1+a12x2+⋯+a1nxn=b1a21x1+a22x2+⋯+a2nxn=b2⋯⋯am1x1+am2x2+⋯+amnxn=bm⇒Ax=b
无解的充要条件是:
R
(
A
)
<
R
(
A
,
b
)
R(A)<R(A,b)
R(A)<R(A,b);
有唯一解的充要条件是:
R
(
A
)
=
R
(
A
,
b
)
=
n
R(A)=R(A,b)=n
R(A)=R(A,b)=n;
有无穷多解的充要条件是:
R
(
A
)
=
R
(
A
,
b
)
<
n
R(A)=R(A,b)<n
R(A)=R(A,b)<n;
A
x
⃗
=
0
A\vec{x}=0
Ax=0有非零解的充要条件是
R
(
A
)
<
n
R(A)<n
R(A)<n。
(3)向量组等价
向量
b
⃗
\vec{b}
b可由向量组:
a
1
⃗
,
a
2
⃗
,
⋯
,
a
m
⃗
\vec{a_1},\vec{a_2},\cdots,\vec{a_m}
a1,a2,⋯,am线性表出的充要条件是矩阵
A
=
(
a
1
⃗
,
a
2
⃗
,
⋯
,
a
m
⃗
)
A=(\vec{a_1},\vec{a_2},\cdots,\vec{a_m})
A=(a1,a2,⋯,am)的秩等于矩阵
B
=
(
a
1
⃗
,
a
2
⃗
,
⋯
,
a
m
⃗
,
b
⃗
)
B=(\vec{a_1},\vec{a_2},\cdots,\vec{a_m},\vec{b})
B=(a1,a2,⋯,am,b)的秩。
设有两个向量组
A
:
a
1
⃗
,
a
2
⃗
,
⋯
,
a
m
⃗
A:\vec{a_1},\vec{a_2},\cdots,\vec{a_m}
A:a1,a2,⋯,am和
B
:
b
1
⃗
,
b
2
⃗
,
⋯
,
b
n
⃗
B:\vec{b_1},\vec{b_2},\cdots,\vec{b_n}
B:b1,b2,⋯,bn,若向量组A和向量组B能够相互表出,则称向量组A和向量组B等价。
若向量组B可以由向量组A线性表出,则对于每个向量
b
j
⃗
\vec{b_j}
bj,存在
k
1
j
,
k
2
j
,
⋯
,
k
m
j
k_{1j},k_{2j},\cdots,k_{mj}
k1j,k2j,⋯,kmj,使得
b
j
⃗
=
k
1
j
a
1
⃗
+
k
2
j
a
2
⃗
+
⋯
+
k
m
j
a
m
⃗
=
(
a
1
⃗
,
a
2
⃗
,
⋯
,
a
m
⃗
)
{
k
1
j
k
2
j
⋯
k
m
j
}
\vec{b_j}=k_{1j}\vec{a_1}+k_{2j}\vec{a_2}+\cdots+k_{mj}\vec{a_m}=(\vec{a_1},\vec{a_2},\cdots,\vec{a_m})\begin{Bmatrix} k_{1j} \\ k_{2j} \\ \cdots \\ k_{mj} \\ \end{Bmatrix}
bj=k1ja1+k2ja2+⋯+kmjam=(a1,a2,⋯,am)⎩⎪⎪⎨⎪⎪⎧k1jk2j⋯kmj⎭⎪⎪⎬⎪⎪⎫
从而得到系数矩阵K
(
b
1
⃗
b
2
⃗
⋯
b
n
⃗
)
=
(
a
1
⃗
a
2
⃗
⋯
a
m
⃗
)
(
k
11
⃗
k
12
⃗
⋯
k
1
n
⃗
k
21
⃗
k
22
⃗
⋯
k
2
n
⃗
⋮
⋮
⋱
⋮
k
m
1
⃗
k
m
2
⃗
⋯
k
m
n
⃗
)
\begin{pmatrix}\vec{b_1}&\vec{b_2}& \cdots &\vec{b_n} \end{pmatrix}=\begin{pmatrix}\vec{a_1}&\vec{a_2}& \cdots &\vec{a_m} \end{pmatrix}\begin{pmatrix}\vec{k_{11}}&\vec{k_{12}}& \cdots &\vec{k_{1n}} \\ \vec{k_{21}}&\vec{k_{22}}& \cdots &\vec{k_{2n}}\\ \vdots&\vdots& \ddots &\vdots\\ \vec{k_{m1}}&\vec{k_{m2}}& \cdots &\vec{k_{mn}}\\ \end{pmatrix}
(b1b2⋯bn)=(a1a2⋯am)⎝⎜⎜⎜⎛k11k21⋮km1k12k22⋮km2⋯⋯⋱⋯k1nk2n⋮kmn⎠⎟⎟⎟⎞
二 特征值和特征向量
1.对称阵,正交阵和正定阵
(1)正交阵
若 n n n阶矩阵 A A A满足 A T A = I A^T A=I ATA=I,则称A为正交矩阵,简称为正交阵。A是正交阵的充要条件是A的列(行)向量都是单位向量,且两两正交。若A为正交阵,则 A x ⃗ A\vec{x} Ax为正交变换,正交变换不改变向量长度。
(2)特征值和特征向量
A
A
A是
n
n
n阶矩阵,若数
λ
\lambda
λ和
n
n
n维非0列向量
x
⃗
\vec{x}
x满足
A
x
⃗
=
λ
x
⃗
A\vec{x}=\lambda \vec{x}
Ax=λx,则称
λ
\lambda
λ为A的特征值,
x
⃗
\vec{x}
x为A的对应于特征值
λ
\lambda
λ的特征向量。
根据定义,立刻可以得到
(
A
−
λ
I
)
x
⃗
=
0
(A-\lambda I)\vec{x}=0
(A−λI)x=0,令关于
λ
\lambda
λ的多项式
∣
A
−
λ
I
∣
|A-\lambda I|
∣A−λI∣为0,方程
∣
A
−
λ
I
∣
=
0
|A-\lambda I|=0
∣A−λI∣=0的根是特征值;将根
λ
0
\lambda_0
λ0带入方程组
(
A
−
λ
I
)
x
⃗
=
0
(A-\lambda I)\vec{x}=0
(A−λI)x=0求解到的非零解,即
λ
0
\lambda_0
λ0对应的特征向量。
特征值的性质:
设n阶矩阵
A
=
(
a
i
j
)
A=(a_{ij})
A=(aij)的特征值为
λ
1
,
λ
1
,
⋯
,
λ
n
\lambda1,\lambda1,\cdots,\lambda_n
λ1,λ1,⋯,λn,则有
λ
1
+
λ
2
+
⋯
+
λ
n
=
a
11
+
a
22
+
⋯
+
a
n
n
\lambda_1+\lambda_2+\cdots+\lambda_n=a_{11}+a_{22}+\cdots +a_{nn}
λ1+λ2+⋯+λn=a11+a22+⋯+ann;
λ
1
⋅
λ
2
⋯
λ
n
=
∣
A
∣
\lambda_1 \cdot \lambda_2 \cdots \lambda_n=|A|
λ1⋅λ2⋯λn=∣A∣。
另外,已知
λ
\lambda
λ是方阵A的特征值,则有
λ
2
\lambda^2
λ2是
A
2
A^2
A2的特征值;
A可逆时,
λ
−
1
\lambda^{-1}
λ−1是
A
−
1
A^{-1}
A−1的特征值(定义很容易证明)。
不同特征值对应的特征向量性质:
设
λ
1
,
λ
2
,
⋯
,
λ
m
\lambda_1,\lambda_2,\cdots,\lambda_m
λ1,λ2,⋯,λm是方阵A的特征值,
p
1
,
p
2
,
⋯
,
p
m
p_1,p_2,\cdots,p_m
p1,p2,⋯,pm是依次与之对应的特征向量,若
λ
1
,
λ
2
,
⋯
,
λ
m
\lambda_1,\lambda_2,\cdots,\lambda_m
λ1,λ2,⋯,λm各不相等,则
p
1
,
p
2
,
⋯
,
p
m
p_1,p_2,\cdots,p_m
p1,p2,⋯,pm线性无关。
实对称矩阵引理:
实对称矩阵的特征值是实数;
实对称矩阵的特征向量可以取实向量;
实对称矩阵不同特征值的特征向量正交
结果证明:令实对称矩阵为A,其两个不同特征值分别
λ
1
,
λ
2
\lambda_1,\lambda_2
λ1,λ2,对应的特征向量分别为
μ
1
,
μ
2
\mu_1,\mu_2
μ1,μ2
{
A
μ
1
=
λ
1
μ
1
A
μ
2
=
λ
2
μ
2
⇒
μ
1
T
A
μ
2
‾
=
μ
1
T
λ
2
μ
2
‾
\begin{cases} A\mu_1=\lambda_1 \mu_1\\ A\mu_2=\lambda_2 \mu_2 \Rightarrow \mu_1^T\underline{A\mu_2}= \mu_1^T\underline{\lambda_2\mu_2} \\ \end{cases}
{Aμ1=λ1μ1Aμ2=λ2μ2⇒μ1TAμ2=μ1Tλ2μ2
⇒
(
A
T
μ
1
)
T
μ
2
=
λ
2
μ
1
T
μ
2
⇒
(
A
μ
1
)
T
μ
2
=
λ
2
μ
1
T
μ
2
\Rightarrow (A^T\mu_1)^T\mu_2=\lambda_2\mu_1^T\mu_2 \Rightarrow (A\mu_1)^T\mu_2=\lambda_2\mu_1^T\mu_2
⇒(ATμ1)Tμ2=λ2μ1Tμ2⇒(Aμ1)Tμ2=λ2μ1Tμ2
⇒
(
λ
1
μ
1
)
T
μ
2
=
λ
2
μ
1
T
μ
2
⇒
λ
1
μ
1
T
μ
2
=
λ
2
μ
1
T
μ
2
\Rightarrow (\lambda_1\mu_1)^T\mu_2=\lambda_2\mu_1^T\mu_2 \Rightarrow \lambda_1\mu_1^T\mu_2=\lambda_2\mu_1^T\mu_2
⇒(λ1μ1)Tμ2=λ2μ1Tμ2⇒λ1μ1Tμ2=λ2μ1Tμ2
λ
1
≠
λ
2
→
μ
1
T
μ
2
=
0
\underrightarrow{\lambda_1\neq\lambda_2} \mu_1^T\mu_2=0
λ1=λ2μ1Tμ2=0
得证。
最终结论:设A为实对称n阶矩阵,则必有正交阵P使得
P
−
1
A
P
=
P
T
A
P
=
Λ
P^{-1}AP=P^{T}AP=\Lambda
P−1AP=PTAP=Λ
其中,
Λ
\Lambda
Λ是以A的特征值为对角元的对角阵,该变换也成为合同变换,A和
Λ
\Lambda
Λ互为合同矩阵。
(3)正定阵
对于n阶方阵A,若任意n阶向量
x
⃗
\vec{x}
x都有
x
T
A
x
>
0
x^TAx>0
xTAx>0,则称矩阵A为正定矩阵。若条件改为
x
T
A
x
≥
0
x^TAx\geq0
xTAx≥0,则称A为半正定。任意给定
A
T
A
A^TA
ATA,一定是半正定矩阵。
正定判定:
对称阵A为正定阵;
A的特征值都为正;
A的顺序主子式都大于0;
以上三命题等价。
4.QR分解
对于
m
×
n
m \times n
m×n列满秩矩阵,必有
A
m
n
=
Q
m
n
×
R
n
n
A_{mn}=Q_{mn}\times R_{nn}
Amn=Qmn×Rnn
其中,
Q
T
Q
=
I
Q^TQ=I
QTQ=I,即列正交矩阵,R为非奇异上三角矩阵。当要求R的对角元素为正时,该分解唯一。可用于求解A的逆矩阵以及A的特征值。
QR分解计算特征值(A为n阶方阵)
A
=
Q
R
⇒
A
1
=
Q
T
A
Q
=
R
Q
A=QR \Rightarrow A_1=Q^TAQ=RQ
A=QR⇒A1=QTAQ=RQ
⋯
\cdots
⋯
A
k
=
Q
k
R
k
⇒
A
k
+
1
=
R
k
Q
k
A_k=Q_kR_k \Rightarrow A_{k+1}=R_kQ_k
Ak=QkRk⇒Ak+1=RkQk
⋯
\cdots
⋯
A
k
→
d
i
a
g
(
λ
1
,
λ
1
,
⋯
,
λ
n
)
A_k\rightarrow diag(\lambda_1,\lambda_1,\cdots,\lambda_n)
Ak→diag(λ1,λ1,⋯,λn)
三 矩阵求导
1.向量对向量求导
A为
m
×
n
m\times n
m×n矩阵,
x
⃗
\vec{x}
x为
n
×
1
n\times 1
n×1的列向量,则
A
x
⃗
A\vec{x}
Ax为
m
×
1
m\times1
m×1的列向量,记
y
⃗
=
A
⋅
x
⃗
\vec{y}=A\cdot \vec{x}
y=A⋅x,则
∂
y
⃗
∂
x
⃗
=
A
T
\frac{\partial{\vec{y}}}{\partial{\vec{x}}}=A^T
∂x∂y=AT
公式推导
A
=
[
a
11
a
12
⋯
a
1
n
a
21
a
22
⋯
a
2
n
⋯
⋯
⋯
⋯
a
m
1
a
m
2
⋯
a
m
n
]
x
⃗
=
{
x
1
x
2
⋮
x
n
}
A
⋅
x
⃗
=
{
a
11
x
1
+
a
12
x
2
+
⋯
+
a
1
n
x
n
a
21
x
1
+
a
22
x
2
+
⋯
+
a
2
n
x
n
⋮
a
m
1
x
1
+
a
m
2
x
2
+
⋯
+
a
m
n
x
n
}
A=\begin{bmatrix} a_{11} & a_{12}& \cdots &a_{1n} \\ a_{21} & a_{22}& \cdots &a_{2n} \\ \cdots & \cdots& \cdots& \cdots \\ a_{m1} & a_{m2}& \cdots &a_{mn} \\ \end{bmatrix} \vec{x}=\begin{Bmatrix} x_{1}\\ x_{2}\\ \vdots\\ x_{n}\\ \end{Bmatrix}A\cdot \vec{x}= \begin{Bmatrix} a_{11}x_1+a_{12}x_2+\cdots + a_{1n}x_n\\ a_{21}x_1+a_{22}x_2+\cdots + a_{2n}x_n\\ \vdots \\ a_{m1}x_1+a_{m2}x_2+\cdots + a_{mn}x_n\\ \end{Bmatrix}
A=⎣⎢⎢⎡a11a21⋯am1a12a22⋯am2⋯⋯⋯⋯a1na2n⋯amn⎦⎥⎥⎤x=⎩⎪⎪⎪⎨⎪⎪⎪⎧x1x2⋮xn⎭⎪⎪⎪⎬⎪⎪⎪⎫A⋅x=⎩⎪⎪⎪⎨⎪⎪⎪⎧a11x1+a12x2+⋯+a1nxna21x1+a22x2+⋯+a2nxn⋮am1x1+am2x2+⋯+amnxn⎭⎪⎪⎪⎬⎪⎪⎪⎫
∂
y
⃗
∂
x
⃗
=
∂
A
x
⃗
∂
x
⃗
=
{
a
11
a
21
⋯
a
m
1
a
12
a
22
⋯
a
m
2
⋮
⋮
⋱
⋮
a
1
n
a
2
n
⋯
m
m
n
}
=
A
T
\frac{\partial{\vec{y}}}{\partial{\vec{x}}}=\frac{\partial{A\vec{x}}}{\partial{\vec{x}}}= \begin{Bmatrix} a_{11} & a_{21}& \cdots &a_{m1} \\ a_{12} & a_{22}& \cdots &a_{m2} \\ \vdots & \vdots& \ddots& \vdots \\ a_{1n} & a_{2n}& \cdots &m_{mn} \\ \end{Bmatrix}=A^T
∂x∂y=∂x∂Ax=⎩⎪⎪⎪⎨⎪⎪⎪⎧a11a12⋮a1na21a22⋮a2n⋯⋯⋱⋯am1am2⋮mmn⎭⎪⎪⎪⎬⎪⎪⎪⎫=AT
结论推广:
∂
y
⃗
∂
x
⃗
T
=
A
\frac{\partial{\vec{y}}}{\partial{\vec{x}^T}}=A
∂xT∂y=A
∂
x
⃗
T
A
∂
x
⃗
=
A
\frac{\partial{\vec{x}^TA}}{\partial{\vec{x}}}=A
∂x∂xTA=A
2.标量对向量求导
A为
m
×
n
m \times n
m×n矩阵,
x
⃗
\vec{x}
x为
n
×
1
n \times 1
n×1列向量,记
y
=
x
⃗
T
A
x
⃗
y=\vec{x}^TA\vec{x}
y=xTAx。
∂
y
x
⃗
=
(
A
T
+
A
)
x
⃗
\frac{\partial{y}}{\vec{x}}=(A^T+A)\vec{x}
x∂y=(AT+A)x
公式推导
记
:
A
=
[
a
11
a
12
⋯
a
1
n
a
21
a
22
⋯
a
2
n
⋯
⋯
⋯
⋯
a
n
1
a
n
2
⋯
a
n
n
]
x
⃗
=
{
x
1
x
2
⋮
x
n
}
记: A=\begin{bmatrix} a_{11} & a_{12}& \cdots &a_{1n} \\ a_{21} & a_{22}& \cdots &a_{2n} \\ \cdots & \cdots& \cdots& \cdots \\ a_{n1} & a_{n2}& \cdots &a_{nn} \\ \end{bmatrix} \vec{x}=\begin{Bmatrix} x_{1}\\ x_{2}\\ \vdots\\ x_{n}\\ \end{Bmatrix}
记:A=⎣⎢⎢⎡a11a21⋯an1a12a22⋯an2⋯⋯⋯⋯a1na2n⋯ann⎦⎥⎥⎤x=⎩⎪⎪⎪⎨⎪⎪⎪⎧x1x2⋮xn⎭⎪⎪⎪⎬⎪⎪⎪⎫
有
:
x
⃗
T
A
x
⃗
=
(
x
1
,
x
2
,
⋯
,
x
n
)
⋅
(
∑
j
=
1
n
a
1
j
x
j
∑
j
=
1
n
a
2
j
x
j
⋯
∑
j
=
1
n
a
n
j
x
j
)
T
有:\vec{x}^TA\vec{x}=(x_1,x_2,\cdots,x_n) \cdot \begin{pmatrix} \sum_{j=1}^{n}a_{1j}x_j & \sum_{j=1}^{n}a_{2j}x_j & \cdots & \sum_{j=1}^{n}a_{nj}x_j \end{pmatrix}^T
有:xTAx=(x1,x2,⋯,xn)⋅(∑j=1na1jxj∑j=1na2jxj⋯∑j=1nanjxj)T
=
∑
i
=
1
n
(
(
∑
j
=
1
n
a
i
j
x
j
)
x
i
)
=
∑
i
=
1
n
∑
j
=
1
n
a
i
j
x
i
x
j
=\sum_{i=1}^{n}((\sum_{j=1}^{n}a_{ij}x_j)x_i)=\sum_{i=1}^{n}\sum_{j=1}^{n}a_{ij}x_ix_j
=i=1∑n((j=1∑naijxj)xi)=i=1∑nj=1∑naijxixj
则
:
∂
x
⃗
T
A
x
⃗
∂
x
i
⃗
=
(
∑
j
=
1
n
a
i
j
x
j
)
+
(
∑
i
=
1
n
a
j
i
x
i
)
=
∑
j
=
1
n
(
a
i
j
+
a
j
i
)
x
j
则:\frac{\partial{\vec{x}^T}A\vec{x}}{\partial{\vec{x_i}}}=\begin{pmatrix} \sum_{j=1}^{n}a_{ij}x_{j} \end{pmatrix}+\begin{pmatrix} \sum_{i=1}^{n}a_{ji}x_{i} \end{pmatrix}=\sum_{j=1}^{n}(a_{ij}+a_{ji})x_j
则:∂xi∂xTAx=(∑j=1naijxj)+(∑i=1najixi)=j=1∑n(aij+aji)xj
若A为对称矩阵,则
∂
y
x
⃗
=
2
A
x
⃗
\frac{\partial{y}}{\vec{x}}=2A\vec{x}
x∂y=2Ax
3.标量对矩阵求导
A为
n
×
n
n \times n
n×n方阵,|A| 为A的行列式,则
∂
∣
A
∣
∂
A
=
(
A
∗
)
T
=
∣
A
∣
⋅
(
A
)
−
1
\frac{\partial|A|}{\partial{A}}=(A^*)^T=|A|\cdot (A)^{-1}
∂A∂∣A∣=(A∗)T=∣A∣⋅(A)−1