GAN,全称为生成对抗网络,是由美国伊利诺伊大学香槟分校的研究员Ian Goodfellow在2014年提出的一种深度学习模型。它的基本原理是构建一对模型,分别为生成器和判别器,通过一种对抗的学习过程,使得生成器更加擅长生成真实数据,而判别器更加擅长分辨真实数据和生成数据。
生成器和判别器的具体结构可以根据具体问题的需要设计,但是一般来说,生成器是一个深度卷积神经网络,其输入是一个随机噪声向量,输出是一个假的数据样本。而判别器则是一个常规的分类器,其输入是一个数据样本,输出是一个概率值,表示这个样本是否是真实的。
算法流程大致如下:
随机生成一个噪声向量,并将其输入到生成器中,得到一个假的数据样本。
将真实数据样本和假数据样本同时输入到判别器中,计算其输出概率值。
计算判别器对真实数据样本和假数据样本的分类误差,并使用反向传