GAN - 生成器损失减少,但鉴别器假损失在初始下降后增加,为啥?

Posted

技术标签:

【中文标题】GAN - 生成器损失减少,但鉴别器假损失在初始下降后增加,为啥?【英文标题】:GAN - Generator loss decreasing but Discriminator fake loss increase after a initial drop, why?GAN - 生成器损失减少,但鉴别器假损失在初始下降后增加,为什么? 【发布时间】:2021-11-18 23:46:41 【问题描述】:

我正在学习 GAN,并试图在自定义数据集上运行 pix2pix GAN 模型,我每个时期的平均生成器损失以及平均鉴别器假和真实损失如下 -

我就是不明白,为什么我的生成器损失减少了,而鉴别器假图像损失增加了?据我了解,它应该像发电机一样下降。有人可以帮我理解我犯的错误或我面临的培训问题吗?

批量大小:16 纪元:100 学习率:0.0008 L1 拉姆达:100 优化器:Gen-Adam;光盘 - SGD 生成器中使用的 BatchNORM。

【问题讨论】:

【参考方案1】:

GAN 中的损失很难解释,也不是你想的那样。技术上的答案可能是生成器压倒了鉴别器。图像变得越来越逼真(这是您真正关心的全部),因此生成器的损失正在改善,而判别器的工作质量相同,但获得的数据更严格。

使用 FID 或 IS 衡量您的 GAN,而不是损失。

【讨论】:

以上是关于GAN - 生成器损失减少,但鉴别器假损失在初始下降后增加,为啥?的主要内容,如果未能解决你的问题,请参考以下文章

生成对抗网络中的鉴别器损失没有改变

为啥我在 GAN 的训练鉴别器和生成器中得到 nan 损失值? [复制]

为啥我们在编译组合 GAN (SRGAN) 网络时使用两个损失

LSGAN:最小二乘生成对抗网络

将 torch.backward() 用于 GAN 生成器时,为啥 Pytorch 中的判别器损失没有变化?

course | 李宏毅lecture1-GAN基础知识