CycleGAN:发电机损失没有减少,鉴别器变得完美

数据挖掘 生成模型 图片
2022-02-23 14:18:36

所以我正在训练一个用于图像到图像传输的 CycleGAN。

问题是:虽然鉴别器损失减少了,而且现在非常小,但生成器损失根本没有减少。

生成器损失为:

1 * 鉴别器损失 + 5 * 身份损失 + 10 * 前向循环一致性 + 10 * 后向循环一致性

不知何故,鉴别器模型虽然没有那么大,但很快就变得非常强大,而生成器似乎根本没有学到太多东西。

我必须改变什么来解决这个问题并使生成器更有效?

1个回答

这通常发生在您的鉴别器开始了解您生成的(假)和真实样本之间的差异仅相差一些 n/255 因子时。这很容易学习,如果您的生成器无法正确生成“好”样本,那么在 10-100 个 epoch 内,您的鉴别器将学习这种非常微不足道的转换。

现在,当我们达到生成器无法从纯随机输出收敛的点时,它会卡住生成相同的随机输出,并且具有恒定的高损耗。由于我不知道您网络的确切架构,因此有一些开箱即用的解决方案对我有帮助。

尝试在鉴别器网络的最开始添加一些高斯噪声,这将确保鉴别器不会立即学习微不足道的变换。我还不能评论这个频道,所以如果你能发布你的网络架构,那么我可能会给你一个更好的答案。