我為什麼棄用GAN?

2020-09-04 量子位

賈浩楠 發自 凹非寺
量子位 報導 | 公眾號 QbitAI

輸出單一、調參麻煩、損失函數不能收斂、穩定性差。

蘇黎世理工大學的博士Andreas Lugmayr歷數了各種GAN的「罪狀」,說出了今後棄用GAN的話。

說出「棄用」,當然是已經有了B計劃。

Andreas Lugmayr博士和他的團隊開發了一種新的標準化流(Normalizing Flow)模型,能夠彌補GAN在生成任務中的的種種缺陷。

這項研究成果「SRFlow」,還被ECCV 2020 Spotlight收錄。

那麼SRFlow到底有多厲害?能在多大程度上替代GAN呢?

SRFlow「又多又好」

從肉眼可見的生成任務結果上,可以看出SRFlow至少在兩個方面超越了GAN,一是生成結果的多樣性,二是提高圖片解析度後的保真度

輸入一個低解析度馬賽克圖像,基於GAN的ProgFSR模型和SRFlow生成結果對比:

在提升4倍解析度的任務中,SRFlow的生成結果也比基於GAN的ERSGAN更加清晰真實。

對於眾多的GAN變體來說,有一些缺陷是難以避免的,比如圖像復原生成任務,生成器廣泛忽略了隨機向量,因此,大多數基於GAN的圖像到圖像映射都是單一確定的。

GAN訓練中的損失函數,包括了生成器偽造圖像,而鑑別器卻無法知道哪些圖像是假的。

另一方面,鑑別器的職責就是確定一個圖像是來自生成器還是來自訓練集。

這兩個相互衝突的目標導致了學習參數的持續漂移,導致輸出結果不同程度的失真。

那麼基於標準化流的SRFlow,是如何彌補這些缺陷的呢?

SRFlow不會忽略隨機向量

對於GAN忽略輸入的隨機向量,導致輸出單一的問題,傳統的GAN策略是,在模型中增加一個控制信號,並拋棄重建損失函數。

放大16倍解析度下的SRFlow輸出結果

而SRFlow在訓練過程中,算法核心—標準化流模型將高解析度圖像轉化為高斯分布。圖像條件標準化流的情況並非如此。

為了避免GAN的判別器損失通常會導致模式崩潰,SRFlow採用單一損失進行訓練的,並且對隨機輸出進行內採樣。

模型穩定超參數少,調參方便

條件GAN需要仔細的超參數調整。很多GAN的變體模型中,總損失由多個損失的加權和組成。

所以降低失真需要很大的精力來調整不同的損失函數權重。

此外還必須平衡生成器和判別器,使訓練過程穩定。

在圖像生成任務中SRFlow使用最大似然策略(maximum likelihood),輸入的圖像被轉化為一個高斯潛空間。通過簡單的計算得到高斯向量的似然。然後使用現成的Adam優化器,這個損失函數會穩定地收斂。

SRFlow的單一損失穩定且可收斂

Normalizing Flow本質上是穩定的。因為模型只有一層網絡和一個損失,超參數要少得多,訓練起來也更容易。

特別是對於開發新模型的研究人員來說,這一點非常實用。

新手可以更容易地比較不同的架構的Normalizing Flow變體。

輸入輸出保持高度穩定

在沒有進一步幹預的情況下,有條件的GAN是不具備輸入一致性的。對於提升解析度任務,一個重要的問題是,高解析度的圖像是否與低解析度的輸入保持最大程度一致。

如果不能,那麼該方法到底是真的提高解析度還是僅僅生成一個類似圖片?這點十分值得懷疑。

GAN模型裡有一個不受監督的損失函數,會導致模型自行生成圖片像素。而標準化流模型避免了這種可能。它以且只以輸入圖像為條件,來模擬高解析度圖像的分布。

將SRFlow的輸出與輸入對比,可以看出與GAN的結果不同,具有高度一致性。

生成任務只需1張GPU訓練

研究團隊說,論文中的實驗基於GLOW網絡,使用多達40個GPU來訓練圖像生成。

但如果只是應對簡單的圖片生成任務,只需要一塊GPU就能完成對SRFlow的訓練。

什麼是標準化流模型?

機器學習中有一類是概率模型。訓練一個模型時,常見的一種處理方法是調整參數以使得模型在訓練數據集的概率最大。

為了達到這個目的,需要假設模型滿足一定的概率分布模式。

那麼到底需要什麼樣的分布,既具有接近真實樣本的表達能力,又具有統計機器學習模型較好的解釋性呢?

高斯分布可以基本滿足:採樣方便、解析的密度已知、KL距離容易計算,還有中心極限定理的保證。最常使用的兩種方法是用於分類的Categorical以及用於回歸的Gaussian。

但這兩種方法仍然有一些問題, 因為真實世界中樣本的概率密度函數一般來說,與範疇分布以及高斯分布相差甚遠。

如果簡單地使用高斯作為圖像生成的似然函數,那最後得到的生成結果可能很糟糕。

而標準化流(Normalizing Flow)可以把簡單的概率密度(比如高斯分布)形式轉化成某種更高級分布形式。

Flow指的是數據流經過一系列雙射(可逆映射)。最終映射到合適的表徵空間,normalizing指的是表徵空間的變量積分是1,滿足概率分布函數的定義。

標準化流這種工具,可以產生更強大的分布函數。

從另一個視角來看,標準化流可以看作是一種參數化對先驗概率q的逼近的方法,並且也可以用在其它似然函數方程場景下。

與GAN不同,標準化流模型在採樣、訓練穩定性、損失函數收斂、和一致性方面具有優勢。

標準化流模型更加適合用在圖像生成、強化學習、變分推斷之類的任務。

SRFlow的團隊,已經將這個基於標準化流的模型開源。

那麼你的下一個機器學習任務,會使用SRFlow嗎?

論文地址

https://arxiv.org/abs/2006.14200

開源地址

https://github.com/andreas128/SRFlow?

— 完 —

量子位 QbitAI · 頭條號籤約

關注我們,第一時間獲知前沿科技動態

相關焦點

  • 張東升,我知道是你!如何使用GAN做一個禿頭生產器
    獲取模型  # 獲取GAN模型# paddlepaddle/models的倉庫裡含有其支持的所有gan模型!git clone https://gitee.com/paddlepaddle/models.git -b release/ 1.8!cp -r models/PaddleCV/gan/* .
  • 德國棄用乙醇汽油,國內卻開始全面推廣,你知道這是為什麼呢?
    德國棄用乙醇汽油,國內卻開始全面推廣,你知道這是為什麼呢?並且還有一點可能就是德國最關心的,那就是乙醇汽油的原料是農作物,也就是說要想提煉乙醇汽油,就要浪費糧食,這可能是德國棄用的主要原因吧,畢竟糧食還是解決人們溫飽問題的,要是就這樣被浪費,加上心在國內的汽車擁有量,那可不是一個小數字啊,所以用這樣的糧食做滿足汽車的動力,實在是讓人難以接受。
  • 生成式對抗網絡GAN的高級議題
    本文將在本節討論的GAN類型是:Wasserstein GANCycleGAN條件GANWasserstein GAN在我看來,這是最重要的GAN類型,所以要注意!使用標準的GAN配方,我們已經觀察到訓練非常不穩定。鑑別器通常改進太快以至於生成器不能趕上,這就是為什麼我們需要調節學習速率或在兩個網絡之一上執行多個時期。
  • 超全的GAN PyTorch+Keras實現集合
    /ccgan.py本論文介紹了一種基於圖像的半監督學習方法,它在繪畫中將使用對抗性損失函數。/dualgan.py跨域圖像到圖像變換的條件生成網絡在近期取得了很大的進步。/implementations/dualgan/$ python3 dualgan.py --dataset_name facades如果當前地址為 Keras-GAN/,那麼我們需要使用 Keras 實現訓練:$ cd dualgan/$
  • 設計師發布超級英雄閃電俠棄用戰衣,只看顏色就感覺很強!
    近期概念設計師Jerad在個人Ins帳號上發布了閃電俠的棄用戰衣,這套戰衣很明顯的區別於兩個版本。相比較劇版閃電俠戰衣,這套棄用戰衣紋路更多更細緻,尤其在後腦勺部位投入了更多的設計,而且比較顯肌肉。相比較影版閃電俠戰衣,棄用戰衣顯得更加有力量,這套戰衣看上去就很厲害,但是很可惜這套戰衣已經被棄用。在超級英雄「閃電俠」的獨立電影中,應該會延用「正義聯盟」中的閃電俠戰衣。
  • GAN快速入門資料推薦:17種變體的Keras開原始碼,附相關論文
    Code:https://github.com/eriklindernoren/Keras-GAN/blob/master/ccgan/ccgan.pyPaper:Semi-Supervised Learning with Context-Conditional
  • 異父異母的三胞胎:CycleGAN, DiscoGAN, DualGAN
    但是這並不重要,我不需要考慮改變世界。)但是去年有一篇論文叫dual learning,做的是機器翻譯。如果你考慮在語言之間的翻譯的話,這個任務可能比圖片翻譯到圖片更有意義。在機器翻譯中,成對的翻譯數據非常有限,但是單一語言的預料非常的多。這篇paper就是討論如何用獨自的語料來幫助翻譯。
  • 英國再次表態棄用華為,花粉沸騰:任正非回應真高明
    最近,英國再次表態棄用華為,還提到:一旦發現相關企業使用華為設備,將會面臨每天790萬元的罰款。這也是英國為了斷絕和華為之間的合作採取的強制措施。但是面對英國的這一措施,任正非並不慌張。為什麼呢?而針對英國對華為棄用的表態,任正非的回應讓花粉沸騰,花粉直呼:任老回應真高明!面對這種情況,任正非表示:華為不會強制任何企業使用華為的設備以及技術!因為每個人都有選擇的權利。
  • 屈賈誼於長沙,非無聖主:政治天才賈誼,為何被聖主漢文帝棄用?
    《滕王閣序》中,王勃用一句「屈賈誼於長沙,非無聖主」寫出了天才被棄用的千古遺憾。存在即合理,賈誼的壯志難酬,背後又隱藏著怎樣的歷史必然呢?那麼,政治天才賈誼,又為什麼會被聖主漢文帝棄用呢?若要回答這個問題,必須從賈誼的政治主張說起。《史記·屈原賈誼列傳》記載:「諸律令所更定,及列侯悉就國,其說皆自賈生發之。」 《漢書·賈誼傳》亦有云:「然諸法令所更定,及列侯就國,其說皆誼發之。」
  • 《魔獸》電影棄用海報曝光 比紅藍不分的海報好多了?
    而近日,國外網友也「搶先」曝光了一張被《魔獸》電影棄用的海報,整體構圖十分精美,杜隆坦在德拉諾通過「黑暗之門」遙視著另一端的暴風城。  但是也有玩家表示,暗門的另一端是沼澤,而杜隆坦最後也沒見到暴風城,與劇情不合才被棄用。另外出於觀眾情感考慮,聯盟VS部落的海報主題會更加有市場。
  • 棄用谷歌 iOS6自家地圖支持3D全景導航
    棄用谷歌 iOS6自家地圖支持3D全景導航 2012年06月12日 02:56作者:楊松聖編輯:楊松聖文章出處:泡泡網原創     泡泡網手機頻道6月12日 本屆蘋果WWDC2012大會上,iOS6是焦點之一,而iOS6是否會棄用原有谷歌地圖而力挺自主開發地圖功能更是萬人矚目的焦點,那麼隨著大會的到來,蘋果針對地圖功能的改進也隨之揭開面紗,下面我們就來看看蘋果自主開發的新版地圖能否完敗谷歌吧!
  • 為何特斯拉會棄用18650改用21700鋰電池呢?
    打開APP 為何特斯拉會棄用18650改用21700鋰電池呢?那麼為什麼特斯拉最後又宣布改用21700鋰電池呢? 18650是日本SONY公司當年為了節省成本而定下的一種標準性的鋰離子電池型號,18650作為傳統電池電芯,技術比較成熟,適配性很強,可以在3C數碼、無人機、電動工具等領域消化,是商業化最早,生產自動化程度最高,當前成本最低的一種動力電池。
  • 《復聯3》棄用劇情,不敢變身的浩克終於衝破了反浩克裝甲,黑矮星...
    在棄用的劇情裡,不敢變身的浩克最後終於衝破了鎧甲,黑矮星遭殃了! 而在這個棄用的劇情裡,班納變身,反浩克裝甲被瞬間衝破,浩克終於憤怒了。 你覺得這個早期棄用的劇情裡,相比電影正片中的效果,哪一個更好呢?歡迎在下方留言區留言,一起討論吧!如果想要了解更多關於漫威的電影和資訊,別走開,我們下期繼續不見不散!
  • 蜘蛛俠2又一棄用概念圖,在神秘客幻象中,一隻巨型蚊子出現了!
    《蜘蛛俠:英雄遠徵》這部電影雖說是荷蘭弟蜘蛛俠的個人獨立電影,但電影中的多個致敬初代英雄的感人畫面,以及蜘蛛俠深陷神秘客幻象的炫酷場景,也是讓粉絲們看到了獨自成長的荷蘭弟有多麼的不容易了,上個月關於蜘蛛俠突然離開漫威,而近日又回歸漫威的消息,真是讓人又驚又喜,另外,在網上又曝光了蜘蛛俠2中的棄用概念圖
  • 棄用谷歌地圖 找回iPhone啟用蘋果地圖
    作為競爭對手,蘋果與谷歌在智慧型手機、平板電腦、個人電腦、應用軟體、影音服務等多個領域展開競爭,這一次蘋果棄用谷歌地圖並不是沒有預兆,兩年前蘋果發布的iOS6系統中去就除了預裝的谷歌地圖。
  • 一分鐘知道為什麼全國大量風電和光伏發電被棄用
    一分鐘知道為什麼全國大量風電和光伏發電被棄用 工程師2 發表於 2018-04-20 15:56:00 「十三五」期間,中國風電、光伏發電裝機規模將進一步擴大,在「
  • 朱俊彥團隊提出GAN壓縮算法:計算量減少20倍,GPU、CPU統統能加速
    git clone https://github.com/mit-han-lab/gan-compression.git下載測試數據集:!傳送門論文地址:https://arxiv.org/abs/2003.08936GitHub:https://github.com/mit-han-lab/gan-compression李沐陽個人主頁:https://lmxyy.me
  • 帶集成驅動和保護功能的高壓GaN FET在工業和電信應用中將功率密度...
    HQS=app-hvp-gan-ganfamily-pr-sa-20181030-cn ,,, 和 http://www.ti.com.cn/product/LMG3411R070-pr。
  • 表現不如本土球員,CBA再現水貨外援,被主教練直接棄用
    第四節比賽,廣州隊利用內外結合,突然發力,打出了一個13:3的小高潮,一度將雙方分差追成85:85平,隨後雙方你來我往,進入了白熱化的爭奪。不過,威爾斯、胡金秋等人發威,幫助廣廈隊再次建立8分開外的領先優勢。在比賽還有26.9秒時,廣廈隊以103:94領先廣州隊9分,隨後廣州隊卻嚇出廣廈隊一陣冷汗,但由於時間太少,廣州隊最終以4分之差輸掉了比賽,遭到聯賽10敗。