对抗生成网络_直观了解GAN网络(对抗生成网络)

今天,让我们以更为直观的角度来了解GAN,无需各种复杂的数学方程式。

介绍

自从Goodfellow等人介绍GAN以来,它们已经席卷了深度学习和计算机视觉的世界。在2014年的NIPS上。GAN的主要思想是同时训练两个模型。生成器模型G,它基于随机噪声生成样本;另一个鉴别器模型D,它确定样本是真实的还是由G生成。

这里将介绍GAN工作机制背后的原理,没有研究太多的损失函数,概率分布和数学。重点将是对GAN的功能有一个良好的顶层了解。鉴于GAN越来越受欢迎,任何人都可以在不预先加载太多复杂信息的情况下开始深度学习之旅,

训练GAN框架类似于两个玩家的最小-最大游戏。G会不断提高以生成更逼真的图像和更高质量的图像。D提高了确定图像是否由G创建的能力。GAN的训练可以完全通过反向传播来完成,这大大简化了训练过程。通常,通过定期从G切换到D来进行训练,以防止两个模型之间出现巨大的性能差距。

生成器模型

生成器模型通常由一系列上采样和卷积层组成。DC(Deep Convolutional)-GAN网络是一种常见的体系结构,由Alec Radford等人在ICLR 2016上提出。可以在下面找到DCGAN框架。如果看到过其他常见的CNN框架,则GAN结构与标准CNN分类器非常相似,只是它在水平方向上“翻转”。

93d862de4933d79584690b57888fa100.png

DCGAN架构

提供给生成器网络的输入在图像中标记为“ 100z”。这意味着采样了100个点,从而创建了一个长度为100的潜矢量。“z”还表示这些点是从单位正态分布中采样的。因此,我们可以将生成器网络视为执行从潜在空间到训练数据的映射的函数。

我们可以将潜在空间(100维)想象成基于高斯分布的固定分布。生成器网络从该潜在空间中采样随机点,并将其映射到图像空间(64 x 64 x 3尺寸)。在所有可能图像的空间中,存在一个较小的子空间,该子空间描述了在输入训练数据中找到的图像。鉴别器将对生成器进行惩罚,以通过对抗损失函数创建不属于训练数据分布(不“真实”)的图像。

143b913c25c47fdd4a0fab13aeb8ab40.png

生成器的映射功能

鉴别器模型

鉴别器通常具有类似于标准CNN分类器的框架,例如VGG。鉴别器的目的是学习根据图像是来自训练数据还是由G生成的图像,将输入图像分类为真实图像还是假图像。看下面的图,鉴别器的目的是学习红色虚线。因此,它将能够根据该输入数据分布对真实图像和伪图像进行分类。如果提供的图像位于红色空间之外,它们将被分类为“伪造”。

82046d376617297e2934bc4c5cbc0466.png

G和D串联

在GAN框架中,必须一起训练G和D模型。两种模型中的改进最终都会导致生成更好,更逼真的图像。一个好的鉴别模型可以完美地捕获训练数据的分布。这使生成器具有良好的“参考”空间,因为生成器的训练高度依赖于鉴别器输出。

如果鉴别器无法很好地捕获训练数据分布,则生成的与训练图像不相似的图像将被分类为“真实”,这会降低模型性能!

局限性

显然,这个简单的GAN框架只能生成类似于训练数据分布的图像。因此,需要大量的训练数据!另外,GAN培训有很多障碍。一个常见的问题是模态崩溃,即生成器模型学习将多个潜矢量映射到一个图像。这极大地影响了GAN框架的多样性。

结论

近年来,GAN有许多变化和发展来解决这些问题。其中包括改进的损失功能和专门针对特定任务(例如超分辨率或图像到图像转换)定制的专用框架。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值