Generative Adversarial Nets[content]
0. Introduction
基于纳什平衡,零和游戏,最大最小策略等角度来作为GAN的引言
1. GAN
GAN开山之作
图1.1 GAN的判别器和生成器的结构图及loss
2. Conditional GAN

图2.1 CGAN的目标函数

图2.2 CGAN的判别器和生成器的结构图及loss
图2.2来自这里,图2.3是来自论文内部,两者在原理结构上没任何差别。

图2.3 CGAN结构图
如图2.3所示,CGAN相比于GAN在于,其输入部分增加了额外的信息,且此额外信息是固定的,如图像类别或者其他模态中的数据信息。
3. Theory-cost
deep multi-scale video prediction beyond mean square error
该文献中主要关注的是如何基于前面的图像序列帧预测后面的几帧(当然预测不了太远),然后基于传统的只有L2的loss方式进行了分析,并在引入新的loss的基础上,加上GAN的网络结构和训练方式,解决有监督样本的问题。因为此时只要告诉判别器是真还是假就行了。本文相对前面文献在GAN序列中的贡献主要就是说明了:
- 生成器中的噪音不一定是必须的;
- GAN的结构可以泛化到其他想法上。
4. AAE
AAE
该文献中,主要焦点是如何用AE加上GAN结构,让AE本身的编码器能够将输入转换到先验分布;而解码器将先验分布转换到数据分布,那么在训练完整个网络结构后,解码器就能通过输入,生成数据分布中的其他样本。
5. DCGAN
GAN网络结构也是在不断的挖掘和发展的一个新领域:
- goodfellow提出了“GAN”网络的结构,作为对抗网络的开山之作,让大家知道原来还可以将博弈论的想法用深度学习的网络结构来实现:即同时训练一个判别器和一个生成器;
- 后续的“Conditional GAN”的论文中,通过输入额外的固定信息,可以让判别器和生成器具有先验信息,从而能够用网络去生成具有特定类型的数据;
在“DCGAN”网络中,作者为了解决GAN网络难以稳定训练的问题,特别是之前很多人想将DCNN放入GAN结构中去却失败这个难点下手。提出了几个修改点,并且这几个点也成为了后续其他GAN网络的一个参照:
- 将所有的池化层丢弃,并以具有stride>1的卷积来代替;
- 在判别器和生成器中都使用BN来稳定训练,不过不要在生成器的输出层和判别器的输入层上使用BN;
- 将全连接层去掉,即保持网络是全卷积结构(采用全局平均池化虽然可以增加模型稳定性,不过影响收敛速度,所以没采用GAP);
- 在生成器中,所有内部网络层的激活函数都使用ReLU,而在输出部分使用Tanh;
- 在判别器的所有层激活函数使用LeakyReLU;
- 生成器网络结构如图:
图5.1 DCGAN中生成器结构图
在训练过程中,基本没什么数据预处理,除了为了适应Tanh的激活函数范围将数据缩放到[-1,1];所有权重的统一采用(0,0.02)的标准分布去初始化;在LeakyReLU函数中,alpha值为0.2;采用Adam优化器,且学习率为0.0002,beta1为0.5。
6. Improved GAN
Improved GAN
该文献主要是介绍如何更加稳定的收敛GAN,并不是为了让模型能够达到更好的准确度,其中介绍了三种方法:
- feature matching:类似于最大均值差异
- minibatch features:借鉴于部分bn的想法
- virtual batch normalization:bn的一个扩展
不过官方code并不友好,github上倒是有几个实现,不过多是觉得有问题,musyoku/improved-gan的倒是值得一看,可惜是chainer版本的。
7. EBGAN
Junbo Zhao从他老师Lecun之前的一篇论文中得到灵感,将GAN的判别器视为一个能量函数,假设真实数据位于一个流形上,那么靠近真实数据时,得到的能量是低能量。而远离的,即不在这个流形上的,也就是伪造样本会呈现高能量的趋势。并基于此概念结构,实例化的将自动编码器作为GAN的判别器,以重构误差作为判别器的目标函数。而对于不添加任何正则的自动编码器来说,其就是一个恒等函数的映射,会将整个空间都视为0能量,为了避免这个问题,从而添加了一个PT正则:

网络结构及生成器和判别器的目标函数如下:

图7.1 EBGAN的网络结构及对应的目标函数
8. iGAN
iGAN
这是朱俊彦大神的第一份关于图像编辑的文献,其后续的pix2pix,CycleGAN都是惊艳之作。本文主要是基于DCGAN模型,通过设定3个特定的约束操作,并将其映射到特定的目标函数约束,从而约束GAN中 生成器的输入向量上,让生成器生成添加特定约束的部分(理念上有点像条件GAN)。
9. LSGAN
10. pix2pix
pix2pix
通过cGAN和L1 loss相结合,实现不错的image-to-image应用。
11. AdaGAN
12. Theory-training
Pre-WGAN
该文是WGAN的前作,意在分析goodfellow提出的原始GAN为什么难训练的问题,主要就是当生成器分布和真实分布流行如果没有重叠那么在KL这种判别下会导致梯度为0,而初始的判别器目标函数也是有问题的,虽然本文提出可以在判别器输入部分增加噪音以解决问题,不过不是完美解决方案,所以接着提出了WGAN
13. Wasserstein GAN
Wasserstein GAN
该问是WGAN的介绍,先通过前文分析了当前GAN训练为什么失败的原因,然后提出了一种新的loss及训练方式,使得GAN的训练不再具有模式坍塌的情况,而且对应的loss还能指示模型训练的好坏。
14. CAAE
CAAE
作者基于VAE的思路,加上GAN的判别器作为正则器构建整个网络,用该网络去进行人脸年龄的变化。如给你一张5岁的人脸(年龄无所谓,就是提供个人信息),需要给出不同年龄段的该人人脸图片。
15. BS-GAN
16. CycleGAN
CycleGAN
本文是朱俊彦大神第三篇关于图像变换图像的工作,其通过引入循环一致loss,意在让网络能学到正向变换的同时,还能变回去。
17. BEGAN
BEGAN
作者提出一个新的均衡执行方法,该方法与从Wasserstein距离导出的loss相结合,用于训练基于自动编码器的GAN。该方法在训练中会平衡生成器和判别器。另外,它提供一个新的近似收敛测度,快而且稳定,且结果质量高
18. WGAN-GP
19. TP-GAN
参考文献:
- [github] .tensorflow-generative-model-collections
- [github] .really-awesome-gan
- [github] .Awesome-GANs
- [github] .GAN Timeline
- [GAN] Goodfellow I, Pouget-Abadie J, Mirza M, et al. Generative adversarial nets[C]//Advances in neural information processing systems. 2014: 2672-2680.
- [CGAN] Mirza M, Osindero S. Conditional generative adversarial nets[J]. arXiv preprint arXiv:1411.1784, 2014.
- [Theory] Mathieu M, Couprie C, LeCun Y. Deep multi-scale video prediction beyond mean square error[J]. arXiv preprint arXiv:1511.05440, 2015.
- [AAE] Makhzani A, Shlens J, Jaitly N, et al. Adversarial autoencoders[J]. arXiv preprint arXiv:1511.05644, 2015.
- -[LAPGAN] Denton E L, Chintala S, Fergus R. Deep Generative Image Models using a Laplacian Pyramid of Adversarial Networks[C]//Advances in neural information processing systems. 2015: 1486-1494.
- [DCGAN] Radford A, Metz L, Chintala S. Unsupervised representation learning with deep convolutional generative adversarial networks[J]. arXiv preprint arXiv:1511.06434, 2015.
- -[BiGAN] Donahue J, Krähenbühl P, Darrell T. Adversarial feature learning[J]. arXiv preprint arXiv:1605.09782, 2016.
- -[ALI] Dumoulin V, Belghazi I, Poole B, et al. Adversarially learned inference[J]. arXiv preprint arXiv:1606.00704, 2016.
- -[f-GAN] Nowozin S, Cseke B, Tomioka R. f-gan: Training generative neural samplers using variational divergence minimization[C]//Advances in Neural Information Processing Systems. 2016: 271-279.
- [Improved GAN] Salimans T, Goodfellow I, Zaremba W, et al. Improved techniques for training gans [C]// Advances in Neural Information Processing Systems. 2016: 2234-2242.
- -[CoGAN] Liu M Y, Tuzel O. Coupled generative adversarial networks[C]//Advances in neural information processing systems. 2016: 469-477.
- [EBGAN] Zhao J, Mathieu M, LeCun Y. Energy-based generative adversarial network[J]. arXiv preprint arXiv:1609.03126,
- [iGAN] Zhu J Y, Krähenbühl P, Shechtman E, et al. Generative visual manipulation on the natural image manifold[C]//European Conference on Computer Vision. Springer International Publishing, 2016: 597-613.
- -[ACGAN] Odena A, Olah C, Shlens J. Conditional image synthesis with auxiliary classifier gans[J]. arXiv preprint arXiv:1610.09585, 2016.
- [LSGAN] Mao X, Li Q, Xie H, et al. Least squares generative adversarial networks[J]. arXiv preprint ArXiv:1611.04076, 2016. code
- -[infoGAN] Chen X, Duan Y, Houthooft R, et al. Infogan: Interpretable representation learning by information maximizing generative adversarial nets[C]//Advances in Neural Information Processing Systems. 2016: 2172-2180.
- [pix2pix] Isola P, Zhu J Y, Zhou T, et al. Image-to-image translation with conditional adversarial networks[J]. arXiv preprint arXiv:1611.07004, 2016.
- -[Mode Regularized GAN] Che T, Li Y, Jacob A P, et al. Mode regularized generative adversarial networks[J]. arXiv preprint arXiv:1612.02136, 2016.
- -[GAP] Im D J, Ma H, Kim C D, et al. Generative adversarial parallelization[J]. arXiv preprint arXiv:1612.04021, 2016.
- [AdaGAN] Tolstikhin I, Gelly S, Bousquet O, et al.Adagan: Boosting generative models[J]. arXiv preprint arXiv:1701.02386, 2017.[offical:code]
- [Theory] Arjovsky M, Bottou L. Towards principled methods for training generative adversarial networks[J]. arXiv preprint arXiv:1701.04862, 2017.
- [Wasserstein GAN] Arjovsky M, Chintala S, Bottou L. Wasserstein gan[J]. arXiv preprint arXiv:1701.07875, 2017.
- [BS-GAN] Hjelm R D, Jacob A P, Che T, et al. Boundary-Seeking Generative Adversarial Networks[J]. arXiv preprint arXiv:1702.08431, 2017.
- [CAAE] Zhang Z, Song Y, Qi H. Age Progression/Regression by Conditional Adversarial Autoencoder[J]. arXiv preprint arXiv:1702.08423, 2017.
- -[DiscoGAN] Kim T, Cha M, Kim H, et al. Learning to discover cross-domain relations with generative adversarial networks[J]. arXiv preprint arXiv:1703.05192, 2017.
- [CycleGAN] Zhu J Y, Park T, Isola P, et al. Unpaired image-to-image translation using cycle-consistent adversarial networks[J]. arXiv preprint arXiv:1703.10593, 2017.
- [BEGAN] Berthelot D, Schumm T, Metz L. Began: Boundary equilibrium generative adversarial networks[J]. arXiv preprint arXiv:1703.10717, 2017.
- [WGAN-GP] Gulrajani I, Ahmed F, Arjovsky M, et al. Improved training of wasserstein gans[J]. arXiv preprint arXiv:1704.00028, 2017.
- -[DualGAN] Yi Z, Zhang H, Tan P, et al. Dualgan: Unsupervised dual learning for image-to-image translation[J]. arXiv preprint,
- -[MAGAN] Wang R, Cully A, Chang H J, et al. MAGAN: Margin adaptation for generative adversarial networks[J]. arXiv preprint arXiv:1704.03817, 2017.
- [TP-GAN] Huang R, Zhang S, Li T, et al. Beyond Face Rotation: Global and Local Perception GAN for Photorealistic and Identity Preserving Frontal View Synthesis[J]. arXiv preprint arXiv:1704.04086, 2017.
- -[Softmax GAN] Lin M. Softmax GAN[J]. arXiv preprint arXiv:1704.06191, 2017.
- -[DRAGAN] Kodali N, Hays J, Abernethy J, et al. On convergence and stability of gans[J]. ICLR 2018.link
- --[??] Tero Karras, Timo Aila, Samuli Laine, Jaakko Lehtinen. Progressive Growing of GANs for Improved Quality, Stability, and Variation. arXiv preprint arXiv:1710.10196, 2017. [code-pytorch]
- -[DeblurGAN] Orest Kupyn, Volodymyr Budzan, Mykola Mykhailych, Dmytro Mishkin, Jiri Matas. DeblurGAN: Blind Motion Deblurring Using Conditional Adversarial Networks. arXiv preprint arXiv:1711.07064, 2017.
- -[GibbsNet] Lamb A M, Hjelm D, Ganin Y, et al. GibbsNet: Iterative Adversarial Inference for Deep Graphical Models[C]//Advances in Neural Information Processing Systems. 2017: 5095-5104.
- [SA-GAN] Zhang H, Goodfellow I, Metaxas D, et al. Self-Attention Generative Adversarial Networks[J]. arXiv preprint arXiv:1805.08318, 2018.
- [BigGAN] Brock A, Donahue J, Simonyan K. Large scale gan training for high fidelity natural image synthesis[J]. arXiv preprint arXiv:1809.11096, 2018.
- [知乎] .GAN(生成式对抗网络)的研究现状,以及在行人重识别领域的应用前景
Generative Adversarial Nets[content]的更多相关文章
- (转)Deep Learning Research Review Week 1: Generative Adversarial Nets
Adit Deshpande CS Undergrad at UCLA ('19) Blog About Resume Deep Learning Research Review Week 1: Ge ...
- 论文笔记之:Conditional Generative Adversarial Nets
Conditional Generative Adversarial Nets arXiv 2014 本文是 GANs 的拓展,在产生 和 判别时,考虑到额外的条件 y,以进行更加"激烈 ...
- 论文笔记之:Generative Adversarial Nets
Generative Adversarial Nets NIPS 2014 摘要:本文通过对抗过程,提出了一种新的框架来预测产生式模型,我们同时训练两个模型:一个产生式模型 G,该模型可以抓住数据分 ...
- Generative Adversarial Nets[BEGAN]
本文来自<BEGAN: Boundary Equilibrium Generative Adversarial Networks>,时间线为2017年3月.是google的工作. 作者提出 ...
- Generative Adversarial Nets[CycleGAN]
本文来自<Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks>,时间线为2017 ...
- Generative Adversarial Nets[CAAE]
本文来自<Age Progression/Regression by Conditional Adversarial Autoencoder>,时间线为2017年2月. 该文很有意思,是如 ...
- Generative Adversarial Nets[Wasserstein GAN]
本文来自<Wasserstein GAN>,时间线为2017年1月,本文可以算得上是GAN发展的一个里程碑文献了,其解决了以往GAN训练困难,结果不稳定等问题. 1 引言 本文主要思考的是 ...
- Generative Adversarial Nets[Pre-WGAN]
本文来自<towards principled methods for training generative adversarial networks>,时间线为2017年1月,第一作者 ...
- Generative Adversarial Nets[pix2pix]
本文来自<Image-to-Image Translation with Conditional Adversarial Networks>,是Phillip Isola与朱俊彦等人的作品 ...
随机推荐
- Android为TV端助力 Canvas 和 Paint用法
自定义view里面的onDraw方法,在这里我们可以绘制各种图形,onDraw里面有两个API我们需要了解清楚他们的用法:Canvas 和 Paint. Canvas翻译成中文就是画布的意思,Canv ...
- wap2app(九)-- 使用mui.previewImage之后,页面a链接不能跳转
使用Hbuilder的长按保存图片的预览图片之后,页面所有的a链接都不能跳转. 解决办法: 可以使用下面绑定tap利用js跳转,亲测有效. mui('body').on( 'tap' , 'a' , ...
- c++趣味之变量名,颠覆所有教科书的VisualStudio
GCC不参与这次的趣味. 所有的教程都会告诉你,c++的变量名,类名,函数名都应该是字母或下划线开头的字母.数字.下划线组合,像这样: int _abc123; 实际上,VisualStudio并不遵 ...
- Scrapy 解决Scrapy安装时报错"Microsoft Visual C++ 14.0 is required"
问题描述 当前环境win10,python_3.6.1,64位.在windows下,在dos中运行pip install Scrapy报错:error: Microsoft Visual C++ 14 ...
- Windows服务器防火墙配置规范
本文属于一篇内部规范文档,整理的初衷是为了规范.统一集团的Windows服务器(仅仅SQL Server数据库服务器)防火墙设置,仅仅供内部其它同事设置Windows防火墙时作为参考的文档资料.如有不 ...
- spring4笔记----依赖注入的两种形式
设值注入:通过<property.../>元素驱动Spring执行setter的方法 构造注入:通过<constructor-arg.../>元素驱动Spring执行带有参数的 ...
- SQL server分离和附加数据库
下文是参考网友的文章结合自身的经验来总结的 应用于将数据库更改到同一计算机或不同计算机的不同SQL server实例中,或者要移动数据库文件存储的位置时. 一.分离数据库 将数据库从SQL serve ...
- memory 监控 mysql vs percona vs maria
oracle mysql 5.7 在performance_schema 通过以下表展现内存信息.这些表实际engine为performance_schema.这些表数据实际是以数组的形式存储在内存中 ...
- IPerf——网络测试工具介绍与源码解析(1)
IPerf是一个开源的测试网络宽带并能统计并报告延迟抖动.数据包丢失率信息的控制台命令程序,通过参数选项可以方便地看出,通过设置不同的选项值对网络带宽的影响,对于学习网络编程还是有一定的借鉴意义,至少 ...
- HTTP与TCP的区别和联系
工作原理(转载): https://www.cnblogs.com/zimohul/p/6506406.html 相信不少初学手机联网开发的朋友都想知道Http与Socket连接究竟有什么区别,希望通 ...
