#《PyTorch生成对抗网络编程》
2021-12-11

GAN架构训练:下面三步训练循环是实现这一目标的一种方法

  • 第1步-向鉴别器展示一个真实的数据样本,告诉它该样本的分类应该是1.0。再用损失来更新鉴别器。
  • 第2步-向鉴别器显示一个生成器的输出,告诉它该样本的分类应该是0.0。只用损失来更新鉴别器。不要更新生成器。
  • 第3步-向鉴别器显示一个生成器输出,告诉生成器结果应该是1.0。只用结果的损失来更新生成器,希望生成器能够成功骗过鉴别器。

这就是大多数GAN训练方案的核心。

假设我们用一个被训练用于生成图像的神经网络……。我们称它为生成器(generator)。同时,我们把分类器称为鉴别器(discriminator)……

  • 如果图像通过了鉴别器的检验,我们奖励生成器。
  • 如果伪造的图像被识破,我们惩罚生成器

鉴别器和生成器是竞争对手关系,双方都试图超越对方,并在这个过程中逐步提高。我们称这种架构为生成对抗网络(Generative Adversarial Network,GAN)。

我们发现,由反向查询创建的图像具有以下的特征:

  • 在独热向量相同的情况下,生成的图像总是相同的;
  • 它们是有标签的训练数据的像素平均值。

能够用网络来生成图像已经很不错了,但理想的情况应该是;

  • 网络可以生成不同的图像
  • 生成的图像看起来像训练数据中的一个样本,而不是数据集的平滑平均值。


桂ICP备11003301号-1 公安备案号:45040302000027 Copyright @ 2021- 2022 By Sun zi chao

阅读统计: 1.93W 文章数量: 76 运行天数: 416天 返回cmnsoft