概念:

生成对抗网络(GAN,Generative Adversatial Networks)是一种深度学习模型,近年来无监督学习上最具前景的方法之一。
模型主要通用框架有(至少)两个模块:生成模型(generative)和判别模型(Discriminative)的互相博弈学习产生的相当好的输出。
原始GAN理论中,并不要求G和D都是神经网络,但使用中一般均使用深度神经网络作为G和D。


发展历史:

Ian J. Goodfellow在2014年《Generative Adversarial Networks》中提出的一个通过对抗过程估计生成模型的新框架。
框架中同时训练两个模型,捕获数据分布的生成模型G和估计样本来自训练数据的概率的判别模型D。G的训练程序是将D错误的概率最大化。


方法:

GAN模型:

机器学习的模型可大体分为两大类,生成模型和判别模型。判别模型需要输入变量,通过某种模型来预测,生成模型则是给定某种隐含信息,来随机产生观测数据。
举例:

  • 判别模型:给定一张图,判断这张图力的动物是猫还是狗
  • 生成模型:给一系列猫的图片,生成一张新的猫咪(不在数据集里)

对于判别模型,损失函数是容易定义的,因为输出的目标相对简单。但对于生成模型,损失函数的定义就不是难么容易。我们对于生成结果的期望,往往是一个暧昧不清,难以数学公理化定义的范式。所以把生成模型的反馈部分交给判别模型处理。这就是把机器学习两大模型结合在了一起。

GAN的原理:

以生成图片为例进行说明,假设我们有两个网络,G和D。他们的名字便暗示了功能:

  • G 是一个生成图片的网络,它接收一个随机的噪声, 通过这个噪声生成图片。
  • D 是一个判别网络,判别一张图片是不是”真实的“。它的输入参数是x,x代表一张图片,输出D(x),表示真实图片的概率,如果是1,则就代表100%是真实的图片。输出是0,则不是真实的图片。

有哪些常见的生成式模型于判别式模型?

  • 一把来说,Logisitic Regression 、Linear regression、SVM、Traditional Nerual Networks、Nereast Neighbor、CRF等全部都属于判别式模型。
    我们使用这些模型的时候,实际上只关心分类器的分界面

  • 而Naïve Bayes 、Mixtures of Gaussians、HMMs、Markov Random Fields
    是生成式模型,这些模式都需要估计概率密度。

深度学习之生成对抗网络(Gan)

左图是判别式模式,在学习SVM时,很熟悉了,只要界面分得开,模型性能就一定好。右边的时生成式模型。也可以用来分类,但是模型不会显示的估计出左边判别式中的分界面,
能够分类,是因为估计出了两个概率密度分布。
概率密度估计的准,分类器的性能就好。

各自的优劣。

判别式:

  • 优点:分类边界灵活,学习简单,性能一般由于生成式模型
  • 缺点:只估计除了分界面,粗暴的解决了问题(知其然,不知其所以然)

生成式模型:

  • 优点:收敛速度块,学习分布,估计隐变量
  • 缺点:学习复杂
总结:

生成式模型可转变为判别式模型,反之不能。
主要是因为判别式模型是没有学习到数据本身的分布的,所以无法转为生成式模型,因为它没有联合概率密度。判别式基本上就是在硬学习整个数据的分界面。要见过所有样本,才能得到好的分界面。而生成模型,可能见一小部分样本,就能估计出概率密度分布。
那样就已经学习到了,迭代次数相对较少。

所以GAN = (生成式模型 + 判别式模型)集两家之所长,生成对抗网络。Generative 生成式模型,Adversarial 对抗,相爱相杀的过程。

在训练过程中,生成网络G的目标就是尽量生成真实的图片去欺骗判别网络D,而D的目标就是尽量把真实图片和G生成的图片区别开来,这样G和D就构成了一个动态的博弈过程。

最后博弈的结果?

理想状态下,G可以生成足以以假乱真的图片G(z)。对于D来说,它难以判定G生成的图片究竟是不是真实的,一次D(G(z)) = 0.5。

这样我们的目的就达成了,我们得到了一个生成式的模型G,他可以用来生成图片。

Goodfellow从理论上证明了该算法的收敛性,以及在模型收敛时,生成数据具有和真实数据相同的分布。

GAN公式:
深度学习之生成对抗网络(Gan)

公式中x表示真实图片,z表示输入G网络的早上,G(z)表示网络生成的图片,D(·)表示网络判断图片是否真实的概率。

D就是判别器。学习目标就是最大化上面的式子。G是生成器,目标就是最小化上面的式子。


应用:

  1. 图像生成,目前GAN最常用的地方就是超分辨率任务,语义分割等等。
  2. 数据增强。
    深度学习之生成对抗网络(Gan)
  3. 风格化
    深度学习之生成对抗网络(Gan)
  4. 创造性艺术
    深度学习之生成对抗网络(Gan)