矩阵的 Frobenius 范数及其求偏导法则

本文仅对https://blog.csdn.net/txwh0820/article/details/46392293进行重新排版供个人学习,侵删

矩阵的迹求导法则

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

1. 复杂矩阵问题求导方法:可以从小到大,从scalar到vector再到matrix

在这里插入图片描述
在这里插入图片描述

2. x is a column vector, A is a matrix

   d ( A ∗ x ) d x = A \frac{d(A∗x)}{dx}=A dxd(Ax)=A

   d ( x T ∗ A ) d x T = A \frac{d(x^T∗A)}{dx^T}=A dxTd(xTA)=A

   d ( x T ∗ A ) d x = A T \frac{d(x^T∗A)}{dx}=A^T dxd(xTA)=AT

   d ( x T ∗ A ∗ x ) d x = x T ( A T + A ) \frac{d(x^T∗A∗x)}{dx}=x^T(A^T+A) dxd(xTAx)=xT(AT+A)

3. Practice:

在这里插入图片描述

4. 矩阵求导计算法则

求导公式:

   Y = A ∗ X → D Y D X = A T Y = A * X \to \frac{DY}{DX} = A^T Y=AXDXDY=AT

   Y = X ∗ A → D Y D X = A Y = X * A \to \frac{DY}{DX} = A Y=XADXDY=A

   Y = A T ∗ X ∗ B → D Y D X = A ∗ B T Y = A^T * X * B \to \frac{DY}{DX} = A * B^T Y=ATXBDXDY=ABT

   Y = A T ∗ X T ∗ B → D Y D X = B ∗ A T Y = A^T * X^T * B \to \frac{DY}{DX} = B * A^T Y=ATXTBDXDY=BAT

乘积的导数:

   d ( f ∗ g ) d x = d f T d x g + d g d x f T \frac{d(f*g)}{dx}=\frac{df^T}{dx}g+\frac{dg}{dx}f^T dxd(fg)=dxdfTg+dxdgfT

一些结论:

  1. 矩阵 Y Y Y 对标量 x x x 求导:
    相当于每个元素求导数后转置一下,注意M×N矩阵求导后变成 N × M N×M N×M

       Y = [ y i j ] → d Y d x = [ d y j i d x ] Y = [y_{ij}] \to \frac{dY}{dx} = [\frac{dy_{ji}}{dx}] Y=[yij]dxdY=[dxdyji]

   

  1. 标量 y y y 对列向量 X X X 求导:
    注意与上面不同,这次括号内是求偏导,不转置,对 N × 1 N×1 N×1 向量求导后还是 N × 1 N×1 N×1 向量

       y = f ( x 1 , x 2 , . . , x n ) → d y d X = ( D y D x 1 , D y D x 2 , . . , D y D x n ) T y = f(x_1,x_2,..,x_n) \to \frac{dy}{dX}= (\frac{Dy}{Dx_1},\frac{Dy}{Dx_2},..,\frac{Dy}{Dx_n})^T y=f(x1,x2,..,xn)dXdy=(Dx1Dy,Dx2Dy,..,DxnDy)T

   

  1. 行向量 Y T Y^T YT 对列向量 X X X 求导:
    注意 1 × M 1×M 1×M 向量对 N × 1 N×1 N×1 向量求导后是 N × M N×M N×M 矩阵。
    Y Y Y 的每一列对 X X X 求偏导,将各列构成一个矩阵。
  重要结论:

       d X T d X = I \frac{dX^T}{dX} =I dXdXT=I    d ( A X ) T d X = A T \frac{d(AX)^T}{dX} =A^T dXd(AX)T=AT

   

  1. 列向量 Y Y Y 对行向量 X T X^T XT 求导:
    转化为行向量 Y T Y^T YT 对列向量 X X X 的导数,然后转置。
    注意 M × 1 M×1 M×1 向量对 1 × N 1×N 1×N 向量求导结果为 M × N M×N M×N 矩阵。

       d Y d X T = ( d Y T d X ) T \frac{dY}{dX^T} =(\frac{dY^T}{dX})^T dXTdY=(dXdYT)T

   

  1. 向量积对列向量 X X X 求导运算法则:
    注意与标量求导有点不同。

       d ( U V T ) d X = ( d U d X ) V T + U ( d V T d X ) \frac{d(UV^T)}{dX} =(\frac{dU}{dX})V^T + U(\frac{dV^T}{dX}) dXd(UVT)=(dXdU)VT+U(dXdVT)    d ( U T V ) d X = ( d U T d X ) V + ( d V T d X ) U T {\frac{d(U^TV)}{dX} =(\frac{dU^T}{dX})V + (\frac{dV^T}{dX}})U^T dXd(UTV)=(dXdUT)V+(dXdVT)UT

  重要结论:

       d ( X T A ) d X = ( d X T d X ) A + ( d A d X ) X T = I A + 0 X T = A \frac{d(X^TA)}{dX} =(\frac{dX^T}{dX})A + (\frac{dA}{dX})X^T = IA + 0X^T = A dXd(XTA)=(dXdXT)A+(dXdA)XT=IA+0XT=A

       d ( A X ) d X T = ( d ( X T A T ) d X ) T = ( A T ) T = A \frac{d(AX)}{dX^T} =(\frac{d(X^TA^T)}{dX})^T = (A^T)^T = A dXTd(AX)=(dXd(XTAT))T=(AT)T=A

       d ( X T A X ) d X = ( d X T d X ) A X + ( d ( A X ) T d X ) X = A X + A T X \frac{d(X^TAX)}{dX} =(\frac{dX^T}{dX})AX + (\frac{d(AX)^T}{dX})X = AX + A^TX dXd(XTAX)=(dXdXT)AX+(dXd(AX)T)X=AX+ATX

   

  1. 矩阵 Y Y Y 对列向量 X X X 求导:
    Y Y Y X X X 的每一个分量求偏导,构成一个超向量。
    注意该向量的每一个元素都是一个矩阵。

   

  1. 矩阵积对列向量求导法则:

       d ( u V ) d X = ( d u d X ) V + u ( d V d X ) \frac{d(uV)}{dX} =(\frac{du}{dX})V + u(\frac{dV}{dX}) dXd(uV)=(dXdu)V+u(dXdV)    d ( U V ) d X = ( d U d X ) V + U ( d V d X ) \frac{d(UV)}{dX} =(\frac{dU}{dX})V + U(\frac{dV}{dX}) dXd(UV)=(dXdU)V+U(dXdV)

   

  重要结论:

       d ( X T A ) d X = ( d X T d X ) A + X T ( d A d X ) = I A + X T 0 = A \frac{d(X^TA)}{dX} =(\frac{dX^T}{dX})A + X^T(\frac{dA}{dX}) = IA + X^T0 = A dXd(XTA)=(dXdXT)A+XT(dXdA)=IA+XT0=A

   

  1. 标量 y y y 对矩阵 X X X 的导数:
    类似标量 y y y 对列向量 X X X 的导数,
    y y y 对每个 X X X 的元素求偏导,不用转置。

       d y d X = [ D y D x i j ] \frac{dy}{dX} = [\frac{Dy}{Dx_{ij}} ] dXdy=[DxijDy]

  重要结论:

       y = U T X V = Σ Σ u i x i j v j y = U^TXV= ΣΣu_{i}x_{ij}v_{j} y=UTXV=ΣΣuixijvj  于是    d y d X = [ u i v j ] = U V T \frac{dy}{dX} = [u_iv_j] =UV^T dXdy=[uivj]=UVT

       y = U T X T X U y = U^TX^TXU y=UTXTXU  则   d y d X = 2 X U U T \frac{dy}{dX} = 2XUU^T dXdy=2XUUT

       y = ( X U − V ) T ( X U − V ) y =(XU-V)^T(XU-V) y=(XUV)T(XUV)  则

       d y d X = d ( U T X T X U − 2 V T X U + V T V ) d X \frac{dy}{dX} = \frac{d(U^TX^TXU - 2V^TXU + V^TV)}{dX} dXdy=dXd(UTXTXU2VTXU+VTV)

         = 2 X U U T − 2 V U T + 0 = 2 ( X U − V ) U T = 2XUU^T - 2VU^T +0 = 2(XU-V)U^T =2XUUT2VUT+0=2(XUV)UT

   

  1. 矩阵 Y Y Y 对矩阵 X X X 的导数:
    Y Y Y 的每个元素对 X X X 求导,然后排在一起形成超级矩阵。

   

  1. 乘积的导数

       d ( f ∗ g ) d x = ( d f T d x ) g + ( d g d x ) f T \frac{d(f*g)}{dx}=(\frac{df^T}{dx})g+(\frac{dg}{dx})f^T dxd(fg)=(dxdfT)g+(dxdg)fT

  结论

       d ( x T A x ) = ( d ( x T T ) d x ) A x + ( d ( A x ) d x ) ( x T T ) = A x + A T x d(x^TAx)=(\frac{d(x^{TT})}{dx})Ax+(\frac{d(Ax)}{dx})(x^{TT})=Ax+A^Tx d(xTAx)=(dxd(xTT))Ax+(dxd(Ax))(xTT)=Ax+ATx

     (注意: T T ^{TT} TT是表示两次转置)

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值