最近重写拾起了GAN网络,做layout的生成工作,但是在训练的过程中又出现了G和Dloss不按照正常的情况下降和上升:
网上查找的原因是:种情况是判别器太强了,压制了生成器。
查询资料后总结的方法
1 提升G的学习率,降低D的学习率。
2 G训练多次,D训练一次。
3 使用一些更先进的GAN训练目标函数。
当模型分布的支持与目标分布(真实图像)的支持不相交时,存在一个能够很好区分模型分布和目标分布的discriminator,在这种情况下,discriminator对输入的导数为0,这样generator的训练会完全停止。也可能不停止,但是一般D loss会变为0,G loss一直波动,甚至有可能爆炸,生长,这会导致GAN的训练非常困难
参考资料: