定义:
若有函数y=f(X),其中X为一个矩阵,y为标量,则标量y对矩阵X的导数定义为y对X逐元素求导排列成与X同型的矩阵
但是在实际计算标量对矩阵求导时,并不是直接使用标量对矩阵中的逐元素求导,而是将矩阵当作一个整体来求导
标量对矩阵求导公式推导
若有y=f(X),其中X为$m{\times}n$的矩阵,则由全微分公式可以得到
令:
则
则
其中tr表示矩阵的迹(trace),是方阵对角元素之和。所以只要求全微分的公式(1)左边的形式,就可以的得到
$\frac{\partial{f}}{\partial{X}}$$
矩阵微分的运算法则
1、加减法、乘法、转置、迹
2、逆
该公式可以使用公式$XX^{-1} = I$,两边同时对X求微分。
3、行列式
其中$X^*$为X的伴随矩阵
4、逐函数乘法
其中$\bigodot$表示同型矩阵逐元素相乘
5、逐元素函数
其中$\sigma(X)=[\sigma(X_{ij})]$是逐元素标量函数的计算
关于矩阵的迹的公式
一个例子
y=ATXB,求$\frac{\partial y}{\partial X}$
解:
应为df为标量,所以
所以$\frac{\partial y}{\partial X}=(AB^T)$
链式法则
在标量对矩阵求导中,没有类似标量对标量求导的链式法则。
此时没有明确的链式法而是要使用公式进行推导,例如有$z = f(Y)$,其中Y为矩阵且$Y=AXB$,A、X、B、都为矩阵,求$\frac{\partial f}{\partial X}$。
推导过程:
所以有$\frac{\partial z}{\partial X}=(A^T\frac{\partial f}{\partial Y}B^T)$