GAN 中的判别器只是一个分类器。它会尝试区分真实数据和生成器创建的数据。它可以使用适合其分类的数据类型的网络架构。
图 1:判别器训练中的反向传播。
判别器训练数据
判别器的训练数据来自两个来源:
- 真实数据实例,例如真实人物照片。判别器会在训练期间将这些实例用作正例。
- 此生成器生成的虚假数据实例。判别器会在训练期间将这些实例用作负例。
在图 1 中,两个“样本”框表示流向判别器的两个数据源。在判别器训练期间,生成器不会进行训练。它的权重保持不变,同时会生成判别器进行训练的样本。
训练判别器
判别器连接到两个损失函数。在判别器训练期间,判别器会忽略生成器损失,而仅使用判别器损失。我们在生成器训练期间使用生成器损失,如下一部分所述。
在判别器训练期间:
- 判别器对真实数据和来自生成器的虚假数据进行分类。
- 判别器损失会使判别器因真实实例被误分类为虚假或虚假实例而受到惩罚。
- 判别器通过判别器网络通过判别器损失函数进行反向传播来更新其权重。
在下一部分中,我们将了解生成器损失因与判别器连接的原因。