可逆神經(jīng)網(wǎng)絡(luò) Invertible Neural Networks

我們常常遇到這樣的問題:給出一系列測量值,如何確定隱式參數(shù)?以配色為例,即給出標(biāo)準(zhǔn)樣的光譜反射率曲線,如何確定配色配方。通常,從參數(shù)到測量空間的前向過程是明確定義的函數(shù),而反問題是模糊的,因為一個測量值可以映射到多個不同的參數(shù)集。有一種類型的神經(jīng)網(wǎng)絡(luò)適合解決這類問題——即可逆神經(jīng)網(wǎng)絡(luò) INN。傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)會嘗試直接解決這類問題,而 INN 則能夠與明確定義的前向過程一起學(xué)習(xí)它,使用額外的隱式輸出變量來捕獲正向過程中可能丟失的信息。

一、什么是可逆神經(jīng)網(wǎng)絡(luò)
對于一些問題,研究人員建立了復(fù)雜的理論模型,用于實現(xiàn)隱式參數(shù)到可測量值的映射,這種映射稱之為前向過程。逆向過程即根據(jù)測量值得到隱式參數(shù),這也是實際需要解決的問題。但是逆向過程難以解決,因為在前向過程中丟失了一些關(guān)鍵信息。

如果直接用傳統(tǒng)神經(jīng)網(wǎng)絡(luò)去訓(xùn)練逆向過程,則效果會很受限,因為逆向過程為一對多映射。神經(jīng)網(wǎng)絡(luò)訓(xùn)練出的模型,最好情況是識別最可能的解決方案;最差情況是采用多種解決方案的平均值。

INN 有三個特征:(i)從輸入到輸出的映射是雙射的,即它的逆存在(ii)正向和反向映射都是有效可計算的(iii)映射具有易處理的雅可比行列式,因此概率可以通過變量公式明確轉(zhuǎn)換。

標(biāo)準(zhǔn)NN v.s. INN

標(biāo)準(zhǔn) NN 直接對逆向過程進(jìn)行訓(xùn)練,但其需要一個監(jiān)督損失(SL)項,來區(qū)分真正的 x 與預(yù)測的 x(我們可以暫時把 SL 理解為一個確定的代價函數(shù)),而 y->x 這種一對多映射使得傳統(tǒng) NN 受到很大限制。INN 只對前向過程使用 SL,而由于并沒有一個確定的 x 值,因此預(yù)測的 x 屬于無監(jiān)督損失(USL),需要遵循之前的 p(x);另外,潛在變量 z 需要服從高斯分布,也是屬于 USL。

由于在前向過程中會丟失一些信息,因此引入了額外的潛在輸出變量 z,被訓(xùn)練去抓獲與 x 有關(guān)的但并未包含在 y 內(nèi)的信息。此外,需要訓(xùn)練網(wǎng)絡(luò)根據(jù)高斯分布對 p(z) 進(jìn)行調(diào)整。即,p(x|y) 被調(diào)整為一個確定的函數(shù) x = g(y,z),這個函數(shù)將已知的分布 p(z) 在滿足 y 的情況下轉(zhuǎn)換到 x 空間。

二、INN 詳解

  1. 問題重述

如果 x∈RD,y∈RM,那么由于前向過程中信息的丟失,y 的固有維數(shù) m 一定小于 D,即使 M 可能大于 D。

我們希望根據(jù)模型 q(x|y) 來預(yù)測 ρ(x|y);因此引入了隱式變量 z 并將 q(x|y) 以 g(y,z;θ) 的方式呈現(xiàn):

相應(yīng)地,其前向過程也可以由 f(x;θ) 表示:

雙向訓(xùn)練 f 和 g 可以避免出現(xiàn)在 cGAN 和貝葉斯神經(jīng)網(wǎng)絡(luò)中的問題。由于 INN 要求 f = g-1,所以兩邊的維度(不論是固有維度還是顯示維度)要相同。所以要求變量 z 的維度 K = D - m,如果導(dǎo)致了 M + K > D,則需要用 M+K-D 維的 0 向量補(bǔ)齊 x 向量。

結(jié)合以上所有定義,我們的網(wǎng)絡(luò)將 q(x|y) 表示為:

  1. 可逆網(wǎng)絡(luò)的架構(gòu)

可逆神經(jīng)網(wǎng)絡(luò)的基本構(gòu)建塊是Real NVP模型推廣的仿射耦合層。它的工作原理是將輸入數(shù)據(jù)分成兩部分 u1、u2,這兩部分由學(xué)習(xí)函數(shù) si,ti(它們可以是任意復(fù)雜的函數(shù),且函數(shù)本身不需要是可逆的)轉(zhuǎn)換并以交替方式耦合:

輸出即是 [v1,v2] 的連接。用公式表示為:

而給定輸出,也可以得到其逆過程:

用公式表示為:

一個深度可逆網(wǎng)絡(luò)就是由一系列上述構(gòu)建塊組成。另外,對這個基本架構(gòu)還有兩個拓展點:

  • 如果維度 D 相對較小,但卻需要學(xué)習(xí)一個很復(fù)雜的轉(zhuǎn)換,最好對網(wǎng)絡(luò)的輸入和輸出都進(jìn)行相同數(shù)量的 0 填充。這并不會改變輸入和輸出的固有維度,但使得網(wǎng)絡(luò)內(nèi)部層可以以一種更靈活的方式將數(shù)據(jù)嵌入到更大的表示空間。
  • 可以在構(gòu)建塊之間插入置換層,用于隨機(jī)打亂下一層的輸入元素,這使得 u = [u1,u2] 的分割在每一層都不同,也因此促進(jìn)了獨立變量間的交互。
  1. 網(wǎng)絡(luò)的雙向訓(xùn)練

INN 同時降低輸入和輸出域的誤差,使得訓(xùn)練更加高效。因此,INN 交替執(zhí)行前向和后向迭代,在更新參數(shù)之前積累雙向梯度。

對于前向迭代,我們計算模型輸出 yi = s(xi) 與網(wǎng)絡(luò)預(yù)測 fy(xi) 之間的偏差,損失記為 Ly(yi,fy(xi)),Ly 可以是任意有監(jiān)督的損失,如回歸問題中的平方誤差或分類問題中的交叉熵。

對于潛在變量 z,我們計算模型輸出 p(y = s(x)) = p(x) / |Js| 和潛在變量 p(z) 的邊際分布的乘積與網(wǎng)絡(luò)輸出 q(y = fy(x),z = fz(x)) = p(x) / |Jyz| 間的偏差,記為 Lz(p(y)p(z),q(y,z)). Lz 確保了兩件事:首先,生成的 z 必須服從需要的正太分布 p(z);其次,y 和 z 是相互獨立的,且不會涵蓋同樣的信息兩次。Ly 和 Lz 都屬于前向迭代過程中的損失。

Ly 和 Lz 理論上已經(jīng)足夠,但 y 和 z 之間的少量剩余依賴在復(fù)雜問題實例中仍然存在,這導(dǎo)致 q(x|y) 偏離真正的 p(x|y)。為避免這種情況,還額外定義了輸入端的損失 Lx,Lx(p(x),q(x)) 表示了 p(x) 與后向預(yù)測分布 q(x) = p(y = fy(x)) p(z = fz(x)) / |Jx| 間的偏差。

  1. 最大平均誤差法

Lx 與 Lz 都通過最大平均誤差法 MMD 實現(xiàn)。MMD是一種基于內(nèi)核的方法,用于比較只能通過樣本訪問的兩個概率分布。論文中采用了以下方法取得了最佳效果:

三、INN 相關(guān)實驗

  1. 在人工數(shù)據(jù)上的實驗

這個實驗的前向過程是根據(jù)點的二維坐標(biāo),判斷其所屬的模式,逆向過程則是根據(jù)所屬模式標(biāo)記出其二維坐標(biāo)。訓(xùn)練結(jié)果如下:

可以看出,如果只有前向訓(xùn)練(Ly,Lz),會捕獲已知關(guān)系,但對于 x 空間的未填充區(qū)域卻有較大偏差(所以Setup1效果較好但Setup2和Setup3這種有集合共享標(biāo)簽的情況效果較差);而如果只有后向訓(xùn)練(Lx),則會學(xué)習(xí)正確的 x 分布,但丟失了已知信息。

使用 cGAN 訓(xùn)練,需要更多的隱式變量和更復(fù)雜的結(jié)構(gòu),且 cGAN 和 INN 間的差異不僅是因為使用了不同的損失函數(shù),證明了 INN 優(yōu)于 cGAN。而最后的 dropout 網(wǎng)絡(luò)只使用 y 作為輸入,由于其沒有使用任何隱式變量,它丟失了 y 中所未包含的所有信息。

分析隱式空間的結(jié)構(gòu),即了解模型在給定 y 的情況下如何利用 z。對于隱式空間中的每個坐標(biāo) zi(在這個實驗中,z 是二維變量),我們使用 [y,zi] 作為逆向過程的輸入,得到 xi',然后給該點著色——色調(diào)取決于 xi' 在 x 空間更接近的模式顏色,亮度取決于 xi' 離那個模式的距離。

Layout of latent space for one fixed label y
  1. INN 在醫(yī)學(xué)上的應(yīng)用

在醫(yī)學(xué)上,腫瘤會使得血氧飽和度發(fā)生變化,從而導(dǎo)致組織表面的反射率發(fā)生變化。組織表面的反射率可通過多光譜相機(jī)測量;也可以根據(jù)包含血氧飽和度、血液體積分?jǐn)?shù)、散射強(qiáng)度、各向異性指數(shù)及組織厚度的模型模擬得到。然而,根據(jù)組織表面反射率,卻難以得到重要的功能特征,因為不同的組織參數(shù)可能得到同樣的組織反射率。也有嘗試過直接對逆向過程建模,但模型的預(yù)測效果并不理想。

就精確度而言,INN 的 MAP(maximum of the posterior)方法優(yōu)于其他方法。如果不考慮 Lx 損失,對精確度影響不大;但如果不考慮 Ly、Lz,網(wǎng)絡(luò)就徹底失敗了。在給定 y 的情況下,INN 對 p(x|y) 的預(yù)測結(jié)果如下:

橙色區(qū)域為 INN 預(yù)測得到的 p(xi|y);灰色區(qū)域為整個數(shù)據(jù)集的 p(x) 分布;虛線是與測試集中的 y 相關(guān)聯(lián)的實際的 x 值。

從上述結(jié)果中也可以看出兩點:

  • INN 對各向異性指數(shù)和組織厚度的預(yù)測與實際值關(guān)聯(lián)性較小,這是因為 y 中并沒有包含這兩個參數(shù)相關(guān)的信息;
  • 血液密度與散射強(qiáng)度的預(yù)測結(jié)果呈現(xiàn)相關(guān)性,這是由物理性質(zhì)決定的,隨著血液密度增加,散射會增強(qiáng)。
  1. INN 在天體物理學(xué)上的應(yīng)用

這個例子就不詳細(xì)講述了,和醫(yī)學(xué)應(yīng)用差不多,效果也還是可以的:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容