矩阵的迹求导法则


1. 复杂矩阵问题求导方法:可以从小到大,从scalar到vector再到matrix


2. x is a column vector, A is a matrix

d(A∗x)/dx=Ad(A*x)/dx=A
d(xT∗A)/dxT=Ad(x^T*A)/dx^T=A
d(xT∗A)/dx=ATd(x^T*A)/dx=A^T
d(xT∗A∗x)/dx=xT(AT+A)d(x^T*A*x)/dx=x^T(A^T+A)

3. Practice:

4. 矩阵求导计算法则
求导公式(撇号为转置):
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’
乘积的导数:
d(f*g)/dx=(df’/dx)g+(dg/dx)f’

一些结论

  1. 矩阵Y对标量x求导:
    相当于每个元素求导数后转置一下,注意M×N矩阵求导后变成N×M了
    Y = [y(ij)]–> dY/dx = [dy(ji)/dx]
  2. 标量y对列向量X求导:
    注意与上面不同,这次括号内是求偏导,不转置,对N×1向量求导后还是N×1向量
    y = f(x1,x2,..,xn) –> dy/dX= (Dy/Dx1,Dy/Dx2,..,Dy/Dxn)’
  3. 行向量Y’对列向量X求导:
    注意1×M向量对N×1向量求导后是N×M矩阵。
    将Y的每一列对X求偏导,将各列构成一个矩阵。
    重要结论:
    dX’/dX =I
    d(AX)’/dX =A’
  4. 列向量Y对行向量X’求导:
    转化为行向量Y’对列向量X的导数,然后转置。
    注意M×1向量对1×N向量求导结果为M×N矩阵。
    dY/dX’ =(dY’/dX)’
  5. 向量积对列向量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
  6. 矩阵Y对列向量X求导:
    将Y对X的每一个分量求偏导,构成一个超向量。
    注意该向量的每一个元素都是一个矩阵。
  7. 矩阵积对列向量求导法则:
    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
  8. 标量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’
  9. 矩阵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 (注意:”是表示两次转置)

矩阵求导 属于 矩阵计算,应该查找 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

矩阵的 Frobenius 范数及其求偏导法则相关推荐

  1. 矩阵的 Frobenius 范数与 trace (迹)的关系及其求偏导法则

    目录 1. 矩阵的迹求导法则 2. x is a column vector, A is a matrix 3. Practice: 4. 矩阵求导计算法则 一些结论: 1. 矩阵的迹求导法则 2. ...

  2. 1.4 torch_向量/矩阵求偏导

    文章目录 函数微分 标量/向量函数求偏导 矩阵函数求偏导 函数微分 标量/向量函数求偏导 矩阵函数求偏导

  3. 手动求梯度,二范数的偏导,二范数平方的偏导

    单位向量对自身的导数: 在向量方向变化时,导数不为0 在向量方向不变时 (实数空间),导数为0 https://math.stackexchange.com/questions/2983445/uni ...

  4. python求偏导_python实现点位精度评定

    点位精度评定,主要是评定点位数据得l离散度.评定主要是一系列得数学值.在python的numpy中有一些列的函数可以用来实现这一系列的评估值. 1.期望 期望表示一点点位最可能出现的位置.一般情况下期 ...

  5. 用Python对数学函数进行求值、求偏导

    from sympy import *# x = Symbol("x") # y = diff(x**3+x, x) # print(y) # result = y.subs('x ...

  6. 有限差分——图像求偏导

    对函数求偏导,离散化的方法--有限差分

  7. python中用sympy对变量求偏导

    用sympy 求偏导 import numpy as np import pandas as pd import sympy as sytheta, n, k = sy.symbols('theta, ...

  8. 【李代数求偏导】SLAM中李代数SE3求偏导左扰动模型和右扰动模型的区别

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 结论 1.左扰动模型: 2.右扰动模型: 2.1右扰动+右乘更新 2.2右扰动+左乘更新 3.将T展开后求偏导(具体看 ...

  9. 看懂SoftMax回归算法之代价函数求偏导的数学推导——机器学习笔记(12)

    1.学习背景 这两天学习softmax逻辑回归算法,然后卡在了其代价函数求偏导处,"百科"中说,softmax的代价函数如下: 经过求导,得到梯度公式如下: 作为一个准数学专业毕业 ...

最新文章

  1. 计算机视觉方向简介 | 阵列相机立体全景拼接
  2. 英飞凌单片机TC264实战攻略
  3. 诡异!MyBatis的Insert方法一直返回-2147482646?
  4. Java8-Stream 概括
  5. java md5包_JAVA中有没有提供MD5算法的包啊?
  6. 20211004 矩阵的子空间
  7. 宽客的人amp;amp;事件映射
  8. 微软亚洲研究院NLC组招聘实习生!与一线研究员共探NLP前沿与落地!
  9. java http 面试题_Java面试高级篇—说说TCP,UDP和socket,Http之间联系和区别面试题12期...
  10. 20套高品质的 Mobile Web 界面 PSD 素材免费下载
  11. 重磅!阿里自研RISC-V处理器玄铁910成功运行安卓10,相关代码开源
  12. hadoop2.x配合ZooKeeper集群环境搭建
  13. 超级好看的windows终端美化教程
  14. ilove中文_iloveyou歌词中文版是什么歌
  15. js中输出2000~2100年之间所有的闰年;
  16. Calendar设置HOUR_OF_DAY获取0点0分0秒一直输出12点
  17. 购物网站HTML(首页)
  18. 有一个字符串,如11.2美元34人民币;如何将数字与单位分开,放入数组中呢,数组比如 attr[0]=11.2 attr[1]=美元 ,依次类推
  19. html调整上下的间距,html上下间距怎么调
  20. 「BJOI 2019」奥术神杖

热门文章

  1. 关于“数据库分区策略”那点事儿
  2. android手机五寸分辨率,5英寸手机有多大?5英寸手机推荐【图文】
  3. 挣1万,可能靠的是体力。挣10万,也许靠的是脑力。挣100万靠什么?
  4. linux 电脑远程连接wifi,Linux系统下安装mosh来远程连接另一台Linux主机
  5. Python自动化测试学习哪些知识?
  6. 技术分享 | App测试时常用的adb命令你都掌握了哪些呢?
  7. LRU链表及LRU缓存
  8. new的时候发生了什么
  9. 使用elementui美化原生input file
  10. Linux系统中进入退出vim编辑器