https://ceyuan.me/SemanticHierarchyEmerge
Abstract
盡管生成對抗網絡(GANs)在圖像合成方面取得了成功,但對於生成模型在深層生成表征中學到了什么,以及如何由最近GANs引入的分層隨機性構成逼真的圖像,人們還缺乏足夠的理解。在這項工作中,我們展示了將高度結構化的語義層次作為從最先進的GAN模型(如StyleGAN和BigGAN)的生成表征得到的合成場景的變量因素。通過在不同的抽象級別上探索具有廣泛語義集的分層表示,我們能夠量化在輸出圖像中發生的激活和語義之間的因果關系。這樣的量化確定了GANs在構建場景時學習到的人類可理解的變量因素。定性和定量的結果進一步表明,被帶有分層潛在編碼的GANs學習得到的生成表征專門合成了不同的層次語義:早期層往往決定了空間布局和配置,中間層控制分類對象,和后來的層最后渲染場景屬性以及配色方案。識別這一組可操作的潛在變化因素有助於語義場景操作
1 Introduction
深度神經網絡的成功源於表示學習,它識別了高維觀察數據[5]背后的解釋因素。之前的研究表明,許多概念檢測器會自發地出現在為分類任務而訓練的深層表征中。例如,Gonzalez-Garcia等[10]研究表明,用於物體識別的網絡能夠檢測出具有語義的物體部分,Bau等[3]證實,來自分類圖像的深度表示能夠在不同的層次上檢測出不同的分類概念。
通過對深層表征及其結構的分析,可以了解深層特征[22]的泛化能力以及特征在不同任務[37]之間的可轉移性。但目前對深層表征的解釋主要集中在判別模型上[41,10,39,1,3]。最近的生成對抗網絡(GANs)[11,16,17,6]能將隨機噪聲轉換成高質量的圖像,然而,可學習的生成表征的特性以及一個真實圖像是如何由GAN的生成器的不同層組合而成的仍較少探討。
眾所周知,卷積神經網絡(CNNs)的內部單元在訓練對場景[41]進行分類時,可以作為物體檢測器。代表和檢測最有信息的對象到一個特定類別提供了一個用於分類場景的理想的解決方案,如沙發和電視這兩個對象代表客廳這個類,而床和燈是卧室。然而,場景的合成需要更多的知識來學習深層生成模型。具體地說,為了繪制高度多樣化的場景圖像,像我們人類,可能需要深度表征不僅學會生成與一個特定的場景類別相關的每個對象,還要能決定底層房間布局以及呈現各種場景屬性,例如,照明條件和配色方案。最近解釋GANs[4]的研究在可視化 說明中間層的內部過濾器是專門用於生成某些對象的,但如果僅從對象方面研究場景合成,這將難以充分了解GAN是如何組成一個寫實的圖像的,因為它包含多種來自布局級別,類別級別和屬性級別的變量因素。原始的StyleGAN的研究[17]指出,分層潛在編碼實際上控制着從粗到細的合成,但這些變化因素如何組合在一起以及如何量化這些語義信息仍然是未知的。不同的是,這項工作在層次生成表征上給出了一個更深層次的解釋,在這個意義上,我們在多個抽象層次,包括布局,分類對象,屬性,和色彩方案將這些分層的變量因素與人類可以理解的場景變化匹配起來。圖1顯示了正確識別相應層時在不同級別上的操作結果。
以最先進的StyleGAN模型[17]為例,我們揭示了高度結構化的語義層次從深度生成表征中出現,這些表征帶有經過訓練的用於合成場景的分層隨機性,甚至沒有使用任何外部監督。分層表示首先用不同抽象層次上的一組廣泛的視覺概念來探討。通過量化分層激活和出現在輸出圖像的語義之間的因果關系,我們能夠確定在使用分層潛在編碼的GAN模型的不同層之間最相關的變量因素:早期層指定空間布局,中間層組成category-guided對象,后層渲染整個場景的屬性和配色方案。我們進一步表明,從布局,對象,場景屬性和色彩方案識別這樣一組可操作的變量因素,有利於語義圖像處理(如圖1所示),具有很大的多樣性。提出的操作技術進一步推廣到其他GANs,如BigGAN[6]和ProgressiveGAN[16]。
2 Related Work
Deep representations from classifying images. 許多人嘗試研究為分類任務而訓練的CNN的內部表征。Zhou等人[41]通過簡化輸入圖像分析了隱藏單位,看看哪個上下文區域給予最高的響應,Simonyan等[31]應用反向傳播技術計算特定圖像類的特點映射,Bau等[3]在分割掩模的援助下解釋隱藏表征,Alain和Bengio[2]訓練獨立線性探針分析不同層之間信息的分離性。也有一些研究轉移CNN的特征來驗證學習的表征如何適合不同的數據集或任務[37,1]。此外,通過將給定的表征回圖像空間來反轉特征提取過程[39,23,21],還可以了解CNN在區分不同類別時實際上學習了什么。然而,這些為分類網絡開發的解釋技術不能直接應用於生成模型。
Deep representations from synthesizing images. 生成式對抗網絡(GANs)[11]極大地促進了圖像的合成。一些最近的模型[16,6,17]能夠生成逼真的人臉、物體和場景,使GANs適用於真實世界的圖像編輯任務,如圖像處理[29,34,32,36]、圖像繪制[4,25]和圖像樣式轉換[43,8]。盡管取得了如此巨大的成功,但GANs究竟學會了什么,才能制作出如此多樣而又真實的圖像,這一點仍然不確定。Radford等人[27]指出了GAN潛在空間中的矢量算法現象,然而,如何發現訓練良好的模型中存在何種語義以及如何構造這些語義來合成高質量的圖像仍然是一個未解決的問題。最近的一項工作[4]分析了GAN中生成器的單個單元,發現它們學會自發地合成信息豐富的視覺內容,如物體和紋理。同時進行的工作[14,9]也分別通過學習語義對GANs的可操縱性和記憶性進行了探索。與它們不同的是,我們的工作定量探討了在分層生成表征中多層語義的出現。
Scene manipulation and editing. 之前的工作還包括編輯場景圖像。Laffont et al[18]定義了40個瞬時屬性,並設法將類似場景的外觀轉移到圖像中進行編輯。Cheng等[7]提出了言語引導圖像解析來識別和操縱室內場景中的物體。Karacan等人學習了一種基於預定義布局和屬性的條件GAN來合成室外場景。還有一些作品[19,43,13,20]研究了圖像到圖像的轉換,可以用來將一個場景的風格轉換到另一個場景。與他們不同的是,我們通過解釋從受過良好訓練的GANs的生成表示中出現的層次語義來實現場景操作。除了圖像編輯之外,這種解釋也讓我們更好地了解生成模型是如何產生逼真的合成效果的。
3 Variation Factors in Generative Representations
3.1 Multi-Level Variation Factors for Scene Synthesis
想象一位藝術家在畫一幅客廳的畫。在畫每一個物體之前,第一步是選擇一個透視圖,建立房間的布局。在空間結構設置好之后,下一步就是添加一些通常會出現在客廳里的物品,比如沙發和電視。最后,藝術家會用特定的裝飾風格來提煉畫面的細節,例如,暖色或冷色,自然照明或室內照明。上面的過程反映了一個人如何從多個抽象層次解釋一個場景。同時,給定一幅場景圖像,我們可以提取多個層次的屬性,如圖2所示。相比之下,像GANs這樣的生成模型是完全端到端訓練的場景合成方式,不需要事先了解繪制技巧和相關概念。盡管如此,經過訓練的GANs還是能夠制作出逼真的場景,這讓我們懷疑GANs是否已經掌握了任何人類可以理解的繪畫知識,以及自然地掌握了場景的變量因素。
3.2 Layer-wise Generative Representations
一般來說,現有的生成模型采用隨機采樣的潛在編碼作為輸入,輸出盡可能真實的圖像合成。這種從潛在編碼到合成圖像的一對一映射非常類似於判別模型中的特征提取過程。因此,在本作品中,我們將輸入的潛在代碼作為生成表征,它將唯一地決定輸出場景的外觀和屬性。另一方面,目前最先進的GAN模型(如StyleGAN[17]和BigGAN[6])引入分層隨機性,以提高訓練穩定性和綜合質量。如圖3所示,與僅將潛在編碼作為第一層輸入的常規生成器相比,具有分層隨機性的改進生成器將隨機潛在編碼帶入所有層。因此,我們將它們視為分層的生成表征。值得一提的是,越來越多的最新GAN模型繼承了使用分層潛碼實現更好生成質量的設計,如SinGAN[28]和HoloGAN[24]。
為了探究GANs如何通過學習分層變化因素來產生高質量的場景合成,以及每一層的生成表征在這個過程中起着什么作用,本工作旨在建立變化因素與生成表征之間的關系。Karras等[17]已經指出,分層隨機度的設計實際上控制了從粗到細的合成,然而,“粗”和“細”到底指的是什么仍然不確定。不同的是,為了使變化因素與人的感知相一致,我們將它們分為四個抽象層次,包括布局、分類對象、場景屬性和配色方案。我們在第4節進一步提出了一個框架,以量化輸入生成表征和輸出變異因素之間的因果關系。我們驚奇地發現GAN以一種與人類高度一致的方式合成了一個場景。在所有的卷積層上,GAN設法分層地組合這些多層次的抽象。其中,GAN在前期構建空間布局,在中期綜合指定類別的對象,在后期呈現場景屬性和配色方案。
4 Identifying the Emergent Variation Factors
如第3節所述,我們的目標是從四個不同的抽象層次解釋場景合成模型學習到的潛在語義。先前在幾個場景理解數據庫上的努力[42,33,18,26]使一系列分類器能夠預測場景屬性和類別。此外,我們還使用幾個現有的主要用於布局檢測[40]和語義分割[35]的分類器,來幫助分析合成的場景圖像。具體來說,給定一個圖像,我們能夠使用這些分類器來獲得關於各種語義的響應分數。然而,僅僅預測語義標簽遠不能識別GANs從訓練數據中捕捉到的變量因素。更具體地說,在所有的多層次候選概念中,並不是所有的概念都對一個特定的場景合成模型有意義。例如,“室內照明(indoor lighting)”永遠不會出現在橋、塔等室外場景中,而“封閉區域(enclosed area)”則總是出現在卧室、廚房等室內場景中。因此,我們提出了一種方法來定量地識別出現在學習的生成表征內部的最相關和可操作的變量因素。圖4說明了識別過程,包括兩個步驟,即探查(4.1節)和驗證(4.2節)。這樣的識別使不同的場景操作成為可能(第4.3節)。
4.1 Probing Latent Space
GAN的生成器G(·)通常學習潛在空間到圖像空間X的映射。潛在向量
可以認為是GAN學習到的生成表示。要研究Z內部變化因素的出現,首先需要從Z中提取語義信息,這不是小事。為了解決這個問題,我們采用合成圖像,x = G (z),作為一個中間步驟,並使用一組廣泛的現成的圖像分類器來幫助為每個采樣的潛在編碼z分配語義分數。以“室內照明(indoor lighting)”為例,場景屬性分類器能輸出一個輸入圖像看起來像有室內照明的概率,用其作為語義分數(semantic score)。回想一下,我們把場景表現分為布局、對象(類),和屬性水平,我們引入布局估計器,場景分類識別器,和屬性分類器分別從這些抽象級別預測語義分數,分別形成一個分層語義空間S。在建立一個從潛在空間
到語義空間B的一對一的映射后,,我們通過其當做一個bi-classification問題去搜索每個概念的決策邊界,如圖4中所示。這里以“室內照明(indoor lighting)”為例,邊界將隱藏空間
划分為兩組,即室內照明是否存在。
4.2 Verifying Manipulatable Variation Factors
在探索了一組廣泛候選概念的潛在空間之后,我們仍然需要找出哪些作為變量因素與生成模型最相關。關鍵問題是如何定義“相關性”,或者說,如何驗證學習的表示是否已經編碼了特定的變化因素。我們認為,如果目標概念可以從潛在空間的角度進行操作(例如,通過簡單地改變潛在編碼來改變合成圖像的室內照明狀態),那么GAN模型能夠在訓練過程中捕捉到這些變化因素。
如上面所說,我們已經得到了用於每個候選的分離邊界。表示這些邊界的法向量,其中C是候選的總數。對於某邊界,如果我們沿着其法向量(正向)的方向移動潛在編碼z,語義分數應該相應變化。因此,我們建議對不同的潛在編碼重新評分,以量化一個變化因素如何與分析的目標模型相關。如圖4所示,該過程可表示為:
其中表示K個樣本的平均值,使度量更准確。λ是一個固定的移動步長。為了使該度量能夠在所有候選中進行對比,所有法向量
都歸一化到固定norm 1,λ設置為2。使用重新評分技術,我們能夠在所有C個概念中簡單排序分數
去檢索最相關的潛在變量因素。
4.3 Manipulation with Diversity
在識別語義變量因素的基礎上,提出了進一步操縱圖像的幾種方法。圖5顯示了三種類型的場景操作。一種簡單而直接的方法,稱為Independent操作,是將代碼z沿着具有一定語義的法向量ni移動步長λ。操作編碼輸入到生成器中去生成新圖像。操縱的第二種方法使場景編輯與一個以上的變量因素聯合。我們稱之為Joint操作。以兩個變化因素(法向量n1和n2)為例,將原編碼z如
同時沿兩個方向移動。其中,λ1和λ2是分別控制這兩種語義對應的操作強度的步長參數。由於這兩種操作方法能夠從多個抽象級別進行更精確的控制,因此我們還將隨機性引入操作過程以增加多樣性,即Jittering操作。關鍵思想是用隨機采樣的噪聲
對操縱方向進行細微的滲透。可以表示為
5 Experiments
在生成過程中,每一層的深層表示,特別是StyleGAN[17]和BigGAN[6],實際上是直接從投影的潛在編碼派生出來的。因此,我們認為潛在編碼是生成表示,它可能與分類網絡中的傳統定義略有不同。我們對GANs中各層次發電機的變異因子進行了詳細的實證分析。我們表明,變異因子的層次出現在深層生成表征作為學習合成場景的結果。
實驗部分組織如下:第5.1節介紹了我們的實驗細節,包括生成模型,訓練數據集和我們使用的現成分類器。第5.2節對最新的StyleGAN模型[17]進行了分層分析,定性和定量地驗證了多層變化因素被編碼在潛在空間中。在第5.3節中,我們探討了GANs如何表示分類信息,如卧室和客廳。我們揭示了GAN在一些中間層上合成共享對象。僅通過控制它們的激活,我們可以很容易地覆蓋輸出圖像的類別,比如將卧室變成客廳,同時保留其原有的布局和室內照明等高層屬性。第5.4節進一步表明,我們的方法可以忠實地識別與特定場景相關的最相關的屬性,促進語義場景操作。第5.5節對重評分技術和分層操作進行了消融研究,以顯示我們的方法的有效性。
5.1 Experimental Details
Generator models. 本研究采用最先進的深度生成模型進行高分辨率場景合成實驗,包括StyleGAN[17]、BigGAN[6]和PGGAN[16]。其中,PGGAN采用了傳統的生成器結構,其潛在編碼只被輸入到第一層。不同的是,StyleGAN和BigGAN通過向所有卷積層輸入潛在編碼,引入了分層隨機性,如圖3所示。我們的分層分析闡明了為什么它是有效的。
Scene categories. 在上述生成器模型中,PGGAN和StyleGAN實際上是在LSUN數據集[38]上訓練的,而BigGAN是在Places數據集[42]上訓練的。LSUN數據集包含7個室內場景類別和3個室外場景類別,Places數據集包含1000萬幅圖像,涉及434個類別。對於PGGAN模型,我們使用官方發布的模型,每個模型都經過訓練在LSUN數據集的特定類別中合成場景。對於StyleGAN,只發布了一個與場景合成(即卧室)相關的模型。為了進行更深入的分析,我們使用官方實現來訓練其他場景類別的一些附加模型,包括室內場景(客廳、廚房、餐廳)和室外場景(橋、教堂、塔)。我們還訓練了一個混合模型,將卧室、客廳、餐廳的圖像組合在一起,使用同樣的實現設置。該模型專門用於分類分析。表1每個StyleGAN模型表明,類別,訓練樣本的數量,以及相應的Fre ́chet inception distances(FID)[12],其在某種程度上可以反映出合成質量。對於BigGAN,我們使用作者官方非官方的PyTorch BigGAN實現,以類別標簽為約束,在Places數據集[42]上訓練一個條件生成模型。以上所有模型合成的場景圖像分辨率為256×256。
Semantic Classifiers. 為了從合成圖像中提取語義,我們使用一些現成的圖像分類器從多個抽象層次,包括布局、類別、場景屬性和配色方案,為這些圖像分配語義分數。具體來說,我們使用了(1)布局估計器[40],它可以預測一個室內空間結構;(2)場景分類器[42],它可以將一個場景圖像分類到365個類別;(3)屬性預測器[42],它可以預測SUN屬性數據庫[26]中的102個預定義場景屬性。通過場景圖像在HSV空間中的色調直方圖提取場景圖像的配色方案。其中,類別分類器和屬性預測器可以直接輸出一幅圖像屬於某一類別的概率或一幅圖像具有某一特定屬性的概率。布局估計器只檢測室內場所的輪廓結構,如圖7中的綠線所示。
Semantic Probing and Verification. 給出一個訓練有素的GAN模型進行分析,我們首先通過隨機采樣N個潛在編碼生成一組合成的場景圖像。為了確保捕捉到所有潛在的變化因素,我們設N = 500,000。然后,我們使用上述圖像分類器為每個視覺概念分配語義分數。值得注意的是,我們使用圖像水平中心與兩面牆相交線的相對位置來量化布局,如圖7所示。之后,對於每一個候選樣本,我們選擇響應最高的2000張作為正樣本,響應最低的2000張作為負樣本。圖6是一些例子,其中客廳和卧室分別被作為積極和消極的場景類別。然后,我們訓練一個線性支持向量機,將其作為一個雙分類問題(即數據是采樣的潛在編碼,標簽是表示目標語義是否出現在相應的合成中)來得到一個線性的決策邊界。最后,我們重新生成K = 1000個樣本進行語義驗證,如4.2節所述。
5.2 Emerging Semantic Hierarchy
人們通常用語義層次來解釋場景,從其布局、底層對象到詳細的屬性和顏色方案。這里指明的對象指的是與特定類別最相關的一組對象。這部分顯示GAN和人類感知一樣以類似的方式在圖層上組成一個場景。為了對布局和對象進行分析,我們以在室內場景上訓練的混合StyleGAN模型作為目標模型。StyleGAN[17]在常規潛在空間的頂部學習了一個更解糾纏的潛在空間W,並通過不同的轉換將潛在編碼w∈W輸入到每個卷積層,而不是只將其輸入到第一層。具體來說,就是對於
層,w線性轉換成分層轉換潛在編碼
,即
,其中
分別是用於風格轉換的權重和偏差。因此,我們通過學習等式1中的
而不是z來實現分層分析
為了量化每一層相對於每一個變化因素的重要性,我們使用重評分技術來識別分層生成表征和語義出現之間的因果關系。在圖10頂部的規范化得分表明,在GAN中的生成器的層以分層的方式去專門組成語義:即底層確定布局,下層和上層分別控制類別級和屬性級的變化,顏色方案主要是呈現在頂部。這與人類的感知是一致的(即先考慮大的布局,然后再考慮細節的內容)。在StyleGAN模型中,經過訓練生成256×256的場景圖像,總共有14個卷積層。根據我們的實驗結果,布局、對象(類別)、屬性、配色方案分別對應於最底層、下層、上層和頂層,即[0,2)、[2,6)、[6,12)和[12,14)層。
為了直觀地檢查已識別的變化因素,我們沿着不同層的邊界移動潛在向量,以顯示合成如何相應地變化。例如,給定一個關於房間布局的邊界,我們分別在底層、下層、上層和頂層按法向量方向改變潛在代碼。圖10底部為幾個概念的定性結果。我們看到,出現的變化因素遵循高度結構化的語義層次,例如,布局在早期可以得到最好的控制,而配色方案只能在最后階段進行改變。此外,在不適當的圖層上改變潛碼也會改變圖像內容,但這種改變可能與期望的輸出不一致。例如,在第二行中,為category調整底層的代碼只會導致場景視點的隨機變化。
為了更好地評估跨層的可操作性,我們進行了用戶研究。我們首先生成500個樣本,並根據不同層次上的幾個概念對它們進行操作。對於每個概念,20個用戶被要求選擇最合適的層進行操作。圖9顯示了用戶研究的結果,大多數人認為底層最符合布局,下層控制場景類別等。這與我們在圖10中的觀察結果一致。該結果說明了在場景合成的生成表征中出現層次變化因素。我們的重新評分方法確實有助於從廣泛的語義集合中識別變量因素。
識別語義層次和跨層的變化因素有助於語義場景操作。我們可以簡單地將隱藏的代碼推向適當層中所需屬性的邊界。從圖8(a)可以看出,我們可以分別改變裝飾風格(粗糙到光滑),家具材質(布到木),甚至清潔(整潔到凌亂)。此外,我們可以共同操縱層級變化因素。在圖8(b)中,我們同時在底層改變房間布局(旋轉視點),在中間層改變場景類別(將卧室轉換為客廳),在隨后的層改變場景屬性(增加室內照明)。
5.3 What Makes a Scene?
如上所述,用於場景合成的GAN模型能夠在生成表示中對層次語義進行編碼,即從布局、對象(類別)到場景屬性和配色方案。GAN最顯著的特性之一是它的中間層實際上針對不同的場景類別合成了不同的對象。這就提出了一個問題:是什么讓一個場景成為客廳而不是卧室?因此,我們進一步深入GANs中分類信息的編碼,以量化GAN如何解釋場景類別,以及場景類別如何從物體視角轉換。
我們采用以卧室、客廳和餐廳為對象的StyleGAN模型,然后在每兩個類別之間尋找語義邊界。為了從合成圖像中提取目標,我們采用了語義分割模型[35],它可以分割出150個目標(電視、沙發等)和物體(天花板、地板等)。具體來說,我們首先隨機合成500幅客廳圖像,然后依次按照“客廳-卧室”邊界和“卧室-餐廳”邊界改變相應的潛碼。我們對操作前后的圖像進行分割,得到分割掩模,如圖11所示。在操作過程中通過圖像坐標跟蹤每個像素的標簽映射后,我們就可以計算出物體隨類別變化的變化統計量,觀察類別變化時物體的變化情況。
圖11顯示了類別轉換過程中的對象映射。我們可以看到(1)當在不同類別之間操作圖像時,大多數stuff類(例如天花板和地板)保持不變,但有些對象被映射到其他類中。例如客廳的沙發映射到卧室的枕頭和床上,卧室的床進一步映射到餐廳的桌子和椅子上。之所以會出現這種現象,是因為沙發、床、餐桌和椅子分別是客廳、卧室和餐廳可區分的物品。因此,當類別發生變化時,代表對象也應該發生變化。(2)一些對象是可以在不同場景類別之間共享的,GAN模型能夠發現這些屬性並學會在不同的類之間生成這些共享對象。例如,客廳(圖像左側邊界)的燈在圖像轉換為卧室后仍然保留,特別是保留在相同的位置。(3)通過學習對象映射以及跨不同類共享對象的能力,我們能夠將無條件的GAN轉換為能夠控制類別的GAN。通常,為了讓GAN從不同類別生成圖像,必須將類標簽輸入生成器以學習分類嵌入,比如BigGAN[6]。我們的結果提出了另一種方法。
5.4 Diverse Attribute Manipulation
Attribute Identification. 場景合成中變化因素的出現取決於訓練數據。在這里,我們將我們的方法應用到一個StyleGAN模型集合中,以捕獲在SUN屬性數據庫[26]中預定義的102個場景屬性中的廣泛可操作屬性。每個styleGAN都受過訓練,可以合成特定類別的場景圖像,包括室外場景(橋、教堂、塔)和室內場景(客廳、廚房)。圖12顯示了每個模型的前10個相關語義。我們可以看到,“sunny”在所有戶外類別中得分較高,而“lighting”在所有室內類別中得分較高。此外,“boating”被定義為橋梁模型,“touring”被定義為教堂和塔,“reading”被定義為客廳,“eating”被定義為廚房,“socializing”被定義為餐廳。這些結果與人的感知高度一致,表明了所提出的量化方法的有效性。
Attribute Manipulation. 回顧第4.3節中的三種手法:Independent手法、Joint手法和Jittering手法。我們首先用我們的方法識別出的最相關的場景屬性對3個室內和3個室外場景進行獨立操作。圖13顯示了原始合成(每對圖中左側圖像)沿正(右)方向進行操作的結果。我們可以看出,編輯過的圖像仍然是高質量的,而且目標屬性確實按照需要發生了變化。然后,我們使用圖14所示的橋梁合成模型聯合操作兩個屬性。3×3圖像網格的中心圖像為原始合成,第二行和第二列分別為對“vegetation”和“cloud”屬性的獨立操作結果,四角上的其他圖像為聯合操作結果。結果表明,我們很好地控制了這兩種語義,它們似乎幾乎沒有相互影響。然而,並不是所有的變化因素都表現出如此強烈的分離。從這個角度來看,我們的方法也提供了一個新的度量來幫助測量兩個變化因素之間的糾纏,這將在第6節中討論。最后,我們通過在“cloud”操縱中引入噪聲來評估提出的Jittering操縱。從圖15中,我們觀察到新引入的噪聲確實增加了操作的多樣性。有趣的是,引入的隨機性不僅會影響添加的雲的形狀,還會改變合成塔的外觀。但這兩種情況都保留了主要目標,即編輯雲的程度。
5.5 Ablation Studies
Re-scoring Technique. 在執行所提出的重評分技術之前,我們還有兩個步驟:(1)為綜合樣本分配語義評分,(2)訓練SVM分類器搜索語義邊界。我們想驗證重新評分技術在識別可操作語義方面的重要性。我們對用於合成卧室的StyleGAN模型進行了消融研究。如圖16所示,左圖根據標記為正樣本的樣本數量對場景屬性進行排序,中間圖根據經過訓練的SVM分類器的准確率進行排序,右圖根據我們提出的量化度量進行排序。
在左圖中,“no-horizon”、“man-made”和“enclosed area”是百分比最高的屬性。然而,所有這三個屬性都是卧室的默認屬性,因此不可操縱。相反,通過驗證的重評分技術,我們的方法成功地過濾掉了這些不變的候選詞,並揭示了更有意義的語義,如“wood”和“indoor lighting”。此外,我們的方法還設法識別一些不太常見但實際可操作的場景屬性,如“cluttered space(雜亂空間)”。
在中間的圖中,幾乎所有的屬性都得到相似的分數,使得它們無法區分。實際上,即使最差的SVM分類器(即“railroad”)也能達到72.3%的准確率。這是因為即使一些變化因素沒有被編碼到潛在表示中(或者說,不能操縱),相應的屬性分類器仍然會給合成圖像賦不同的分數。在這些不准確的數據上訓練SVM也會產生一個分離邊界,即使它不被期望作為目標概念。因此,僅依靠SVM分類器不足以檢測出相關的變化因素。相比之下,我們的方法更注重改變潛碼后的分數調節,而不受屬性分類器的初始響應和支持向量機性能的影響。因此,我們能夠徹底而精確地從一個廣泛的候選集檢測潛在空間的變化因素。
Layer-wise Manipulation. 為了進一步驗證語義層次的出現,我們利用StyleGAN模型對分層操作進行了消融研究。首先,我們選擇“indoor lighting”作為目標語義,只在上層(屬性相關) v.s 所有層上改變潛在代碼。從圖17中我們可以很容易的看出,在對各個圖層進行“indoor lighting”的操作時,室內的物體也發生了變化。相比之下,僅在屬性相關的圖層上操縱隱藏的代碼可以在不影響其他因素的情況下令人滿意地增加室內照明。其次,我們選擇底層作為目標層,並從所有四個抽象層中選擇邊界進行操作。如圖18所示,無論我們選擇什么層次的語義,只要在底層(與布局相關的)層修改潛在代碼,只改變布局而不改變其他語義。這兩個實驗進一步驗證了我們關於語義層次出現的發現,即早期的層次往往決定空間布局和配置,而不是其他抽象層次語義。
6 Discussions
Disentanglement of Semantics. 我們在生成表征中檢測到的一些變化因素比其他語義更加解耦。與Karras等人[17]中描述的感知路徑長度和線性可分性以及Shen等人[30]中提出的余弦相似度相比,我們的工作為解耦分析提供了一個新的度量。特別是,我們沿着一個語義方向移動潛在代碼,然后檢查其他因素的語義分數如何相應變化。如圖19(a)所示,當我們修改空間布局時,所有場景屬性幾乎沒有受到影響,說明GAN學會了將布局級語義與屬性級語義分離。然而,也有一些場景屬性(來自相同的抽象級別)相互糾纏。以圖19(c)為例,在調制“indoor lighting”時,“natural lighting”也會發生變化。這也符合人類的感知,進一步證明了我們提出的量化度量的有效性。
Application to Other GANs. 我們進一步將我們的方法應用於另外兩個GAN結構,即PGGAN[16]和BigGAN[6]。這兩個模型分別在LSUN數據集[38]和Places數據集[42]上進行訓練。與StyleGAN相比,PGGAN只向第一個卷積層提供潛在向量,因此不支持分層分析。但所提出的重新評分方法仍可用於幫助識別可操作語義,如圖20(a)所示。BigGAN是最先進的條件GAN模型,它在將潛在向量輸入生成器之前,將其與類引導的嵌入代碼連接起來,而且它還允許像StyleGAN那樣的分層分析。圖20(b)給出了屬性層對BigGAN的分析結果,從圖中可以看出,場景屬性在上層修改的效果比在低層或所有層中修改效果好。分辨率為256×256的BigGAN模型,共有12個卷積層。由於類別信息已經編碼在“class”代碼中,我們只將層分為兩組,即較低(底部6層)和較高(頂部6層)。與此同時,定量曲線顯示出與StyleGAN發現結果一致的結果,如圖10(a)所示。這些結果證明了我們的方法的泛化能力,以及在其他GANs中可操縱因素的出現。
Limitation. 對於未來的改進有幾個限制。首先,布局分類器只能檢測到室內場景的布局結構。但是當用於室內外場景類別的一般化分析時,其缺乏對空間布局的統一定義。例如,我們的框架不能改變室外教堂圖像的布局。在未來的工作中,我們將利用計算攝影工具來恢復圖像的三維相機姿態,從而為合成圖像提取更通用的視點表示。其次,我們提出的重新評分技術依賴於現有分類器的性能。對於某些屬性,分類器並不那么精確,導致操作邊界不佳。這個問題可以用更強大的判別模型來解決。第三,為了簡單起見,我們只使用線性支持向量機進行語義邊界搜索。這就限制了我們對具有復雜非線性結構的潛在語義子空間的解釋。
7 Conclusion
在本文中,我們展示了高度結構化變化因素在具有分層隨機性的GANs學會的深層生成表征中出現。特別是GAN模型在訓練場景合成時,會自發地學習在早期層中設置布局,在中間層生成分類對象,在后期層中渲染場景屬性和配色方案。提出了一種重新評分的方法來定量地識別一個訓練有素的模型中的可操作語義概念,從而實現逼真的場景操作。在未來的工作中,我們將探索如何擴展GANs的這種操作能力,以用於真實的圖像編輯。