关于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)

 

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