生成对抗网络 (GAN) 包含两个部分:
- 生成器学习生成合理的数据。生成的实例会成为判别器的负性训练示例。
- 判别器会学习区分生成器的虚假数据与真实数据。判别器通过生成可观测的结果来惩罚生成器。
在开始训练时,生成器会生成明显的虚假数据,而判别器会快速学会辨别数据是虚假的:
随着训练的进行,生成器越来越接近能够分辨判别器的输出:
最后,如果生成器训练的进展顺利,判别器在区分真实和虚假方面会变得更加糟糕。它开始将虚假数据分类为真实数据,其准确性会降低。
整个系统的图片如下:
生成器和判别器都是神经网络。生成器输出直接连接到判别器输入。通过反向传播,判别器的分类提供了一个信号,供生成器用于更新其权重。
让我们更详细地介绍此系统的各个部分。