10055st-Misaka

作者:李飞腾链接:https://zhuanlan.zhihu.com/p/22473137
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

如果能二秒内在脑袋里解出下面的问题,本文便结束了。

已知:J=(Xw-y)^T(Xw-y)=||Xw-y||^2,其中X\in R^{m \times n}, w \in R^{n \times 1}, y \in R^{m \times 1}

求:\frac{\partial J}{\partial X} \frac{\partial J}{\partial w} \frac{\partial J}{\partial y}


求导的链式法则” :

fgx的可导函数,则(f \circ g)\'(x) = f\'(g(x))g\'(x)

一个原则维数相容,实质是多元微分基本知识,没有在课本中找到下列内容,维数相容原则是我个人总结:

维数相容原则:通过前后换序、转置 使求导结果满足矩阵乘法且结果维数满足下式:

如果x\in R^{m\times n} f(x)\in R^1,那么\frac{\partial f(x)}{\partial x} \in R^{m\times n}

利用维数相容原则解上例:

step1:把所有参数当做实数来求导,J=(Xw-y)^2

依据链式法则有\frac{\partial J}{\partial X}=2(Xw-y)w\frac{\partial J}{\partial w}=2(Xw-y)X\frac{\partial J}{\partial y}=-2(Xw-y)

可以看出除了\frac{\partial J}{\partial y}=-2(Xw-y)\frac{\partial J}{\partial X}\frac{\partial J}{\partial w}的求导结果在维数上连矩阵乘法都不能满足。

step2:根据step1的求导结果,依据维数相容原则做调整:前后换序、转置

依据维数相容原则\frac{\partial J}{\partial X} \in R^{m \times n},但\frac{\partial J}{\partial X} \in R^{m \times n} = 2(Xw-y)w(Xw-y)\in R^{m \times 1}w \in R^{n \times 1},自然得调整为\frac{\partial J}{\partial X}=2(Xw-y)w^T

同理:\frac{\partial J}{\partial w} \in R^{n \times 1},但 \frac{\partial J}{\partial w} \in R^{n \times 1} = 2(Xw-y)X(Xw-y) \in R^{m \times 1}X \in R^{m \times n},那么通过换序、转置我们可以得到维数相容的结果2X^T(Xw-y)

对于矩阵、向量求导:

  • “当做一维实数使用链式法则求导,然后做维数相容调整,使之符合矩阵乘法原则且维数相容”是快速准确的策略;
  • “对单个元素求导、再整理成矩阵形式”这种方式整理是困难的、过程是缓慢的,结果是易出错的(不信你试试)。


如何证明经过维数相容原则调整后的结果是正确的呢?直觉!简单就是美...

分类:

技术点:

相关文章:

  • 2022-01-04
  • 2021-11-18
  • 2022-12-23
  • 2021-09-25
  • 2021-11-03
  • 2022-01-01
  • 2021-11-08
猜你喜欢
  • 2021-12-02
  • 2021-12-12
  • 2021-08-25
  • 2021-12-20
  • 2021-11-29
相关资源
相似解决方案