Generative Adversarial Nets——NIPS2014
GAN勢如破竹地被Goodfellow提出,Goodfellow師從Bengio,2014年的這一篇Generative Adversarial Nets的發表也是第一次GAN被完整的提出來。
論文翻譯:https://m.2cto.com/kf/201610/552124.html
Goodefellow2016于NIPS上的演講:https://channel9.msdn.com/Events/Neural-Information-Processing-Systems-Conference/Neural-Information-Processing-Systems-Conference-NIPS-2016/Generative-Adversarial-Networks
Goodefellow2016于NIPS上的演講譯文:https://ask.julyedu.com/question/7664
目錄
1、背景
2、文章脈絡
3、模型架構
4、具體理解:
1)問題和動機:
2)解決方法:https://blog.csdn.net/on2way/article/details/72773771
3)實驗:
4)結論:
5)未來展望:
5、分析
1、背景
GAN的提出緣起于Goodfellow慶祝他的一個朋友博士學習結束,酒后飯桌上大家提及想要“試圖用數學方法確定進入圖片的所有內容,將這些統計信息輸入一臺機器,以便它可以自己創建照片”。然而Goodfellow卻認為這是不可能人為完成的,因為要統計的量太多,沒人能全部記下來,但是神經網絡可以教會機器如何建立逼真的圖片。
一些知識:
深度玻爾茲曼機:https://blog.csdn.net/u014314005/article/details/80583475
GSN生成隨機網:https://baike.baidu.com/item/%E7%94%9F%E6%88%90%E9%9A%8F%E6%9C%BA%E7%BD%91%E7%BB%9C/22800088?fr=aladdin? &&?https://blog.csdn.net/zhq9695/article/details/86688525
變分自編碼器(VAEs):https://spaces.ac.cn/archives/5253
噪聲對比估計(NCE):https://blog.csdn.net/littlely_ll/article/details/79252064
PM模型:PM模型與GAN有一些爭議,主要是PM的作者在NIPS2016大會上直接懟了Goodfellow,但其實Goodfellow在2014第一次以論文形式提出GAN時就已經在文中說明了PM模型與GAN的區別,好吧,我就附上從PM到GAN的一篇帖子——https://blog.csdn.net/omnispace/article/details/77790500
另外,附上Goodfellow關于GAN的一些問答:https://baijiahao.baidu.com/s?id=1595081179447191755&wfr=spider&for=pc
GANs介紹:https://www.cntofu.com/book/85/dl/gan/gan.md
2、文章脈絡
Introduction——>Related work——>Adversarial nets——>Theoretical Results——>Experiments——>Advantages and disadvantages——>Conclusions and future work
3、模型架構
整個目標函數其實就是一個最小最大化博弈:
4、具體理解
1)問題和動機:
判別模型和生成模型是深度學習領域的兩大模型。然而判別模型已經研究的較好(由于反向傳播、dropout、relu激活函數的出現),生成模型卻由于概率計算困難(最大似然估計計算難)加上不好使用relu函數,使其發展較為緩慢。于是本文提出一種生成模型來避開或解決這些問題。
有了生成模型。或許我們就可以生成一些數據集;可以學習已知數據的概率分布,從而為無監督學習提供新的方向
詳細動機Goodfellow在2016NIPS大會上在第一部分做出了詳細報告。2016NIPS
前人工作:
玻爾茲曼機是一種比較成功的生成模型,由于配分函數Z難以處理,必須用最大似然梯度來處理。
GSN(Generative stochastic networks生成隨機網)不用大量來自玻爾茲曼機的近似而用反向傳播訓練生成網絡,該方法進一步消除了馬爾科夫鏈(?)。
VAEs(variable auto-encoders變分自編碼器)中的編碼器不是用來編碼的,是用來算均值和方差的。文章中寫到:與對抗的生成網絡相似,變分自編碼器為可微分的生成網絡配對第2個網絡。與對抗的生成網絡不同的是,VAE 中的第2個網絡是一個使用近似推理的識別模型。GANs 要求對可見單元微分,故不能對離散數據建模。而 VAEs 要求對隱含單元微分,因而不能對離散的潛在變量建模(?)。
NCE(noise -contrastive estimation噪聲對比估計)通過學習該模型的權重來訓練生成模型,用之前訓練好的模型作為噪聲分布,提高了訓練一系列模型的質量。NCE 是本質上與對抗的網絡游戲中的正式競爭相似的一種非正式競爭機制。NCE 關鍵的局限為它的“判別器”是由噪聲分布和模型分布的概率密度比重來定義,從而要求評估和反向傳播兩個概率密度。
PM模型(predictability minimization可預見性最小化)與GAN相關性最大,但是其二者有著本質區別:1) 本文工作中,網絡間的競爭是唯一的訓練標準,足以訓練網絡。可預測性最小化僅是鼓勵神經網絡中隱含單元在完成其它任務的同時,統計上也相互獨立的一個正則項;競爭并不是主要的訓練標準。2) 競爭的本質不同。可預測性最小化中,兩個網絡的輸出相互比較,一個網絡試圖使輸出相似,而另一個網絡試圖使輸出不同;輸出為標量。GANs 中,一個網絡生成一個豐富的高維向量來作為另一個網絡的輸入,并嘗試選擇使另一個網絡不知如何判別的向量為輸入。3) 學習過程不同。可預測性最小化被描述為一個最小化目標函數的優化問題,學習去逼近目標函數的最小值。GANs 基于最大最小游戲,而不是一個優化問題,且一個 Agent 尋求最大化值函數,另一個 Agent 尋求最小化值函數。游戲在鞍點處終止,此處是關于一個 Agent 的策略的最小值,和關于另一個 Agent 的策略的最大值。
2)解決方法:https://blog.csdn.net/on2way/article/details/72773771
我們將最小最大化函數看作兩部分,先優化D,再優化G,本質上是兩個優化問題。開始時給生成網絡一個隨機噪聲,生成假數據集,然后用假數據集和真數據集去訓練判別網絡,將訓練好的判別網絡原模原樣搬下來接在生成假數據集的生成網絡后面,用剛剛生成的假數據集當作真數據集(將標簽由0變為1)來訓練搬下來的這個網絡,對生成網絡的訓練實際上是對生成-判別網絡串接的訓練。
文中第四部分是對這個目標函數以及算法這么優化是有根據的、合理的一些證明以及說明。
3)實驗:
在數據集 MNIST,Toronto Face Database 和 CIFAR-10 上訓練對抗的生成網絡。生成器用 ReLU 與 Sigmoid 激活單元的混合,而判別器用 maxout 激活單元。訓練判別網絡時用 Dropout。雖然理論框架可在生成器的中間層用 Dropout 和其它噪聲,但這里僅在生成網絡的最底層用噪聲輸入。
? ? ? ? ? ? ? ? ? ? ? ?
4)結論:
根據實驗生成的圖片不敢說比其他算法生成的圖片要好,但是可以看出GAN存在一定 的潛力。
這個框架和先前的模型相比有優點也有缺點。缺點主要在于pg(x)pg(x)沒有明確表示,并且在GG訓練期間DD必須很好地同步(尤其,沒有更新DD的時候,GG一定不能訓練的太多,防止“the Helvetica scenario”即GG將太多的z值折疊到x來有足夠的多樣性來模擬pdatapdata),正如一個玻爾茲曼機的負鏈必須在學習步驟之間保持最新。優點是不需要馬爾科夫鏈,僅僅使用反向傳播獲得梯度,在學習期間也不需要推理,并且將多種函數合并到模型。表2總結了生成對抗網絡和其它生成模型的比較。?
上述優點主要是計算。對抗模型也從生成網絡獲得一些統計優勢,不是直接使用數據示例更新,?而是流經判別器的梯度。這意味著輸入的組件不是直接復制到生成器的參數。另一個對抗網路的優點是它們可以表示非常清晰甚至退化的分布,而基于馬爾科夫鏈的方法要求分布有點模糊以便鏈能夠在模式之間混合。?
5)未來展望:
該框架允許許多直接的擴展:
1)?添加c至G和D的輸入,可獲得條件的生成模型p(x|c)。
2)?給定x,為預測z,訓練任意的網絡可學習近似推理。類似于 wake-sleep 算法訓練出的推理網絡,但訓練推理網絡時可能要用到訓練完成后的固定的生成網絡。
3)?通過訓練一組共享參數的條件模型,可以近似地共享所有條件p(xs|xslashedD)p(xs|xslashedD),其中SS是xx索引的子集。從本質上說,可以使用對抗網絡來實現確定性MP-DBM的隨機擴展。
4)?半監督學習:當標簽數據有限時,判別網絡或推理網絡的特征不會提高分類器效果。
5)?效率改善:為協調G和D設計更好的方法,或訓練期間確定更好的分布來采樣z,從而加速訓練。
5、分析
通過閱讀本文,感覺“博弈論”(Game Theory)的思想確實在現實生活中具有很大的應用價值。
二元博弈的特點是什么?
兩個具有互斥性的優化目標或任務,在博弈的過程中,保持一方不變優化另一方,如此交替,動態優化自身共同進步。兩個目標分別給對方提供一把“尺”作為衡量,博弈過程中,“尺”會越來越嚴格,以此形成反饋,最終實現兩者最優。
互斥性體現在哪?
兩個目標相反,必定是若一方強,則另一方弱。不可能在優化過程中始終保持一強一弱,這樣強的一方就無法得到反饋,從而優化自己,所以是交替強弱。若一方強一方弱,則是一方始終在追趕另一方。
極限/最優的判斷?
生成對抗網絡的極限在于,生成器生成了和真圖一樣的假圖,使得判別器對于無論來自自然圖像還是生成圖像的輸出都為1/2。
引用Goodfellow在NIPS上的總結:“GANs相對比較新,仍需要進一步研究,特別的,GANs要求在高維、連續、非凸的策略中找到納什均衡。研究人員應該努力發展出更好的理論依據和訓練算法。GANs對于圖像生成、操縱系統等許多方面都具有重要意義,并有可能在未來應用到更廣的領域。”
總結
以上是生活随笔為你收集整理的Generative Adversarial Nets——NIPS2014的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HTML5网站展示:48个潜在的Flas
- 下一篇: 理光一体机扫描的时候显示服务器响应错误,