1. 程式人生 > >【GAN ZOO翻譯系列】s2GAN:使用樣式和結構對抗式網路的生成影象建模

【GAN ZOO翻譯系列】s2GAN:使用樣式和結構對抗式網路的生成影象建模

王小龍,Abhinav Gupta
卡耐基梅隆大學機器人研究所

摘要

當前的生成框架使用的端至端的學習,並從均勻噪聲分佈取樣產生影象。然而,這些方法忽略影象形成的最基本的原理。影象是按照以下方式產生的:(a)結構:3D模型;(B)樣式:紋理到結構的對映。在本文中,作者分解影象的生成過程,並提出了樣式-結構生成對抗網路( S 2 G

A N S^2GAN )。 S 2 G A N
S^2GAN
有兩個組成部分:結構GAN產生一個面法線圖; 樣式GAN取面法線圖作為輸入,併產生2D影象。除了真實的生成損失之外,作者通過計算與生成影象的表面法線之間的額外損失。這兩個GAN首先被分別訓練,然後通過共同學習合併在一起。 S 2 G
A N S^2GAN
模型是可解釋的,產生更逼真的影象,並且可以用來學習無監督RGBD表示。

1、引言

視覺表示的無監督學習的是計算機視覺領域中最根本的問題之一。無監督學習常用兩種方法:
(a)使用判別式框架,作為任務的輔助,如上下文預測 [1,2] 或temporal embedding [3,4,5,6,7,8];
(b)使用生成式框架,學習各個組成部分並嘗試產生逼真的影象 [9,10,11,12]。在生成式框架的基本假設是,如果模型足夠產生新穎、逼真的影象,它應該同時也是視覺任務的良好表示。大多數這些生成框架使用的是端至端的學習,以生成從控制引數的RGB影象( z z 也稱為噪聲,因為它是從均勻分佈取樣的)。最近,在一些限定的領域(如人臉和臥室)已經有了印象深刻的結果 [13] 。

s2fig1
圖1 為了讓法線方向視覺化,用藍色代表右,用綠色代表水平面,紅色代表左。
(a)生成的流程:給定從均勻分佈取樣的 z ^ \hat z ,結構GAN產生一個面法線圖作為輸出。面法線圖與給定的 z ^ \hat z 被輸入到第二層生成網路(樣式GAN),並輸出影象。
(b)生成的表面法線圖和影象的例子。
(c)樣式-GAN可以用作渲染引擎:給定一個合成的場景,可以用它來呈現逼真的影象。

然而,這些方法忽略了影象形成的最底層的基本原則之一。影象是以下兩個獨立現象的產物:
(1)結構 所編碼場景的基本幾何體,它指的是物體的表面,體素等最基本表示;
(2)樣式 編碼的物件的照明質感。

本文中根據影象的 IM101 基本原理和因子,將生成對抗網路(GAN)分成兩個生成過程,如 圖1 所示。
(1)第一,結構生成模型(即結構-GAN),採取 z ^ \hat z 併產生場景的底層3D結構 y 3 D y_{3D}
(2)第二,條件生成網路(即樣式-GAN),將 y 3 D y_{3D} 和噪聲 z ~ \tilde z 作為輸入以生成影象 y I y_I 。作者把這個生成網路的體系結構稱為 結構-樣式生成對抗網路( S 2 G A N S^2 GAN )。

為什麼使用 S 2 G A N S^2GAN ?作者認為,以樣式和結構為條件的影象生成過程有四點優勢:
(1)首先,以樣式和結構為條件簡化了整個生成過程,能生成更逼真的高解析度影象,使學習過程更加魯棒和穩定。
(2)其次, S 2 G A N S^2GAN 相比其他GAN更可解釋。人們甚至可以找到錯誤的原因,並且通過與上下文相比,理解在什麼地方面法線圖的生成是失敗的。
(3)第三,實驗結果表明, S 2 G A N S^2GAN 可以學會無人監督的RGBD表示。這可能是許多機器人和圖形應用的關鍵。
(4)最後,樣式-GAN也可以看作是一個具有學習任何給定3D輸入能力的渲染引擎,它能夠呈現相應的影象。基於它也能夠建立應用程式,可以修改輸入影象的基本三維結構並呈現一個全新的形象。

然而,學習 S 2 G A N S^2GAN 仍然不是一件容易的事。為了應對這一挑戰,本文先以獨立的方式學習 樣式-GAN 和 結構-GAN。本文使用NYU v2 RGBD資料集 [14] 中的超過200個K個幀用於學習初始網路。另外,使用來自Kinect表面法線的ground truth去訓練結構-GAN。因為透視失真更直接相關的法線而不是深度,作者使用表面法線來表示本文的影象結構。作者並行學習風格-GAN時有兩個損失函式:第一個損失函式接受影象的表面和法線,並試圖判斷它們是否對應於真實場景。然而,只有這種損失函式不能基於明確的畫素的約束將生成的影象與表面法線配對。為了實現逐畫素的約束,作者做出如下假設:如果生成的影象很像真實影象,應該能夠重建或預測它的三維結構,並通過新增另一判別網路實現這一目標。更具體地,所生成的影象不僅輸入到判別器,也輸入到表面法線的預測網路中。當完成了初始的樣式-GAN和結構-GAN訓練後,作者將它們合併,並執行端到端的共同學習:影象從 z ^ \hat z z ~ \tilde z 被產生,並用判別他們是真實還是生成的影象。

2、相關工作

視覺表示的無監督學習的是計算機視覺領域中最具挑戰性的問題之一。無監督學習有兩種主要的方法:
第一個判別式方法,使用輔助任務來從沒有標記的資料中ground truth,輔助任務通常是預測兩個畫素塊的相對位置 [2],視訊中自我運動的估計 [ 15,16 ] ,物理訊號 [ 17,18,19 ];
無監督學習更常見的方法是使用一個生成框架。兩種型別生成框架在過去被使用。非引數方法進行影象或補片與資料庫中任務的匹配,如紋理合成 [20] 或超解析度 [21]。

在本文中,作者開發影象的引數模型。一種常見的方法是去學習可用於重構影象的低維表示。一些例子包括深度自動編碼器 [22,23 ] 或受限玻爾茲曼機(RBMs) [24,25,26,27,28]。然而,在大多數的上述情況很難產生新的影象,因為在潛在空間取樣不是一件容易的事。最近提出的變分自動編碼器(VAE) [10,11] 通過產生具有變取樣影象的方法來解決這一問題。然而,這些方法只限於簡單的資料集,如MNIST。為了生成具有更豐富的資訊可解釋影象,有人將VAE的條件擴充套件到說明文字 [29] 及圖形編碼 [30]。除了RBMs和自動編碼器,最近的文獻也提出了許多新穎的生成模型 [31,32,33,34]。例如,Dosovitskiy等 [31] 提出了用CNN生成椅子的影象。

在這項工作中,作者的模型基於由Goodfellow等人提出的生成對抗網路(GANs)建立 [9]。該框架由Denton等人擴充套件去生成影象 [35]。具體地,他們提出使用對抗網路的拉普拉斯金字塔的粗到細方案來產生影象。然而,訓練這些網路仍然是棘手和不穩定。因此,DCGAN [13] 提出了良好的訓練對抗網路的做法,並在影象生成上產生了有前途的效果。有多種擴充套件使用了條件變數 [36,37,38]。例如,Mathieu等人 [37] 提出基於視訊的上一幀來預測未來的幀。在本文中,作者通過考慮三維結構和樣式的因素,進一步簡化了影象生成過程。

為了訓練 S 2 G A N S^2GAN ,作者將表面損失與表面三維法線預測損失 [39,40,41,42] 相結合。學習過程中還有額外的約束。這還涉及到更好生成建模,將多重損失相結合的想法 [43,44,45]。例如,Makhzani等 [4] 提出了一種對抗自動編碼器,在訓練自動編碼器的過程中將對抗損失作為隱含層的額外約束。最後,將影象分解成兩個獨立的部分的想法得到了很好的研究中 [46,47,48,49],這促使作者提出分解生成過程中結構和風格的想法。作者使用NYUv2的RGBD資料分解來學習 S 2 G A N S^2GAN 模型。

3、GAN的背景

生成對抗網路(GAN)[9] 包含兩個模型:生成器 G G 和判別器 D D 。生成器 G G 從均勻分佈噪聲獲取潛在的隨機向量 z z 作為輸入,並嘗試生成逼真的影象。判別器 D D 執行二元分類來區分的影象是來自生成器 G G 還是一個真實影象。因此,這兩個模型是互相競爭的(也就是對抗):生成器 G G 將嘗試生成使得判別器 D D 難以區分真偽的影象,同時判別器 D D 將學習如何避免被生成器 G G 生成的影象所欺騙。

在形式上採用批量梯度下降的方式優化這兩個網路,批的大小為 M M 。給定樣本 X = ( X 1 , . . . , X M ) X=(X_1,...,X_M) 和一系列從均勻分佈中取樣的 Z = ( z 1 , . . . , z M ) Z=(z_1,...,z_M)

GAN的訓練具有2步迭代過程:
(ⅰ)固定生成器 G G 的引數,優化判別器 D D 的引數;
(ⅱ)固定判別器 D D 的引數,優化生成器 G G 的引數。
訓練 D D 網路的損失函式如下所示,

(1) L D ( X , Z ) = i = 1 M / 2 L ( D ( X i ) , 1 ) + i = M / 2 + 1 M L ( D ( G ( z i ) ) , 0 ) L^D(X,Z)=\sum_{i=1}^{M/2}L(D(X_i),1)+\sum_{i=M/2+1}^{M}L(D(G(z_i)),0)\tag{1}

在每個批中,影象一半是真實的,其餘是在給定 z i z_i 的情況下由生成器產生的 G ( z i ) G(z_i) D ( X i ) [ 0 , 1 ] D(X_i)\in[0,1] 表示給定輸入影象情況下的二元分類評分。 L ( y , y ) = y log ( y ) ( 1 y ) log ( 1 y ) L(y^*,y)=-y\log(y^*)-(1-y)\log(1-y^*) 是二元熵損失。因此損失函式的 公式1 優化判別器

相關推薦

GAN ZOO翻譯系列s2GAN使用樣式結構對抗網路生成影象建模

王小龍,Abhinav Gupta 卡耐基梅隆大學機器人研究所 摘要 當前的生成框架使用的端至端的學習,並從均勻噪聲分佈取樣產生影象。然而,這些方法忽略影象形成的最基本的原理。影象是按照以下方式產生的:(a)結構:3D模型;(B)樣式:紋理到結構的對

GAN ZOO翻譯系列InfoGAN Interpretable Representation Learning by Information Maximizing GAN

本文是InfoGAN的翻譯,原文地址:https://arxiv.org/abs/1606.03657 相當一部分部分翻譯參照於:https://blog.csdn.net/pingguolou/article/details/72920970 infoGAN:通過最大化生成對抗網路中資

GAN ZOO翻譯系列Cat GANUNSUPERVISED AND SEMI-SUPERVISED LEARNING WITH CATEGORICAL GAN 用於監督半監督學習的GAN

Jost Tobias Springenberg 弗萊堡大學 79110 Freiburg, Germany [email protected] 原文連結https://arxiv.org/abs

GAN ZOO翻譯系列基於能量的生成對抗網路 Energy-Based Generative Adversarial Networks

趙俊博, Michael Mathieu, Yann LeCun 紐約大學計算機科學系 Facebook人工智慧研究院 {jakezhao, mathieu, yann}@cs.nyu.edu 原文連結https://arxiv.org/abs/1609.031

GAN ZOO閱讀系列NONSUPERVISED REPRESENTATION LEARNING WITH DCGAN 使用深度卷積生成對抗網路的無監督的表示學習

Alec Radford & Luke Metz indico Research Boston, MA {alec,luke}@indico.io Soumith Chintala Facebook AI Research New York, NY [e

GAN ZOO閱讀系列UNSUPERVISED REPRESENTATION LEARNING WITH DCGAN 使用深度卷積生成對抗網路的無監督的表示學習

Alec Radford & Luke Metz indico Research Boston, MA {alec,luke}@indico.io Soumith Chintala

GAN ZOO翻譯StackGANText to Photo-realistic Image Synthesis with Stacked GAN 使用堆疊的GAN從文字中生成照片一樣逼真的圖片

Han Zhang1, Tao Xu2, Hongsheng Li3, Shaoting Zhang4, Xiaogang Wang3, Xiaolei Huang2, Dimitris Metaxas1 1羅格斯大學 2裡海大學 3香港中文大學 4百度研究院

1.3.2Deep Learning翻譯系列Activation Functions 啟用函式

1、Sigmoid與雙曲正切 當建立神經網路,要做出的選擇之一是在隱藏層、輸出單元使用什麼啟用函式。 常見如的Sigmoid函式: σ

1.3.1 Deep Learning翻譯系列Neural Network Overview神經網路概覽

上圖是一個神經網路。神經網路中每個的節點對應於的兩個步驟: 首先計算 z = w

1.2.11 Deep Learning翻譯系列Explanation of Logistic Regression Cost Function 對數機率迴歸代價函式的說明

視訊地址 本視訊給出在對數機率迴歸使用這個成本函式的理由。 在之前的對數機率迴歸中,預測 y ^

1.2.7&1.2.8 Deep Learning翻譯系列Derivatives with a Computation Graph 採用計算圖計算微分

我說神經網路的計算是按正向傳遞或前向傳播步驟組織的,我們計算神經網路的輸出,然後是反向傳遞或反向傳播步驟,我們用於計算梯度或計算導數。計算圖解釋了為什麼它以這種方式組織。我們將通過一個例子說明計算圖(比對數概率迴歸或完整的神經網路更簡單的例子)。 假設我們正在嘗試計算一個函式

asp.net core 系列5 佈局頁靜態資源

# 0. 前言 在之前的4篇的內容裡,我們較為詳細的介紹了路由以及控制器還有檢視之間的關係。也就是說,系統如何從使用者的HTTP請求解析到控制器裡,然後在控制器裡處理資料,並返回給檢視,在檢視中顯示出來。這一篇我將為大家介紹基礎的最後一部分,佈局頁和靜態資源引入。 # 1. 佈局頁 在控制器和檢視那一篇

GAN ZOO閱讀Generative Adversarial Nets 生成對抗網路 原文翻譯 by zk

Ian J. Goodfellow, Jean Pouget-Abadie ∗ , Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair † , Aaron Courville, Yoshua Bengio ‡

Flask-RESTPlus系列Part2響應編組

利用 基本使用 format ttr lse type load ... 聲明 0x00 內容概覽 響應編組 基本使用 重命名屬性 默認值 自定義字段及多值情況 Url及其他具體字段 復雜結構 列表字段 嵌套字段 api.model()工廠 clone實現復制 api

GAN ZOOPrecomputed Realtime Texture Synthesis with Markovian Generative Adversarial 用MGAN預訓練實時紋理合成

原文地址 https://link.springer.com/chapter/10.1007/978-3-319-46487-9_43 補充材料和程式碼 https://github.com/chuanli11/MGANs。 Chuan Li and Michael Wand

GAN ZOO閱讀模式正則化的生成對抗網路 MODE REGULARIZED GENERATIVE ADVERSARIAL NETWORKS

原文地址: https://arxiv.org/abs/1612.02136 引用之請註明出處。 Tong Che 1,Yanran Li 2 3,Athul Paul Jacob 1,Yoshua Bengio 1,Wenjie Li 2 1 蒙特利爾學習演算法

GAN ZOO閱讀Unsupervised Pixel–Level Domain Adaptation with GAN 使用GAN的無監督的畫素級域適應

原文連結,引用請標明出處 部分譯文參考自 https://blog.csdn.net/forever1993/article/details/78405280 摘要 收集註釋良好的影象資料集來訓練現代機器學習演算法對於許多工而言過於昂貴。 一個有吸引力的替代方案是渲染資料,並在其中自

如何自學程式設計系列(一)如何做到無師自通?

無數莘莘學子為了理想,進行著他鄉求知的旅途。求學生活你要怎麼渡過呢?你是要先享受來之不易的求學生活呢還是繼續為人生目標而奮鬥。閒言少敘,當今社會一步拉下很有可能步步落後。得有憂患意識。誰也不想上完大學結果被大學給上了,畢業季很有可能就是失業季。 每個人都有自己的理想和人生目標,程式設計也

計蒜客系列挑戰難題28的分隔子集

曉萌希望將1到N的連續整陣列成的集合劃分成兩個子集合,且保證每個集合的數字和是相等。例如,對於N=3,對應的集合{1,2,3}能被劃分成{3} 和 {1,2}兩個子集合. 這兩個子集合中元素分別的和是相等的。 對於N=3,我們只有一種劃分方法,而對於N=7時,我們將有4種