对于目标函数:
f=log⁡(log⁡(∣X∣))f = \log (\log (\left| {\bf{X}}\right|))f=log(log(∣X∣))
目标求取其关于变量X\mathbf{X}X的梯度:
∇f=∂log⁡(log⁡(∣X∣))∂X(1)\nabla f= \frac{{\partial \log (\log (\left| {\bf{X}} \right|))}}{{\partial {\bf{X}}}} \tag{1}∇f=∂X∂log(log(∣X∣))​(1)
其中X\mathbf{X}X是矩阵。

由微分的定义,我们有:
df=tr((∇f)TdX)(2)\mathrm{d}f = \mathrm{tr}((\nabla f)^T \mathrm{d}\mathbf{X}) \tag{2}df=tr((∇f)TdX)(2)
注意, 这里的fff可以换做任何X\mathbf{X}X的函数, (2)仍成立。 本文仍以log⁡(log⁡(∣X∣))\log (\log (\left| {\bf{X}}\right|))log(log(∣X∣))为例求解。

(2)式启示我们:将df\mathrm{d}fdf 化成 df=tr(GdX)\mathrm{d}f=\mathrm{tr}(\mathbf{G}\mathrm{d}\mathbf{X})df=tr(GdX)的形式, 就可以得到∇f=GT\nabla f = \mathbf{G}^T∇f=GT.

对于f=log⁡(log⁡(∣X∣))f = \log (\log (\left| {\bf{X}}\right|))f=log(log(∣X∣)),有:
dlog⁡(log⁡(∣X∣))=(a)(log⁡(∣X∣))−1d(log⁡(∣X∣))=(b)(log⁡(∣X∣))−1∣X∣−1d(∣X∣)=(c)(log⁡(∣X∣))−1∣X∣−1∣X∣tr(X−1dX)=(log⁡(∣X∣))−1tr(X−1dX)=(e)tr((log⁡(∣X∣))−1X−1dX)(3)\begin{array}{l} {\rm{d}}\log (\log (\left| {\bf{X}} \right|))\\ \mathop {\rm{ = }}\limits^{(a)} {{\rm{(}}\log (\left| {\bf{X}} \right|))^{ - 1}}{\rm{d(}}\log (\left| {\bf{X}} \right|))\\ \mathop {\rm{ = }}\limits^{(b)} {{\rm{(}}\log (\left| {\bf{X}} \right|))^{ - 1}}{\left| {\bf{X}} \right|^{ - 1}}{\rm{d(}}\left| {\bf{X}} \right|)\\ \mathop {\rm{ = }}\limits^{(c)} {{\rm{(}}\log (\left| {\bf{X}} \right|))^{ - 1}}{\left| {\bf{X}} \right|^{ - 1}}\left| {\bf{X}} \right|{\rm{tr(}}{{\bf{X}}^{ - 1}}{\rm{d}}{\bf{X}}{\rm{)}}\\ {\rm{ = (}}\log (\left| {\bf{X}} \right|){)^{ - 1}}{\rm{tr(}}{{\bf{X}}^{ - 1}}{\rm{d}}{\bf{X}}{\rm{)}}\\ \mathop {\rm{ = }}\limits^{(e)} {\rm{tr((}}\log (\left| {\bf{X}} \right|){)^{ - 1}}{{\bf{X}}^{ - 1}}{\rm{d}}{\bf{X}}{\rm{)}} \tag{3} \end{array} dlog(log(∣X∣))=(a)(log(∣X∣))−1d(log(∣X∣))=(b)(log(∣X∣))−1∣X∣−1d(∣X∣)=(c)(log(∣X∣))−1∣X∣−1∣X∣tr(X−1dX)=(log(∣X∣))−1tr(X−1dX)=(e)tr((log(∣X∣))−1X−1dX)​(3)

  • (a), (b): d(log(X))=X−1dX\mathrm{d}(\mathrm{log}(\mathbf{X}))=\mathbf{X}^{-1}\mathrm{d}\mathbf{X}d(log(X))=X−1dX。 如(a)中, 令 t=log⁡(∣X∣)t = \log (\left| {\bf{X}} \right|)t=log(∣X∣) 即可。
  • c:d(∣X∣)=∣X∣tr(X−1dX)\mathrm{d}(\left| {\bf{X}} \right|) = \left| {\bf{X}} \right|{\rm{tr(}}{{\bf{X}}^{ - 1}}{\rm{d}}{\bf{X}}{\rm{)}}d(∣X∣)=∣X∣tr(X−1dX)
  • e: 注意(log⁡(∣X∣))−1{{\rm{(}}\log (\left| {\bf{X}} \right|))^{ - 1}}(log(∣X∣))−1是个标量, 而对于标量a有atr(X)=tr(aX)a\mathrm{tr}(\mathbf{X}) = \mathrm{tr}(a\mathbf{X})atr(X)=tr(aX), 因此可以放入括号。

将(3)式最后结果:
dlog⁡(log⁡(∣X∣))=tr((log⁡(∣X∣))−1X−1dX){\rm{d}}\log (\log (\left| {\bf{X}} \right|)) = {\rm{tr((}}\log (\left| {\bf{X}} \right|){)^{ - 1}}{{\bf{X}}^{ - 1}}{\rm{d}}{\bf{X}}{\rm{)}}dlog(log(∣X∣))=tr((log(∣X∣))−1X−1dX)
与 (2)比较,有:
∇f=(log⁡(∣X∣))−1X−1)T\nabla f =(\log (\left| {\bf{X}} \right|){)^{ - 1}}{{\bf{X}}^{ - 1}})^T ∇f=(log(∣X∣))−1X−1)T
求解完毕。

矩阵求导演示: 对log(log(det(X)))求导相关推荐

  1. 线性代数之 矩阵求导(3)标量、向量求导的快速记忆

    线性代数之 矩阵求导(3)标量.向量求导的快速记忆 前言 基本约定 引例 标量对标量求导 标量对向量求导 向量对向量求导 包含两个变量的求导 总结 扩展 前言 上一次记录了矩阵求导的基本法则和公式,并 ...

  2. python求向量函数的雅可比矩阵_使用python,pytorch求海森Hessian矩阵

    考虑一个函数$y=f(\textbf{x}) (R^n\rightarrow R)$,y的Hessian矩阵定义如下: 考虑一个函数:$$f(x)=b^Tx+\frac{1}{2}x^{T}Ax\\其 ...

  3. Eigen入门系列 —— Eigen::Matrix矩阵点乘、叉乘、转置、求逆、求和、行列式、迹、数乘

    Eigen入门系列 -- Eigen::Matrix矩阵点乘.叉乘.转置.求逆.求和.行列式.迹.数乘 前言 程序说明 输出结果 代码示例 前言 随着工业自动化.智能化的不断推进,机器视觉(2D/3D ...

  4. 算术表达式求值演示(C/C++实现)

    算术表达式求值演示 问题描述:表达式计算是实现程序设计语言的基本问题之一,也是栈的应用的典型例子.设计一个程序,演示用算符优先法对算术表达式求值的过程. 基本要求:以字符序列的形式从键盘输入语法正确的 ...

  5. 关于命令: nohup java -jar xxx.jar log.log 21 的解释。

    举例: nohup java -jar xxx.jar >log.log 2>&1 &: 解释: 1. 带&的命令行,即使terminal(终端)关闭,或者电脑死机 ...

  6. 类似echarts图的思维导图效果,用js实现xmind思维导图的效果===使用jsMind来实现

    首先:我先先来看看实现的效果: 然后我再说说具体实现的步骤吧:(别急文件后面我会把百度网盘链接发出来的,除了小案例外还有jsMind的文件,案例,目前的说明文档) 第一:引入jsMind的css.js ...

  7. python求列表的平均值的用法_python如何求列表平均值?_后端开发

    php中post和get的区别是什么?_后端开发 php中post和get的区别是:1.post更安全并且发送的数据量更大:3.post能发送更多的数据类型,get只能发送ASCII字符:4.post ...

  8. matlab怎么求负次幂多项式,用matlab怎么求多项式的公因式

    第一类换元法,也称为凑微分法,顾名思义,就是把f[g(x)]g'(x)dx转化为f[g(x)d(g(x))的形式,所以用好这一方法的关键就是把给定的积分里的被积分式写成f[g(x)]g'(x)dx.要 ...

  9. c语言辗转相除法求最大公约数_趣味探究:妙法求“最大公因数”,比书上难一点,你敢挑战吗?(适合56年级)...

    [题记] 宝石虽落在泥土里,仍是宝石,砂粒虽被吹到天空中,还是砂粒.--莎士比亚不是有水的地方就有青蛙,但是青蛙叫的地方必定有水.--歌德 [配合教材]本探究配合"因数与倍数".通 ...

最新文章

  1. DGA域名——可以每天只生成一个域名,因此最多存在365个 DGA域名;
  2. URAL 1993 This cheeseburger you don't need
  3. 微信阅读原文直接打开浏览器_微信打开网址添加在浏览器中打开提示
  4. 浅谈SQL Server 对于内存的管理
  5. zigbee 频谱波段
  6. 【东软实训】SQL多表链接
  7. JDK 8中几乎命名的方法参数
  8. python引用函数_python 调用函数
  9. 浅谈内存开辟问题和Block内存问题
  10. db2存储过程手动执行没有问题_轻松解决DB2创建存储过程时遇到的错误
  11. gimp 抠图_gimp软件如何实现抠图?
  12. JL杰理 蓝牙音箱 蓝牙耳机 方案 找个有经验的兄弟
  13. 问卷星投票如何刷投票?【请勿非法使用】
  14. php htmlpurifier,php – HtmlPurifier – 允许数据属性
  15. 迪斯尼乐拍通照片抓取
  16. ST-GAN: Spatial Transformer Generative Adversarial Networks for Image Compositing 原文翻译
  17. 什么是 ETL ?什么是 ELT ?
  18. 【虚幻引擎UE】UE5 四步骤实现AI漫游与对话行为(含工程源码)
  19. buuctf - crypto - Rabbit
  20. android 新驱动安装教程视频教程,一教即会新人必备 adb驱动安装教程

热门文章

  1. 从零到有,从入门到入土
  2. 苹果手机一直黑屏转圈_苹果手机电池容量很小,为何一直不做出改变?原因也很明显...
  3. 帧同步(LockStep)该如何反外挂
  4. 防关联指纹浏览器有什么?防指纹浏览器
  5. 初始SQL语句 简单使用
  6. appserv 部署php,在Windows下应用AppServ快速配置PHP开发环境
  7. 赢政天下论坛 复活了!!
  8. 【石头和爸爸】计算机
  9. 美国人的10个文化偶像
  10. 【数学知识】角度与弧度