动手深度学习矩阵求导

目录

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

二. 矩阵求导的本质

三. 矩阵求导结果的布局

函数是实值标量

变元是向量

1.1 行向量偏导形式

1.2 梯度向量形式

变元是矩阵 

2.1 行向量偏导形式(将矩阵变元转为向量变元)

 2.2雅克比矩阵

2.3 梯度向量形式 (将矩阵变元转为向量变元)

 2.4 梯度矩阵形式

函数:矩阵 

变元:矩阵

3.1雅克比矩阵 

3.2 梯度矩阵形式 

总结: 

          /*上面主要是定义,下面是实际使用时的计算*/

一. 矩阵的迹

 1、定义

2、一些性质

2.1 标量的迹

2.2 线性法则

2.3 转置 

2.4 乘积的迹的本质

2.5 交换律 

二. 微分与全微分 

多元函数全微分

三. 矩阵的微分

(一)函数:实值

(1)变元:向量

(2)变元:矩阵

​编辑 (二)函数:矩阵,变元:矩阵

四. 计算法则

a. 常数矩阵的矩阵微分

b. 线性法则

c. 乘积法则 

d. 转置法则

有3个公式

(一)夹层饼

 (二)行列式

(三)逆矩阵  

 具体使用


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

动手深度学习矩阵求导_第1张图片

先上一个最简答的:f与x均是标量

对比一下最难的,f与x均是矩阵

动手深度学习矩阵求导_第2张图片 函数矩阵不变,自变量矩阵貌似降成标量了

二. 矩阵求导的本质

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

三. 矩阵求导结果的布局

直观上看:

分子布局,就是分子是列向量形式,分母是行向量形式,如 (3) 式中f是列向量形式,分母是行向量形式。如果这里的 function 是实向量函数 f2×1 的话,结果就是 2×3 的矩阵了:

动手深度学习矩阵求导_第3张图片

分母布局,就是分母是列向量形式,分子是行向量形式,如 (4) 式f是行向量形式,分母是列向量形式。如果这里的 function 是实向量函数 f2×1 的话,结果就是 3×2 的矩阵了:

动手深度学习矩阵求导_第4张图片

貌似最后形状都是由列向量的行数 * 行向量的列数(注意是转置后列数)  

函数是实值标量

变元是向量

 

1.1 行向量偏导形式

1.2 梯度向量形式

动手深度学习矩阵求导_第5张图片

变元是矩阵 

动手深度学习矩阵求导_第6张图片

 注意就是一个列向量

2.1 行向量偏导形式(将矩阵变元转为向量变元)

 动手深度学习矩阵求导_第7张图片

把(5)式列在下面避免影响观感

动手深度学习矩阵求导_第8张图片

 2.2雅克比矩阵

动手深度学习矩阵求导_第9张图片

2.3 梯度向量形式 (将矩阵变元转为向量变元)

动手深度学习矩阵求导_第10张图片

同样列出6式

 2.4 梯度矩阵形式

动手深度学习矩阵求导_第11张图片

函数:矩阵 

变元:矩阵

3.1雅克比矩阵 

动手深度学习矩阵求导_第12张图片

3式

动手深度学习矩阵求导_第13张图片

3.2 梯度矩阵形式 

动手深度学习矩阵求导_第14张图片

4式

动手深度学习矩阵求导_第15张图片

总结: 

谁转置了,就是另一方的布局。另一方的行就优先在前做行,他自己的行就做列。分子转置了,就是分母布局;分母转置了,就是分子布局。

动手深度学习矩阵求导_第16张图片

          /*上面主要是定义,下面是实际使用时的计算*/

一. 矩阵的迹

 1、定义

动手深度学习矩阵求导_第17张图片

2、一些性质

2.1 标量的迹

2.2 线性法则

动手深度学习矩阵求导_第18张图片

2.3 转置 

动手深度学习矩阵求导_第19张图片

2.4 乘积的迹的本质

动手深度学习矩阵求导_第20张图片

2.5 交换律 

动手深度学习矩阵求导_第21张图片

二. 微分与全微分 

多元函数全微分

普通函数:

动手深度学习矩阵求导_第22张图片

 复合函数:

动手深度学习矩阵求导_第23张图片

三. 矩阵的微分

(一)函数:实值

(1)变元:向量

动手深度学习矩阵求导_第24张图片

动手深度学习矩阵求导_第25张图片

 2式:标量的迹就是自己

(2)变元:矩阵

动手深度学习矩阵求导_第26张图片

动手深度学习矩阵求导_第27张图片

6式:

动手深度学习矩阵求导_第28张图片 (二)函数:矩阵,变元:矩阵

动手深度学习矩阵求导_第29张图片

动手深度学习矩阵求导_第30张图片

四. 计算法则

a. 常数矩阵的矩阵微分

b. 线性法则

 动手深度学习矩阵求导_第31张图片

c. 乘积法则 

动手深度学习矩阵求导_第32张图片

上面就是每次就对其中一个矩阵求微分,其他不求,相对位置不变 

d. 转置法则

 动手深度学习矩阵求导_第33张图片

讲了这么多,为什么要用矩阵微分求导呢

动手深度学习矩阵求导_第34张图片

 再注意一下,防止前面的忘了,求两个矩阵相乘的迹就是两个矩阵对应位置元素相乘再求和动手深度学习矩阵求导_第35张图片

动手深度学习矩阵求导_第36张图片 

动手深度学习矩阵求导_第37张图片 

动手深度学习矩阵求导_第38张图片 动手深度学习矩阵求导_第39张图片动手深度学习矩阵求导_第40张图片

 所以目标最终就是写成24式的形式

有3个公式

(一)夹层饼

动手深度学习矩阵求导_第41张图片

 (二)行列式

动手深度学习矩阵求导_第42张图片

(三)逆矩阵  

动手深度学习矩阵求导_第43张图片

 具体使用

动手深度学习矩阵求导_第44张图片

 

 

参考文章:

矩阵求导公式的数学推导(矩阵求导——基础篇) - Iterator的文章 - 知乎

矩阵求导公式的数学推导(矩阵求导——进阶篇) - Iterator的文章 - 知乎

你可能感兴趣的:(动手深度学习,深度学习)