常用矩阵导数公式
1 矩阵Y=f(x)对标量x求导
矩阵Y是一个m×n的矩阵,对标量x求导,相当于矩阵中每个元素对x求导
dYdx=[df11(x)dx…df1n(x)dx⋮⋱⋮dfm1(x)dx…dfmn(x)dx]
2 标量y=f(x)对矩阵X求导
注意与上面不同,这次括号内是求偏导,X是是一个m×n的矩阵,函数y=f(x)对矩阵X中的每个元素求偏导,对m×n矩阵求导后还是m×n矩阵
dydX=[∂f∂x11…∂f∂x1n⋮⋱⋮∂f∂xm1…∂f∂xmn]
3 函数矩阵Y对矩阵X求导
矩阵Y=F(x)对每一个X的元素求导,构成一个超级矩阵
F(x)=[f11(x)…f1n(x)⋮⋱⋮fm1(x)…fmn(x)]
X=[x11…x1s⋮⋱⋮xr1…xrs]
dFdX=[∂F∂x11…∂F∂x1s⋮⋱⋮∂F∂xr1…∂F∂xrs]
其中
∂F∂xij=[∂f11∂xij…∂f1n∂xij⋮⋱⋮∂fm1∂xij…∂fmn∂xij]
4 向量导数
若m×1向量函数y=[y1,y2,…,ym]T,其中,y1,y2,…,ym是向量的标量函数。x是n×1向量。则有
∂Y∂XT=[∂y1∂x1…∂y1∂xn⋮⋱⋮∂ym∂x1…∂ym∂xn]
这是一个m×n矩阵,称作向量函数y的Jacobi矩阵。
若y=[x1,x2,…,xn],则有
∂xT∂x=I
其中,I是单位矩阵。
若A和y均与向量x无关,则
∂xTAy∂x=∂xT∂xAy=Ay
注意到:yTAx=<ATy,x>=<x,ATy>=xTATy, 向量内积的公式,故
∂yTAx∂x=∂xTATy∂x=ATy
由于xTAx=n∑i=1n∑j=1Aijxixj
可求出梯度∂xTAx∂x的第k个分量为
[∂xTAx∂x]k=∂∂xkn∑i=1n∑j=1Aijxixj=n∑i=1Aikxi+n∑j=1Akjxj
即有公式
∂xTAx∂x=Ax+ATx
特别地,若A为对称矩阵,则有∂xTAx∂x=2Ax
用上面三个公式,我们能够得到更多的实值函数f(x)相对于列向量x的几个常用梯度公式:
若f(x)=c为常数,则有梯度 ∂c∂x=0
线性法则:若f(x)和g(x)分别是向量x的实值函数,c1和c2为实常数,则有
∂[c1f(x)+c2g(x)]∂x=c1∂f(x)∂x+c2∂g(x)∂x
乘积法则:若f(x)和g(x)都是向量x的实值函数,则
∂f(x)g(x)∂x=g(x)∂f(x)∂x+f(x)∂g(x)∂x
若f(x),g(x)和h(x)都是向量x的实值函数,则
∂f(x)g(x)h(x)∂x=g(x)h(x)∂f(x)∂x+f(x)h(x)∂g(x)∂x+f(x)g(x)∂h(x)∂x
商法则:若g(x)≠0,则
∂f(x)/g(x)∂x=1g2(x)[g(x)∂f(x)∂x−f(x)∂g(x)∂x]
链式法则:若y(x)是x的向量值函数,则
∂f(y(x))∂x=∂yT(x)∂x∂f(y)∂y
其中,∂yT(x)∂x为n×n矩阵。
若n×1向量α 与x是无关的常数向量,则
∂αTy(x)∂x=∂yT(x)∂xα
∂yT(x)α∂x=∂yT(x)∂xα
令x为n×1向量,α为m×1常数向量,A和B分别为m×n和m×m常数矩阵,且\(B])为对称矩阵,则
∂(α−Ax)TB(α−Ax)∂x=−2ATB(α−Ax)
5 迹函数的梯度矩阵
二次项目标函数可以利用矩阵的迹重写,因为一标量可以视为1×1矩阵。所以二次项目标函数的迹直接等于函数本身,即
f(x)=xTAx=tr(xTAx)=tr(AxxT)
∂tr(A)∂A=I
∂tr(AB)∂A=BT
由于tr(xyT)=tr(yxT)=XTy,所以
∂tr(xyT)∂x=∂tr(yxT)∂x=y
m×m矩阵W可逆时,有
∂tr(W−1)∂W=−(W−1)T
另外几个公式:
∂f(A)∂AT=(∂f(A)∂A)T
∂tr(ABATC)∂A=CAB+CTABT
∂|A|∂A=|A|(A−1)T
posted on 2017-09-24 18:57 迈克老狼2012 阅读(17778) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了