《表1 典型GAN模型对比》

《表1 典型GAN模型对比》   提示:宽带有限、当前游客访问压缩模式
本系列图表出处文件名:随高清版一同展现
《生成对抗网络GAN综述》


  1. 获取 高清版本忘记账户?点击这里登录
  1. 下载图表忘记账户?点击这里登录

针对表1的总结,在MNIST数据集上进行实验以验证其准确性。图14是各个GAN训练过程中生成器和判别器损失函数变化(实验代码参考网络https://github.com/znxlwm/pytorch-generative-modelcollections),可以看出:原始GAN训练不平衡,而CGAN仅在损失函数上加上一个约束项,没有针对GAN训练不稳定的根本原因进行改进,即没有真正解决模型训练不稳定问题;BEGAN是在Wasserstein距离上得到启发,本质上还是满足Lipschitz连续性条件,因此其训练平衡、稳定且收敛速度极快;EBGAN从能量角度对GAN进行改进,有效解决了训练不平衡问题,但是收敛速度慢,迭代40 000次后生成器依然没有收敛;LSGAN使用最小二乘损失函数代替原始的交叉熵损失函数,但其不满足Lipschitz连续性条件,可以看到训练中存在梯度消失/爆炸的情况;WGAN对截断参数c选择不合理会造成训练不稳定的情况,这对经验有较高的要求;WGAN-GP使用梯度惩罚(gradient penalty)技巧满足了Lipschitz连续性条件,解决了WGAN训练不平衡的问题,但是收敛速度慢;InfoGAN增强了对GAN的解释性,使得训练平衡,同时收敛速度快。DCGAN能生成多样性丰富的样本,但分辨率较低,并且DCGAN只是在网络结构和训练技巧上进行了改进,并没有真正解决模型训练不稳定的问题;LAPGAN的生成器在每一阶段都能学习到不同的分布,并作为下一层的补充信息,这有助于生成高分辨率的图像;BigGAN是一个规模很大的GAN,使用截断、正交正则化等技巧训练生成高分辨率的图像,同时缺陷也很明显,其参数量庞大,需要在TPU(tensor processing unit)或多个GPU(graphics processing unit)下训练,成本高;CycleGAN使用循环机制有效充分运用了两个域的信息,同时其对训练数据要求不高,只需提供不同风格数据图像就可以实现风格转换,实现成本低,但循环转换会造成一定的信息丢失,使得生成样本质量较低;StackGAN应用在文本到图像生成的领域,它能生成高分辨率的图像,但是其分段式模式也往往造成各个分任务找不到重点,导致生成失败。