首页 > 其他 > 详细

矩阵求导

时间:2020-02-03 14:24:41      阅读:65      评论:0      收藏:0      [点我收藏+]

基本概念

假设 \(f = f(X)\)\(f\) 是标量,\(X\) 是矩阵,定义标量对矩阵的导数如下:
\[ \frac{\partial f}{\partial X} = \begin{bmatrix} \frac{\partial f}{\partial X_{ij}} \end{bmatrix} \]

求导思路

矩阵求导的核心是矩阵导数与微分的联系:
\[ \mathrm{d}f = tr(\frac{\partial f}{\partial X}^T \mathrm{d}X) \]
可以看出,\(\mathrm{d}f\) 是导数 \(\frac{\partial f}{\partial X} (m \times n)\) 与微分矩阵 \(\mathrm{d}X (m \times n)\) 的内积。我们要做的事情就是对 \(f\) 求微分,进而转化成 \(\mathrm{d}f = tr(\frac{\partial f}{\partial X}^T \mathrm{d}X)\) 的形式,直接比较得出 \(\frac{\partial f}{\partial X}\)

矩阵微分的运算法则

  1. 加减:\(\mathrm{d}(X \pm Y) = \mathrm{d}X \pm \mathrm{d}Y\)
  2. 乘:\(\mathrm{d}(XY) = \mathrm{d}XY + X\mathrm{d}Y\)
  3. 转置:\(\mathrm{d}(X^T) = (\mathrm{d}X)^T\)
  4. 迹:\(\mathrm{d}tr(X) = tr(\mathrm{d}X)\)
  5. 逆:\(\mathrm{d}X^{-1} = -X^{-1}\mathrm{d}XX^{-1}\)
  6. 行列式:\(\mathrm{d}\vert X \vert = tr(X^* \mathrm{d}X)\)
  7. 逐元素相乘:\(\mathrm{d}(X \odot Y) = \mathrm{d}X \odot Y + X \odot \mathrm{d}Y\)
  8. 逐元素函数:\(\mathrm{d}(\sigma (X)) = \sigma ' (X) \odot \mathrm{d}X\)

迹运算

  1. 标量的迹:\(a = tr(a)\)
  2. 转置:\(tr(A^T) = tr(A)\)
  3. 线性:\(tr(A \pm B) = tr(A) \pm tr(B)\)
  4. 矩阵乘法的迹:\(A, B^T \in R^{m \times n}\),则 \(tr(AB) = tr(BA)\)
  5. 矩阵乘法及逐元素乘法:\(tr(A^T (B \odot C)) = tr((A \odot B)^T C)\)

链式法则

假设 \(f = f(Y), Y = g(X)\),则根据上述方法可先求出 f 对 Y 的微分形式:
\[ \mathrm{d}f = tr(\frac{\partial f}{\partial Y} ^T \mathrm{d}Y) \]
进而利用 \(\mathrm{d}Y = \mathrm{d}g(X)\) 得到:
\[ \mathrm{d}f = tr(\frac{\partial f}{\partial Y} ^T \mathrm{d}g(X)) = tr(\frac{\partial f}{\partial X}^T \mathrm{d}X) \]

矩阵求导

原文:https://www.cnblogs.com/luyunan/p/12255373.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!