矩阵求导法则与性质

介绍矩阵求导法则,以及常用的求导公式、迹函数、行列式求导结论

矩阵求导法则

矩阵求导应该分为标量求导、向量求导、矩阵求导三个方面来介绍,公式繁多,但仔细看看其实是有规律可循的。

标量求导

无论是矩阵、向量对标量求导,或者是标量对矩阵、向量求导,其结论都是一样的:等价于对矩阵(向量)的每个分量求导,并且保持维数不变。

例如,我们可以计算标量对向量求导:

y 为一个元素, x T = [ x 1 . . . x q ] q 维行向量,则:

y x T = [ y x 1 . . . y x q ]

向量求导

对于向量求导,我们可以先将向量看做一个标量,然后使用标量求导法则,最后将向量形式化为标量进行。

例如,我们可以计算行向量对列向量求导:

y T = [ y 1 . . . y n ] n 维行向量, x = [ x 1 , . . . , x p ] p 维列向量,则:

y T x = [ y 1 x . . . y n x ] = [ y 1 x 1 . . . y n x 1 . . . . . . . . . y 1 x p . . . y n x p ]

矩阵求导

与向量求导类似,先将矩阵化当做一个标量,再使用标量对矩阵的运算进行。

例如,我们可以计算矩阵对列向量求导:

Y = [ y 11 . . . y 1 n . . . . . . . . . y m 1 . . . y m n ] m × n 矩阵, x = [ x 1 , . . . , x p ] p 维列向量,则:

Y x = [ Y x 1 , . . . , Y x p ]

矩阵微积分

常见求导性质

实值函数相对于实向量的梯度

f ( x ) = x = [ x 1 , . . . , x n ] T

f ( x ) x T = x x T = I n × n

( f ( x ) ) T x = x T x = I n × n

f ( x ) x = x x = v e c ( I n × n )

( f ( x ) ) T x T = x T x T = v e c ( I n × n ) T

其中, v e c 表示向量化矩阵,按列将矩阵表示为向量,具体可见Wikipedia。

常见性质

  1. f ( x ) = A x ,则

    f ( x ) x T = ( A x ) x T = A

  2. f ( x ) = x T A x ,则

    f ( x ) x = ( x T A x ) x = A x + A T x

  3. f ( x ) = a T x ,则

    a T x x = x T a x = a

  4. f ( x ) = x T A y ,则

    x T A y x = A y

    x T A y A = x y T

  5. d f ( X ) = t r ( ( f ( X ) X ) T d X )

  6. 矩阵微分也满足线性法则、乘积法则。

  7. 矩阵的逆的微分

    d ( X 1 ) = X 1 ( d X ) X 1

迹函数

迹函数相对于矩阵的梯度

( t r ( Z Z T ) ) Z = ( t r ( Z T Z ) ) Z = 2 Z

矩阵微分算子和迹算子的可交换性

d ( t r ( X ) ) = t r ( d ( X ) ) = i = 1 n d x i i

常见性质

  1. t r ( A ) A = I n × n

  2. t r ( A B ) A = B T

  3. d ( t r ( A X B ) ) = t r ( A ( d X ) B ) = t r ( B A ( d x ) )

    t r ( A X B ) X = ( B A ) T = A T B T

  4. d ( t r ( A X 1 B ) ) = t r ( A ( d X 1 ) B ) = t r ( A X 1 ( d X ) X 1 B ) = t r ( X 1 B A X 1 d X )

    t r ( A X 1 B ) X = ( X 1 B A X 1 ) T = X T A T B T X T

  5. t r ( X T X ) X = 2 X

行列式

行列式相对于矩阵的梯度

| Z | Z = | Z | ( Z 1 ) T

微分形式

d | X | = t r ( | X | X 1 d X )

常见性质

  1. d | A X B | = t r ( | A X B | ( A X B ) 1 d ( A X B ) ) = t r ( | A X B | ( A X B ) 1 A ( d X ) B ) = t r ( | A X B | B ( A X B ) 1 A ( d X ) )

    | A X B | X = | A X B | A T ( B T X T A T ) 1 B T

  2. | X | X = | X | X T

  3. | X X T | X = 2 | X X T | ( X X T ) 1 X

reference

  1. 矩阵的导数与迹

猜你喜欢

转载自blog.csdn.net/crazy_scott/article/details/80557814
今日推荐