矩阵求导
矩阵在机器学习中用的比较多,比如反向传播的时候,本来矩阵相关运算的反向传播很简单,但是网上的资料都写的很复杂,我尽量以简单的形式来表述矩阵相关运算的反向传播过程。
- 矩阵相乘的反向传播
- 矩阵点乘的反向传播
- 矩阵乘向量的反向传播
- 向量乘矩阵的反向传播
- 矩阵乘标量的反向传播
本文用表示标量,
表示向量,
表示矩阵,
表示列向量,
表示行向量
矩阵相乘反向传播
设为3行2列的矩阵,
为2行4列的矩阵,
为
的结果矩阵,为3行4列,将其分别表示出来,则:
其中
则loss对X的偏导数为:
(1)
所以
同理可证
矩阵点乘的反向传播
同理,Z=Xdot(Y),设
其中
同理
矩阵乘向量的反向传播
, 设W为3行2列,x为2行1列,y3行1列:
同理可证
向量乘矩阵的反向传播
, 设W为3行2列,x为1行3列,y为1行2列:
同理可证
矩阵乘标量的反向传播
, 设W为3行2列,x为标量,y为3行2列: