当前位置:   article > 正文

【GAN】什么是模式崩溃,以及解决模式崩溃的两条思路

模式崩溃

原文

原文链接:
【GAN优化】什么是模式崩溃,以及如何从优化目标上解决这个问题
【GAN优化】解决模式崩溃的两条思路:改进优化和网络架构

本文只对上面两篇文章内容做总结,具体内容请查看原文。


什么是模式崩溃

对于某一个训练数据集,其中样本的概率分布为一个简单的一维高斯混合分布,包含两个峰:
包含两个峰的一维高斯混合分布
模式崩溃问题是针对于生成样本的多样性,即生成的样本大量重复类似,例如下图(绿色点为生成的样本):
生成的样本大量重复类似
生成的样本全部聚集在左边的峰下,这时虽然生成样本的质量比较高,但是生成器完全没有捕捉到右边的峰的模式。


解决思路

从优化目标考虑

  • unrolled GAN [1]:unrolled GAN认为,因为生成器缺乏“先见之明”,导致了无法跳出模式崩溃的困境,生成器每次更新参数时,只考虑在当前生成器和判别器的状态下可以获得的最优解,生成器并不知道当前选择的最优解从长远来看并不是最优解。通过一定的改进,来赋予生成器“先见之明”。即生成器在更新时,不仅仅考虑当前生成器的状态,还会额外考虑以当前状态为起始点,判别器更新K次后的状态,综合两个信息做出最优解。
  • DRAGAN [2]:GAN的参数优化问题并不是一个凸优化问题,存在许多局部纳什均衡状态。即使GAN进入某个纳什均衡状态,损失函数表现为收敛,其仍旧可产生模式崩溃,我们认为此时参数进入一个坏的局部均衡点。通过实践,发现当GAN出现模式崩溃问题时,通常伴随着这样的表现:当判别器在训练样本附近更新参数时,其梯度值非常大,故DRAGAN的解决方法是:对判别器,在训练样本附近施加梯度惩罚项。试图在训练样本附近构建线性函数,因为线性函数为凸函数具有全局最优解。DRAGAN的形式与WGAN-GP颇为相似,只是WGAN-GP是在全样本空间施加梯度惩罚,而DRAGAN只在训练样本附近施加梯度惩罚。

从网络架构考虑

  • MAD-GAN [3]:即使单个生成器会产生模式崩溃的问题,但是如果同时构造多个生成器,且让每个生成器产生不同的模式,则这样的多生成器结合起来也可以保证产生的样本具有多样性。在MAD(Multi-agent diverse)GAN中,共包括k个初始值不同的生成器和1个判别器,与标准GAN的生成器一样,每个生成器的目的仍然是产生虚假样本试图欺骗判别器。对于判别器,它不仅需要分辨样本来自于训练数据集还是其中的某个生成器(这仍然与标准GAN的判别器一样),而且还需要驱使各个生成器尽量产生不相似的样本。
  • MAD-GAN-Sim :MAD-GAN-Sim是一种“更强力”的版本,它不仅考虑了每个生成器都分别负责生成不同的样本,而且更细致地考虑了样本的相似性问题。其出发点在于:来自于不同模式的样本应该是看起来不同的,故不同的生成器应该生成看起来不相似的样本。

参考论文

[1] Kodali N , Abernethy J , Hays J , et al. On Convergence and Stability of GANs[J]. 2017.
[2] Metz L , Poole B , Pfau D , et al. Unrolled Generative Adversarial Networks[J]. 2016.
[3] Ghosh A , Kulharia V , Namboodiri V , et al. Multi-Agent Diverse Generative Adversarial Networks[J]. 2017.

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/102998?site
推荐阅读
相关标签
  

闽ICP备14008679号