[转载]矩阵求导运算规则

欢乐熊大话蓝牙知识16:蓝牙是怎么找设备的?扫描与广播的“对话内幕” 蓝牙是怎么找设备的?扫描与广播的对话技术介绍 阅读详情

-* 本文转载自

http://blog.sina.com.cn/s/blog_51c4baac0100xuww.html

*-

矩阵求导 属于 矩阵计算,应该查找 Matrix Calculus 的文献:

http://www.psi.toronto.edu/matrix/intro.html#Intro
http://www.psi.toronto.edu/matrix/calculus.html
http://www.stanford.edu/~dattorro/matrixcalc.pdf
http://www.colorado.edu/engineering/CAS/courses.d/IFEM.d/IFEM.AppD.d/IFEM.AppD.pdf
http://www4.ncsu.edu/~pfackler/MatCalc.pdf
http://center.uvt.nl/staff/magnus/wip12.pdf

在网上看到有人贴了如下求导公式:

Y = A * X --> DY/DX = A'
Y = X * A --> DY/DX = A
Y = A' * X * B --> DY/DX = A * B'
Y = A' * X' * B --> DY/DX = B * A'

于是把以前学过的矩阵求导部分整理一下:

  1. 矩阵Y对标量x求导:
    相当于每个元素求导数后转置一下,注意M×N矩阵求导后变成N×M了
Y = [y(ij)] --> dY/dx = [dy(ji)/dx]

其中i,j是矩阵中元素的角标

  1. 标量y对列向量X求导:
    注意与上面不同,这次括号内是求偏导,不转置,对N×1向量求导后还是N×1向量
y = f(x1,x2,..,xn) --> dy/dX = (Dy/Dx1,Dy/Dx2,..,Dy/Dxn)'
  1. 行向量Y’对列向量X求导:
    注意1×M向量对N×1向量求导后是N×M矩阵。
    将Y的每一列对X求偏导,将各列构成一个矩阵。
    重要结论:
dX'/dX = I
d(AX)'/dX = A'
  1. 列向量Y对行向量X’求导:
    转化为行向量Y’对列向量X的导数,然后转置。
    注意M×1向量对1×N向量求导结果为M×N矩阵。
dY/dX' = (dY'/dX)'
  1. 向量积对列向量X求导运算法则:
    注意与标量求导有点不同。
d(UV')/dX = (dU/dX)V' + U(dV'/dX)
d(U'V)/dX = (dU'/dX)V + (dV'/dX)U'

重要结论:

d(X'A)/dX = (dX'/dX)A + (dA/dX)X' = IA + 0X' = A
d(AX)/dX' = (d(X'A')/dX)' = (A')' = A
d(X'AX)/dX = (dX'/dX)AX + (d(AX)'/dX)X = AX + A'X
  1. 矩阵Y对列向量X求导:
    将Y对X的每一个分量求偏导,构成一个超向量。
    注意该向量的每一个元素都是一个矩阵。
  2. 矩阵积对列向量求导法则:
d(uV)/dX = (du/dX)V + u(dV/dX)
d(UV)/dX = (dU/dX)V + U(dV/dX)

重要结论:

d(X'A)/dX = (dX'/dX)A + X'(dA/dX) = IA + X'0 = A
  1. 标量y对矩阵X的导数:
    类似标量y对列向量X的导数,
    把y对每个X的元素求偏导,不用转置。
dy/dX = [ Dy/Dx(ij) ]

重要结论:

y = U'XV = ΣΣu(i)x(ij)v(j) 于是 dy/dX = [u(i)v(j)] = UV'
y = U'X'XU 则 dy/dX = 2XUU'
y = (XU-V)'(XU-V) 则 dy/dX = d(U'X'XU - 2V'XU + V'V)/dX = 2XUU' - 2VU' + 0 = 2(XU-V)U'
  1. 矩阵Y对矩阵X的导数:
    将Y的每个元素对X求导,然后排在一起形成超级矩阵。
    10.乘积的导数
d(f*g)/dx=(df'/dx)g+(dg/dx)f'

结论

d(x'Ax)=(d(x'')/dx)Ax+(d(Ax)/dx)(x'')=Ax+A'x `(注意:''是表示两次转置)

对w’Aw求导
如果w(x)是x的函数,A是对称矩阵,则,求导后:

以下是错误结论

d(w'Aw)/dx = 2*(dw'/dx)Aw = 2*w'A(dw/dx)

这才是正确结论:

d(w'Aw)/dx = 2*(w'Ad(w)/dx)
Mininet 2.2.1 图形可视化界面使用注意事项 前言 关于mininet的安装,网上教程不少,大致可以参考以下这篇文章: https://blog.youkuaiyun.com/linyixiao88/article/details/65651390 安装的时候,也可以不必根据上面这篇文章这么麻烦,直接sudo apt-get install mininet,即可。 Mininet可视化 Mininet 2.2.0以上版本内置了... 阅读详情

相关推荐

手把手教你用STM32CubeMX配置I3C通信(含动态地址分配实战)

本文提供了一份基于STM32CubeMX配置I3C通信的实战指南,重点讲解了动态地址分配的实现步骤。通过详细的工程配置、从设备枚举、CCC命令使用及数据读写示例,帮助开发者快速掌握这一高效通信协议,以替代传统的I2C或SPI接口,满足多传感器连接与低功耗设计需求。

c8d9e0f1的博客 543

机器学习之矩阵求导

0 前提及说明 在机器学习算法学习过程中,理论推导每当涉及到矩阵求导时,以往都是不求甚解,为更加深入理解算法,特此在这里整理近日的学习心得。下面进入正题。 前提:若x" role="presentation" style="position: relative;">xx\bf x为向量,则默认x" role="presentation" style="position: relative

青春不容你奢侈的博客 1972

软件破解逆向安全(一)初识内存地址和偏移

工具:CE 内存:数字->存访在电脑中->内存 实例:如何修改植物大战僵尸阳光 内存搜索最核心:过滤数据 先用CE加载植物大战僵尸,如下图 我们可以看到目前我们的阳光数是50,我们尝试在ce里搜索精确数值,4 byte是int整数的表示。 我们发现有很多数据,尝试收集一个阳光变成75再次搜索: 我们发现就一个了,这时我们可以双击Value随便修改阳光的数值了。 这里我们说一下动态和静态地址 动态地址:临时用于存放数据的地址,黑色。特征:重新启动游戏地..

weixin_43781139的博客 2591

深度之眼(十八)——偏导数与矩阵的求导

深度之眼(十八)——偏导数与矩阵的求导

河海大学研究生在读的学习笔记 4881

【Vite+Vue3+TS】基于Vite+Vue3+TypeScript+ESLint+Prettier+Stylelint搭建项目(亲测超详细)

结合了很多项目和文章,总结一篇项目构建的笔记。 温馨提示:文章末尾记录了我在搭建项目过程中,遇到的一些问题和解决办法 ~

aDiaoYa_的博客 4231

骁龙X Elite笔记本重装Windows 11 Arm64系统完整指南与避坑手册

UEFI安全启动和Arm64架构是理解现代计算设备系统部署的基础。UEFI取代传统BIOS,提供了更安全的启动环境和模块化固件接口,而Arm64架构则以其高能效特性,在移动和新兴PC领域日益重要。其技术价值在于为设备带来更快的启动速度、更强的安全防护以及更优的功耗表现。在应用场景上,这直接关系到搭载高通骁龙X Elite等Arm处理器的笔记本电脑的系统安装与维护。对于这类设备,重装系统远非插入通用安装盘那么简单,核心挑战在于必须使用专为Arm64编译的Windows镜像,并需提前集成芯片组、网络等硬件的专属

weixin_33428613的博客 478

需要记住的常用矩阵求导公式

如果A是对称矩阵

DeniuHe的博客 416

TMC步进电机驱动stealthChop

经过九九八十一难,芯片手册拜读了好多遍,找了好多资料,问了好多人使用TMC2660驱动步进电机终于成功了。最后的问题居然是硬件把管脚画错了,然后我又没有检查,哭。。。

那可真是太开心了的博客 4489

矩阵求导法则

转载自:https://blog.youkuaiyun.com/dinkwad/article/details/72819832 矩阵求导的技术,在统计学、控制论、机器学习等领域有广泛的应用。鉴于我看过的一些资料或言之不详、或繁乱无绪,本文来做个科普,分作两篇,上篇讲标量对矩阵的求导术,下篇讲矩阵对矩阵的求导术。本文使用小写字母x表示标量,粗体小写字母xx 表示向量,大写字母X表示矩阵。 首先来琢磨一下定...

weixin_39568744的博客 2万+

关于机器人精度的总结(重复精度和绝对精度区分)

机械臂是工业生产中的重要设备,在焊接码垛 以及 非 接触测量等 领域中有 着重要应 用。然而由于机械臂本体制造中存在机械制造公差装配误差导致的运动学参数误差以及电机转角与关节转角间减速比误差等,导致机械臂存在。因此需要对机械臂进行标定,提高机械臂的绝对定位精度。ABB系列某款机器人精度参数表。

大胡子大叔的专栏 1万+

VTK:vtkAssembly用法实战

VTK:vtkAssembly用法实战程序输出程序完整源代码 程序输出 程序完整源代码 #include <vtkActor.h> #include <vtkAssembly.h> #include <vtkAxesActor.h> #include <vtkCubeSource.h> #include <vtkNamedColors.h> #include <vtkNew.h> #include <vtkOrientation

希望我的博客,能帮上你解决学习中工作中所遇到的问题 933

Matrix Differentiation(矩阵求导)以及矩阵求导常用公式

Matrix Differentiation(矩阵求导) References: Matrix Differentiation,Rabdak J.Barnes 注: 本文直接从Matrix Differentiation开始记录,之前的乘法等基础部分不表。 Convention 3 m维向量对n维向量求导所得的结果是一个mxn矩阵,即Jacobian Matrix。 具体形式见上公式。 命题5 Proposition 5 即:Ax对x求导,结果为A Proof 命题6 Proposition 6

Codefmeister's BLOG 8695

论文研读 Corundum: An Open-Source 100-Gbps NIC

Corundum 通过在 FPGA 上构建并行 pipeline、高效 DMA 通道、无阻塞队列结构、低延迟调度器,实现了在 PCIe Gen3 x16 接口上稳定跑满 100Gbps 吞吐量。

Double Galaxy 489

矩阵求导

转载 http://blog.sina.com.cn/s/blog_4a033b090100pwjq.html 求导公式(撇号为转置): Y = A * X --> DY/DX = A' Y = X * A --> DY/DX = A Y = A' * X * B --> DY/DX = A * B' Y = A' * X' * B --> DY/DX = B * A' 例题" a

时缔&实验室 911

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

转载-矩阵求导总结

今天推导公式,发现居然有对矩阵的求导,狂汗–完全不会。不过还好网上有人总结了。吼吼,赶紧搬过来收藏备份。 基本公式: Y = A * X --&gt; DY/DX = A' Y = X * A --&gt; DY/DX = A Y = A' * X * B --&gt; DY/DX = A * B' Y = A' * X' * B --&...

sinat_35932715的博客 452

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

转载:矩阵范数求导规则

buck0818的博客 608

对向量、方阵的求导

平时都是对一个数求导,那对向量求导呢?看下面的例子:          假设有下面这样的矩阵A和向量X                             我们很容易求出                             现在另 y = A·X,那矩阵y对向量x求偏导的结果是多少?          我们来分析一下,既然是矩阵y对向量x求偏导,那就的让矩阵y中的每一个

xueyingxue001的专栏 3万+

OSG矩阵运算 (转载)

link:http://www.cnblogs.com/indif/archive/2011/05/13/2045106.html OSG矩阵运算   我们都知道,OpenGL规定矩阵使用列主序存储,即glLoadMatrix等函数要求输入的数组是按列主序存储的矩阵。然而,一个很奇怪的事实是,OSG中矩阵存储是使用的标准C二维数组(行主序),并且也是直接将行主序存储的矩阵元素作为参数传

kasteluo的专栏 2202

matlab计算矩阵两边的丨,[转载]Matlab矩阵运算

第2章MATLAB矩阵及其运算2.1变量和数据操作2.2MATLAB矩阵2.3MATLAB运算2.4矩阵分析2.5矩阵的超越函数2.6字符串2.7结构数据和单元数据2.8稀疏矩阵2.1变量和数据操作2.1.1变量与赋值1.变量命名在MATLAB6.5中,变量名是以字母开头,后接字母、数字或下划线的字符序列,最多63个字符。在MATLAB中,变量名区分字母的大小写。2.赋值语句...

weixin_39915500的博客 531

矩阵的运算规则

把一组数字记录成矩阵形式是没有意义的,学习矩阵的关键在于掌握矩阵之间的运算。 1.矩阵加法运算 矩阵之间也可以相加。把两个矩阵对应位置的单个元素相加,得到的新矩阵就是矩阵加法的结果。由其运算法则可知,只有行数和列数完全相同的矩阵才能进行加法运算。 矩阵之间相加没有顺序,假设A、B都是矩阵,则A+B=B+A。通常认为矩阵没有减法,若要与一个矩阵相减,在...

weixin_30940783的博客 1482

向量求导(转)

向量求导  (2012-04-23 22:40:37) 转载▼ 标签:  向量   求导   杂谈 分类: 数学之美 1. 矩阵Y对标量x求导:    相当于每个元素求导数后转置一下,注意M×N矩阵求导后变成N×M了    Y = [y(ij)] --> dY/dx = [dy(ji)/dx]

duanyule_cqu的博客 4234

复变函数导数求解(包含矢量、矩阵形式)

复变函数求导(包括向量、矩阵形式)

yjh_2019的博客 5841

机器学习中的向量求导规则

网上有一些向量求导的总结,把20多种情况一一考虑,很是麻烦,本文希望找出向量求导的基本法则。 向量求导与标量求导法则不同的是,向量的求导还要注意结果的排法问题。注意排法是因为当一个目标函数是多个成分相加时,如果不注意排法可能导致有些结果是行,有些是列,无法继续进行运算。我总结的向量求导的基本推导准则是(以f(x)对向量求导为例): 1)先对f(x)求向量分量的导数,也就是标量的导数,该导数可能...

weixin_33726943的博客 386

OpenCV矩阵运算总结

转载:https://blog.youkuaiyun.com/iracer/article/details/51296631 OpenCV的基本矩阵操作与示例 目录 OpenCV的基本矩阵操作与示例 1.创建与初始化矩阵 1.1数据类型 1.2基本方法 1.3初始化方法 2.矩阵运算 2.1基本概念 2.2矩阵加减法 2.3矩阵乘法 2.4矩阵转置 2.5求逆矩阵 2.6计...

落叶知秋了哟的博客 3669
上一篇: 廖雪峰Python学习笔记[Part 1]
下一篇: 数学运算符号->逐渐丰富
流黄蛋
博客等级 码龄9年 1222粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值