《Generative Adversarial Nets》論文解析

GAN是最近幾年來很有名的算法,起源於這篇論文,我們今天來看看究竟是怎麼一回事吧。

我也不想嘰裏呱啦講一大堆,想看論文翻譯版的直接複製粘貼谷歌翻譯就行了。我只介紹大致思想。

GAN其實目標就是生成能以假亂真的圖片,於是這裏有兩個子網絡,生成網絡(generative model)和判別網絡(discriminative model),分別稱爲G和D。D的目標就是盡力分辨出哪個圖片是真實數據哪個是生成的,而G的目標就是盡力讓D混淆。網絡結構圖如下:

因爲D和G像是一個對抗遊戲,所以該網絡的名字叫adversarial。整個訓練目標如下:

第一項是D的訓練目標,最大化正確分類的判別概率,第二項是G的最小化訓練目標。在實際操作的時候,G訓練爲最大化,這是因爲原來的那一項在早期學習的時候容易飽和,而換成這一項之後能提供更強的梯度。

 

下面我們看一看在訓練過程中整個網絡發生了什麼樣的變化:

上圖是對抗網絡訓練過程的通俗理解。圖中的藍色虛線是判別器D,綠色實線是生成模型G的分佈P(G),黑色點畫線是真實數據生成分佈Px,下方的兩個橫線表示x=G(z)這個將噪聲映射到x的趨勢。從(a)到(d)可以看到,隨着訓練迭代,G的分佈越來越接近真實數據,而D最後無法區分G和真實數據,變成一個定值0.5。

當然作者還做了實驗來驗證,具體可以看看論文。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章