Math-矩阵求导计算


经典好文

参考学习1

参考学习2

参考学习3

常用矩阵求导

1、向量对向量求导

2、标量对向量求导

3、向量对标量求导

矩阵求导的本质篇

注1:看懂本文只需了解本科阶段高等数学的偏导如何求、本科阶段线性代数的矩阵的定义,无需任何其他知识。

注2:本文若无特殊说明,则约定向量均为列向量,

注3:本文仅考虑实数,不考虑复数。

一. 函数与标量、向量、矩阵

考虑一个函数

针对 的类型、 的类型,我们可以将这个函数 分为不同的种类。

1、 是一个标量

我们称 是一个实值标量函数。用细体小写字母 表示。

1.1 是一个标量

我们称 变元标量。用细体小写字母 表示。

例1:

1.2 是一个向量

我们称 变元向量。粗体小写字母 表示。

例2:

1.3 是一个矩阵

我们称 变元矩阵。粗体大写字母 表示。

例3:

2、 是一个向量

我们称 是一个实向量函数 。用粗体小写字母 表示。

含义 是由若干个 组成的一个向量

同样地,变元分三种:标量、向量、矩阵。这里的符号仍与上面相同。

2.1 标量变元

例4:

2.2 向量变元

例5:

2.3 矩阵变元

例6:

3、 是一个矩阵

我们称 是一个实矩阵函数 。用粗体大写字母 表示。

含义 是由若干个 组成的一个矩阵

同样地,变元分三种:标量、向量、矩阵。这里的符号仍与上面相同。

3.1 标量变元

例7:

3.2 向量变元

例8:

3.3 矩阵变元

例9:

4、总结

函数与标量、向量、矩阵

二. 矩阵求导的本质

我们在高等数学中学过,对于一个多元函数

例10:

我们可以将 偏导分别求出来,即:

矩阵求导也是一样的,本质就是 中的每个 分别对变元中的每个元素逐个求偏导,只不过写成了向量、矩阵形式而已。

对于 ,我们把得出的3个结果写成列向量形式:

一个矩阵求导以列向量形式展开的雏形就出现了。

当然我们也可以以行向量形式展开:

所以,如果 中有 ,变元中有 个元素,那么,每个 对变元中的每个元素逐个求偏导后,我们就会产生 个结果。

这就是矩阵求导的本质。

至于这 个结果的布局,是写成行向量,还是写成列向量,还是写成矩阵,就是我们接下来要讨论的事情。

三. 矩阵求导结果的布局

不严谨地说,从直观上看:

分子布局,就是分子是列向量形式,分母是行向量形式,如 式。如果这里的 实向量函数 的话,结果就是 的矩阵了:

分母布局,就是分母是列向量形式,分子是行向量形式,如 式。如果这里的 实向量函数 的话,结果就是 的矩阵了:

直观上理解了之后,我们针对不同类型的 ,不同类型的变元,给出严谨的布局说明。(这里不讨论标量变元的实值标量函数 ,因为结果就是一个元素嘛~)

1、向量变元的实值标量函数 ,

1.1 行向量偏导形式(又称行偏导向量形式)

1.2 梯度向量形式(又称列向量偏导形式、列偏导向量形式)

这两种形式互为转置

2、矩阵变元的实值标量函数 ,

先介绍一个符号 ,作用是将矩阵 按列堆栈来向量化。

解释一下,就是把矩阵 的第 列,第 列,直到第 列取出来,然后按顺序组成一个列向量,即:

2.1 行向量偏导形式(又称行偏导向量形式)

即先把矩阵变元 向量化,转换成向量变元,再对该向量变元使用 式:

2.2 矩阵形式

即先把矩阵变元 进行转置,再对转置后每个位置的元素逐个求偏导,结果布局和转置布局一样

2.3 梯度向量形式(又称列向量偏导形式、列偏导向量形式)

即先把矩阵变元 向量化,转换成向量变元,再对该变元使用 式:

2.4 梯度矩阵形式

直接对原矩阵变元 每个位置的元素逐个求偏导,结果布局和原矩阵布局一样

2.5 一些发现

2.5.1 转置

式与 互为转置 式与 互为转置

2.5.2 相等

矩阵变元 本身就是一个列向量 时, 式、 式、 相等; 式、 式、 相等;当然,前三个式子与后三个式子互为转置

这一发现说明,对于向量变元的实值标量函数 , ,结果布局本质上有两种形式,一种是 矩阵(已经成行向量了)形式,一种是梯度矩阵(已经成列向量了)形式。两种形式互为转置

3、矩阵变元的实矩阵函数 ,

3.1 矩阵形式

即先把矩阵变元 向量化,转换成向量变元:

再把实矩阵函数 向量化,转换成实向量函数:

这样,我们就把一个矩阵变元的实矩阵函数 ,转换成了向量变元的实向量函数 。接着,对照 式写出结果布局为 的矩阵:

3.2 梯度矩阵形式

即先把矩阵变元 向量化,转换成向量变元:

再把实矩阵函数 向量化,转换成实向量函数:

这样,我们就把一个矩阵变元的实矩阵函数 ,转换成了向量变元的实向量函数 。接着,对照 式写出结果布局为 的矩阵:

3.3 一些发现

3.3.1 转置

式与 互为转置

3.3.2 相等1

实矩阵函数 本身是一个实值标量函数 时, 式、相等; 式、 相等;当然,前两个式子与后两个式子互为转置

这一发现说明,对于矩阵变元的实值标量函数 , ,结果布局本质上有四种形式,第一种是 矩阵(已经成行向量了)形式,第二种是梯度矩阵(已经成列向量了)形式,第三种是 矩阵(就是矩阵)形式,第四种是梯度矩阵(就是矩阵)形式。第一种和第二种形式互为转置,第三种和第四种形式互为转置

3.3.3 相等2

矩阵变元 本身就是一个列向量 时, 同时实矩阵函数 本身是一个实值标量函数 时, 式、 式、 式、 相等; 式、 式、 式、 相等;当然,前四个式子与后四个式子互为转置

这一发现仍说明,对于向量变元的实值标量函数 , ,结果布局本质上有两种形式,一种是 矩阵(已经成行向量了)形式,一种是梯度矩阵(已经成列向量了)形式。两种形式互为转置

4、矩阵变元的实向量函数 向量变元的实向量函数 向量变元的实矩阵函数

这三个都可以看做是矩阵变元的实矩阵函数 ,可使用3、进行计算(因为向量就是一种特殊的矩阵)。

四. 分子布局、分母布局的本质

总而言之,对矩阵求导,无非就是分子的转置、向量化分母的转置、向量化,它们的各种组合而已。

结合上述知识,我们总结:

1、分子布局的本质:分子是标量列向量、矩阵向量化后的列向量;分母是标量、列向量转置后的行向量、矩阵的转置矩阵、矩阵向量化后的列向量转置后的行向量。包含 式、 式、 式、 式。

2、分母布局的本质:分子是标量、列向量转置后的行向量、矩阵向量化后的列向量转置后的行向量;分母是标量列向量矩阵自己、矩阵向量化后的列向量。包含 式、 式、 式、 式。

思考一下,其实我们可以再简洁一些:谁转置了,就是另一方的布局。分子转置了,就是分母布局;分母转置了,就是分子布局。

最终,我们列一个表格,总结分子布局、分子布局的本质:

分子布局、分子布局的本质

矩阵求导的基础篇

一. 向量变元的实值标量函数

我们使用梯度向量形式,即

1、四个法则

1.1 常数求导**:**

与一元函数常数求导相同:结果为零向量

其中, 为常数。

证明:

证毕。

1.2 线性法则

与一元函数求导线性法则相同:相加再求导等于求导再相加,常数提外面

其中, 为常数。

证明:

证毕。

1.3 乘积法则

与一元函数求导乘积法则相同:前导后不导 前不导后导

证明:

证毕。

1.4 商法则

与一元函数求导商法则相同:(上导下不导 上不导下导)除以(下的平方):

其中,

证明:

证毕。

2、几个公式

2.1

其中, 为常数向量,

证明:

证毕。

2.2

证明:

证毕。

2.3

其中, 是常数矩阵,

证明:

证毕。

2.4

其中, 为常数向量,

证明:

因为 ,所以有

又因为 常数矩阵,由 式得:

证毕。

二. 矩阵变元的实值标量函数

我们使用梯度矩阵形式,即

1、四个法则

1.1 常数求导

与一元函数常数求导相同:结果为零矩阵

其中, 为常数。

证明:

证毕。

1.2 线性法则

与一元函数求导线性法则相同:相加再求导等于求导再相加,常数提外面

其中, 为常数。

证明:

证毕。

1.3 乘积法则

与一元函数求导乘积法则相同:前导后不导 前不导后导

证明:

证毕。

1.4 商法则

与一元函数求导商法则相同:(上导下不导 上不导下导)除以(下的平方):

其中,

证明:

证毕。

2、几个公式

2.1

其中, 为常数向量,

证明(右击公式,选择在新标签页中打开图片,公式就可以放大了~)

证毕。

2.2

其中, 为常数向量,

证明:

因为标量的转置等于标量自己,所以有

式得:

证毕。

2.3

其中, 为常数向量,

证明

证毕。

2.4

其中, 为常数向量,

证明:

我们来看一下 式:

再来看一下 式:

正如本质篇_三._2.5.1 总结的那样,这两个结果互为转置,即:

所以,我们把 式中的分母的矩阵变元写为转置,就有:

对于 式,我们将其写为如下形式:

然后对 式使用 式,得:

证毕。

矩阵求导的进阶篇

一. 矩阵的迹

1、定义

方阵 的主对角线元素之和就叫矩阵 的迹(trace),记作 ,即:

的迹为:

注意:只有方阵才有迹。

2、一些性质(很重要,下文需要用到,建议熟记

2.1 标量的迹

对于一个标量 ,可以看成是 的矩阵,它的迹就是它自己。

2.2 线性法则

相加再求迹等于求迹再相加,标量提外面

其中, 为标量。

证明:

证毕。

2.3 转置

转置的迹等于原矩阵的迹

证明:

因为转置不会改变主对角线的元素,故成立。

证毕。

2.4 乘积的迹的本质

对于两个阶数都是 的矩阵 其中一个矩阵乘以(左乘右乘都可以)另一个矩阵的转置迹,本质是 两个矩阵对应位置的元素相乘并相加,可以理解为向量的点积在矩阵上的推广,即:

证明:

证毕。

2.5 交换律

矩阵乘积位置互换,迹不变


其中,

证明:

看做是 的转置。由乘积的迹的本质,即 式可知,无论乘积怎么交换顺序, 对应位置的元素相乘并相加,永远是不变的。

证毕。

2.6 更多矩阵的交换律

其中,

证明:

把两个矩阵的乘积看做一个矩阵,和另外的一个矩阵应用交换律即可。

证毕。

2.7 熟练使用

其中,

证明:

第一个和第二个是交换律,第二个和三个是转置,第三个和第四个是交换律。

证毕。

二. 微分与全微分

我们先来复习一下本科阶段所学的高等数学中的微分与全微分。

1、一元函数的微分

1.1 普通函数的微分

可导,则其微分为:

1.2 复合函数的微分

,均可导,则 的微分为:

2、多元函数的全微分

2.1 普通函数的全微分

可微,则其全微分为:

2.2 复合函数的全微分

, 可导, 可微,则其全微分为:

举个例子:

,则 的全微分为:

3、微分/全微分的法则

3.1 常数的微分

其中, 为常数。

3.2 线性法则

相加再微分等于微分再相加,常数提外面

其中, 一元函数 或多元函数 为常数。

3.3 乘积法则

前微后不微 + 前不微后微

其中, 一元函数 或多元函数

3.4 商法则

(上微下不微 上不微下微)除以(下的平方)

其中, 一元函数 或多元函数

三. 矩阵的微分

1、向量变元的实值标量函数

它其实就是多元函数,设其可微,则它的全微分,即 式:

结果是标量,由 式可知, 式可以写成迹的形式,即:

2、矩阵变元的实值标量函数

它也是多元函数,设其可微,则它的全微分,仍是 式:

我们从这个结果中发现,它其实就是矩阵 与矩阵 对应位置的元素相乘并相加, 式可知, 式也可以写成迹的形式,即:

3、矩阵变元的实矩阵函数

本质篇_*一._*3_3.3 可知,矩阵变元的实矩阵函数,它的每个元素其实就是一个矩阵变元的实值标量函数

我们定义:设 可微,则矩阵变元的实矩阵函数的矩阵微分,就是对每个位置的元素 求全微分,排列布局不变,即:

3.1 四个法则(很重要,下文需要用到,建议熟记

a. 常数矩阵的矩阵微分

证明:

的每个元素都是常数,由 得,每个元素的微分是

证毕。

b. 线性法则

相加再微分等于微分再相加,常数提外面

其中, 为常数。

证明:

的每个元素都是 ,由 式可知,每个元素的全微分是

证毕。

c. 乘积法则

前微后不微 + 前不微后微

其中,

注意:此时的微分是矩阵不能交换乘积的左右顺序。

证明:

的每个元素都是 ,由 式、 式可知,每个元素的全微分是

结果左边的求和式,就是 的每个元素,结果右边的求和式,就是 的每个元素。

证毕。

由此,很容易得到更多个乘积的法则:

证明:

证毕。

d. 转置法则

转置的矩阵微分等于矩阵微分的转置

证明:

证毕。

3.2 为什么要使用矩阵微分求导

自己就是矩阵变元为 的实矩阵函数,它的每个元素是 ,每个元素的全微分是

因此, 的矩阵微分是:

向量 的矩阵微分是:

于是,我们刚刚讲到的矩阵微分四个法则,对于 也是适用的。

我们现在回到矩阵变元的实值标量函数的全微分,即 式:

观察 式的结果,发现在 中,左边的矩阵,其实就是 式:

而右边的矩阵,其实就是 式:

因此,矩阵变元实值标量函数全微分, 式,可以写成:

别忘了我们的目标是什么,其实就是要求 。所以,只要我们可以把一个矩阵变元的实值标量函数的全微分写成 式,我们就找到了矩阵求导的结果。(已经有人证明,这样的结果是唯一的。即若 ,则 ) )

对于向量变元的实值标量函数的全微分,即 式,同样可以写成:

而由本质篇_三._2.5_2.5.2 指出的,当矩阵变元 本身就是一个列向量

同时,由 式、 式,当矩阵 本身是列向量 时,也有

所以,矩阵变元或向量变元的实值标量函数的矩阵求导的结果,都可以通过 式得到:

那么,我们该如何写成形如 式的结果呢,别急,让我们先给出 个你应该记住的公式(以后就直接用了)。

3.2.1 夹层饼

其中, 是常数矩阵。

证明:

由乘积法则 式得:

由常数矩阵微分 式得:

证毕。

可以代入其他任意的矩阵函数:

3.2.2 行列式

其中,

证明:

首先明确,行列式是一个实值标量函数,故可以使用 式。

我们知道,行列式可以按照一行展开,即一行中每个元素乘以他的代数余子式然后求和。

我们按照元素 所在的第 行展开:

因此,行列式对元素 的偏导,即为该元素对应的代数余子式。

因此,行列式对矩阵求导的结果为:

这个结果其实就是伴随矩阵

又因为伴随矩阵和逆矩阵的关系:

代入 式得:

又因为行列式是标量,由 式,可以提到迹的外面,得:

证毕。

可以代入其他任意的矩阵函数:

3.2.3 逆矩阵

其中,

证明:

因为

而常数矩阵微分为 ,两边同时取矩阵微分得:

等式两边左乘 即得到结果。

证毕。

可以代入其他任意的矩阵函数:

3.3 如何使用矩阵微分求导

对于实值标量函数

所以有

如果实值标量函数本身就是某个矩阵函数 的迹,如 ,则由全微分的线性法则 式,得:

我们以 个例子来非常非常详细地说明如何使用矩阵微分求导,例子的结论需要记忆,会推过程才是最重要的,用的时候推一下就好了。

3.3.1 例子1

证明:

第一步:写成 式的形式

第二步:使用矩阵微分法则 式~ 式,迹的若干性质 式~ 式,六个基础公式 式~ 式,将 式化简成形如 式的形式

式得:

式得:

式得:

式得:

式, 式得:

式得:

第三步:得出结果

证毕。

3.3.2 例子2

第一步:写成 式的形式

第二步:使用矩阵微分法则 式~ 式,迹的若干性质 式~ 式,六个基础公式 式~ 式,将 式化简成形如 式的形式

式得:

式得:

式得:

式、 式得:

式得:

第三步:得出结果

3.3.3 例子3

其中,

第一步:写成 式的形式

第二步:使用矩阵微分法则 式~ 式,迹的若干性质 式~ 式,六个基础公式 式~ 式,将 式化简成形如 式的形式

我们发现,这是一个复合函数的全微分 是多元函数, 是一元函数,故由 式中的前两个等号,令 ,则

式得:

标量的迹还是标量,由 式得:

第三步:得出结果

3.3.4 例子4

其中,

第一步:写成 式的形式,由 式得:

第二步:使用矩阵微分法则 式~ 式,迹的若干性质 式~ 式,六个基础公式 式~ 式,将 式化简成形如 式的形式

式得:

式得:

式得:

式得:

第三步:得出结果

3.3.5 例子5

其中, 为常数矩阵,

第一步:写成 式的形式

第二步:使用矩阵微分法则 式~ 式,迹的若干性质 式~ 式,六个基础公式 式~ 式,将 式化简成形如 式的形式

式得:

式得:

式得:

式得:

第三步:得出结果

3.3.6 例子6

第一步:写成 式的形式

我们知道,对于 阶矩阵 ,有

因此,有

所以

第二步:使用矩阵微分法则 式~ 式,迹的若干性质 式~ 式,六个基础公式 式~ 式,将 式化简成形如 式的形式

我们发现,这是一个复合函数的全微分 是多元函数, 是一元函数,故由 式中的前两个等号,令 ,则

式得:

标量的迹还是标量,由 式得:

式得:

第三步:得出结果


文章作者: 杰克成
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 杰克成 !
评论
  目录