自IanGoodfellow之後,GANs還有哪些開拓性進展?

2020-12-11 雷鋒網

雷鋒網按:本文由作者Adit Deshpande總結,雷鋒網編譯整理。Adit Deshpande目前是UCLA計算機科學專業生物信息學方向的大二學生。他熱衷於將自己的機器學習和計算機視覺技術應用在健康領域,給醫生和患者帶來更好的解決方案,以下為雷鋒網編譯整理的內容:

從這周開始,我將會做一個新欄目——深度學習研究綜述。每隔幾周,我會總結和解釋一些深度學習子方向的論文。這周我會從生成對抗網絡(Generative Adversarial Networks,GANs)這個方向開始。

介紹

Yann LeCun在Quora上曾說,「對抗訓練是自切片麵包出現以來最酷的東西」。我也同意他說的,因為切片麵包從未在深度學習的圈子裡引起如此多的關注和興奮。在這篇總結裡,我們一起來看看3篇基於Ian Goodfellow在2014年發表的的文章。 開拓性工作

生成對抗網絡(GANs)概述

我在之前的博文,《》,裡提到過Ian Goodfellow生成對抗網絡的。那些網絡模型大致是,你有兩個模型,一個生成模型(generative model)和一個辨別模型(discriminative model)。辨別模型的任務是決定一張圖片是自然的(來自數據集)還是人工合成的。生成器的任務是生成看起來自然,和原始數據分布類似的圖片。9篇你要知道的深度學習論文論文

這可以被看做是一個兩者間的零和或極小極大博弈。這篇文章中比喻到,生成模型就像「一群制印使用假鈔的造假者」,而辨別模型就像「查驗假鈔的警察」。生成器想要騙過鑑別器,鑑別器則努力防止被騙。兩個模型經過交替優化的訓練,直到偽造品和真品不能被區分。

論文1.對抗網絡的拉普拉斯金字塔

簡介

對抗網絡最重要的一個應用就是在足夠的訓練後,生成器能合成看起來自然的圖片。在Goodfellow 2014年的文章中有一些生成器輸出的例子。

如圖所示,生成器能很好地處理數字和人臉,但在遇到CIFAR-10數據集的時候,生成的圖片就很模糊不清。

為了矯正這個問題,Emily Denton, Soumith Chintala, Arthur Szlam, 和Rob Fergus四人發表了《基於拉普拉斯金字塔生成式對抗網絡的深度生成圖像模型(Deep Generative Image Models using Lapalacian Pyramid of Adversarial Networks)》。這篇文章的主要貢獻是一種網絡結構,它能生成在40%情況下讓人類評測者誤以為真的高質量合成圖像。

方法

在談論論文之前,讓我們回顧下生成器在GAN裡的作用。它需要能夠生成大型,複雜且自然的,能夠騙過經過訓練的鑑別器的圖像。這可不是一個一蹴而就的任務。作者們的解決方法是,使用多重CNN(Convolutional Neural Network,卷積神經網絡)模型,依次生成更大的圖像。正如Emily Denton在她LAPGANs的演講中提到的:

「低清晰度的圖像很容易生成,根據低清圖像生成清晰度稍高一些的也不算難。」

這篇文章使用的方法就是建立一個生成模型的拉普拉斯金字塔。對那些不熟悉這個概念的讀者來說,拉普拉斯金字塔是一種圖像表示方法,它包含一系列連續經濾波的更低密度的圖像(更多背景請看)。每一層金字塔樣本都包含了圖像在某個尺寸下的信息。它其實是原圖的一種分解方法。我們來看一下一個簡單GAN的輸入和輸出是什麼。生成器接收分布的噪聲向量輸入,並輸出一幅圖像。鑑別器讀入這幅圖像(或者是一張來自訓練數據中的真實圖像),並輸出一個標量來描述這個圖像有多「真實」。現在我們來看一下有條件的生成對抗網絡(conditional GAN,CGAN)。它的所有條件都與GAN一樣,除了一點,生成器和鑑別器都還要接收另一條信息作為輸入。這條信息通常是一種類標籤,或另一幅圖像。這裡

網絡結構

作者提出了一組卷積網絡(ConvNet)模型,金字塔的每一層都有一個相關的卷積網絡。與傳統GAN結構不同的是,我們使用一系列的CNN,通過緩慢增加清晰度(也就是順著金字塔)來一步步生成圖像,並由粗到細的精化圖像,而不是只用一個CNN生成整個圖像。每一層都有它自己的CNN,並由兩部分訓練。一部分是低清圖像,另一部分是噪聲向量(這是傳統GAN的唯一輸入)。這就是在多輸入情況下,CGAN發揮作用的時候了。輸出將會是一幅將要被上採樣,作為下一級金字塔輸入的生成圖像。因為各層的生成器可以使用不同清晰度下的信息,在連續的層級裡生成更精細的輸出,所以這個方法是非常有效的。

論文2:生成對抗文本到圖像合成

這篇論文發表在剛剛過去的六月(譯者註:本博文發表於2016年),它研究了如何將文字描述轉化為圖 像。例如,網絡的輸入可以是「有粉色花瓣的一朵花」,輸出就是一幅包含這些元素的圖像。這個任務包含兩個部分,一是使用自然語言處理的方法來理解輸入的描述,另一部分是能夠輸出精確且自然圖片樣本的生成網絡。作者提到的一點是,從文本到圖像的轉化要比從圖像到文本轉化(可以回顧下Karpathy的)難得多。這不光因為有無數種的像素配置,還因為我們不能把任務分解為「預測下一個詞」那麼簡單的事情(就像圖片到文字的轉化所使用的方法)。 論文

方法

作者使用的方法是,訓練一個基於循環文本編碼器創建的文本特徵的GAN網絡(在此就不深入展開了,有興趣的讀者可以在此閱讀)。生成器和鑑別器都在它們相應的網絡結構中用到了這個架構。這使得GAN能夠將輸入的描述文本和生成的圖片關聯起來。 原文

網絡結構

我們先來看生成器。我們把噪聲向量z和文本編碼做為網絡的輸入。簡單來說,這個文本編碼是一種使其能和噪聲向量連接的,封裝輸入描述信息的方法(見下圖)。然後反卷積層(Deconv layer)會被用來把輸入向量轉化為合成圖片。

鑑別器讀入一幅圖片,然後經過一系列卷積層的處理(用BatchNorm和 leaky ReLUs)。當空間維度到達4x4的時候,網絡會和前邊提到的文本編碼執行深度並置(depth concatenation)。之後,就會有多於兩個的卷積層,並且會輸出(且一直輸出)反應圖像真實程度的分數。

訓練

這個模型被訓練的方式非常有趣。如果你仔細想想模型的任務,生成器有兩個任務必須要正確達成。一個是它必須生成自然且合理的圖像;另一個任務是圖像必須和給定的描述相關。如此一來,鑑別器必須要考慮到這兩個方面,確保假的,或者不自然的圖像以及不符原文的圖像被拒絕。為了做出如此適應性強的模型,作者用到了三類數據來進行訓練:{自然圖像,匹配文本},{不自然圖像,匹配文本},以及{自然圖片,不匹配文本}。遇到最後一種訓練數據類型時,鑑別器必須學習拒絕不符合文本的圖像(即使它們看起來很自然)。

論文3.基於GANs的超解析

推特Cortex的一個研究小組在幾周前(譯者註:本博文發表於2016年)發表的這篇文章是這個領域飛速創新的一個縮影。這篇文章中提出的模型是超解析度生成對抗網絡,簡稱SRGAN(super-resolution generative adversarial network)。它主要的貢獻在於一種全新的損失函數(要比舊的MSE好),這個函數可以使網絡從被嚴重下採樣的圖像中恢復出逼真的紋理和細節。

我們先來看看這個新的感知損失函數(perceptual loss function)。這個損失函數分為兩部分,對抗損失(adversarial loss)和內容損失(content loss)。宏觀來看,對抗損失幫助圖像看起來更逼真(看起來像原圖),內容損失保證新清晰度的圖像和原來低清的圖像有相似的特徵。

好了,現在我們來看一些細節。我們先來看一個高清晰度版本的圖像,然後再來看低清晰度的。我們想把生成器訓練為,當給定一個低清圖像後,它能輸出儘可能高清的圖像。這個輸出就叫做超解析圖像。鑑別器會被訓練來區分這些圖像。還是老一套,不是麼?生成器網絡結構使用一組包含ReLUs 和BatchNorm 和卷積層的B殘量塊(譯者註:見下圖B residual blocks)。一旦低清圖像經過這些模塊處理時,就會有兩個反卷積層來提高清晰度。然後再看鑑別器,我們有8個卷積層組成的Sigmoid激活函數,它可以輸出圖像是真實(高清)或者合成(超解析)的概率。

損失函數

我們再來看看新的損失函數。它實際上是單獨的損失函數的加權和。第一部分被稱為內容損失(content loss)。簡單來說,它是新的重構圖像(網絡的輸出)的特徵圖(在訓練前的VGG網絡中)到真實高清訓練圖像的歐氏距離(Euclidean distance)損失。如果我沒理解錯的話,它主要的目標是,如果把兩幅圖送到經過訓練的卷積網絡後,再比較兩幅圖各自的特徵激活量,兩幅圖是相似的。

另一個作者定義的主要的損失函數是對抗損失(adversarial loss)。這個函數和通常和你期望從GANs裡得到的差不多。它激勵和原始數據分布負對數似然類似的輸出。正則化損失是損失函數的第三項。有了這個新的損失函數,生成器可以確保輸出看起來自然的更高清圖像,同時相比低清圖像,也有相似的像素空間。

後記:

GANs使用大部分無監督的訓練(你要做的只要有一個真實圖片的數據集,不需要標籤和其他信息)。這意味著我們可以利用很多現有的未分類的圖像數據。經過訓練,我們可以用輸出或者中間層作為特徵提取器,如此就不需要那麼多訓練數據來達到高準確率了。

我拿不到,但是超級酷的文章還有:DCGANs。作者們沒做什麼太誇張的事,他們只是訓練了一個特別特別大的卷積網絡。但是特別的地方在於他們有正確的超級參數來使訓練真正的有用(也就是BatchNorm, Adam, Leaky ReLUs)。

via ,雷鋒網編譯kdnuggets

相關焦點

  • 自Ian Goodfellow之後,GANs還有哪些開拓性進展?
    在這篇總結裡,我們一起來看看3篇基於Ian Goodfellow在2014年發表的開拓性工作的文章。 生成對抗網絡(GANs)概述 我在之前的博文,《9篇你要知道的深度學習論文》,裡提到過Ian Goodfellow生成對抗網絡的論文。那些網絡模型大致是,你有兩個模型,一個生成模型(generative model)和一個辨別模型(discriminative model)。
  • Ian Goodfellow線上直播實錄:關於GANs的那些不為人知的事兒
    做客國外一檔「你問我答」(Ask Me Anything)的線上問答節目,提問者可以直接對 Ian Goodfellow 提出任何關於 GANs 的問題,下面 AI 科技評論帶大家圍觀 GANs 發明的背後都有哪些不為人知的故事。
  • Ian Goodfellow 談 GANs 論文評審:有這些跡象的論文要懷疑
    雷鋒網 AI 科技評論按:谷歌大腦研究員、「GANs」之父、《Deep Learning》課本作者之一的 Ian Goodfellow 自上次的線上直播裡回答了網友們提出的種種問題之後,昨天也在 Twitter 上發表了很多關於
  • 專訪Ian Goodfellow:不積跬步無以成就GAN
    在他們的對話中,深度學習研究員、GAN之父Goodfellow回顧了自己當年的科研經歷,簡要介紹了自己對於科研、行業和未來發展的一些看法。Sanyam Bhutani:您好,GAN之父,感謝您願意接受我的採訪。Ian Goodfellow:非常歡迎!
  • lan Goodfellow IEEESSP最新演講:對抗性實例安全性研究及其未來
    大數據文摘作品作者:鄭璇真繼上周密集更新的推特小課堂後,時刻操心著大家學習的Ian Goodfellow先來回顧一下上周的推特小課堂:學界 | Ian Goodfellow發推講2個機器學習黑魔法,教你如何推導公式學界 | Ian Goodfellow推特小課堂又開課啦:數學求導的小技巧
  • 【Ian Goodfellow 強推】GAN 進展跟蹤 10 大論文(附下載)
    新智元報導 編譯:小潘、肖琴【新智元導讀】生成對抗網絡GAN的提出者Ian Goodfellow在推特上推薦了10篇GAN論文,是跟蹤GAN進展,了解最新技術不容錯過的。它的關鍵想法是漸進地增大生成器和鑑別器:從低解析度開始,隨著訓練的進展,添加新的層對越來越精細的細節進行建模。「Progressive Growing」 指的是先訓練4x4的網絡,然後訓練8x8,不斷增大,最終達到1024x1024。這既加快了訓練速度,又大大穩定了訓練速度,並且生成的圖像質量非常高,例如1024×1024的CelebA圖像。
  • GAN之父Ian Goodfellow:那個賦予機器想像力的人類
    Ian Goodfellow朋友們提出的方案是對那些組成圖片的元素進行複雜的統計分析以幫助機器自己生成圖片。這需要進行大量的數據運算,Ian Goodfellow告訴他們這根本行不通。如今,AI程式設計師通常需要明確告訴機器輸入的訓練數據是什麼,即一百萬張圖片中哪些圖片是過馬路的行人以及哪些不是。而這樣的過程不僅花費極大,需要大量人工參與,還限制了系統對於一些稍微偏離訓練集的數據的處理。
  • IanGoodfellow:只是純策略版本
    眾所周知,生成對抗網絡(GAN)是由Ian Goodfellow 於2014年提出的。但是,一篇reddit熱帖披露早在2010年OlliNiemitalo即提出了同樣的概念。Goodfellow回應道:沒有提到隨機 z 向量,只是純策略版本。Ian Goodfellow於2014年提出的。
  • 重磅| GAN之父Ian Goodfellow加盟蘋果
    目前,Ian Goodfellow 的 LinkedIn 帳戶已經更新了最近的跳槽活動:「我在蘋果公司領導一個機器學習特殊任務群組。」Goodfellow 寫道。Ian Goodfellow 是生成對抗網絡(GAN)之父,他的著作在 AI 領域廣為引用。Goodfellow 是谷歌在過去的 12 個月裡被蘋果挖走的第二位 AI 人才,是後者加強其 AI 戰略的結果。
  • 一篇2010年的博客挑戰Ian Goodfellow
    新智元原創 編輯:元子【新智元導讀】一般認為GAN是2014年由Ian GoodfellowIan Goodfellow於2014年提出的GAN,至今已經是計算機視覺領域最重要、使用最廣泛的概念之一。學術界流傳的一則GAN誕生的傳說。據說是因為一天晚上Ian Goodfellow在酒吧在喝高的狀態下與同事討論學術問題,突然靈光一閃,提出了GAN初步的想法,當時並沒有得到同事的認可。
  • Ian Goodfellow 離開OpenAI,重回谷歌大腦團隊
    目前沒有其它公開資料顯示 Goodfellow 的最新動向,不過從個人資料的更新時間來看,Goodfellow 回谷歌一事或已坐實。其實這一事情早有端倪。前段時間,Ian Goodfellow 投遞的論文獲得了 ICLR 2017 的 Best Paper,而 Goodfellow 在此論文的公司名赫然寫著 Google Brain。底部的注釋顯示,他這篇論文的工作是在 OpenAI 與 Google Brain 工作期間完成的。也就是說,Ian Goodfellow 很有可能在完成論文期間就從 OpenAI 跳回了谷歌。
  • 大咖| GAN之父Ian Goodfellow在Quora:機器學習十問十答
    Ian Goodfellow:哈哈,我當然會推薦我和Yoshua還有Aaron一起寫的《深度學習》。而在我對機器學習頗有了解之後,我就不怎麼看新書了,比如說Kevin Murphy’s 寫的《Machine learning: A Probabilistic Perspective》,所以我推薦的不一定就是最佳的。
  • Ian Goodfellow發推講2個機器學習黑魔法,教你如何推導公式
    大數據文摘作品作者:小魚、土豆《深度學習》(花書)作者Ian Goodfellow當然,更詳盡的操作還是要去看Goodfellow本人的《深度學習》。文摘菌給大家搭配了斯坦福的一門MOOC,一起學習風味更佳~拉至文末查看喔~Goodfellow稱,這是關於機器學習,他最喜歡的兩個快速理解理論推導的「黑魔法」。
  • 像「花書」一樣排版:Ian Goodfellow「親授」的高級LaTex教程
    當地時間 3 月 1 號,深度學習知名同名教材《Deep Learning》的第一作者 Ian Goodfellow 發推把這個一行 Python 代碼都沒有的 GitHub 項目推薦給了大家。GitHub 項目地址:https://github.com/goodfeli/dlbook_notation項目裡包括了定義深度學習教科書風格的各個文件、《深度學習》一書符號說明頁的 .tex 文件以及一個兩頁長的注釋(commentary.tex)。
  • IanGoodfellow撰文總結:谷歌的ICLR2017碩果纍纍
    雷鋒網消息,谷歌大腦團隊的IanGoodfellow今日在研究院官網上撰文,總結了谷歌在ICLR2017上所做的學術貢獻。雷鋒網編譯全文如下,未經許可不得轉載。本周,第五屆國際學習表徵會議(ICLR2017)在法國土倫召開,這是一個關注機器學習領域如何從數據中習得具有意義及有用表徵的會議。
  • Ian Goodfellow撰文總結:谷歌的 ICLR 2017 碩果纍纍
    雷鋒網消息,谷歌大腦團隊的 Ian Goodfellow 今日在研究院官網上撰文,總結了谷歌在 ICLR 2017 上所做的學術貢獻。雷鋒網編譯全文如下,未經許可不得轉載。Oriol VinyalsSemi-Supervised Knowledge Transfer for Deep Learning from Private Training Data (Best Paper Award)Nicolas Papernot*, Martín Abadi, Úlfar Erlingsson, Ian Good
  • ...35揭曉:阿里巴巴王剛、吳翰清等六位華人當選,Ian Goodfellow...
    雷鋒網 AI 科技評論消息,日前 MIT TR 公示了 35 位 35 歲以下的青年榜單,評選出包括發明家(Inventors)、創業家(Entrepreneurs)、遠見者(Visionaries)、人文關懷者(Humanitarians)及先鋒(Pioneers)等六個領域的青年才俊
  • Ian Goodfellow推特小課堂又開課啦:數學求導的小技巧
    大數據文摘作品作者:小魚、蔣寶尚最近,Ian Goodfellow不斷在推特和大家分享一寫學習的小技巧。Goodfellow稱,他最喜歡用超實數(hyperreal numbers)來求導數。註:超實數是一個包含實數以及無窮大和無窮小的域,它們的絕對值分別大於和小於任何正實數。
  • Ian Goodfellow 和 Papernot 半年三篇博文,對機器學習的安全隱私來了個大起底
    安全與隱私問題的積極行動者GANs 的提出者、在谷歌大腦做人工智慧研究的 Ian Goodfellow 近期在 Twitter 上的動向都是安全方面的。攻擊者能造成哪些危害?攻擊者的攻擊可以影響系統的保密性(confidentiality)、完整性(integrity)和可用性(availability),三者可以合稱為安全領域的「CIA模型」。
  • 谷歌34歲AI新生代領袖被蘋果挖走 「GAN之父」Ian Goodfellow跳槽
    當地時間周四(4月4日),隨著 Ian Goodfellow 更新了他在領英上的個人資料,他 3 月份從谷歌跳槽到了蘋果的事實得到了證實。目前,他是蘋果特殊項目小組的機器學習主管。DeepTech 曾就此事聯繫 Goodfellow ,未收到沒有回覆相關評論。