化繁為簡(jiǎn),一張圖看懂梯度、散度、旋度、Jacobian、Hessian和Laplacian

一、入門(mén)

圖中的細(xì)實(shí)線箭頭表示了四種一階微分運(yùn)算,包括梯度、散度、旋度和 Jacobian。每條箭頭的起點(diǎn)表示了相應(yīng)運(yùn)算的自變量的類(lèi)型,終點(diǎn)表示了相應(yīng)運(yùn)算的因變量的類(lèi)型,例如梯度運(yùn)算是作用在標(biāo)量上的,結(jié)果是向量。圖中的「向量」默認(rèn)為列向量。
這四種一階微分運(yùn)算可以統(tǒng)一用算符?(讀作 nabla)表示。Nabla 算符是一個(gè)形式向量?,它可以如下地作用于標(biāo)量?或向量?上:
直接與標(biāo)量?相乘,得到?的梯度?。 與向量?點(diǎn)乘,得到?的散度?。本文把點(diǎn)乘用矩陣乘法的形式寫(xiě)作?。 與向量?叉乘,得到?的旋度?。 若允許偏導(dǎo)算符寫(xiě)在變量的右邊,則?就可以表示?的 Jacobian。
圖中的粗實(shí)線箭頭表示了兩種二階微分運(yùn)算,它們可以由兩個(gè)一階微分運(yùn)算組合而成,即:
梯度的散度就是 Laplacian; 梯度的 Jacobian 就是 Hessian。
圖中的虛線箭頭表示了一種不涉及微分的運(yùn)算(跡)。在微分運(yùn)算之后接上「跡」運(yùn)算,可能得到另一種微分運(yùn)算,如:
Jacobian 的跡就是散度; Hessian 的跡就是 Laplacian。
二、入迷

圖中的四種一階微分運(yùn)算兩兩搭配,一共可以得到 7 種二階微分運(yùn)算。第一節(jié)的圖中畫(huà)出了兩種,本節(jié)的圖中畫(huà)出了另外五種(淺藍(lán)色與灰色)。這五種二階微分運(yùn)算并沒(méi)有特別的名字,但其中有兩種是恒等于 0 的:
梯度的旋度恒為零向量; 旋度的散度恒為 0。
其中,「梯度無(wú)旋」可以用下面的圖形象說(shuō)明(圖片來(lái)自@得分的):

如果梯度有旋會(huì)怎么樣?
三、入魔

Laplacian 是一個(gè)作用于標(biāo)量的二階微分運(yùn)算,其結(jié)果也是標(biāo)量。但我們也可以把它作用于一個(gè)向量的每一個(gè)元素,得到一個(gè)向量;這種運(yùn)算稱(chēng)為向量 Laplacian。
Laplacian 運(yùn)算作用于標(biāo)量?上的結(jié)果可以用 nabla 算符寫(xiě)成?。這種寫(xiě)法無(wú)法直接推廣到向量 Laplacian,因?yàn)?里?無(wú)法直接跟?做矩陣乘法。但如果允許偏導(dǎo)算符寫(xiě)在變量右邊,那就可以把向量 Laplacian 表示成?。這是 Jacobian 運(yùn)算與「矩陣右乘?」運(yùn)算的復(fù)合;后者的效果是對(duì)矩陣的每一行求散度。圖中恰好有一個(gè)為「逐行散度」運(yùn)算準(zhǔn)備的空位,我們把它補(bǔ)充到圖中。
向量 Laplacian 的結(jié)果,恰好等于「散度的梯度」與「旋度的旋度」之差。為了體現(xiàn)出這種關(guān)系,我把「從向量到向量」的三種二階微分運(yùn)算改用橙紅色箭頭表示。
四、入土

既然引入了「逐行散度」這個(gè)一階微分運(yùn)算,那就索性把它能組合出來(lái)的二階微分運(yùn)算也全都放到圖里去吧!這樣就得到了一個(gè)完美對(duì)稱(chēng)的圖,它包含了 11 種二階微分運(yùn)算,其中:
有兩種比較常見(jiàn):Laplacian 和 Hessian; 有兩種恒等于零:「梯度的旋度」和「旋度的散度」; 有三種滿(mǎn)足減法關(guān)系:向量 Laplacian = 散度的梯度 - 旋度的旋度; 剩下的四種沒(méi)有專(zhuān)門(mén)的名字,也很罕見(jiàn)。
其中任何一種微分運(yùn)算后面接上「跡」,都可以得到另一種同階微分運(yùn)算:
Jacobian 的跡就是散度; Hessian 的跡就是 Laplacian; 旋度的 Jacobian 的跡就是旋度的散度,恒等于 0; 矩陣逐行散度的 Jacobian 的跡,就是它的逐行散度的散度。
但需要注意只能在運(yùn)算之后接上「跡」,在運(yùn)算之前接「跡」是不行的,比如矩陣的跡的梯度不等于它的逐行散度。
如果有讀者知道圖中幾種沒(méi)有名字的運(yùn)算叫什么名字、有什么用途,或者在圖中內(nèi)容之外還有什么值得包括進(jìn)來(lái)的微分運(yùn)算,歡迎補(bǔ)充。
推薦閱讀
梯度下降的可視化解釋(Adam,AdaGrad,Momentum,RMSProp)
交叉熵、相對(duì)熵(KL散度)、JS散度和Wasserstein距離(推土機(jī)距離)
最全的損失函數(shù)匯總

