知行编程网知行编程网  2022-06-09 11:00 知行编程网 隐藏边栏 |   抢沙发  29 
文章评分 0 次,平均分 0.0

一图搞懂梯度、散度、旋度、Jacobian、Hessian、Laplacian之间的关系


来自 | 知乎   作者 | 王赟 Maigo

链接 | https://zhuanlan.zhihu.com/p/35323714

编辑 | 深度学习这件小事

本文仅作学术交流,如有侵权,请联系后台删除


   一、入门

一图搞懂梯度、散度、旋度、Jacobian、Hessian、Laplacian之间的关系

图中的细实线箭头表示了四种一阶微分运算,包括梯度、散度、旋度和 Jacobian。每条箭头的起点表示了相应运算的自变量的类型,终点表示了相应运算的因变量的类型,例如梯度运算是作用在标量上的,结果是向量。图中的「向量」默认为列向量。

这四种一阶微分运算可以统一用算符 (读作 nabla)表示。Nabla 算符是一个形式向量 ,它可以如下地作用于标量 或向量 上:

  • 直接与标量 相乘,得到 的梯度 
  • 与向量 点乘,得到 的散度 。本文把点乘用矩阵乘法的形式写作 
  • 与向量 叉乘,得到 的旋度 
  • 若允许偏导算符写在变量的右边,则 就可以表示 的 Jacobian。

图中的粗实线箭头表示了两种二阶微分运算,它们可以由两个一阶微分运算组合而成,即:

  • 梯度的散度就是 Laplacian;
  • 梯度的 Jacobian 就是 Hessian。

图中的虚线箭头表示了一种不涉及微分的运算(迹)。在微分运算之后接上「迹」运算,可能得到另一种微分运算,如:

  • Jacobian 的迹就是散度;
  • Hessian 的迹就是 Laplacian。


   二、入迷


一图搞懂梯度、散度、旋度、Jacobian、Hessian、Laplacian之间的关系

图中的四种一阶微分运算两两搭配,一共可以得到 7 种二阶微分运算。第一节的图中画出了两种,本节的图中画出了另外五种(浅蓝色与灰色)。这五种二阶微分运算并没有特别的名字,但其中有两种是恒等于 0 的:

  • 梯度的旋度恒为零向量;
  • 旋度的散度恒为 0。

其中,「梯度无旋」可以用下面的图形象说明(图片来自@得分的):

一图搞懂梯度、散度、旋度、Jacobian、Hessian、Laplacian之间的关系

如果梯度有旋会怎么样?


   三、入魔


一图搞懂梯度、散度、旋度、Jacobian、Hessian、Laplacian之间的关系

Laplacian 是一个作用于标量的二阶微分运算,其结果也是标量。但我们也可以把它作用于一个向量的每一个元素,得到一个向量;这种运算称为向量 Laplacian。

Laplacian 运算作用于标量 上的结果可以用 nabla 算符写成 。这种写法无法直接推广到向量 Laplacian,因为 里 无法直接跟 做矩阵乘法。但如果允许偏导算符写在变量右边,那就可以把向量 Laplacian 表示成 。这是 Jacobian 运算与「矩阵右乘 」运算的复合;后者的效果是对矩阵的每一行求散度。图中恰好有一个为「逐行散度」运算准备的空位,我们把它补充到图中。

向量 Laplacian 的结果,恰好等于「散度的梯度」与「旋度的旋度」之差。为了体现出这种关系,我把「从向量到向量」的三种二阶微分运算改用橙红色箭头表示。


   四、入土


一图搞懂梯度、散度、旋度、Jacobian、Hessian、Laplacian之间的关系

既然引入了「逐行散度」这个一阶微分运算,那就索性把它能组合出来的二阶微分运算也全都放到图里去吧!这样就得到了一个完美对称的图,它包含了 11 种二阶微分运算,其中:

  • 有两种比较常见:Laplacian 和 Hessian;
  • 有两种恒等于零:「梯度的旋度」和「旋度的散度」;
  • 有三种满足减法关系:向量 Laplacian = 散度的梯度 - 旋度的旋度;
  • 剩下的四种没有专门的名字,也很罕见。

其中任何一种微分运算后面接上「迹」,都可以得到另一种同阶微分运算:

  • Jacobian 的迹就是散度;
  • Hessian 的迹就是 Laplacian;
  • 旋度的 Jacobian 的迹就是旋度的散度,恒等于 0;
  • 矩阵逐行散度的 Jacobian 的迹,就是它的逐行散度的散度。

但需要注意只能在运算之后接上「迹」,在运算之前接「迹」是不行的,比如矩阵的迹的梯度不等于它的逐行散度。

如果有读者知道图中几种没有名字的运算叫什么名字、有什么用途,或者在图中内容之外还有什么值得包括进来的微分运算,欢迎补充。


<pre style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;letter-spacing: 0.544px;white-space: normal;font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;widows: 1;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section powered-by="xiumi.us" style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-top: 15px;margin-bottom: 25px;max-width: 100%;opacity: 0.8;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section powered-by="xiumi.us" style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-top: 15px;margin-bottom: 25px;max-width: 100%;opacity: 0.8;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section><p style="margin-bottom: 15px;padding-right: 0em;padding-left: 0em;max-width: 100%;color: rgb(127, 127, 127);font-size: 12px;font-family: sans-serif;line-height: 25.5938px;letter-spacing: 3px;text-align: center;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(0, 0, 0);box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;font-size: 16px;font-family: 微软雅黑;caret-color: red;box-sizing: border-box !important;overflow-wrap: break-word !important;">为您推荐</span></strong></span></p><p style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;text-align: center;box-sizing: border-box !important;overflow-wrap: break-word !important;">MIT校长评中美科技竞赛:胜利不是期盼对手的失利</p><p style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;text-align: center;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="font-size: 14px;">GitHub重大更新:在线开发上线,是时候卸载IDE了</span></p><p style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;text-align: center;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="font-size: 14px;">美国官宣117000名 IT 人失业,真是史无前例!</span><br  /></p><p style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;text-align: center;box-sizing: border-box !important;overflow-wrap: break-word !important;">数据分析入门常用的23个牛逼Pandas代码</p><section style="margin: 5px 8px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;text-align: center;box-sizing: border-box !important;overflow-wrap: break-word !important;">特朗普拿H1B签证开刀,LeCun吴恩达等实名谴责!<br  /></section></section></section></section></section></section></section></section></section>
一图搞懂梯度、散度、旋度、Jacobian、Hessian、Laplacian之间的关系

本篇文章来源于: 深度学习这件小事

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享