如果 GAN 中的判别器和生成器一起学习,那么判别器在训练的初始阶段如何知道图像是真还是假?判别器需要提前训练吗?
鉴别器如何在初始阶段知道图像是真的还是假的?
鉴别器的训练机制是纯监督的:你给出数据和标签,它通过最小化损失来学习预测标签。
与普通分类网络训练的唯一区别是其中一个类的分布不是静态的,而是随着时间的推移而变化(随着生成器在创建看起来真实的数据方面变得更好)。
在第一次训练迭代中,生成器基本上会产生噪声,因此,在开始时,鉴别器将学会区分真实图像和噪声。然后两者将一起逐步改善。
根据所使用的对抗性损失(例如 vanilla GAN),生成器和判别器的能力不太平衡可能很重要,因为如果判别器学习“太多”,传播到判别器的梯度将非常小,并且生成器不会学到任何东西。在这种情况下,预训练鉴别器可能不是一个好主意。
使用Wasserstein GAN(或其基于梯度惩罚的变体),您应该不会遇到这个问题,因此应该可以训练判别器直到最优,并使用它将梯度传播到生成器。
这是个好问题。我将发布我自己的个人考虑,不应被视为严格的答案,我想稍微扩大一下问题
[免责声明:个人考虑,不严谨回答]
生成器和判别器不是严格一起学习的,它们是相互学习的。事实上,当判别器在训练时,生成器会被冻结,反之亦然。
在训练阶段的最开始,预计生成器的生成输出与真实样本相距甚远。判别器也确实没有很好的分类特征空间,但我认为它比生成器开始产生更接近的假样本更快地区分它们。然后,最小最大游戏演变......
我曾经想过使用预训练的分类器来强制生成器产生真正好的假图像,但我也感觉到,那样的话,战斗将不公平,并且会偏向判别器方面,关于这个:
在预训练阶段应该将哪些输入数据提供给鉴别器?我的意思是,为了预训练鉴别器,需要一些预先伪造的图像。一种方法是对生成器进行几个步骤的预训练并生成远离真实图像的假图像
由于鉴别器仍在学习,他们是否有机会变得更好?
判别器太好了,它不会学习,游戏是否更接近纳什均衡,所以更接近结束?
考虑到训练 GAN 时的巨大问题,我从未尝试过。
如果更有经验的 GANner 能对这些考虑提供更多的见解,那就太好了