關於GAN的基礎學習

①GAN的基礎學習:

  1. 原理:generator(簡稱G)與discriminator(簡稱D)的博弈,如input爲noise,output爲fake image。G儘量讓生成的fake image被D判爲真,D卻又儘量讓自己不判斷錯誤,兩者相互競爭並學習。最終目的,讓G生成的fake image的分佈與real image的distribution保持一致。
  2. loss公式的計算:

注:D(x)表示D將real image判斷爲真的概率,D(G(z))表示D將G生產的fake image判爲真的概率。第一項爲D對real image的置信度(用來optimize G),第二項D對fake image的置信度。

  1. trick:
  1.  G在optimize時容易過擬合,通常optimize k次D再optimize一次G

ii) 剛開始訓練時,因爲G較差,D有很高的置信度,爲提高足夠的梯度,採用梯度上升的方式訓練D。

②以TensorFlow的mnist作數據集跑通並分析代碼,如下圖

③文獻閱讀:

  1. 2014 NIPS .GoodFellow提出的GAN的原文
  2. 2016 NIPS .Learning What and Where to Draw,以text爲條件的GAN來做圖像生成
  3. 2017 CVPR .Image 2 Image Translation with Conditional Adversarial Net,提出pixel2pixel(patchGAN)的方法,並以高級的角度理解GAN——讓生成的圖片儘可能真實,即不需要人爲去設定複雜的loss,提出了通用的framework解決大量問題
  4. 2017 ICCV .Unpaired Image 2 Image Translation using Cycle-Consistent Adversarial Networks(cycleGAN),與c)篇同一個團隊發的論文,c)篇有監督,但這篇無監督。即考慮到ground truth的image很難找到,採用X->Y->X的方式進行無監督學習。個人理解是dirtibution 2 distribution的學習,也由此可能導致兩個distribution內的標籤混亂情況(如:X中的馬<->Y中的樹)。
  5. 2017 NIPS .Pose Guided Person Image Generation,兩個數據集:market(行人),fashion。即在給定pose和ground truth的情況下,讓orginal image生成指定pose的image。
  6. 2018 CVPR .Unsupervised Person Image Synthesis in Arbitrary Poses,採用d)篇的cycleGAN和patchGAN方法,用無監督的方式來得到指定pose的image(輸入爲original image + pose)

 

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