
生成对抗网络(GAN:Generative adversarial networks)是深度学习领域的一个重要生成模型,即两个网络(生成器和鉴别器)在同一时间训练并且在极小化极大算法(minimax)中进行竞争。这种对抗方式避免了一些传统生成模型在实际应用中的一些困难,巧妙地通过对抗学习来近似一些不可解的损失函数。

之前我们介绍了GAN的原理:深入浅出 理解GAN中的数学原理,GAN最重要的就是找到D与G之间的纳什均衡,但是在实际中会发现GAN的训练不稳定,训练方法不佳很容易出现模式崩溃等问题,本篇将记录一些训练技巧,不一定适合你的模型,也可能有疏漏和错误,供学习参考,欢迎指正和补充。
模式崩溃现象狭义上来说是生成器仅仅产生单个或有限的模式来欺骗鉴别器,仅仅只是为了得到最低的判别器损失D_loss,却忽视了数据集的分布,比如一个动物图像数据集,GAN在训练时候发现生成猫和狗的效果非常好,生成牛、羊、猴子等效果很差,整个G就只去生成猫狗,根本不去学习生成其他的动物图像,就会导致生成的图像单一。模式崩溃现象本质上还是GAN的训练优化问题,即使是最优秀的 GAN 研究人员也在与模式崩溃作斗争。
解决模式崩溃有很多方法,如下:

在GAN中,如果鉴别器依赖于一小组特征来检测真实图像,则生成器可以仅生成这些特征以仅利用鉴别器。优化可能变得过于贪婪并且不会产生长期效益;
部分参考自: https://arxiv.org/pdf/1606.03498.pdf
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。