机器学习数学基础之一矩阵求导

机器学习数学基础之一矩阵求导

矩阵求导

【注】:本文采用分子布局(numerator layout)

【符号约定】: y ⃗ ∈ R m ; x ⃗ ∈ R n ; x , y ∈ R m × n ; X , Y ∈ R m × n ; \vec{y}\in{R^m};\vec{x}\in{R^n};x,y\in{R^{m\times{n}}};X,Y\in{R^{m\times{n}}}; y Rm;x Rn;x,yRm×n;X,YRm×n;

I 第一部分 基本求导公式

一、向量对标量求导

d y ⃗ d x = [ d y 1 d x , d y 2 d x , . . . , d y m d x ] T \frac{d\vec{y}}{dx}=[\frac{dy_1}{dx},\frac{dy_2}{dx},...,\frac{dy_m}{dx}]^T dxdy =[dxdy1,dxdy2,...,dxdym]T

二、标量对向量求导

d y d x ⃗ = [ d y d x 1 , d y d x 2 , . . . , d y d x n ] \frac{dy}{d\vec{x}}=[\frac{dy}{dx_1},\frac{dy}{dx_2},...,\frac{dy}{dx_n}] dx dy=[dx1dy,dx2dy,...,dxndy]

三、向量对向量求导

d y ⃗ d x ⃗ = ( d y 1 d x 1 d y 1 d x 2 . . . d y 1 d x n d y 2 d x 1 d y 2 d x 2 . . . d y 2 d x n . . . . d y m d x 1 d y m d x 2 . . . d y m d x n ) m × n \frac{d\vec{y}}{d\vec{x}}=\begin{pmatrix} \frac{dy_1}{dx_1} & \frac{dy_1}{dx_2} &.&.&.&\frac{dy_1}{dx_n} \\ \frac{dy_2}{dx_1}&\frac{dy_2}{dx_2}&.&.&.&\frac{dy_2}{dx_n}\\.& & & &&.\\.&&&&&.\\\frac{dy_m}{dx_1}&\frac{dy_m}{dx_2}&.&.&.&\frac{dy_m}{dx_n} \end{pmatrix}_{m\times{n}} dx dy =dx1dy1dx1dy2..dx1dymdx2dy1dx2dy2dx2dym.........dxndy1dxndy2..dxndymm×n

四、标量对矩阵求导

d y d X = ( d y d x 1 , 1 d y d x 1 , 2 . . . d y d x 1 , n d y d x 2 , 1 d y d x 2 , 2 . . . d y d x 2 , n . . . . d y d x m , 1 d y d x m , 2 . . . d y d x m , n ) \frac{dy}{dX}=\begin{pmatrix} \frac{dy}{dx_{1,1}}&\frac{dy}{dx_{1,2}}&.&.&.&\frac{dy}{dx_{1,n}}\\\frac{dy}{dx_{2,1}}&\frac{dy}{dx_{2,2}}&.&.&.& \frac{dy}{dx_{2,n}}\\.&&&&&.\\.&&&&&.\\\frac{dy}{dx_{m,1}}&\frac{dy}{dx_{m,2}}&.&.&.&\frac{dy}{dx_{m,n}}\end{pmatrix} dXdy=dx1,1dydx2,1dy..dxm,1dydx1,2dydx2,2dydxm,2dy.........dx1,ndydx2,ndy..dxm,ndy

五、矩阵对标量求导

d Y d x = ( d y 1 , 1 d x d y 1 , 2 d x . . . d y 1 , n d x d y 2 , 1 d x d y 2 , 2 d x . . . d y 2 , n d x . . . . d y m , 1 d x d y m , 2 d x . . . d y m , n d x ) \frac{dY}{dx}=\begin{pmatrix} \frac{dy_{1,1}}{dx}&\frac{dy_{1,2}}{dx} &.&.&.&\frac{dy_{1,n}}{dx} \\\frac{dy_{2,1}}{dx} &\frac{dy_{2,2}}{dx}&.&.&.&\frac{dy_{2,n}}{dx}\\.&&&&&.\\.&&&&&.\\\frac{dy_{m,1}}{dx}&\frac{dy_{m,2}}{dx}&.&.&.&\frac{dy_{m,n}}{dx}\end{pmatrix} dxdY=dxdy1,1dxdy2,1..dxdym,1dxdy1,2dxdy2,2dxdym,2.........dxdy1,ndxdy2,n..dxdym,n

II 第二部分 复杂求导公式

【例】求解 d ( A x ⃗ ) d x ⃗ \frac{d(A\vec{x})}{d\vec{x}} dx d(Ax )

分析:A x ⃗ \vec{x} x ( m × 1 ) (m\times{1}) (m×1)维的向量, x ⃗ \vec{x} x ( n × 1 ) (n\times{1}) (n×1)维的向量,适用向量对向量的求导法则。

解: A = ( a 1 , 1 a 1 , 2 . . . a 1 , n a 2 , 1 a 2 , 2 . . . a 2 , n . . . . a m , 1 a m , 2 . . . a m , n ) , x = ( x 1 x 2 . . x n ) A=\begin{pmatrix}a_{1,1}&a_{1,2}&.&.&.&a_{1,n}\\a_{2,1}&a_{2,2}&.&.&.&a_{2,n}\\.&&&&&. \\.&&&&&.\\a_{m,1}&a_{m,2}&.&.&.&a_{m,n}\end{pmatrix},x=\begin{pmatrix}x_1\\x_2\\.\\.\\x_n\end{pmatrix} A=a1,1a2,1..am,1a1,2a2,2am,2.........a1,na2,n..am,n,x=x1x2..xn,则 A x ⃗ = ( ( A x ⃗ ) 1 ( A x ⃗ ) 2 . . ( A x ⃗ ) m ) A\vec{x}=\begin{pmatrix}(A\vec{x})_1\\(A\vec{x})_2\\.\\.\\(A\vec{x})_m\end{pmatrix} Ax =(Ax )1(Ax )2..(Ax )m

其中 ( A x ⃗ ) i = a i , 1 x 1 + a i , 2 x 2 + . . . + a i , n x n (A\vec{x})_i=a_{i,1}x_1+a_{i,2}x_2+...+a_{i,n}x_n (Ax )i=ai,1x1+ai,2x2+...+ai,nxn

则很容易得到:

d ( A x ⃗ ) d x ⃗ = ( ( A x ⃗ ) 1 d x 1 ( A x ⃗ ) 1 d x 2 . . . ( A x ⃗ ) 1 d x n ( A x ⃗ ) 2 d x 1 ( A x ⃗ ) 2 d x 2 . . . ( A x ⃗ ) 2 d x n . . . . ( A x ⃗ ) m d x 1 ( A x ⃗ ) m d x 2 . . . ( A x ⃗ ) m d x n ) = ( a 1 , 1 a 1 , 2 . . . a 1 , n a 2 , 1 a 2 , 2 . . . a 2 , n . . . . a m , 1 a m , 2 . . . a m , n ) = A \frac{d(A\vec{x})}{d\vec{x}}=\begin{pmatrix} \frac{(A\vec{x})_1}{dx_1}&\frac{(A\vec{x})_1}{dx_2}&.&.&.&\frac{(A\vec{x})_1}{dx_n}\\\frac{(A\vec{x})_2}{dx_1}&\frac{(A\vec{x})_2}{dx_2}&.&.&.&\frac{(A\vec{x})_2}{dx_n}\\.&&&&&.\\.&&&&&.\\\frac{(A\vec{x})_m}{dx_1}&\frac{(A\vec{x})_m}{dx_2}&.&.&.&\frac{(A\vec{x})_m}{dx_n}\end{pmatrix}=\begin{pmatrix}a_{1,1}&a_{1,2}&.&.&.&a_{1,n}\\a_{2,1}&a_{2,2}&.&.&.&a_{2,n}\\.&&&&&.\\.&&&&&.\\a_{m,1}&a_{m,2}&.&.&.&a_{m,n}\end{pmatrix}=A dx d(Ax )=dx1(Ax )1dx1(Ax )2..dx1(Ax )mdx2(Ax )1dx2(Ax )2dx2(Ax )m.........dxn(Ax )1dxn(Ax )2..dxn(Ax )m=a1,1a2,1..am,1a1,2a2,2am,2.........a1,na2,n..am,n=A

理论上任意一个矩阵都可以按照上述方法进行求导,但是往往比较麻烦,在实际应用中,即可以查找求导表进行查询,也可以运用在线矩阵求导工具进行求导。
下图为使用该在线编辑工具进行求导的结果:
在这里插入图片描述

【传送门】:矩阵求导表链接在线求导工具链接
【参考】:https://blog.csdn.net/daaikuaichuan/article/details/80620518
https://zhuanlan.zhihu.com/p/137702347

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值