Disentangled Inference for GANs with Latently Invertible Autoencoder
Abstract
生成對抗網絡(GANs)在機器學習中扮演着越來越重要的角色。然而,有一個基本的問題阻礙了它們的實際應用:缺乏對真實示例進行編碼的能力。解決這個問題的傳統方法是通過變分自動編碼器(VAE)學習GAN的編碼器。在本文中,我們證明了VAE/GAN框架的潛在空間的糾纏性是編碼器學習的主要挑戰。為了解決GAN中的糾纏問題和推理問題,我們提出了一種新的算法——Latently Invertible Autoencoder (LIA)。LIA算法的框架是將一個可逆網絡及其逆映射對稱地嵌入到VAE的潛在空間中。首先將LIA的解碼器decoder訓練成一個具有可逆網絡的標准GAN,然后通過將可逆網絡與LIA分離,從一個解糾纏的自編碼器那里學習部分編碼器,從而避免了隨機潛在空間造成的糾纏問題。在FFHQ人臉數據集和三個LSUN數據集上進行的實驗驗證了LIA/GAN的有效性
1 Introduction
深層生成模型在破解計算機視覺和其他學科的挑戰中發揮着越來越重要的作用,如高質量圖像生成 (Isola et al, 2017; Zhu et al, 2017; Karras et al, 2018a,b; Brock et al, 2018),文本到語音轉換 (van den Oord et al, 2016, 2017), 信息檢索 (Wang et al, 2017), 3D渲染 (Wu et al, 2016; Eslami et al, 2018), 和信號到圖像的獲取 (Zhu et al, 2018)。特別是,生成對抗網絡(GAN) (Goodfellow等,2014)展示了一種學習高維圖像數據分布的非凡能力。例如,通過StyleGAN算法(Karras et al, 2018b, 2019)生成的人臉和真實人臉變得無法區分。對抗性學習作為一種損失函數在許多機器學習應用中也被廣泛應用。
然而,普通GAN的一個關鍵限制是缺乏對真實樣本進行推斷的編碼器。也就是說,我們不能通過GAN架構直接推導出給定樣本x對應的隨機變量z。這是一個重要的問題,因為通過GANs的實際應用程序通常依賴於對潛在變量的操作,如域適應、數據增強和圖像編輯。
處理這一問題的現有辦法分為三類,摘要見表1。常用的方法稱為GAN反演,它基於生成樣本和相關實際樣本之間的均方誤差(MSE)的優化 (Radford et al, 2016; Berthelot et al, 2017)。這類算法主要存在兩個缺點:對z的初始化比較敏感,計算時間比較長。第二類稱為對抗性推理(Dumoulin et al, 2017; Donahue et al, 2017),該方法使用另一種GAN在對偶GANs框架中將z推斷為潛在變量。對抗性推理一般強調對象的高級表示,而不是旨在忠實地重建樣本 (Donahue and Simonyan, 2019)。執行GAN推斷的另一種自然方法是通過VAE算法的原理來調整編碼器,提供一個預先訓練過的GAN模型(Luo et al, 2017),或者端到端學習整個VAE/GAN架構(Larsen et al, 2016)。VAE和帶有共享的解碼器/生成器的GAN相結合的框架實際上是一種很好的GAN推理解決方案。然而,VAE/GAN所面臨的一個問題是,其重建精度往往低於單獨使用VAE的方法,重建樣本的質量往往低於從預先訓練的GANs中采樣生成的樣本的質量。我們將在第6節中對此進行更詳細的分析。
在本文中,我們驗證了潛空間的解耦是VAE/GAN編碼器學習質量的決定性因素。在此基礎上,我們建立了一個新的模型,稱為Latently Invertible Autoencoder (LIA)。LIA利用可逆網絡在潛在空間中以對稱的方式橋接編碼器和解碼器,從而通過dual學習形成LIA/GAN框架,用於GAN的生成和推理。LIA/GAN的體系結構如圖2所示。我們總結其主要優勢如下:
- 我們證明了潛在空間(z-空間)中的糾纏和中間潛在空間(y-空間)中的解糾纏的影響。我們認為,GAN訓練過程中形成的潛在空間的糾纏是造成VAE/GAN效果不佳的主要原因。在此基礎上,我們提出了LIA的體系結構和相應的兩階段訓練方案。
- LIA中可逆網絡的對稱設計帶來了兩個好處。先驗分布可以從一個解糾纏和展開的特征空間中精確地擬合,從而極大地緩解了推理問題。此外,由於在訓練編碼器時潛在空間是分離的,因此可以不需要變分推理來訓練編碼器VAE。
- 兩階段對抗式學習將LIA框架分解為具有可逆網絡的普通GAN和無隨機變量的標准自編碼器VAE。因此,編碼器的訓練是確定性的,是通過解耦潛在空間進行的,這意味着我們的模型在訓練VAE時不會受到糾纏問題的影響。
- 我們在推理和生成/重建時將LIA與最先進的GAN模型相比較。在FFHQ和LSUN數據集上的實驗結果表明,該算法取得了較好的性能。
該圖可見該架構就像是styleGAN+encoder
2 Entanglement in GANs
在本節中,我們對GANs中糾纏和解糾纏的影響、數學原理以及對圖像重建的意義進行了實證分析。
2.1 Entanglement from Random Mapping
對於一個GAN模型,有,其中g是一個生成器,z通常是從一個帶有均值為0和單位方差的高斯先驗中采樣得到的,即
。為了可視化GANs中的耦合,隨機采樣zi和zj並在他們之間進行線性插值。對應的生成樣本能夠通過
獲得。如通過在FFHQ數據集中訓練得到的StyleGAN模型得到的可視化在圖1(a)中的結果可知,在從人臉
(對應zi)變形(即插值)到人臉
(對應zj)時,人臉的身份有顯著的變化,這意味着在
中的人臉並不隨着在z-space的線性變化進行連續變化。作為對比,我們通過一個中間潛在變量
去建立映射函數,就和styleGAN所做的一樣,,其中φ是用來生成與z有相同維度的輸出向量y的多層感知機。從圖1(c)可見,與y插值相關的人臉path離直線(灰色虛線)的距離比與z插值相關的人臉path近,同樣的其對應的生成人臉的變化也更平滑,如圖1(b)所示。
實際上,這是任意兩個變化較大的人臉之間的z和y插值的一個非常普遍的現象。根據Karras et al (2018b),我們將生成人臉的折疊z空間稱為糾纏潛在空間,中間潛在空間(即y)稱為解糾纏潛伏空間。z帶來的糾纏是由在隨機采樣中訓練的GAN招致的,因為沒有幾何約束保證z、之間的空間鄰接的相關性。結論就是當人臉
和人臉
在感知上是相似的時,其相關zi和zj的空間位置不是一定要鄰近的。y-space的解糾纏性將在2.3部分分析
2.2 Inference Difficulty from Entanglement
為了不失一般性,我們將優化寫為:
其中表示step為t時z的梯度。這里z可能是先驗或VAE中encoder的輸出,即
。為了使問題容易理解,我們假設生成樣本
也是一個人臉。讓
表示人臉
(或一個目標類)的身份。如果
能與
在語義上可區分,且
如圖1(a)所示,那么糾纏就會出現,其中z0和zT是初始和收斂目標。那么在圖1(c)所示的優化過程中,zt路徑可能會發生糾纏,導致算法難以在正確的極小值處收斂。通過以上分析,我們認為VAE/GAN和基於MSE的優化方法無法很好地對GANs進行推理的關鍵是z空間的糾纏問題。實踐證明,在優化過程中,糾纏會導致梯度波動過大,影響算法的收斂,這將在6.5節進行分析。
2.3 Disentanglement and Lipschitz Continuity
GANs的解糾纏可以用Lipschitz連續性來表示。對於GAN模型,我們可以編寫:
其中C是Lipschitz常量,vi和vj是變量。不等式(2)說明了兩個生成樣本之間的距離不大於變量vi和vj之間的距離乘以一個常數的值。對於映射
,我們可以很簡單地找到不滿足等式(2)的失敗案例,如圖1所示。可是對於來自中間潛在空間的映射
,Lipschitz連續性在一些條件下是滿足的,即:
可見,我們需要g(y)的 Jacobian矩陣 J,即Jij = 。被(Karras et al, 2019) 揭露的等距g-mapping說明了當
滿足時,
成立,其中
表示單位矩陣,a時一個常量,T表示轉置。因此Jacobian regularizer被應用在(Karras et al, 2019)中去加強關於y的生成器的解耦。此外,spectral normalization(光譜歸一化,Miyato et al, 2018)也有助於Lipschitz的連續性。
在實際應用中,我們發現映射網絡后的Lipschitz連續性足以通過嵌入GANs中的深映射y = 來建立一個解糾纏的中間潛伏空間,如圖1所示。Karras等(2019)采用的路徑長度指數可以反映Lipschitz連續性的性質。為了進一步揭示這一現象,我們分別比較了隨機采樣z和y生成的人臉的路徑長度。從表2可以看出,來自y的路徑長度要比來自z的路徑長度短得多,這證明了y空間接近Lipschitz,因此更加解耦。
所以這里不采用直接用z來生成圖像,而是先將z映射成y,再用y生成圖像
Lipschitz連續性可以保證潛在空間與生成樣本空間的空間一致性,有利於推理任務的完成。因此,我們設計了基於解耦的y空間而不是z空間的GAN推理算法。
3 Latently Invertible Autoencoder
如前面部分所分析的,為了獲得解耦的潛在編碼,我們需要在原始的GAN結構中嵌套一個映射網絡,即。同時,encoder f直接推理y去滿足解耦性。所以我們需要建立一個反向的映射去獲得來自y的z,即
,其中
。因此一個可逆神經網絡可以建立在z和y之間的可逆性。LIA框架根據該規則建立起來。細節如下所示。
3.1 Neural Architecture of LIA
如圖2(a)所示,在VAE的潛在空間對稱嵌入一個可逆神經網絡,其映射過程如圖所示:
其中Φ為可逆網絡的深層復合映射。LIA首先對輸入數據x進行非線性降維,並將其轉換為低維解耦特征空間Rdy。f(x)對於LIA的作用可以看作是展開底層的數據manifold。因此,在該解耦特征空間中,線性插值和矢量算法等歐幾里得運算更加可靠和連續。然后我們建立了一個從特征y到潛在變量z的可逆映射,而不是直接將原始數據映射到潛在變量的VAEs。通過變換矩陣z的可逆性,可以准確地恢復特征y,這是使用可逆網絡的優點。然后將恢復的特征y送入部分解碼器g(y),生成相應的數據。如果可逆網絡的
被刪除了,LIA就變成了一個標准的autoencoder,即
一般來說,任何可逆網絡都適用於LIA框架。我們在實踐中發現,Dinh等人(2015)使用的一個簡單的可逆網絡足以構造從特征空間Rdy到潛在空間Rdz的映射。和
分別是x和z的上下分量的形式。然后將可逆網絡建立為:
其中可以是任意可微函數的變換。或者,人們可以嘗試利用具有仿射耦合映射的復雜可逆網絡來完成更具挑戰性的任務 (Dinh et al, 2017; Kingma and Dhariwal, 2018)。正如Dinh等人(2015)所做的那樣,為了簡單,我們設置
為一個帶有leaky ReLU激活的多層感知機。
3.2 Reconstruction Loss and Adversarial Learning
為了保證能精確重建 x̃ ,(變分)autoencoders的傳統方式是使用距離或直接計算x和x̃之間的交叉熵。這里,我們利用了pixel損失和perceptual損失,其被證明對圖像細節的變化更有魯棒性(Johnson et al, 2016)。讓ε表示特征提取器,如VGG (Simonyan and Zisserman, 2014)。然后我們就可以表示損失為:
其中β1是平衡兩個損失的超參數。這種混合重建損失的可行性在不同的圖像到圖像的轉換任務中是明顯的。ε本質上是產生輸入x和輸出x̃表征的函數。ε的獲得是相當靈活的。它可以通過監督學習或無監督學習獲得,這意味着可以使用類標簽,如VGG(Simonyan and Zisserman, 2014)或不使用類標簽 (van den Oord et al, 2018)來訓練ε。
在autoencoder-like架構中,基於norm的重構約束通常會導致輸出圖像模糊(Lehtinen et al, 2018)。這個問題可以通過對抗性學習來解決(Goodfellow et al, 2014)。為此,鑒別器c用來平衡x和x̃之間比較的損失。使用Wasserstein GAN(Arjovsky et al, 2017; Gulrajani et al, 2017),我們可以將優化目標寫為:
其中分別表示真實數據和生成數據的概率分布。γ是正則化的超參數。R1正則化器在(Mescheder et al, 2018)中被證明收斂更穩定。在實踐中, 蒙特卡洛抽樣近似得到的sliced Wasserstein距離優先執行
的比較(Karras et al, 2018a)。
4 Two-Stage Training
我們提出了一種兩階段訓練方案,將框架分解為兩部分,分別進行端到端的良好訓練,如圖2(b)和(c)所示。首先,將LIA的解碼器訓練為具有可逆網絡的GAN模型。其次,將連接特征空間和潛在空間的可逆網絡從架構中分離出來,將框架簡化為一個沒有變分推理的標准自編碼器。因此,這種兩階段設計防止了耦合問題。
4.1 Decoder Training
ProGAN (Karras et al, 2018a), StyleGAN (Karras et al, 2018b, 2019), 和BigGAN (Brock et al, 2018) 能夠從一些先驗分布的隨機噪聲采樣中生成逼真的圖像。那自然就會假設如果我們能找到給定x的潛在變量,這樣的GAN模型適用於精確恢復x̃。也就是說,我們可以分別在LIA框架中訓練關聯GAN模型。為了做到這一點,我們為第一階段的訓練挑選出一個標准的GAN模型,如圖2(b)所示,其圖解可以被形式化為:
z直接從一個預定義的先驗中采樣。根據Wasserstein GAN原理,優化目標為:
上標∗表示對應映射的參數已經學過了。值得注意的是,可逆網絡在這里的作用就是它的變換可逆性。與歸一化流相比,我們對z和Φ(y)的概率沒有任何限制。我們在生成器前附加一個可逆網絡的策略可以潛在地應用於任何GAN模型。
這一步的作用就是用來訓練g生成器,讓其由z->y得到的重構圖與真實的圖是相似的,將生成器訓練好,然后將其參數frozen用於訓練下面的f(其實可以等價於訓練一個styleGAN模型,其中的y對應於其的w)
4.2 Encoder Training
在LIA結構中,可逆網絡以對稱的方式嵌入到潛在空間中,即。可逆網絡的這一獨特特性使我們能夠從LIA的框架中分離出可逆網絡。這樣我們就得到了一個無隨機變量的常規自編碼器,如圖2(c)所示。其圖解為:
在實踐中,感知損失的特征提取器ε是在ImageNet數據集上預先訓練的權重用到conv4的VGG。在第一階段GAN訓練后,f的參數被學習為:
其中,β2是超參數,c**是鑒別器的微調參數,這意味着當生成器凍結時鑒別器會隨着編碼器的訓練進行微調。上述服務於圖2(c)架構的優化在計算機視覺中得到了廣泛的應用。它是用於不同圖像處理任務的各種GANs的主干框架 (Isola et al, 2017; Zhu et al, 2017)。但是對於LIA來說,它要簡單得多,因為我們只需要學習部分編碼器f。這種兩階段訓練帶來的簡單性可以強制編碼器收斂到更精確的推斷。
這一步就是使用上一步訓練好的生成器g,然后再訓練出一個f,讓該f能夠輸入一張圖x,得到一個潛在編碼y,且這個y就能夠作為g的輸入,並能很好地重構出輸入的圖x
5 Related Work
我們的LIA模型與用對抗性學習解決VAEs的推理問題的工作以及為GANs設計編碼器的工作有關。GAN與VAE的整合可以追溯到VAE/GAN (Larsen et al, 2016)和隱式自編碼器(Makhzani et al, 2015; Makhani, 2018)。這些方法遇到端到端訓練的困難,因為梯度在經過深層復雜架構的潛在空間后容易變得不穩定(Bowman et al, 2015; Kingma et al, 2016)。此外,還有一個有趣的嘗試,以對抗的方式訓練VAE (Ulyanov et al, 2017; Heljakka et al, 2018) 。這些方法面對的是執行推斷和比較真/假分布的編碼器角色之間的權衡。這很難調節。因此,我們更傾向於向原始GAN的框架中添加一個必不可少的鑒別器。
LIA的相關工作即將 VAE 與 反向自回歸流(Kingma et al, 2016) 和 基於潛在流的VAE方法(即VAEs帶有使用歸一化流(Su and Wu, 2018; Xiao et al, 2019)條件化的潛在變量)相結合的模型。這三種模型都需要優化歸一化流的對數似然,這與LIA有本質的不同。LIA中的可逆網絡僅用於建立耦合z空間與解耦y空間之間的可逆性。對於LIA中涉及的歸一化流,不存在概率優化。還有一些替代的嘗試,如指定使用歸一化流(Grover et al, 2017)的GAN的生成器 或使用部分可逆網絡 (Lucas et al, 2019)將圖像映射到特征空間。這些方法都存在高維的高復雜度計算問題。Luo et al(2017)的兩階段訓練方法存在耦合問題。
值得注意的是,我們這里關注的重建任務與最近的表征學習工作不同,表征學習使用對抗式推理來學習特征進行識別和分類 (Dumoulin et al, 2017; Donahue et al, 2017; Donahue and Simonyan, 2019)。我們的主要目標是了解真實圖像的潛在代碼,並進一步忠實地從潛在代碼中重建真實圖像,用於后續任務,如圖像編輯。圖像編輯的性能完全取決於重建精度,而對抗性推理的工作如 Dumoulin et al (2017); Donahue et al (2017); Donahue and Simonyan (2019) 更喜歡學習對分類任務有利的高級語義特征。這些目標本質上是不同的。
我們意識到一個並行的工作,稱為對抗潛在自動編碼器(Adversarial Latent Auto-Encoders,ALAE) (Pidhorskyi et al, 2020),提出了一個類似的想法。ALAE和我們的LIA方法有四個關鍵的區別。
首先,ALAE使用的基於樣式的編碼器encoder比我們的更加復雜。對於LIA,編碼器的架構沒有特殊的約束。其次,ALAE的編碼器也是用於重構損失的特征提取和鑒別器的主要模塊,可以對整個算法進行端到端的訓練。然而,LIA可以與任何GAN框架集成,因為它具有更靈活的模塊化設計和兩階段訓練方案。第三,我們明確地解釋和揭示了GAN推理需要在確定性y空間而不是隨機z空間中執行的潛在原因。最后,對於LIA, y空間和z空間是完全可逆的,這為相互研究提供了一種方便的方法。我們將在實驗部分演示這種可逆性的應用。
6 Experiments
對於實驗設置,我們用StyleGAN的生成器實例化LIA的解碼器decoder(Karras et al, 2018b)。不同之處在於我們用可逆網絡代替了StyleGAN中的映射網絡(MLP)。可逆網絡的層數為8。該鑒別器的超參數分別為:等式(8)的γ=10,等式(7)的β1=5e-5,等式(12)的β2=0.1。對於式(7)中的感知損失,我們從VGG權重中取其ε = conv4_3。
我們比較的生成模型是VAE和GAN (VAE/GAN)相結合的模型與基於MSE的GAN反演模型(Radford et al, 2016; Berthelot et al, 2017; Lipton and Tripathi, 2017),以及反向學習推理模型(ALI)(Dumoulin et al, 2017)。為了評估可逆網絡的必要性,我們還訓練了一個編碼器和一個帶有原始多層感知器的StyleGAN,表現為圖3的最后一列。兩階段的訓練方案與LIA一樣使用。StyleGAN的產生和鑒別器與StyleGAN完全相同。
為了定量評估度量,我們使用Fr ́echet inception distance (FID), sliced Wasserstein distance (SWD), and mean square error (MSE)。這三個度量常用於度量GANs 的數字精度(Ulyanov et al, 2017; Karras et al, 2018a; Donahue et al, 2017; Karras et al, 2018b)。我們直接使用ProGAN (Karras et al, 2018a)作者發布的代碼。用於z的Gaussian先驗維度為512.
6.1 FFHQ Face Database
所有模型首先在StyleGAN的作者創建的Flickr-Faces-HQ (FFHQ)數據庫上進行測試,作為基准。FFHQ包含70,000張高質量的人臉圖像。我們將前65000個人臉作為訓練集,剩下的5000個人臉按照數據集的確切順序進行重構測試。我們不通過隨機抽樣來分割數據集,因為感興趣的讀者可以用我們的實驗方案精確地復制所有報告的結果。
圖3顯示了所有模型的重建人臉。很明顯,LIA的表現要比其他人好得多。ALI和VAE重建的臉看起來是正確的,但是質量很普通。ALI和VAE的思想是優雅的。他們的表現可能會因新技術而得到改善,如神經結構的逐步生長或基於style結構的成長。基於MSE的方法在人臉正常的情況下,可以得到與LIA質量相當的人臉部分。但當面部的變化變大時,這種方法就失敗了。例如,失敗來自於長頭發、帽子、胡須和大的姿勢。有趣的現象是,使用相同的訓練策略,只有編碼器的StyleGAN不能成功恢復目標人臉,即使它因為StyleGAN生成器,有能力生成高質量的真實人臉。這表明,可逆網絡對LIA的工作起着至關重要的作用。表3中的定量結果顯示了LIA的一致性優勢。
利用LIA進行圖像重構,方便了圖像的語義編輯。圖4是對重建人臉屬性的處理結果,圖5是對真實人臉的風格混合。
6.2 LSUN Database
為了在差異較大的數據上進一步評價LIA,我們使用了大型LSUN數據庫(Yu et al, 2015)中的三個類別,即cat、car和bedroom。對於每個類別,通過排序算法(Zhou et al, 2003)從數據集中的前50萬幅圖像中選取10萬幅圖像。將貓和卧室圖像分別調整為128×128,汽車圖像調整為128×96進行訓練。我們采用子集,因為它不會花費太長的訓練時間來收斂,而仍然保持數據的復雜性。這些子集將供評價使用。
圖6顯示了LIA重建的對象忠實地維護了原始對象的語義和外觀。例如,貓的胡須被恢復,表明LIA能夠恢復非常詳細的信息。可以看出,LIA明顯提高了重構質量。提高主要來自於LIA的兩階段訓練。通過對抗性學習訓練的解碼器保證了生成的圖像的真實感(第一階段)。通過對感知損失和對抗性損失的確定訓練,保證了可以更精確地獲得潛在特征向量(第二階段)。通過將可逆網絡分離編碼器和解碼器的設計,避免了學習編碼器時后驗概率的優化,使兩階段訓練成為可能。圖7顯示了重建對象上的插值結果。我們可以看到,在變形過程中,物體被平滑地變形,並且保存了逼真的效果。在FFHQ和LSUN數據庫上的實驗結果驗證了可逆網絡的對稱設計和兩階段訓練成功地解決了GAN推理問題。
6.3 Finetuning the Latent Code to a Specific Image
進一步提高重構精度的方法有兩種:增加中間隱藏空間的維數和對模型進行微調以適應特定圖像。較大的潛在空間可以保存更多的圖像語義信息,而對圖像進行微調可以恢復物體或場景的特定特征。Image2StyleGAN算法(Abdal et al, 2019)就是這樣一個例子,該算法通過優化基於MSE的GAN反演,將不同的ys分配到StyleGAN生成器的不同層。不同的ys跨越一個高維潛在空間。正如第2節中分析的那樣,GAN反演嚴重依賴於y的初始化,即使對於解耦的情況也是如此。原有的Image2StyleGAN方法采用y的平均值作為初始值來改善這一問題。為了說明該算法推理能力的優越性,我們比較了利用GAN反演進行模型微調的三種初始化情況:隨機抽樣、平均值和LIA編碼器encoder的輸出。關聯優化是基於重構損失的:
其中,綜合網絡g已經被訓練好了,並且在這里的反演過程中被frozen住,不進行更新。對於我們的方法,我們取y的初始值作為編碼的潛在編碼y0 = f(x)。
如圖8所示,LIA重構的人臉是最好的。例如,Monnalisa右眼附近的發型可以從LIA的潛在代碼中正確恢復,而Image2StyleGAN和隨機抽樣都失敗了。圖9對比了面部局部部位的詳細重建質量。從圖11所示的損失可以定量地驗證LIA的一致性優勢。
6.4 Disentanglement vs. Entanglement for GAN Inversion
為了進一步驗證第2節中關於解耦和耦合的分析,我們也在上一節中對耦合z空間進行了實驗。采用(13)中相同的GAN反演優化方法。對於z空間,三種算法的初始z0是通過可逆網絡由y-to-z映射得到的,即z0 = Φ(y0)。即,三種算法在z空間和y空間的初始化中使用完全相同的初始重構,如圖10中的第二行所示。從圖10(c)和(d)可以看出,y空間的重構結果明顯好於z空間。這三種算法都不能在z空間的正確極小值處收斂。一個有趣的觀察是,對於隨機初始化,反演算法能夠在y空間中獲得幾乎正確的重構,而在z空間中,它完全不能為DiCaprio(即小李子)的情況生成有意義的臉。這說明變量的耦合會導致算法的收斂性變差。
6.5 Disentanglement Facilitates Optimization
為了進一步揭示LIA中解糾纏的重要性,我們研究了兩階段訓練中編碼器學習編碼器時,在兩種不同的解碼器情況下編碼器的梯度。第一種情況是像VAE一樣直接應用kl-散度來優化隨機潛空間。編碼器和解碼器的映射是,其中
是StyleGAN的映射網絡(MLP) 。這是通過變分推理學習GAN算法編碼器的傳統方法。第二個是我們的LIA的架構,用於第二階段的訓練,即由於可逆網絡的對稱設計去除了潛在空間。圖12清楚地說明了這兩種情況下的梯度差異。用於變分推理的梯度波動率很高,而相關的損失沒有得到有效的減少,這意味着訓練過程中的梯度是有噪聲的,並不總是有信息的。這可能表明,潛在空間中的耦合對通過變分推理訓練編碼器造成了問題。相反,編碼器的梯度對於LIA在不同層之間是相當穩定的,並且損失單調下降,顯示了通過可逆網絡解耦訓練的重要性。
7 Conclusion
提出了一種新的生成模型——隱可逆自編碼器(Latently Invertible Autoencoder,LIA),該模型可以根據概率先驗生成圖像樣本,同時對給定樣本推斷出精確的潛在編碼。LIA的核心思想是在編碼器中對稱嵌入一個可逆網絡。然后將神經結構作為兩個分解模塊進行對抗性學習訓練。通過兩階段訓練的設計,該解碼器decoder可以替換為任何GAN發生器,實現高分辨率圖像生成。可逆網絡的作用是消除任何概率優化和將先驗與展開的特征向量連接起來。通過對FFHQ和LSUN數據集進行重構(推理和生成)的實驗,驗證了該方法的有效性。通過LIA對潛在代碼的精確推斷,未來的工作將是促進基於GAN的模型的各種應用,例如圖像編輯、數據增強、few-shot學習和3D圖形。
總結:
其實這個論文的第一階段其實就是訓練得到一個styleGAN,z等價於styleGAN中的z(耦合的),y相當於styleGAN中的w(解耦的);第二階段其實就是訓練一個encoder,能夠根據輸入得到一個潛在編碼y(即styleGAN解耦的w),然后將這個潛在編碼最為styleGAN的w輸入就能夠很好地重構出這張圖
它說明了訓練一個encoder去得到一個解耦的w直接作為styleGAN的輸入去重構圖像的效果 是 比訓練一個encoder去得到耦合的z,然后將其輸入mapping網絡中得到解耦的w,再去重構圖像的效果是好很多的
所以想要做圖像編輯,訓練encoder或微調來得到潛在編碼時,記得直接訓練得到解耦的w編碼效果會更好