Learning from Simulated and Unsupervised Images through Adversarial Training 簡介
reference: https://arxiv.org/abs/1612.07828
作者 Ashish Shrivastava, Tomas Pfister, Oncel Tuzel, Josh Susskind, Wenda Wang, Russ Webb
Abstract
隨著影象領域的進步,用生成的影象訓練機器學習模型的可行性越來越高,大有避免人工標註真實影象的潛力。但是,由於生成的影象和真實影象的分佈有所區別,用生成的影象訓練的模型可能沒有用真實影象訓練的表現那麼好。為了縮小這種差距,論文中提出了一種模擬+無監督的學習方式,其中的任務就是學習到一個模型,它能夠用無標註的真實資料提高模擬器生成的圖片的真實性,同時還能夠保留模擬器生成的圖片的標註資訊。論文中構建了一個類似於 GANs 的對抗性網路來進行這種模擬+無監督學習,只不過論文中網路的輸入是影象而不是隨機向量。為了保留標註資訊、避免影象瑕疵、穩定訓練過程,論文中對標準 GAN 演算法進行了幾個關鍵的修改,分別對應“自我正則化”項、區域性對抗性失真損失、用過往的美化後圖像更新鑑別器。 論文中表明這些措施可以讓網路生成逼真的影象,並用定性的方法和使用者實驗的方法進行了演示;定量測試則是用生成的資料訓練模型估計目光注視方向、估計手部姿態。結果表明,經過模型美化後的生成影象可以為模型表現帶來顯著提升,在 MGIIGaze 資料集中不依靠任何有標註的真實資料就可以取得超過以往的表現。

image.png
Introduction
現在網路容量越來越大,對大型標註資料集的需求也在增長。但是給資料集進行標註是一個很貴且耗時的事。所以,使用合成影象進行訓練變得有吸引力。但是通過合成影象訓練出的網路會學到合成圖片的特徵,與實際圖片會有差別。
所以本文使用了一個S+U(Simulated+Unsupervised)方法來將合成圖片變得更真實。
方法概要如下圖

image.png
本文貢獻:
1、提出S+U學習來用未標記的真實資料修正合成影象
2、用了對抗損失和自正則化損失來幫助修正網路改善合成圖片
3、對GAN進行了幾處修改來穩定訓練過程以及防止修正網路生成人工痕跡
4、通過大量有效實驗驗證了方法,取得了很好的結果
Related Work
基本都是GAN相關文章
S+U Learning with SimGAN
S+U學習的目的是用一系列未經標註的真實資料 來學習一個修正器
,以此修正合成圖片x,其中
是函式引數。設修正後的圖片為
,那麼
。為了學習
,本文提出了以下損失公式:
其中 是第i個合成訓練影象。損失函式的第一部分
將現實因素加入合成影象,而第二部分
保留了標註資訊。
Adversarial Loss with Self-Regularization
是鑑別器的引數。鑑別器通過最小化以下損失來更新引數。
的公式如下:
通過對損失函式的最小化,就能漸漸讓鑑別器區分不出真實和修正圖片。
為了生成真實圖片,修正網路要保留模擬器中的標註資訊。比如,視線估計中,轉換不能修改視線方向;在手勢估計中,關節的位置不能改變。這是確保修正後的圖片還能使用模擬器的標註的核心要素。
為了達到這個目標,本文提出了通過使用自正則化損失來最小化合成與修正圖片的特徵遷移中單個畫素的差距。
是L1正則。特徵遷移可以是恆等對映,比如
,或者通道平均,或者卷積神經網路。在本文中用的是恆等對映。所以完整的損失函式如下:
本文使用不帶步幅和池化的全卷積神經網路,這樣就能在保持保持圖片全域性結構和標註不變的情況下進行畫素級的修改。本文通過最小化 和
來訓練修正器和鑑別器,當更新
的引數時,固定
的值,反之亦然。整個訓練過程如演算法1所示

image.png
Local Adversarial Loss
另一個修正器的關鍵要求是它應當在不引入任何人為因素的情況下對真實圖片建模。當在訓練一個單獨的鑑別器網路時,修正器往往過分強調一些圖片特徵來欺騙鑑別器,導致引入了漂移和人工因素。一個關鍵點是任何修正過的圖片中的局域斑點和真實圖片中的斑點應當有相似的統計資訊。本文中將鑑別器設計成輸出為w*h維概率圖的全卷積網路。w*h是圖片中區域性斑點的數量。當訓練修正器時,對所有概率圖中的塊算交叉熵損失函式。如圖3所示

image.png
Updating Discriminator using a History of Refined Images
另一個問題是鑑別器的訓練過程僅僅針對最近的修正圖片。這就會導致
1、對抗訓練的分歧
2、修正器再度引入了鑑別器忘記的人為因素
為了增加鑑別器的穩定性,本文會使用歷史的修正圖片,而不是僅僅在當前批次中的。所以設定了一個大小為B的緩衝區儲存之前的訓練圖片。在鑑別器的每次訓練中,當前批次的b張圖取一半,另外在緩衝區中取b/2張。緩衝區的大小是不變的,在每次訓練之後,隨機將當前訓練批次中的一半替換緩衝區中的圖。整個過程如下圖所示

image.png
Experiment
使用MPIIGaze資料集,
Qualitative Results
如圖5所示,學會了紋理和虹膜

image.png
Self-regularization in Feature Space
如果將恆等對映換成RGB通道平均,那麼還能學到真實的顏色,如圖6所示

image.png
‘Visual Turing Test’
找人來看,表示區分不出,結果表1所示

image.png
Quantitative Results
用合成圖片及修正圖片來訓練視覺定向CNN,確實結果有差距,有22.3%的增長。如果使用更多圖片,比如全部的訓練集,那麼還會有更大的增長。資料如表2所示

image.png
在修正圖片上訓練的CNN在MPIIGaze資料集上相比其他模型有21%的提升,如表3所示

image.png
Preserving Ground Truth
對合成圖片的修正沒有到改變標註資訊的程度
Implementation Details
主要介紹了網路的構造
Hand Pose Estimation from Depth Images
另一個測試資料集
Ablation Study
本文表示使用歷史資料和使用區域性對抗損失來修正圖片會更真實
如下圖所示

image.png

image.png
Conclusions and Future Work
未來準備對噪聲分佈建模來針對同個合成圖片生成幾張修正圖片。也會把目光放在視訊的修正上。