【《生成对抗网络介绍概述》2900字】_第1页
【《生成对抗网络介绍概述》2900字】_第2页
【《生成对抗网络介绍概述》2900字】_第3页
【《生成对抗网络介绍概述》2900字】_第4页
【《生成对抗网络介绍概述》2900字】_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

生成对抗网络介绍概述目录TOC\o"1-3"\h\u9098生成对抗网络介绍概述 19051.1生成对抗网络 182931.1.1生成器 2255261.1.2判别器 268541.1.3目标函数 2180431.1.4GAN存在的问题 353461.2CycleGAN 3103791.1.1生成网络 4221831.1.2判别网络 581901.1.3损失函数 6基于深度学习的图像风格迁移算法往往需要使用成对图像数据集,然而成对图像数据集的获取难度十分巨大。基于生成对抗网络提出的CycleGan算法是一种无监督学习模型,其凭借无需使用配对数据集的强大优势从众多算法中脱颖而出。1.1生成对抗网络2014年,Goodfellow等人提出了生成对抗网络(GAN),如图2-1所示。GAN的基本原理是生成器和判别器的相互博弈,二者在对抗的过程中不断迭代优化,最终生成与样本分布近似的数据。图2-1GAN模型结构1.1.1生成器生成器通常采用卷积神经网络等深度学习模型。随机变量z通常为各类噪声,通过生成器G生成假样本数据G(z)。理论上生成器G可以学习任何样本分布,经过迭代训练后的生成器G可以生成期望的数据,即生成器学习到了样本近似分布。1.1.2判别器判别器通常是用于分类问题的网络模型,其作用是区分输入是真实样本数据还是假样本数据。判别器D的输入包括真实样本数据x和假样本数据G(z)。而输出是判别结果的概率值,表示判别器D判断输入的数据符合真实样本分布的概率。判别器D会将输出结果反馈给生成器G,用于指导生成器G的训练。1.1.3目标函数GAN设计理念来自于二人零和博弈[14],也称极大极小博弈。生成器和判别器是博弈中的对手,在训练的过程中两者会交替更新参数,通过迭代优化,最终达到纳什均衡状态[15],也就是双方均不会因为对方而改变自身的状态。GAN的总目标函数定义为: minmaxGDV其中V(D,G)表示真实数据与生成数据的差异度,z表示随机变量,x表示真实样本数据,G(z)表示假样本数据,Pdata(x)表示真实样本分布,Pz(x)表示假样本分布,D(G(z))表示假样本数据的判别器输出值,D(x)表示真实样本数据的判别器输出值,E为数学期望。GAN采取交替优化的训练方法,每次优化的过程包括两个部分:第一部分是固定生成器优化判别器,判别器的目标是更好地区分输入数据。因此判别器要提升对真实样本数据x的判别能力,即期望log(D(x))最大化。对于假样本数据G(z),期望D(G(z))最小化,即log(1-D(G(z)))最大化。第一部分的目标函数为: maxDV第二部分是固定判别器优化生成器,生成器的目标是生成近似真实样本分布的数据,使得判别器无法区分。生成器对于假样本数据G(z)的期望是D(G(z))最大化,这与判别器的目标刚好相反,即log(1-D(G(z)))最小化。第二部分的目标函数为: minGV1.1.4GAN存在的问题GAN存在训练不稳定的问题[16],GAN训练的目标是达到纳什平衡状态,此时即为最优模型,但是训练过程中往往会发生模式崩溃的问题。在训练初期,生成器输入的随机噪声与真实样本数据相差悬殊,判别器可能以极高的置信度将两者区分开来,此时判别器已达到最优情况,造成生成器梯度消失无法继续优化更新。GAN无需预先建模,训练过程不可控的问题也导致其在处理较复杂图像的时候往往达不到预期的结果。并且GAN的训练周期长,时间成本很高。而CycleGan可以有效解决上述问题,但其仍然存在生成图像模糊等问题有待解决,因此本文采用改进CycleGan算法进行图像风格迁移实验。1.2CycleGANCycleGAN是由两个完全对称的GAN组成的网络结构,包括2个生成网络和2个判别网络。CycleGan采用无监督学习方式,不需要使用成对数据集即可完成两个数据集之间的图像风格迁移,其模型结构如图2-2所示。以不同的数据集X和Y为例,第一个生成网络G实现X到Y的映射关系:第二个生成网络F实现Y到X的映射关系。第一个判别网络Dx判断输入图像是否为X:第二个判别网络Dy判断输入图像是否为Y。生成网络G和F的网络结构相同,判别网络Dx和Dy的网络结构相同。循环训练流程为:图像Y通过生成网络F生成图像X,送入判别网络Dx中,并通过生成网络G重构为图像Y;而图像X通过生成网络G生成图像Y,送入判别网络Dy中,并通过生成网络F重构为图像X。图2-2CycleGan模型结构1.1.1生成网络传统CycleGAN的生成网络采用Resnet残差网络,其网络结构包含下采样、残差模块、上采样。残差网络出现之前,传统卷积神经网络在达到一定深度后,继续增加网络层数会出现退化现象,导致误差增大。残差网络使用恒等映射确保网络深度增加而不会引起训练误差上升。CycleGan的生成网络结构如图2-3所示。其中包括2个步长为2的下采样、9个卷积核大小为3×3的残差模块、2个步长为1/2的上采样[17]。图2-3CycleGan生成网络结构残差模块均由2个卷积层构成。残差模块的作用是将输入和经过残差模块的输出一起作为残差模块的总输出。基本结构如图2-4所示。图2-4残差模块基本结构残差模块的输入为x,输出为H(x)。残差模块将x作为输出的部分结果,因此残差网络的学习目标为: Fx=HResNet残差模块改变了学习目标,不再是学习输出H(x),而是学习残差F(x),即输出与输入之间的差别。残差模块可以有效解决网络层数过深导致的梯度消失问题,使得网络深度可以任意增加而不必担心发生退化问题,稳定提高模型的训练效果。1.1.2判别网络CycleGan的判别网络采用的是PatchGAN,其网络结构是由5层卷积层构成的全卷积网络。PatchGAN判别网络不再是直接处理整张输入图像,而是将注意力集中于局部图像块。例如本文的数据集图像大小为256×256像素,PatchGAN判别网络输出的是30×30矩阵。矩阵点对应输入图像中大小为70×70的感受野。PatchGAN将输入图像划分成多个局部图像块,分别计算判别概率值,最终取矩阵中所有数值的平均值作为输出结果。而原始的GAN判别器只是输出完整输入图像的判别概率值。PatchGAN判别网络能够减少生成网络的生成难度,有效提高生成图像的质量[18]。网络结构如图2-5所示。图2-5PatchGAN网络结构1.1.3损失函数1、对抗损失两个生成网络G,F都设置了对抗损失函数[19]。生成网络G和它的判别网络Dy的公式表示为: LGAN(G,Dy,X,Y)=Pdata(x)表示数据集X的样本分布,Pdata(y)表示数据集Y的样本分布。生成网络G的目标是使判别网络无法分辨生成图像G(x)与图像Y。而判别网络Dy的目标则是准确地将两者区分开。因此可以表示为: minmaxGDyLGANCycleGan的生成网络和判别网络均拥有相似的结构。因此生成网络F和它的判别网络Dx设置了相同的对抗损失,表示为: minmaxFDxL2、循环一致损失CycleGan通过训练可以学习到所需要映射关系G和F,然而当生成网络的训练数据集足够大时,其可能将输入图像映射到目标域中任意的图像[20]。所以仅使用对抗损失不能保证将输入的x映射到所需要的y中。为了保留原图像的内容信息,加入了循环一致损失。例如数据集X中的任意图像x在循环过程中均能重构

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论