矩阵微积分

本文摘译自 Wikipedia

数学中,矩阵微积分是一种特殊的多元微积分表达形式,它把单个函数对多个变量或多元函数对单一变量表达为向量或矩阵的形式,使其可以视为一个整体作处理,这极大地简化了诸如多元函数极值和微分方程组等问题的求解过程。

表示法

在本文中,将采用如下所示的表示方法:

  • A,X,YA,X,Y 等:粗体的大写字母,表示一个矩阵;
  • a,x,y 等:粗体的小写字母,表示一个向量;
  • a,x,y 等:斜体的小写字母,表示一个标量;
  • XT:表示矩阵 X 的转置;
  • XH:表示矩阵 X 的共轭转置;
  • |X|:表示方阵 X 的行列式;
  • ||x||:表示向量 x 的范数;
  • I:表示单位矩阵。

向量微分

向量-标量

列向量函数 y=[y1y2ym]T 对标量 x 的导数称为 y 的切向量,可以以 分子记法 表示为

yx=[y1xy2xymx]m×1

若以 分母记法 则可以表示为

yx=[y1xy2xymx]1×m

标量-向量

标量函数 y 对列向量 x=[x1x2xn]T 的导数可以以 分子记法 表示为

yx=[yx1yx2yxn]1×n

若以 分母记法 则可以表示为

yx=[yx1yx2yxn]n×1

向量-向量

列向量函数 y=[y1y2ym]T 对列向量 x=[x1x2xn]T 的导数可以以 分子记法 表示为

yx=[y1x1y1x2y1xny2x1y2x2y2xnymx1ymx2ymxn]m×n

若以 分母记法 则可以表示为

yx=[y1x1y2x1ymx1y1x1y2x1ymx1y1x1y2x1ymx1]n×m

矩阵微分

矩阵-标量

形状为 m×n 的矩阵函数 Y 对标量 x 的导数称为 Y 的切矩阵,可以以 分子记法 表示为

Yx=[y11xy12xy1nxy21xy22xy2nxym1xym2xymnx]m×n

标量-矩阵

标量函数 y 对形状为 p×q 的矩阵 X 的导数可以 分子记法 表示为

yX=[yx11yx21yxp1yx12yx22yxp2yx1qyx2qyxpq]q×p

若以 分母记法 则可以表示为

yX=[yx11yx12yx1qyx21yx22yx2qyxp1yxp2yxpq]p×q

恒等式

以下各式中,无特别备注,默认被求导的复合函数的各因式皆不是求导变量的函数。

向量-向量

表达式 分子记法 分母记法 备注
ax= 0 0
xx= I I
Axx= A AT
xTAx= AT A
aux= aux aux u=u(x)
vux= vux+uvx vux+vxuT v=v(x),u=u(x)
Aux= Aux uxAT u=u(x)
(u+v)x= ux+vx ux+vx u=u(x),v=v(x)
f(g(u))x= f(g)gg(u)uux uxg(u)uf(g)g u=u(x)

标量-向量

表达式 分子记法 分母记法 备注
ax= 0T 0
aux= aux aux u=u(x)
(u+v)x= ux+vx ux+vx u=u(x),v=v(x)
uvx= uvx+vux uvx+vux u=u(x),v=v(x)
f(g(u))x= f(g)gg(u)uux f(g)gg(u)uux u=u(x)
(uv)x=uTvx= uTvx+vTux vxu+uxv u=u(x),v=v(x)
(uAv)x=uTAvx= uTAvx+vTATux vxATu+uxAv u=u(x),v=v(x)
(au)x=aTux= aTux uxa u=u(x)
bTAxx= bTA ATb
xTAxx= xT(A+AT) (A+AT)x
2xTAxxxT= A+AT A+AT
aTxxTbx= xT(abT+baT) (abT+baT)x
(Ax+b)TC(Dx+e)x= (Ax+b)TCD+(Dx+e)TCTA DTCT(Ax+b)+ATC(Dx+e)T
||x||2x=(xx)x= 2xT 2x
||xa||x= (xa)T||xa|| (xa)||xa||

向量-标量

表达式 分子记法 分母记法 备注
ax= 0 0
aux= aux aux u=u(x)
Aux= Aux uxAT u=u(x)
uTx= (ux)T (ux)T u=u(x)
(u+v)x= ux+vx ux+vx u=u(x),v=v(x)
(uT×v)x= (ux)T×v+uT×vx ux×v+uT×(vx)T u=u(x),v=v(x)
f(g(u))x= f(g)gg(u)uux uxg(u)uf(g)g u=u(x)
(U×v)x= Ux×v+U×vx vT×Ux+vx×UT U=U(x),v=v(x)

标量-矩阵

表达式 分子记法 分母记法 备注
aX= 0T 0
auX= auX auX u=u(X)
(u+v)X= uX+vX uX+vX u=u(X),v=v(X)
uvX= uvX+vuX uvX+vuX u=u(X),v=v(X)
f(g(u))X= f(g)gg(u)uuX f(g)gg(u)uuX u=u(X)
aTXbX= baT abT
aTXTbX= abT baT
(Xa+b)TC(Xa+b)X= [(C+CT)(Xa+b)aT]T (C+CT)(Xa+b)aT
(Xa)TC(Xb)X= (CXbaT+CTXabT)T CXbaT+CTXabT
|X|X= |X|X1 |X|(X1)T
ln|aX|X= X1 (X1)T
|AXB|X= |AXB|X1 |AXB|(X1)T
|Xn|X= n|Xn|X1 n|Xn|(X1)T
ln|XTX|X= 2X+ 2(X+)T X+X 的广义逆
ln|XTX|X+= 2X 2XT X+X 的广义逆
|XTAX|X= 2|XTAX|X1=2|XT||A||X|X1 2|XTAX|(X1)T X 为方阵且可逆
|XTAX|X= 2|XTAX|(XTATX)1XTAT 2|XTAX|AX(XTAX)1 A 对称
|XTAX|X= |XTAX|[(XTAX)1XTA+(XTATX)1XTAT] |XTAX|[AX(XTAX)1+ATX(XTATX)1]

矩阵-标量

表达式 分子记法 备注
aUx= aUx U=U(x)
AUBx= AUxB U=U(x)
(U+V)x= Ux+Vx U=U(x),V=V(x)
(UV)x= UVx+UxV U=U(x),V=V(x)
(UV)x= UVx+UxV U=U(x),V=V(x) 表示 Kronecker 乘积
(UV)x= UVx+UxV U=U(x),V=V(x) 表示 Hadamard 乘积
U1x= U1UxU1 U=U(x)
2U1xy= U1(UxU1Uy2Uxy+UyU1Ux)U1 U=U(x,y)
g(xA)x= Ag(xA)=g(xA)A 应为 Hadamard 乘积;g() 为逐元函数,如下例
exAx= AexA=exAA
---------- 文结至此 静待下章 ----------