生成对抗网络发展及其主要工程应用综述
简 介: 生成对抗网络利用博弈的思想训练出生成器用来生成数据,是近几年的热点研究领域。本文对基本的生成对抗网络模型进行介绍,概述了生成对抗网络这一概念提出以来得到的发展,列举了几个不同变种的生成对抗网络和对网络训练不同细节的优化和研究。对生成对抗网络在各个工程领域的应用进行了概述,并对本文所述内容进行总结。
关键词
: 生成对抗网络,发展概述,模型训练,深度学习,模型优化,**
**
§01 引 言
近几年人工智能发展迅速,神经网络从最初简单的人工神经网络发展到现在各式各样的深度神经网络,在各个领域得到了一些列应用。
生成对抗网络是神经网络发展的产物,也是近几年深度学习中较为活跃的领域,它实际上是利用了博弈的思想优化生成器,再在完成训练后复用生成器生成数据。
本文对生成对抗网络模型的出现、近几年的发展和其在工程上的主要应用进行综述,以对生成对抗网络的整体发展脉络有总体的把握和了解。
§01 生成对抗网络
此部分对 2014
年 Ian Goodfellow
提出的最基本生成对抗网络 [1]
结构进行介绍,并对生成对抗网络的优缺点和发展现状进行介绍。生成对抗网络模型实质上是一个生成模型,用来做一个生成器生成数据。
1.1算法流程
生成对抗网络包括一个生成器 G(z)
和一个判别器 D(x)
,生成器输入噪声 z
,输出生成的数据;判别器输入生成的样本或真实的样本,输入生成样本后期望得到的输出趋于 0
,输入真实样本后期望得到的输出趋于 1
。训练中的目标函数为:
min G max D V ( D , G ) = E x − P d a t a ( x ) [ log D ( x ) ] + E z − P z ( z ) [ log ( 1 − D ( D ( z ) ) ) ] \mathop {\min }\limits_G \mathop {\max }\limits_D V\left( {D,G} \right) = E_{x - P_{data} \left( x \right)} \left[ {\log D\left( x \right)} \right] + E_{z - P_z \left( z \right)} \left[ {\log \left( {1 - D\left( {D\left( z \right)} \right)} \right)} \right] GminDmaxV(D,G)=Ex−Pdata(x)[logD(x)]+Ez−Pz(z)[log(1−D(D(z)))]
上式的训练目的对于生成器是使其趋向能生成逼真的数据,对于判别器是使其能趋向精确判别真实数据和生成数据。交替训练生成器和判别器,理想情况下训练结果能达到一个平衡状态,在此平衡状态下,生成器生成的数据和可以很好地冒充真实数据,判别器在性能很优秀的情况下,不能分辨出真实数据和生成器生成数据,即生成器能骗过判别器输出以假乱真的数据。
生成对抗网络的结构如图 1所示,图中生成器的输入 z可以是一个向量,可以是一个随机初始化的噪声或有监督的初始特征向量,该向量每一维代表一个特征,生成器可以是神经网络或者一个函数,输出的数据可以是图像或其他高维数据。图中,判别器输入生成数据和真实数据,输出一个标量,该标量越大表示该输入数据越真实,标量越小表示输入数据越假。
▲ 生成对抗网络结构
训练完后复用生成器来生成所需要的数据,可以作为一种数据增强的手段。
1.2优点
无监督学习,不需要对样本进行标注,生成器的更新不是直接来自于真实数据样本,而是来自于判别器的反向传播。模型只需要用到反向传播,而不需要用到马尔科夫链。训练时不需要推断隐变量。理论上可微分函数均可用于构造生成器或判别器。
1.3缺点
模型难训练,很难达到一个生成器和判别器均优的结果,且深度网络的可解释性差,无法得到生成器的分布函数。
§02 发展历程
自生成对抗网络被提出以来,学术界相继提出了一系列变种的生成对抗网络。
2.1条件生成对抗网络 CGAN
Mehdi Mirza
和 Simon Osindero
在 2014
年提出了条件生成对抗网络 CGAN[2]
。
CGAN
是在生成对抗网络基础上做的改进,其在生成器和判别器的输入中添加了带有标签或样本碎片的数据作为生成条件,来实现条件生成。
CGAN
的模型结构如图 2[2]
所示。相比于普通的生成对抗网络, CGAN
的判别器输入除了生成的和真实的图像数据外,还拼接了图像的类别标签或其他条件; CGAN
的生成器输入除了向量 z
外,也拼接了图像的类别标签或其他条件。生成器和判别器的输出与普通的对抗生成网络模型相同。
▲ 图3.1.1 条件对抗网络结构
训练中 CGAN的目标函数与普通的生成对抗网络相比增加了一个条件,其目标函数的表达式为:
min G max D V ( D , G ) = E x − P d a t a ( x ) [ log D ( x ∣ Y ) ] + E z − P z ( z ) [ log ( 1 − D ( G ( z ∣ y ) ) ) ] \mathop {\min }\limits_G \mathop {\max }\limits_D V\left( {D,G} \right) = E_{x - P_{data} \left( x \right)} \left[ {\log D\left( {x|Y} \right)} \right] + E_{z - P_z \left( z \right)} \left[ {\log \left( {1 - D\left( {G\left( {z|y} \right)} \right)} \right)} \right] GminDmaxV(D,G)=Ex−Pdata(x)[logD(x∣Y)]+Ez−Pz(z)[log(1−D(G(z∣y)))]
论文中用 MNIST手写数字数据集对网络模型进行实验,用不同的数字标签生成数字,得到了不错的结果,其他实验的验证也证明 CGAN能生成特定模式的数据。
2.2拉普拉斯生成对抗网络 LAPGAN
Emily Denton
等在 2015
年提出拉普拉斯生成对抗网络 LAPGAN[3]
。拉普拉斯生成对抗网络可以用于生成比普通生成对抗网络精度更高的图片,拉普拉斯对抗神经网络用 CGAN
生成拉普拉斯金字塔,利用拉普拉斯金字塔由粗到精逐级生成逐渐清晰的照片。
拉普拉斯生成对抗网络的采样过程如图 3
所示,从右向左生成器 3
输入向量 3
输出低分辨率的图像 3
,经过上采样得到 2
,生成器 2
的输入为向量 2
和2
,输出为图像 ℎ2
,再由 ℎ2
和2
生成 2
,以此类推直到 0
。
▲ 图3.2.1 拉普拉生成对抗网络采样过程
拉普拉斯生成对抗网络的训练过程如图 4所示,生成器 0的训练目的是使生成的图像 ℎ0尽可能接近 ℎ0,同理训练其他的几个网络。
▲ 图3.2.2 拉普拉斯生成对抗网络训练过程
论文在 CIFAR10
、STL10
和 LSUN
三个数据集上进行实验,可以得到质量较高的结果。
2.3深度卷积生成对抗网络 DCGAN
Alec Radford
等人在 2016
年提出深度卷积生成对抗网络 DCGAN[4]
。相对于普通的生成对抗网络,深度卷积生成对抗网络的生成器和判别器都使用了卷积神经网络,区别于普通生成对抗网络中的多层感知器,为了保证可微,去掉了卷积神经网络中的池化层,且用全局池化层取代全连接层减少计算量。
深度卷积生成对抗网络的训练方法与普通的 GAN
相似。
2.4瓦瑟斯坦生成对抗网络 WGAN
Martin Arjovsky
等在 2017
年提出了 WGAN[5]
。WGAN
用 Wasserstein
距离来衡量生成分布和真实分布之间的距离,在一定程度上解决了生成器和判别器难以达到平衡的问题,提高训练的稳定性。 WGAN
不需要再考虑生成器和判别器的训练平衡,判别器训练得越好对结果越有利。
之后又对训练过程进行改进,提出了改进的 WGAN[6]
。针对 WGAN
会出现样本质量低和难以收敛的问题,提出给判别器损失函数增加梯度惩罚。可以得到比上段所述 WGAN
更好的结果。
2.5最小二乘生成对抗网络 LSGAN
香港城市大学毛旭东等人在 2017
年提出了最小二乘生成对抗网络 LSGAN[7]
。LSGAN
主要致力于解决 GAN
生成的图像质量不高和难收敛的问题。 LSGAN
讲交叉熵损失函数换成最小二乘函数,避免梯度消失。
在 LSUN
和 CIFAR-10
数据集上进行实验后得到生成器输出的图像质量比普通的生成对抗网络质量更好。
2.6叠加生成对抗网络 StackGAN
罗格斯大学的 Han Zhang
等人于 2016
年提出叠加生成对抗网络 StackGAN[8][9]
。该模型致力于用提高文本生成图像的质量。针对现有文字到图像转换模型生成的图像不够细节的问题,提出了叠加的生成对抗网络,通过草图细化得到高精度的图像。
StackGAN
的模型结构如图 5
所示,训练分为两个 Stage
,Stage1
的生成器根据输入的向量和文本用 CGAN
生成低分辨率的图像, Stage2
的生成器输入为 Stage1
的低分辨率图像和文本,生成精度更高的图像。
▲ 图3.6.1 叠加生成对抗网络结构
文中提出了 Conditioning Augmentation
来提高图片的多样性和模型的稳定性。在 CUB
和 Oxford-102
数据集上的实验结果较优。
2.7循环生成对抗网络 CycleGAN
朱俊彦等在 2017
年提出了循环生成对抗网络 CycleGAN[10]
,实现用无配对的图像数据训练生成器实现图像的风格转换,文章提出了 Cycle consistency loss
损失函数来保证图像风格转换的准确性。
2.8 BigGAN
Andrew Brock
等在 2019
年提出了 BigGAN[12]
。文中对大规模生成对抗网络的训练进行了实验和理论分析,使用数据截断、正交正则化等一些技巧,保证了大型生成对抗网络训练过程的稳定性。文中训练后的模型生成的数据质量高于之前的方法。此外,文中也对模型训练的稳定性进行了分析。
2.9其他生成对抗网络
除了以上所列的各生成对抗网络外,还有很多不同的 GAN,如自注意力生成对抗网络 SAGAN[11]、StyleGAN[13]等,也有很多文章研究GAN的训练过程,优化训练结果 [14][15][16]等。
§03 工程应用
生成对抗网络在工程上的应用主要是对图像数据的处理。本部分叙述了主要领域的一些应用。
3.1医学领域的应用
针对医学领域有标签样本难获取的问题,重庆大学微电子与通信工程学院的张思杰、方翔提出了一种基于生成对抗网络的少样本视网膜血管分割方法 [17]
,主要用 GAN
的结构训练网络,分割性能提升很大。
3.2自动驾驶领域的应用
清华大学的冷智颖等人针对车辆辐射成像过程中图像产生退化的问题,提出了利用生成对抗网络 DeblurGAN
的辐射图像复原方法[18]
。
重庆交通大学信息科学与工程学院的王益针对社会生成对抗网络未能充分提取车辆移动隐藏状态和无法获取足够的车辆间交互信息的问题,提出了一种基于注意力机制和生成对抗网络的车辆轨迹预测模型 AGAN[19]
。结合历史和社会注意力机制即可获得同时包含时间和空间影响因素的车辆移动信息,借助生成对抗网络进行全局联合训练,能够生成符合物理约束和社会规范的未来轨迹。
3.3地理领域的应用
重庆大学的夏英、李骏垚等人提出基于 GAN
的半监督遥感场景分类,针对遥感图像背景复杂及有监督场景分类算法无法利用无标签数据的问题,提出一种基于生成对抗网络的半监督遥感图像场景分类方法 [20]
。引入谱归一化残差块解决梯度消失问题,引入特征融合思想减少特征损失,在判别器中加入结合门控的注意力模块,以增强特征判别能力。在 EuroSAT
和 UC Merced
数据集上的实验结果表明,该方法能够有效提取判别力更强的特征,提高半监督分类性能。
中国科学院南海海洋研究所的刘爽、经志友等针对中尺度涡的预报这一热点和难点,提出采用基于博弈思想的生成对抗网络方法构建中尺度涡预报模型 [21]
,并采用独立样本分析了预报涡旋的空间分布、时间分布、能量强度等特征参数,探讨了影响预报结果准确性和时效性的主要因素。
3.4其他图像处理领域的应用
加利福尼亚大学伯克利分校的 Phillip Isola
和 Jun-Yan Zhu
等在 2017
年提出了基于条件生成对抗网络的图像与图像转换的方法 [22]
。该网络不仅可以学习输入的图像到输出图像的映射关系,还能够学习用于训练映射关系的损失函数。
上海交通大学的王楠、李一鸣等人针对金属凝固的微观组织图像中存在噪声严重干扰了特征提取与定量分析的问题,提出了一种基于生成对抗网络的图像盲增强算法 [23]
。该模型构建了双阶段生成网络,一阶段残差学习网络提取的噪声特征,并有效地融合入二阶段图像修复网络中。
湖南大学的曾莹等针对单幅图像去雾这一计算机视觉领域的经典问题,提出一种增强的多尺度生成对抗网络用于图像去雾方法 [24]
,该去雾网络由生成器、判别器和增强器 3
个部分组成。其中,增强器有助于采样多种特征使不同尺度的特征细节融入到结果,提升去雾图像在颜色和细节上的复原效果。增强器被分别嵌入到生成器和判别器,全局生成器和局部生成器融合生成一个由粗到细的高分辨率去雾图像,多尺度判别器用于监督生成图像。实验结果具有好的客观图像质量。
§04 结 论
本文介绍了 GAN的基本思想和模型结构,对 GAN的主要发展分支进行了列举和介绍,介绍了 GAN在工程领域的一些主要应用。
在 GAN未来的发展过程中,还有很多模型结构和训练方法方面的细节需要解决,将 GAN与很多其他的人工智能方法进行结合也可能成为生成对抗网络发展的一个趋势。
参考文献
[1] I. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley, S. Ozair, A. Courville, and Y.Bengio. Generative adversarial nets[C]. Advances in Neural Information Processing Systems, 2014:2672-2680.
[2] M. Mirza, S. Osindero. Conditional Generative Adversarial Nets. Advances in Neural Information Processing Systems, 2014.
[3] Denton E L, Chintala S, Fergus R. Deep Generative Image Models using a Laplacian Pyramid of Adversarial Networks[C]. Advances in neural information processing systems. 2015: 1486-1494.
[4] A. Radford, L. Metz, S. Chintala. Unsupervised Representation Learning With Deep Convolutional Generative Adversarial Networks[C]. In ICLR, 2016.
[5] Arjovsky M, Chintala S, Bottou L. Wasserstein Generative Adversarial Networks[J]. arXiv prints, 2017:arXiv:1701.07875.
[6] I. Gulrajani, F. Ahmed, M. Arjovsky, V. Dumoulin, A. Courville. Improved Training of Wasserstein GANs[J]. arXiv prints, 2017: arXiv:1704.00028.
[7] Xudong M, Qing L, Haoran X, Raymond L, Zhen W. Least Squares Generative Adversarial Networks[C]. In ICCV, 2017.
[8] Han Z, Tao X, Hongsheng L. StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks[J]. arXiv prints, 2016:arXiv:1612.03242.
[9] Han Z, Tao X, Hongsheng L. StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks[C]. In ICCV, 2017.
[10] Jun-Yan Z, Taesung P, Phillip I. Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks[C]. In ICCV, 2017.
[11] Han Z, Goodfellow I. Self-Attention Generative Adversarial Networks[C]. In PMLR, 2019.
[12] A. Brock, J. Donahue, K. Simonyan. Large Scale GAN Training for High Fidelity Natural Image Synthesis[J]. arXiv prints, 2019: arXiv:1809.11096.
[13] T. Karras, T. Aila, S. Laine. A Style-Based Generator Architecture for Generative Adversarial Networks[C]. In CVPR, 2019.
[14] T. Salimans, I. Goodfellow, W. Zaremba, V. Cheung, A. Radford, X. Chen. Improved Techniques for Training GANs[C]. In NIPS,2016.
[15] M. Arjovsky, L. Bottou. Towards Principled Methods for Training Generative Adversarial Networks.arXiv prints, 2017: arXiv:1701.04862.
[16] T. Karras, T. Aila, S. Laine, J. Lehtinen. Progressive Growing ofGANS for Improved Quality, Stability, and Variation[J]. arXiv prints, 2018: arXiv:1710.10196.
[17]张思杰,方翔,魏赋.基于 GAN的少样本视网膜血管分割研究 [J/OL].电子测量与仪器学报 . https://kns.cnki.net/kcms/detail/11.2488.tn.20211208. 1533.006.html.
[18]冷智颖 .基于生成对抗网络的车辆辐射图像复原方法 [J].清华大学学报 (自然科学版 ),2021.
[19]王益 .基于注意力机制和 GAN的车辆轨迹预测 [J].计算机应用, 2021(12):34-36.
[20]夏英,李骏垚,郭东恩.基于 GAN的半监督遥感图像场景分类 [J/OL].光子学报 . https://kns.cnki.net/kcms/detail/61.1235.O4.2022010 4.1625.002.html.
[21]刘爽,经志友,詹海刚.基于生成对抗网络模型的热带和亚热带海洋中尺度涡预报研究 [J/OL].热带海洋学报 . https://kns.cnki.net/kcms/detail/44.1500.P.20211228. 1704.006.html.
[22] P. Isola. Image-to-Image Translation with Conditional Adversarial Networks[C]. In CVPR, 2017.
[23]王楠,李一鸣 .基于生成对抗网络的材料组织图像增强算法 [J].信息技术, 2021(12):1-7.
[24]曾莹,刘鑫,陈纪友,徐德智,杨高波.基于增强多尺度生成对抗网络的单幅图像去雾 [J/OL].小型微型计算机系统 . https://kns.cnki.net/kcms/detail/21.1106.TP.2021121 7.1250.003.html.
● 相关图表链接:
文章来源: zhuoqing.blog.csdn.net,作者:卓晴,版权归原作者所有,如需转载,请联系作者。
原文链接:zhuoqing.blog.csdn.net/article/details/122686924
- 点赞
- 收藏
- 关注作者
评论(0)