目錄
- 相關鏈接
- 方法亮點
- 相關工作
- 方法細節
- 實驗結果
- 總結與收獲
- 參考文獻
相關鏈接:
論文:https://arxiv.org/abs/1808.00948
代碼:https://github.com/HsinYingLee/DRIT
方法亮點:
- 提出一個內容判別器,用於判斷編碼器生成的圖片內容性質是否一樣的。
相關工作:
- 文章的提出主要是解決了unpaired-data 的圖像翻譯問題。目前大多數的解決方法都是基於CycleGAN,本文也不例外。
與CycleGAN較為不同的是本文借鑒了infoGAN的思想,將一張圖片看成主要是由內容(content)和特性(Attribute)兩部分組成, 用兩個Enconder分別去學這兩種特征。
這篇文章和去年2017年BMVC上的工作GeneGAN也很相似,GeneGAN 使用了一個Encoder將一張圖片編碼成前景和背景兩個部分,前景信息可能是眼鏡,微笑等等,通過前景的轉換,可以得到同一個人不同風格,比如從微笑-》不笑。
- 模式崩潰問題目前還沒有得到很好的解決,受到該問題的影響,輸入隨機噪聲不能夠使GAN生成的多樣。
為了解決上述問題,本文參考了BicycleGAN,對輸入噪聲進行了約束。(如下圖:)
方法細節:
文章工作:
如上圖所示,本文可以實現兩種類型的風格轉換,左圖:給定輸入,和服從正態分布的隨機噪聲,即可得到風格轉換圖;右圖:給定兩張輸入,通過編碼器分別獲得兩張圖片的Attribute,通過交換Attribute進行風格轉換,我們把其中一張輸入作為Guide,也就是只提供Attribute特征(右圖Attribute列)。
方法架構:
從上圖來看,這篇論文的網絡結構還是比較復雜的,由4個編碼器,2個生成器,2個判別器,1個內容判別器組成的。4個編碼器用來學兩種不同風格圖像的內容和特征,2個生成器分別用於學兩種不同風格的圖片,2個判別器就用來判別器這兩個生成器生成的結果是否足夠“逼真”。
作者基於這樣的一個假設:不同風格類型圖片的內容由於不包含特征信息(理想情況下),應該是不可區分的。在這個前提下,作者提出了兩個策略:
- weight-sharing: 兩個內容編碼器的最后一層網絡參數共享,保證兩個內容分布一致;兩個生成器的第一層網絡參數共享;
- content discrimination: 判別器無法區分Ec(x)或Ec(y)是哪一類;損失函數如下:
總體損失函數:
其中即上文提到的內容判別器損失
;
循環損失:,即x經過生成器Gy得到x',再經過Gx得到x'',此時x和x''應該是相同的。
實驗結果:
winter->summer實驗,上述結果圖中可以看出我們的方法生成的比其他的方法生成的圖片更加自然逼真。
該實驗主要是比較不同方法生成的圖片的真實性。實驗數據:winter->summer translation on the Yosemite dataset。Fig.9左側結果圖實驗設置為判斷一對圖片中,詢問觀測者哪張圖片更真實一點。這一對圖片怎么采集的呢?一張是來自我們方法生成的圖片,另外一張則是來自其他不同生成方法的結果圖。Fig.9右側結果圖實驗設置為判斷一對圖片中,詢問觀測者哪張圖片更真實一點。這一對圖片怎么采集的呢?一張是來自真實圖片,另外一張則是來自不同生成方法的結果圖。遺憾的是文章中並沒有明確地提到該次實驗的觀測者數量,判斷圖片是否為整個數據集。這是比較存疑的一個實驗。
從這個結果來看,生成圖像的真實性比cycleGAN還要低的多。
表2的第一行和第二行結果可以明顯的看出本文提出的內容判別器對生成結果的多樣性有很大的提升。
表3想表達的是BicycleGAN需要成對的數據集,對數據集的要求比較高,而我們的方法不需要成對的數據集效果卻能和BicycleGAN旗鼓相當。
上述的實驗,主要是想通過分類准確率這個評價指標來判斷我們生成結果的質量。分別用上述的方法訓練,得到圖片用來訓練分類器,只用用同一個測試集來衡量該分類器的分類效果,分類效果好說明生成的圖片較好。從表中可以看出本文的方法在這兩個數據集上的生成效果都能較好的保留source的內容信息。
作者說圖7中證明了提出的方法的生成器學習的是圖像的分布,而不是簡單的記憶訓練集中的圖像,但是個人覺得這個解釋不夠清晰。大膽的猜測,上圖中非紅色框內為本文生成的圖片,作為guide 的Attribute是兩張Attribute圖片經過Encoder 學習到的特征進行插值得到的。
總結與收獲
這篇文章的最大特點在於提出了一個內容判別器,用於約束兩個數據集的內容特征;但是本文的網絡數量較多,訓練起來,速度會受到一定影響,網絡也比較復雜,對GPU有一定的要求。並且本文的生成圖像在真實性上比CycleGAN還差。