矩阵求导总结

article/2025/9/15 21:25:41

  参考教材可在谷歌中搜索matrix cookbook,如下图所示:
在这里插入图片描述

  数据按照不同的维度,可以划分为标量、向量、矩阵。所以矩阵求导可以划分为三个组,其中每组三个,共九种情况:

  1. ∂ 标量 ∂ 标量 \frac{\partial 标量}{\partial标量} 标量标量 ∂ 标量 ∂ 向量 \frac{\partial 标量}{\partial向量} 向量标量 ∂ 标量 ∂ 矩阵 \frac{\partial 标量}{\partial矩阵} 矩阵标量

  2. ∂ 向量 ∂ 标量 \frac{\partial 向量}{\partial标量} 标量向量 ∂ 向量 ∂ 向量 \frac{\partial 向量}{\partial向量} 向量向量 ∂ 向量 ∂ 矩阵 \frac{\partial 向量}{\partial矩阵} 矩阵向量

  3. ∂ 矩阵 ∂ 标量 \frac{\partial 矩阵}{\partial标量} 标量矩阵 ∂ 矩阵 ∂ 向量 \frac{\partial 矩阵}{\partial向量} 向量矩阵 ∂ 矩阵 ∂ 矩阵 \frac{\partial 矩阵}{\partial矩阵} 矩阵矩阵

  分子指的是函数空间,在某些情况下为单个函数,分母指的是基向量,尤其是向量和标量的时候最容易理解。

1.分子为标量

1.1 ∂ 标量 ∂ 标量 \frac{\partial 标量}{\partial标量} 标量标量

  此时分子为单个函数,而基变量只有一个,所以结果也是标量。这种情况最简单。

1.2 ∂ 标量 ∂ 向量 \frac{\partial 标量}{\partial向量} 向量标量

  此时分子为单个函数,而基变量有多个,结果是向量。本质上就是偏导数。如果分母为行向量,则结果就为行向量。如果分母为列向量,则结果为列向量。

1.3 ∂ 标量 ∂ 矩阵 \frac{\partial 标量}{\partial矩阵} 矩阵标量

  此时分子为单个函数,而基变量为矩阵,结果是矩阵。具体含义不明。

2.分子为向量

2.1 ∂ 向量 ∂ 标量 \frac{\partial 向量}{\partial标量} 标量向量

  此时分子为函数空间,而基变量只有一个,所以结果也是向量

2.2 ∂ 向量 ∂ 向量 \frac{\partial 向量}{\partial向量} 向量向量

  此时分子为函数空间,而基变量有多个,所以结果是矩阵。可以看作是标量对向量求导的扩展。这里所指的是向量和向量的求导,根据Jacobi矩阵的定义,默认指的是列向量对行向量求导。

2.3 ∂ 向量 ∂ 矩阵 \frac{\partial 向量}{\partial矩阵} 矩阵向量

  这里是标量对矩阵求导的扩展。但是具体物理意义不明。

3.分子为矩阵

3.1 ∂ 矩阵 ∂ 标量 \frac{\partial 矩阵}{\partial标量} 标量矩阵

  此时分子为矩阵函数空间,而基变量只有一个,所以结果也是矩阵

3.2 ∂ 矩阵 ∂ 向量 \frac{\partial 矩阵}{\partial向量} 向量矩阵

  此时分子为矩阵函数空间,而基变量有多个,所以结果是矩阵。可以看做是向量对向量求导的扩展。

3.3 ∂ 矩阵 ∂ 矩阵 \frac{\partial 矩阵}{\partial矩阵} 矩阵矩阵

  这里是向量对矩阵求导的扩展。但是具体物理意义不明。

下载文档为:https://download.csdn.net/download/herosunly/11088311

矩阵运算验证网址为:http://www.matrixcalculus.org/

4. 常用求导公式

  求导不仅要满足链式法则,也要满足矩阵的乘法准则。

∂ ∂ w ( A ⋅ w ) = A \frac{\partial{}}{\partial w}(A \cdot w)=A w(Aw)=A

在这里插入图片描述
∂ ∂ w ( w T ⋅ A ) = A T \frac{\partial{}}{\partial w}(w^T \cdot A)=A^T w(wTA)=AT
在这里插入图片描述
∂ ∂ w ( w T ⋅ A ) = A T ≠ A \frac{\partial{}}{\partial w}(w^T \cdot A)=A^T\neq A w(wTA)=AT=A,为什么不等于A,而是等于 A T A^T AT呢?

∂ ∂ w ( w T ⋅ A ⋅ w ) = A ⋅ w + A T ⋅ w \frac{\partial{}}{\partial w}(w^T \cdot A \cdot w)=A \cdot w+A^T \cdot w w(wTAw)=Aw+ATw

根据2.2的内容对上式进行简单的推导,如下所示:


http://chatgpt.dhexx.cn/article/OKvgp6ne.shtml

相关文章

矩阵求导方法

矩阵求导方法 在机器学习过程中,我们经常会对矩阵进行相关的操作,现对矩阵求导方法进行概况与推导。 首先总结矩阵求导的本质,即矩阵A中每个元素对矩阵B中每个元素求导。我们先从宏观上理解这个公式,即从求导后元素的个数来理解…

矩阵求导

一、矩阵和向量求导 参考地址:https://cloud.tencent.com/developer/article/1668818 求导公式大全:https://cloud.tencent.com/developer/article/1551901 机器学习中最常用的矩阵求导有:标量对矩阵的求导,矩阵对标量求导以…

矩阵求导、几种重要的矩阵及常用的矩阵求导公式

一、矩阵求导 一般来讲,我们约定x(x1,x2,...xN)Tx(x1,x2,...xN)T,这是分母布局。常见的矩阵求导方式有:向量对向量求导,标量对向量求导,向量对标量求导。 1、向量对向量求导 2、标量对向量求导 3、向量对标量求导 其他…

矩阵求导(本质、原理与推导)详解

矩阵求导是机器学习与深度学习的基础,它是高等数学、线性代数知识的综合,并推动了概率论与数理统计向多元统计的发展。在一般的线性代数的课程中,很少会提到矩阵导数的概念;而且在网上寻找矩阵求导的知识点,也是五花八…

矩阵求导常用公式

矩阵求导常用公式 1 引言2 向量的导数2.1 向量对标量求导 Vector-by-scalar2.2 标量对向量求导 Scalar-by-vector2.3 向量对向量求导 Vector-by-vector 3 矩阵的导数3.1 矩阵对标量求导 Matrix-by-scalar3.2 标量对矩阵求导 Scalar-by-matrix 4 常用求导公式4.1 向量对向量求导…

矩阵的求导

目录 1 布局(Layout) 1.1 矩阵向量求导引入 1.2 矩阵向量求导定义 1.3 矩阵向量求导布局 1.4 分母布局的另一种求解方法 1.5 总结 2 基本的求导规则 2.1 向量对标量求导(相对于数量变量的微分,即自变量是数量变量) 2.1.1 定义 2.1.…

JAVA—IO流详解

1. 流概述 1.1. 什么是IO IO:Input/Output即输入&输出,也称之为流(河流,水流),指的是数据从一个地点到另一个地点过程;对于计算机来说文件的拷贝过程,文件的编写保存,显示功能…

Java高级特性-IO流

文章目录 前言一、什么是IO流二、字节流-输入输出三、字符流 - 输入输出四、复制文件五、总结 前言 在Java开发中我们经常会涉及到文件方面的操作,不论是网站的上传文件,还是服务器提供给客户端下载文件,这些都需要我们来处理,那J…

java IO流之BufferedReader和BufferedWriter

前言: 👏作者简介:我是笑霸final,一名热爱技术的在校学生。 📝个人主页:笑霸final的主页 📕系列专栏::本文写在java专栏 📧如果文章知识点有错误的地方&#…

IO流详解

文章目录 IO流IO流分类FileInputStream输入流框架相对路径读取过程详解available()skip(long n) FileOutputStream输入流框架 FileReaderFileWriter文件复制FileInputStream 、FileOutputStreamFileReader 、FileWriter 缓冲流BufferedReader 数据专属流DataOutputStreamDataIn…

java中的io流

文章目录 1. IO流,什么是IO?2.IO流的分类?3.IO流都在java.io.*包下4.java IO流有四个家族5.java.io包下需要掌握的流有16个6.FileInputStream的1个字节读入法7.FileInputStream的byte[]读入法8.FileInputStream的其他方法9.FileOutputStream用…

Java读写IO流详解

一、IO流要明确的几点 (1)明确要操作的数据是数据源还是数据目的(是读还是写) 源/读 InputStream Reader 目的/写 OutputStream Writer (2)明确操作设备上的数据是字节还是文本 源/读 字节&…

python IO流

python io流 总的来说就说计算机输入和输出的操作,一般来说是内存与磁盘之间的输入输出 一种虚拟世界的物质。 IO流操作是一种持久化操作,是将数据持久化在磁盘上。 这里用了open函数 函数的第一个引号内放的是运行的python文件目录下的一个名为1.txt的…

IO流的概念

IO流的概念 IO就是Input和Output的简写,也就是输入和输出的含义 IO流就是读写数据时像流水一样从一端流到另外一端,因此得名为"流" 基本分类 按照读写数据的基本单位不同,分为字节流和字符流 其中字节流主要指以字节为单位进行…

什么是IO流?

大家好,我是IT修真院北京分院第27期的JAVA学员,一枚正直纯洁善良的java程序员。 今天给大家分享一下,修真院官网Java任务10,深度思考中的知识点———什么是IO流? 1.背景介绍 什么是流 流就是一系列的数据 当不同的介质之间有数据交互的时候,JAVA就使用流来实现。 数…

JavaIO流详解

转载:https://www.cnblogs.com/LittleHann/p/3678685.html Java输入、输入、IO流 类层次关系梳理 本文主要关注在Java编程中涉及到的IO相关的类库、方法。以及对各个层次(抽线、接口继承)的流之间的关系进行梳理 相关学习资料 http://baike.baidu.com/view/100795…

IO流的介绍

一:IO流的介绍 1.IO流属于一种Java技术,主要用于处理数据传输。通过IO与外界进行数据交互,通信等。 2.IO流适用于文件,图片,音乐,视频等等的传输任务。 3.通信的目标也存在多种。例如&…

最全最详细的IO流教程

前言 io流用到的地方很多,就比如上传下载,传输,设计模式等…基础打扎实了,才能玩更高端的。 在博主认为真正懂IO流的优秀程序员每次在使用IO流之前都会明确分析如下四点: (1)明确要操作的数据…

IO流详解.

目录: 一、IO流概述 二、FileInputStream初步 三、FileOutStream的使用 四、文件复制 五、FileReader的使用 六、FileWriter的使用 七、复制普通文本文件 八、带有缓冲区的字符流 九、标准输出流(掌握) / 写日志 十、File类 一、IO流概述…

IO流 (字节流、字符流)

目录 一、IO流概述 1.1 IO流概述 1.2 FileInputStream读取一个字节 1.3 FileInputStream读取多个字节 1.4 FileInputStream读取全部字节 1.5 FileOutputStream写字节 1.6 字节流复制文件 二、IO流资源释放 2.1 JDK7以前的资源释放 2.2 JDK7以后的资源释放 三、字符流…