近日,中國科學院自動化研究所智慧型感知與計算研究中心提出一種新的深度生成模型——自省變分自編碼器(introspective variational autoencoder,introvae),用來實現高畫質影象等高維資料的無條件生成(unconditional generation)。該模型一方面在不引入額外的對抗判別器的情況下,克服了變分自編碼器固有的合成影象趨於模糊的問題;另一方面在不使用常用的多階段多判別器策略下,實現了高解析度影象合成的穩定訓練。實驗結果表明,該模型不僅能夠穩定生成高解析度**級影象(比如1024x1024的人臉影象),而且在生成模型常用的量化指標上取得了目前最好的結果。該**目前被人工智慧會議神經資訊處理系統大會(nips2018)收錄。
深度生成模型是無監督學習最有前景的方法之一,一直是學術界研究的熱點問題。目前最為流行的兩種深度生成模型是變分自編碼器(vaes)和對抗生成網路(gans)。變分自編碼器是自動編碼器的生成版本,通過優化乙個變分下界來實現資料到先驗分布的近似對映。vaes的訓練穩定,能夠進行隱變數推斷和對數似然估計,但是生成的樣本比較模糊。對抗生成網路通過生成器和判別器之間的對抗,來學習真實資料的分布。gans可以生成逼真的清晰影象,但是存在訓練不穩定的問題,這個問題在合成高解析度影象上尤其嚴重。
高解析度真實影象的生成由於問題困難,計算複雜度大,一直以來只有英偉達(invidia)、麻省理工(mit)等知名科研機構在研究。目前主流的高解析度影象合成方法(比如英偉達公司提出的pggan模型)通過將高解析度影象分解,從低解析度出發,分多個階段使用多個判別器逐步合成高解析度影象。這種訓練方式增加了模型設計的複雜度,提高了模型收斂的難度。與已有的方法不同,該研究採用了一種更為簡單有效的方式,能夠實現對高解析度影象的一步到位直接合成。該方法將對抗學習引入vae內部,實現了一種自省的學習,即模型自身能夠判斷其生成樣本的質量並作出相應改變以提高效能。具體的實現方式是訓練編碼器使得真實影象的隱變數接近先驗分布,合成影象的隱變數偏離先驗分布;與之相反的是,訓練生成器使得合成影象的隱變數接近先驗分布。同時,與gan不同的是,編碼器和生成器除了對抗外還要協同保證對輸入影象的重建誤差盡量小。對於真實資料來說,該方法的訓練目標跟傳統vae完全一致,這極大地穩定了模型訓練;對於合成資料來說,對抗的引入提高了樣本的質量。
實驗結果顯示,自省變分自編碼器能夠穩定合成高解析度**級的影象,比如1024x1024大小的人臉影象,256x256大小的臥室、教堂、狗等自然影象。該模型不僅在影象質量上,而且在量化指標上都取得了當前最好的結果。
引用:
變分自編碼器VAE
auto encoding variational bayes git antixk pytorch vae a collection of variational autoencoders vae in pytorch.1 原文作者在深度學習上的實戰理論指導 2 具體原理框圖如下 vae主要由編碼...
AI數學 變分自編碼器 VAE
auto encoding variational bayes 你要是能在一周內,把上面這篇文章的數學原理搞懂,那你就是骨骼清奇了。看 可以知道,vae 變分自編碼器 只是aevb 自編碼變分貝葉斯 的乙個應用而已。如果你只是想懂vae的話,還是比較簡單滴。對於aevb更深層的原理,在這裡不去討論,...
深度自編碼器python實現
深度自編碼器的原理上一節已經講過,這次我們來看一下它的python 實現,這是基於mnist的自編碼實現。from future import division,print function,absolute import import tensorflow as tf import numpy a...