生成对抗网络项目实战
上QQ阅读APP看书,第一时间看更新

1.1 什么是GAN

GAN是一种由生成网络和判别网络组成的深度神经网络架构。通过在生成和判别之间多次循环,两个网络相互对抗,试图胜过对方,从而训练了彼此。

1.1.1 什么是生成网络

生成网络使用现有数据生成新数据,比如使用现有图像来生成新图像。生成网络的核心任务是从随机生成的由数字构成的向量(称为“潜在空间”, latent space)中生成数据(比如图像、视频、音频或文本)。在构建生成网络时需要明确该网络的目标,例如生成图像、文本、音频、视频,等等。

1.1.2 什么是判别网络

判别网络试图区分真实数据和由生成网络生成的数据。对于输入的数据,判别网络需要基于事先定义的类别对其分类。这可能是多分类或二分类。通常,GAN中进行的是二分类。

1.1.3 GAN通过对抗竞赛进行训练

GAN中的网络通过对抗竞赛进行训练:两个网络互相竞争。例如用GAN生成艺术品赝品。

(1) 第一个网络,即生成网络,并未见过艺术品实物,但试图生成形似艺术品实物的作品。

(2) 第二个网络,即判别网络,试图判断一件艺术品是真品还是赝品。

(3) 生成网络在不断迭代中生成看起来更加真实的艺术品,试图骗过判别网络,让它相信这些生成的赝品是真品。

(4) 判别网络不断优化区分真假的标准,试图胜过生成网络。

(5) 在每轮迭代中,它们会将自己所做调整中的成功尝试反馈给对方,这就是GAN的训练过程。

(6) 最终,在判别网络的帮助下,生成网络已经训练得让判别网络无法区分哪件是真品、哪件是赝品了。

在该竞赛中,两个网络是同时受训的。当判别网络无法区分真品和赝品时,该网络就进入了一种名为“纳什均衡”的状态。本章稍后会详述。