计算机系统应用  2019, Vol. 28 Issue (11): 1-9   PDF    
生成对抗网络研究综述
邹秀芳, 朱定局     
华南师范大学 计算机学院, 广州 510631
摘要:自生成对抗网络GAN提出以后, 现这一方向已成为人工智能方向的研究热点. GAN的思想采用二人零和博弈方法, 由生成器和判别器构成, 生成器负责生成样本分布, 判别器则判别输入是真实样本还是生成样本, 生成器和判别器不断交互优化, 最终达到最优效果. GAN模型的提出无疑是很新颖的, 但也存在很多缺点, 比如梯度消失问题、模式崩溃等. 随着研究的深入, GAN不断优化扩展, GAN的衍生模型也层出不穷. GAN可应用于不同领域, 主要为计算机图像和视觉领域, 在图像领域有着突出的效果, 能生成高分辨率逼真的图像, 能对图像进行修复、风格迁移等, 也能生成视频并进行预测等. GAN也能生成文本, 可以进行对话生成、机器翻译、语音生成等. 同时, GAN在其他领域也有涉及, 比如生成音乐、密码破译等. 但是GAN在其他领域的应用效果并不显著, 那么, 如何提高GAN在其他领域的应用效果将值得深入研究, 使生成对抗网络在人工智能方面大放异彩.
关键词: 生成对抗网络    梯度消失    模式崩溃    图像领域    风格迁移    机器翻译    
Review on Generative Adversarial Network
ZOU Xiu-Fang, ZHU Ding-Ju     
School of Computer Science, South China Normal University, Guangzhou 510631, China
Foundation item: Major Program of National Social Science Foundation of China (14ZDB101); National Natural Science Foundation of China (61105133)
Abstract: Since the proposal of generative adversarial networks, GAN has become a research hotspot of artificial intelligence. GAN adopts the method of the zero-sum game between two people, which consists of a generator and a discriminator. The generator is responsible for generating the sample distribution, and the discriminator is responsible for determining whether the input is a real sample or a generated sample. The generator and discriminator constantly interact and optimize to achieve the optimal effect. The model of GAN is undoubtedly very novel, but there are also many shortcomings, such as the problem of gradient disappearance, collapse mode, and so on. With the deepening of research, GAN has been continuously optimized and expanded, and the derivative models of GAN have emerged in endlessly. GAN has been optimized and improved. Also, GAN can be applied in different fields, though it is mainly used in the field of computer image and vision. It has outstanding effects in the field of image. It can generate high-resolution realistic images, repair images, transfer styles, and generate video and prediction. GAN can also generate text, to do some work, such as dialogue generation, machine translation, voice generation, and so on. GAN is also involved in other fields, such as generating music and decoding codes. However, the application effect of GAN in other fields is not significant. Therefore, how to improve its application effect is worthy of further study, which will make the generation of confrontation networks shine in artificial intelligence.
Key words: generative adversarial networks     gradient disappearance     collapse mode     the field of computer image     transfer styles     machine translation    

近年来, 人们对深度学习研究的热情高涨, 深度学习在许多领域取得了不错的成果, 各种框架、模型相继被提出, 并且不断的被完善、改进. 其中, 生成对抗网络(GAN)是Goodfellow等[1]在2014年提出的一种生成模型. GAN的提出受到二人零和博弈(即参与博弈的两人利益之和为零, 一方的利益是另一方的损失)的启发, 这个模型包含一个生成器和一个判别器. 生成器负责捕捉真实数据样本的分布并生成新的数据分布, 而判别器则是一个二分器, 判别输入的数据是真实的数据还是生成的数据. GAN的优化是“极小极大博弈”问题, 使生成器生成的数据分布尽最大的可能接近真实数据分布, 从而“迷惑”判别器.

近两年来, GAN已成为一个受欢迎的研究方向, 越来越多关于GAN的论文发表(如图1), 其中包含对GAN理论的完善, 对GAN模型的改进及应用研究. 著名学者LeCun Y对GAN模型评价颇高, 称其为“有史以来最酷的事情”、“在过去十年机器学习研究中最有趣的点子”. 目前, 生成对抗性网络主要应用于计算机图像与视觉领域, 可以生成逼真的图像, 可以生成人脸, 可以对目标进行检测, 也可以生成真实的场景并应用于无人驾驶场景; 还可以根据图像的上下文进行图像修复[2], 对图像进行转换[3]. 此外, GAN还可以应用于文本生成、语音和语言的生成、视频预测等.

图 1 命名为GAN的论文的数量[4]

1 生成对抗性网络 1.1 GAN的基本思想

GAN的提出受到“二人零和博弈”的启发, 由一个生成器和一个判别器构成. 生成器根据输入的样本数据分布, 生成新的数据分布, 新的数据分布需要尽量接近真实数据分布, 越接近表示生成的数据就越真实. 判别器的作用则是判别输入数据是来自真实数据还是生成器生成的数据. GAN的模型结构如图2所示. 生成器和判别器可以用神经网络或者函数表示, 用G表示生成器, D表示判别器. 生成器G的目的是生成基于数据分布的pg, G的输入为随机噪声z(例如高斯噪声), z取样于先验分布pz(z). 判别器对输入的数据进行判别, 如果是真实数据则输出1, 否则的话输出0. D(x)表示输入是真实数据的概率. 对于初代生成器G和判别器D来说, 初代D很容易能判别出是真实数据还是生成的数据, 接下来, 初代G进行优化产生第二代G, 初代D不能判别第二代G生成的数据是假的, 那么初代D也跟着优化, 产生第二代D, 能判别第二代G生成的数据是否是真实数据, 接着产生第三代、第四代, 直到第ND无法正确判别数据是来自真实数据还是生成器G生成的.

图 2 GAN的模型结构

1.2 GAN算法

生成器G和判别器D之间是互相对抗的, 其优化过程是极小极大化过程. GAN的目标函数如式(1)所示.

$\begin{split} \mathop {\min }\limits_{G} \mathop {\max }\limits_{D} F(D, G) =&{E_{x\sim {p_{data}}(x)}}[\log D(x)] {\rm{ }} \\ &+{E_{z\sim {p_z}(z)}}[\lg (1 - D(G(z))] \\ \end{split} $ (1)

GAN的优化过程是, 先固定生成器G, 优化判别器D, 求得最优判别器D*; 然后固定D为最优D*, 优化生成器G, 求得最优G.

G固定的时候, 优化判别器D就是求得使F(D, G)取得最大值的D*. F(D, G)可以写为如下形式:

$\begin{split} F(G, D) =& \int_x {{p_{data}}(x)\log (D(x))dx} \\ &+\int_z {{p_z}(z)\log (1 - D(g(z)))dz} \\ {\rm{= }}&\int_x {[{p_{data}}(x)\log (D(x)) } \\ &+{p_g}(x)\log (1 - D(x))]dx \\ \end{split} $ (2)

对于任意非零实数a, b, 且实数y∈[0, 1], 那么式(3):

$a\log (y) + b\log (1 - y)$ (3)

$\dfrac{a}{{a + b}}$ 处取得最大值, 故最优判别器D*:

$D^*_G(x) = \frac{{{p_{data}}(x)}}{{{p_{data}}(x) + {p_g}(x)}}$ (4)

把最优判别器D*代入式(1), 令 $H\left( G \right) = V({{D}}_G^{\rm{*}}, G)$ , 可以得到:

$H(G) = - \log 4 + 2 \cdot JS\!D\;({p_{data}}||{p_g})$ (5)

其中, JSD是香农散度, 它是KL的对称平滑版本, 表示两个分布之间的差异. 当 ${p_g} = {p_{data}}$ 时, H(G)取得最小值H*=–log(4), 此时G为最优. GAN的训练采用的是迭代的数值方法, 为了防止过拟合, 通常是对D进行k次优化后, 再对G进行一次优化.

1.3 GAN的优缺点

GAN模型包含生成器G和判别器D, 其模型有许多优点, 但也存在一些问题. 首先, GAN没有使用复杂的马尔科夫链, 而是用反向传播算法来获得梯度; 其次, GAN的学习过程不需要过多的推理, 它的模型可以是神经网络, 也可以是多种函数; 再者, GAN可以表示清晰, 甚至退化的分布, 并且能生成高清的图像.

GAN基于连续数据, 且假设有无限建模能力. GAN模型在生成和优化过程中, 存在一些缺点: (1) GAN在训练过程中, 优化 $k$ 次判别器D, 同时优化1次生成器G, 需要保持DG的同步, 容易造成GAN训练的不稳定; (2) GAN存在模式崩溃(collapse mode)[5]现象, 即生成器可能会生成许多它认为是多样的, 实际上却只有细微差别的样本, 这样会造成多样性缺乏; (3) GAN存在梯度消失问题, 即当真实样本和生成样本之间没有重叠或者重叠可以忽略时, 其优化网络的目标函数的Jensen-Shannon散度是一个常数. 这些问题在之后提出的衍生模型中得到了解决.

2 GAN的优化和衍生模型

随着人工智能的发展, 研究者们对GAN的研究热情高涨, 有对GAN模型框架、理论的改进, 有对GAN模型进行改造, 或结合其他学习方法, 使其能应用于更多场景. GAN各种不同的衍生模型比较与区别见表1. 接下来将介绍对GAN进行优化和衍生的各种不同模型.

表 1 GAN各种不同的衍生模型比较与区别

2.1 基于离散数据

GAN模型是基于Lipschitz连续空间, 且依赖于生成样本是可微的, 一般对离散数据不起作用. Devon等[6]提出一种引入离散数据的GAN训练方法——边界寻找生成对抗网络, 称为BGAN. BGAN使用来自鉴别器的估计差分度量来计算生成的样本的重要性权重, 为训练生成器提供一个基于KL-散度的策略梯度, 且这个策略梯度引入奖励机制, 使用重要权重作为奖励信号. GAN应用于离散数据的另一种方法是Tong等[7]提出的最大似然增强的离散生成对抗网络, 其对GAN的目标没有直接进行优化, 而是使用遵循对数似然的对应的输出推导出了一种全新的、低方差的目标, 主要是为了解决在离散数据上的反向传播困难的问题. 虽然GAN能应用于离散数据空间, 但这几种方法实现的效果不是很好, 不如基于连续空间的效果显著.

2.2 深度卷积生成对抗网络

Radford 等[8]提出了深度卷积生成对抗网络(DCGAN), 将卷积神经网络(CNN)[9]应用到生成对抗网络中, 通过对GAN的体系结构更改, 提高了GAN的训练的稳定性. 在DCGAN中, 对GAN的体系结构进行了一些修改: 将空间池化层函数替换为跨卷积; 去除了完全连接层, 能提高模型的稳定性; 除了生成器的输出层和判别器的输入层之外, 对每个单元的输入进行批归一化操作; 在生成器中使用ReLU激活函数, 在其输出层使用Tanh函数; 在判别器中使用LeakyReLU激活函数. DCGAN具有更强大的生成能力, 训练也更稳定, 生成的样本具有更多的多样性, 因此, 很多对于GAN的改进都是基于DCGAN的结构. DCGAN只是对GAN模型的结构进行了改进, 对生成器和判别器进一步的细化, 并没有对优化方法进行改进.

2.3 GLS-GAN

GAN在采用梯度下降训练过程中存在梯度消失问题, 为了解决这个问题, Arjovsky等[10]提出WassersteinGAN (WGAN). WGAN使用Earth-Mover 距离代替Jensen-Shannon散度来计算生成样本分布与真实样本分布之间的距离. WGAN在生成器和判别器的训练中不需要保持平衡, 解决了GAN训练不稳定的问题, 同时也解决了模式崩溃现象, 保证了生成样本的多样性, 并且不需要精细设计网络架构就能实现上述功能. WGAN使用了权重剪枝(weight clipping)对批评函数施加Lipschitz约束, 但是存在两个问题: (1) weight clipping独立的限制每一个参数的取值范围, 而判别器的损失函数希望尽量拉大真实样本与生成样本之间的差距, 会导致判别器学习更简单的映射函数; (2) 如果clipping threshold设置不合理, weight clipping会容易导致梯度消失或梯度爆炸. Gulrajani等[11]提出了一种代替weight clipping的方法—引入梯度惩罚(gradient penalty), 即对批评函数的输入准则进行处罚, 称为WGAN-GP. WGAN-GP只对采样点 $x$ 起作用, 而对真实数据附近的区域没有检查, 判别器在这个区域可以自由的违反Lipschitz连续. 为了增强WGAN中批评家的Lipschitz约束, Cui等[12]提出了结合指数梯度惩罚项和重要性加权策略的算法, 该算法在不增加计算负担的情况下有更快的收敛速度, 并且保持了WGAN-GP训练的稳定性.

GAN的判别器具有无限建模能力, 即不管真实样本和生成样本多复杂, 判别器D都能判别, 这样容易造成过拟合问题. 为了限制GAN的无限建模能力, Qi[13]提出损失感知生成对抗网络(LS-GAN), LS-GAN引入一个基于Lipschitz连续的代价(cost)函数, 把最小化目标函数得到的损失函数限定在这个代价函数上. 广义LS-GAN称为GLS-GAN[13](如图3所示), 是LS-GAN的广义形式, 通过定义一个满足一定条件的代价函数, 不同的代价函数可以获得不同的GLS-GAN. LS-GAN和WGAN是GLS-GAN的特例, LS-GAN是代价函数为 ${{{C}}_0}$ 的GLS-GAN, 而WGAN则为代价函数是 ${{{C}}_1}$ 的GLS-GAN.

图 3 广义GLS-GAN[14]

LS-GAN和WGAN的实现都采用了DCGAN的网络架构思想, 且对GAN的优化方法进行了改进. WGAN虽然解决了GAN训练不稳定问题和模式崩溃问题, 需要掌握对clipping threshold的设置, 如果设置不合理也会造成梯度消失或者梯度爆炸问题. WGAN使用EM距离代替JS散度, 但是EM距离不容易直接优化, 使用的是其共轭函数作为目标函数进行优化, 增加了计算的负担. 广义LS-GAN可以通过设置不同的代价函数获得不同的GLS-GAN, 可以扩宽GLS-GAN, 不过这个还有待去开发和试验. LS-GAN在实现时需要考虑很多细节, 容易影响实验效果.

2.4 InfoGAN

信息生成对抗网络(InfoGAN)[15]是GAN信息理论的一个重要扩展. InfoGAN相比一般的GAN, 引入一个隐码 $c$ , $c$ 表示显著结构化隐层随机变量与特定语义特征之间的关系. 生成器的输入为噪声 $z$ 和隐码 $c$ , 输出为 $G(z, c)$ , 在GAN中, ${{{P}}_{{G}}}(x|c) = {{{P}}_G}(x)$ . InfoGAN使用互信息 $I(c;G(z, c))$ 表示两个数据之间的关联性, 而隐码 $c$ 和生成分布 $G(z, c)$ 之间有高的互信息. InfoGAN的目标函数如式(6)所示:

$\mathop {\min }\limits_G \mathop {\max }\limits_D {F_1}(D, G)= F(D, G) - \lambda I(c;G(z, c))$ (6)
2.5 其他衍生模型

GAN的训练是无监督的, 也可以结合半监督进行训练. SGAN[16]是使用半监督训练的生成对抗网络, 它在生成器G的输入中加入类标签, 判别器G输出相应的类标签. CatGAN[17]使用无监督和半监督来训练网络, 提出了一种从未标记或部分标记数据中学习判别分类器的方法—使用目标函数来权衡观察到的例子和它们的预测分类类分布之间的互信息, 判别器D输出类的分布.

条件生成对抗网络(CGAN)[18]引入一个额外信息 $y$ , $y$ 可以是任何辅助信息, 类标签或者其他模式的数据, 将 $y$ 加入到生成器G和判别器D的输入层. 一般的GAN生成模型都是把隐层变量分布映射到真实数据分布上, Donahue 等[19]提出双向生成对抗网络(BiGAN)实现逆映射—将数据 $x$ 映射到隐变量空间. BiGAN增加了一个编码器E, 输出为 ${{E}}(x)$ , 其优化目标为 $\mathop {\min }\limits_{G, E} \mathop {\max }\limits_D F(D, E, G)$ .

3 GAN的应用领域 3.1 计算机视觉领域 3.1.1 图像生成

GAN的最初目的是输入向量生成图像, 开始生成的图像像素都不是很高, 后来随着GAN的不断深入研究, 生成图像的质量也在不断提高. Ledig 等[20]提出一种增加图像分辨率的GAN—SRGAN, 可以将低分辨率的图像转换为超分辨率图像. SRGAN的生成器采用了残差网络(ResNet)[21], 判别器使用了VGG[22]. Karras等[23]提出了Progressive GAN—一种以渐进方式训练的GAN, 在训练过程中增加一个能处理高分辨率的网络层, 能生成以假乱真的图像. 另外, ProGANSR[24]也能生成高分辨率的图像, 它采用多尺度渐进式原则, 同时增加上采样(upsampling)的重建质量. GAN可以生成人脸, 根据真实样本可以生成不存在的人脸; 也可以生成动物等其他物体. 除了生成人类、动物等物体, GAN还可以生成真实的场景, 可应用于无人驾驶等场景中. 在这些应用中, 对于图像分辨率的要求也将会随着技术的发展越来越高.

3.1.2 图像转换

图像转换也可以叫做图像翻译, 是将图像变成另一种形式的图像, 比如把图像内容移除一个域的属性, 转移到另一个域上. 图像转换的输入是图像, 输出的是转换后的图像. Pix2pix[25]使用条件生成对抗网络(CGAN)来进行图像转换, 使用成对的数据来进行训练. 因为pix2pix需要使用成对的数据来进行训练, 但有些情况下成对的数据不容易获得, 因此, Zhu[3]提出CycleGAN, 不需要使用成对的数据, 就能把图像从源域X转换为目标域Y. CycleGAN使用两个判别器 ${{{D}}_x}$ ${{{D}}_y}$ , 分别判别 $x$ 和转换图像 ${{F(}}y{\rm{)}}$ $y$ ${{G}}(x)$ , 还引入循环一致性损失来执行 ${{F(G(}}x{{))}} \approx x$ . 对于上述两种GAN, 都存在生成图像分辨率低的问题, Wang等[26]提出pix2pixHD, 可以生成分辨率高达2048×1024的图像, 同时支持用户交互, 编辑图像中目标外观, 可以合成一些道路场景, 可以结合目标检测及行人识别, 用于无人驾驶中.

3.1.3 风格迁移

风格迁移是指将学习到目标图像的风格应用于源图像, 使得源图像保留内容的同时具有目标图像的风格, 比如把一张图像变成油画风格的图像. Li等[27]提出一种基于马尔科夫链的生成对抗网络(MGAN)来实现图像的风格迁移, 效果如图4所示. Azadi等[28]使用GAN来对字体进行风格迁移学习, 能产生多种不同风格的字体. 除此之外, 风格迁移还可应用于音乐等其他领域, 只是效果都不如图像的风格迁移好.

图 4 图像风格迁移效果[27]

3.1.4 图像修复

GAN与图像修复能很好的结合, 对缺失的图像进行完整的修复. Denten等[2]使用半监督方法, 在生成器中增加一个随机的、能隐藏的补丁, 根据上下文信息对图像进行修复. Liu等[29]使用部分卷积进行图像修复, 修复效果如图5所示.

图 5 图像修复效果[29]

3.1.5 视频生成和预测

在生成图像的基础上, GAN还可以生成视频. Tukyakov等[30]提出一种通过分解动作和内容来生成视频的方法—MoCoGAN, 将一个随机向量的序列映射到一个视频帧序列上, 每个随机向量包含一个动作和一个内容. 视频预测是根据当前的一帧或几帧视频来预测视频接下来的内容, 比如当一个人拿起一个球的时候预测这个人接下来要干什么. Xiong等[31]提出一种多阶段动态生成对抗网络来生成延时视频, 首先为每一帧生成现实内容的视频, 然后进行运动建模, 使相邻帧之间的物体运动更加生动, 同时保持内容逼真. 另一种视频预测方法是Jang等[32]提出的方法—通过外观和动作来指定未来, 减少不确定性, 解决了当有多个正确的、等可能的未来时, 模型不知如何选择的问题.

3.2 文本生成领域

除了生成图片之外, GAN还能生成文本. Zhang 等[33]用GAN来生成文本, 其判别器为卷积神经网络(CNN). GAN一般是基于连续空间, 但也可以应用于离散数据. 但是GAN用于生成序列存在两个问题, GAN生成的是连续数据, 难的是直接生成离散序列; 另一个问题是, GAN只能对整个生成序列打分, 而对于一部分生成的序列, 很难判断它现在生成序列的质量和之后生成整个序列的质量. SeqGAN[34]能解决上述两个问题, 它结合强化学习, 能生成离散的序列, 使用策略梯度训练生成器G来解决输出离散数据时梯度不能返回生成模型的问题, 通过蒙特卡洛搜索得到奖励信号. WGAN也能推广应用于离散数据空间, 在基于WGAN的基础上, 代威[35]提出一种使用字符级文本构造方法的无监督文本生成方法Lable GAN, 能适用于多种序列处理任务, 并且能有效的干预和约束生成数据空间. SeqGAN可以应用于语音生成、诗词生成、机器翻译、对话生成等. MaskGAN[36]根据上下文内容来填充缺失的文本, 并引入actor-critic架构.

此外, GAN还可以根据文字描述来生成图文匹配的图像. StackGAN[37]能够根据输入文本描述生成细化的高分辨率图像. AttnGAN[38]可以生成更细腻的图像, 通过关注自然语言描述中的相关词汇, 可以在图像的不同子区域合成出精细的细节, 此外, 还提出了一种深度注意多模态相似度模型, 用于计算用于训练生成器的细粒度图像-文本匹配损失.

3.3 其他领域

GAN除了在视觉领域、文本生成领域外, 还在其他领域有涉及. GAN能应用于密码破译, CipherGAN[39]提出了一个能够用于破译密码的框架, 能够高度准确地破译使用移位和Vigenere密码的语言数据, 且能支持更多的词汇. GAN还可以进行行人重识别、重定向等. GAN除了能生成图像外, 还能生成音乐、3D物体等.

4 存在的问题及发展趋势 4.1 存在的问题

GAN模型是一种框架, 可以与其他方法相结合. GAN模型包含生成器G和判别器D, 在训练过程中需要保持生成器G和判别器D之间的同步, 因此容易造成训练不稳定. 虽然WGAN使用EM距离代替JS散度, 不需要保持生成器G和判别器D之间的同步, 解决了训练不稳定的问题, 但是, 在使用JS散度的模型的训练稳定性问题还是没有得到很好的解决. 此外, GAN还存在模式崩溃问题. WGAN能解决模式崩溃问题, 但是, 如果损失函数的参数设置不合理的话会导致梯度消失或梯度爆炸. 因此, 模式崩溃问题还没有彻底的解决.

同时, GAN也面临着一个如何评估生成样本质量的问题, 也就是说GAN缺乏客观的评估方法. 现有对GAN的评价方法都是基于样本层面, 对生成样本与真实样本提取特征, 在特征空间做距离度量. Xu等[40]实验结果表明, 在基于样本的评价方法中, 核函数最大平均偏差(Kernel MMD)和1-近邻(1-NN)双样本检验方法是最合适的评价方法, 这两种评价指标能够有效的区别生成样本和真实样本, 同时也能识别模式崩溃的模式下降问题, 检测过度拟合, 且具有高效性. 但是, 对于生成效果和质量, 却只能依赖于视觉上的观察, 由人眼去判断生成的质量好坏. 有些评价指标在数值上虽高, 但是实际的生成效果却不好. 因此, GAN很难找到一个比较客观的、可量化的评价指标.

4.2 发展趋势

自从GAN被提出以来就受到广泛的关注, 近两年来对GAN的研究热度也是只增不减. 虽然GAN能实现的功能巨大, 但是这个模型存在的一些问题未能彻底解决, 影响其生成效果. 在模型的训练稳定性和评价指标方面, 仍有待研究改进. GAN在图像领域有着卓越的应用效果, 在其他领域也有着不错的应用. GAN对于文本方面的应用是基于离散数据, 效果不是很理想, 在这一方面的改进空间将会很大. 随着人工智能的不断发展, 对无人驾驶的研究也在不断成熟, GAN可以结合其对图像领域的生成效果, 应用于无人驾驶, 这也将会是很热门的一个研究方向. 视频与语音在日常生活中是必需的, 随着人们需求的增大, GAN在视频与语音方面的应用也更需要去研究改进. GAN也可以应用于图像去噪方面, 现在也有一些突破性的进展.

4.2.1 图像去噪

人们对图像的反映是通过视觉直观的体现出来的, 图像质量差会影响人们对图像细节的掌握, 影响图像的视觉效果. 噪声是图像干扰的重要原因, 实际上一幅图可能会存在各种各样的噪声, 所以图像噪声在视觉图像中影响很大. 图像噪声一般产生于图像的采集或者传输过程中, 比如使用的设备不一样, 在传输过程中有压缩等等.

传统的图像去噪最初采用的是使用像素尺度的空间域滤波方法[41], 该方法中的中值滤波和均值滤波都是使用图像信号和滤波模板结合来进行滤波. 空间域滤波方法在使用简单的卷积核的时候容易导致图像信息丢失, 针对这一缺点, 一些学者提出基于变换域的去噪方法, 包含傅里叶变换域, 小波域, 脊波域等等[42,43]. 随着深度学习的发展, 深度卷积网络在图像去噪的应用有着不错的效果. 去噪卷积网络(DnCNN)[44]第一次结合残差网络应用于图像去噪领域, 使得去噪效果大大提升. Wang[45]采用空洞卷积代替卷积核, 提高了训练运行速度, 效果不亚于去噪卷积网络.

4.2.2 结合GAN的图像去噪

现有的去噪方法大多是基于已知噪声, 例如高斯噪声, GAN可以学习复杂的分布, 可以在GAN的生成器中输入含有已知噪声的图片, 然后判别器输出对应无噪声的图像. 张元祺[46]结合生成对抗网络, 对彩色图像进行去噪, 通过神经网络将含噪图像变换到特征域进行处理, 并利用多尺度特征保留图像丰富的纹理细节.

那么对于图像里包含的未知噪声信息, 即对图像进行盲去噪, GAN拥有强大的学习能力, 可以学习复杂的分布, 可以使用GAN来构建成对的无噪-有噪图像的训练数据集. 在有未知噪声图像的情况下, 一种建立成对训练数据集的方法是训练GAN的生成网络, 学习从无噪图像到相似噪声图像的映射. 生成网络可以训练学习真实噪声图像的分布, 生成具有相似噪声的图像, 但不能保证原始图像的纹理细节等不改变. 因此, Chen等[47]提出一种盲去噪方法——使用GAN来对未知噪声图像进行噪声提取并建模, 生成网络生成类似的是噪声而不是噪声图像, 生成相似分布的噪声, 然后使用深度卷积网络进行图像去噪.

对于噪声已知的图像, 可以直接作为生成器的输入, 判别器进行去噪, 输出对应的无噪图像, 在这个过程中, 需要保留图像原始的内容, 即不能损失图像的纹理细节等. 如何在去噪的过程中保留图像内容也值得去研究. 对于图像盲去噪, 可以通过GAN来建模获得相似噪声分布, 然后再使用深度卷积网络或者其他网络进行去噪. 在这个过程中, 需要使用两个或两个以上模型, 如何使用GAN模型进行图像的盲去噪将会是一个值得研究的方向.

5 结论

生成对抗性网络GAN包含生成器和判别器, 有很强的生成能力, 在不进行限制的情况下, 具有无限建模的能力, 主要应用于图像视觉领域. 现今GAN能够产生超分辨率图像, 能够结合半监督、强化学习、特征学习等, 在图像、视觉、文本方面有广泛应用. GAN在图像领域的应用效果显著, 虽然在其他领域也应用广泛, 但实现的效果并没有图像的好. GAN如何更好的应用于更多领域, 在应用的同时不断优化性能, 并发挥更大的优势, 将会是有趣的研究. 随着人工智能的发展, 人们追求的是更加智能化, 如何结合深度学习等不同技术来提高GAN的应用效果, 使GAN更智能化, 是GAN未来发展需要提升的. GAN可以和图像去噪相结合, 利用GAN的强学习能力, 实现噪声已知的图像去噪, 也可以建模生成相似的忙噪声分布, 有助于图像盲去噪. GAN对于图像去噪的应用将有待于更进一步的研究.

参考文献
[1]
Goodfellow IJ, Pouget-Abadie J, Mirza M, et al. Generative adversarial nets. Proceedings of the 27th International Conference on Neural Information Processing Systems. Montreal, QC, Canada. 2014. 2672–2680.
[2]
Denton E, Gross S, Fergus R. Semi-supervised learning with context-conditional generative adversarial networks. arXiv preprint arXiv: 1611.06430, 2014.
[3]
Zhu JY, Park T, Isola P, et al. Unpaired image-to-image translation using cycle-consistent adversarial networks. Proceedings of 2017 International Conference on Computer Vision. Venice, Italy. 2017. 2223–2232.
[4]
Hindupur A. The-gan-zoo. https://github.com/hindupuravinash/the-gan-zoo.
[5]
Goodfellow I. NIPS 2016 tutorial: Generative adversarial networks. arXiv preprint arXiv: 1701.00160, 2016.
[6]
Hjelm RD, Jacob AP, Che T, et al. Boundary-seeking generative adversarial networks. arXiv preprint arXiv: 1702.08431v4, 2018.
[7]
Che T, Li YR, Zhang RX, et al. Maximum-likelihood augmented discrete generative adversarial networks. arXiv preprint arXiv: 1702.07983, 2017.
[8]
Radford A, Metz L, Chintala S. Unsupervised representation learning with deep convolutional generative adversarial networks. arXiv preprint arXiv: 1511.06434, 2016.
[9]
Krizhevsky A, Sutskever I, Hinton GE. ImageNet classification with deep convolutional neural networks. Proceedings of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe, NV, USA. 2012. 1097–1105.
[10]
Arjovsky M, Chintala S, Bottou L. Wasserstein GAN. arXiv preprint arXiv: 1701.07875, 2017.
[11]
Gulrajani I, Ahmed F, Arjovsky M, et al. Improved training of Wasserstein GANs. Proceedings of the 30th Neural Information Processing Systems. Long Beach, CA, USA. 2017. 5767–5777.
[12]
Cui SB, Jiang Y. Effective Lipschitz constraint enforcement for Wasserstein GAN training. Proceedings of the 2nd IEEE International Conference on Computational Intelligence and Applications. Beijing, China. 2017. 74–78.
[13]
Qi GJ. Loss-sensitive generative adversarial networks on Lipschitz densities. arXiv preprint arXiv: 1701.06264, 2017.
[14]
Qi GJ. Generalized LS-GAN (GLS-GAN): Now LS-GAN and WGAN are special cases of this supermodel. https://zhuanlan.zhihu.com/p/25580027.
[15]
Chen X, Duan Y, Houthooft R, et al. InfoGAN: Interpretable representation learning by information maximizing generative adversarial nets. Proceedings of 2016 Neural Information Processing Systems. Barcelona, Spain. 2016. 2172–2180.
[16]
Odena A. Semi-supervised learning with generative adversarial networks. arXiv preprint arXiv: 1606.01583, 2016.
[17]
Springenberg JT. Unsupervised and semi-supervised learning with categorical generative adversarial networks. arXiv preprint arXiv: 1511.06390, 2015.
[18]
Mirza M, Osindero S. Conditional generative adversarial nets. arXiv preprint arXiv: 1411.1784, 2014.
[19]
Donahue J, Krähenbühl P, Darrell T. Adversarial feature learning. arXiv preprint arXiv: 1605.09782, 2016.
[20]
Ledig C, Theis L, Huszár F, et al. Photo-realistic single image super-resolution using a generative adversarial network. Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, HI, USA. 2017. 105–114.
[21]
He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA. 2016. 770–778.
[22]
Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv: 1409.1556, 2014.
[23]
Karras T, Aila T, Laine S, et al. Progressive growing of GANs for improved quality, stability, and variation. arXiv preprint arXiv: 1710.10196v3, 2018.
[24]
Wang YF, Perazzi F, McWilliams B, et al. A fully progressive approach to single-image super-resolution. Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops. Salt Lake City, UT, USA. 2018. 977–986.
[25]
Isola P, Zhu JY, Zhou TH, et al. Image-to-image translation with conditional adversarial networks. Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, HI, USA. 2017. 5967–5976.
[26]
Wang TC, Ming YL, Zhu JY, et al. High-resolution image synthesis and semantic manipulation with conditional GANs. Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City, UT, USA. 2018. 8798–8807.
[27]
Li C, Wand M. Precomputed real-time texture synthesis with Markovian generative adversarial networks. Proceedings of the 14th European Conference on Computer Vision. Amsterdam, The Netherlands. 2016. 702–716.
[28]
Azadi S, Fisher M, Kim V, et al. Multi-content GAN for few-shot font style transfer. Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City, UT, USA. 2018. 7564–7573.
[29]
Liu GL, Reda FA, Shih KJ, et al. Image inpainting for irregular holes using partial convolutions. Proceedings of the 15th European Conference on Computer Vision. Munich, Germany. 2018. 89–105.
[30]
Tulyakov S, Liu MY, Yang XD, et al. MoCoGAN: Decomposing motion and content for video generation. Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City, UT, USA. 2018. 1526–1535.
[31]
Xiong W, Luo WH, Ma L, et al. Learning to generate time-lapse videos using multi-stage dynamic generative adversarial networks. Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City, UT, USA. 2018. 2364–2373.
[32]
Jang Y, Kim G, Song YL. Video prediction with appearance and motion conditions. Proceedings of the 35th International Conference on Machine Learning. Stockholm, Sweden. 2018. 3496–3510.
[33]
Zhang YZ, Gan Z, Carin L. Generating text via adversarial training. Proceedings of the 2016 Conference on Neural Information Processing Systems. Barcelona, Spain. 2016. 1–6.
[34]
Yu LT, Zhang WN, Wang J, et al. SeqGAN: Sequence generative adversarial nets with policy gradient. Proceedings of the 31st AAAI Conference on Artificial Intelligence. Phoenix, AZ, USA. 2016. 2852–2858.
[35]
代威. 基于生成式对抗网络的文本生成问题的研究[硕士学位论文]. 长春: 吉林大学, 2018.
[36]
Fedus W, Goodfellow I, Dai AM. MaskGAN: Better text generation via filling in the______. arXiv preprint arXiv: 1801.07736, 2018.
[37]
Zhang H, Xu T, Li HS, et al. StackGAN: Text to photo-realistic image synthesis with stacked generative adversarial networks. Proceedings of 2017 IEEE International Conference on Computer Vision. Venice, Italy. 2017. 5908–5916.
[38]
Xu T, Zhang PC, Huang QY, et al. AttnGAN: Fine-grained text to image generation with attentional generative adversarial networks. Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City, UT, USA. 2018. 1316–1324.
[39]
Gomez AN, Huang SC, Zhang I, et al. Unsupervised cipher cracking using discrete GANs. arXiv preprint arXiv: 1801.04883, 2018.
[40]
Xu QT, Huang G, Yuan Y, et al. An empirical study on evaluation metrics of generative adversarial networks. arXiv preprint arXiv: 1806.07755, 2018.
[41]
Liu XW, Huang LH, Guo ZY. Adaptive fourth-order partial differential equation filter for image denoising. Applied Mathematics Letters, 2011, 24(8): 1282-1288. DOI:10.1016/j.aml.2011.01.028
[42]
Sendur L, Selesnick IW. Bivariate shrinkage functions for wavelet-based denoising exploiting interscale dependency. IEEE Transactions on Signal Processing, 2002, 50(11): 2744-2756. DOI:10.1109/TSP.2002.804091
[43]
Luisier F, Blu T, Unser M. A new SURE approach to image denoising: Interscale orthonormal wavelet thresholding. IEEE Transactions on Image Processing, 2007, 16(3): 593-606. DOI:10.1109/TIP.2007.891064
[44]
Zhang K, Zuo WM, Chen YJ, et al. Beyond a Gaussian denoiser: Residual learning of deep CNN for image denoising. IEEE Transactions on Image Processing, 2017, 26(7): 3142-3155. DOI:10.1109/TIP.2017.2662206
[45]
Wang TY, Sun MX, Hu KN. Dilated deep residual network for image Denoising. arXiv preprint arXiv: 1708.05473, 2017.
[46]
张元祺. 基于生成对抗网络的彩色图像去噪方法[硕士学位论文]. 大连: 大连理工大学, 2018,
[47]
Chen JW, Chen JW, Chao HY, et al. Image blind denoising with generative adversarial network based noise modeling. Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City, UT, USA. 2018. 3155–3164.