标题 | 生成式对抗网络研究综述 |
范文 | 徐松林 摘要:近年来,随着人工智能的发展,越来越多的研究者加入到了人工智能的研究当中。其中计算机视觉计算领域的研究也受到越来越多的人的关注,而生成式对抗网络是处理计算机图像与视觉的一种有效的算法。本文介绍了生成式对抗网络的基本原理与主要算法,并对算法的主要应用进行了介绍,最后并做了总结。 关键词:人工智能;生成式对抗网络;GAN 中图分类号:TP393? ? ? ? 文献标识码:A? ? ? ? 文章编号:1009-3044(2019)03-0061-02 1 引言 生成式对抗网络(Generative Countermeasure Network,GAN)是由GoodFellow等人[1]在2014年研發出来的一种网络。GAN目前已经成为计算机视觉研究当中炙手可热的一种深度学习模型。随着人工智能的不断发展,人们越来越多地把重点放到了图像领域的研究当中,其中包括图像处理[2]、图像生成[3]以及视频检索[4]等方面。在这些领域当中,GAN无疑已经成为最具研究价值的一种算法。由于大部分的深度学习模型均是监督式学习,对数据的要求比较高,而GAN不需要提前知道假设分布便可以自动推断出真实的数据集,所以GAN在图像处理领域中表现的十分的优异[5]。 本文章节安排如下,在第2小节介绍GAN的基本理论与主要算法, 第3小节介绍了GAN的主要应用,最后在第4小节进行了总结与展望。 2 生成式对抗网络 2.1 基本原理 在GAN中,主要包括两个部分,一个是生成模型G,另外一个是判别模型D,其具体结构如图2-1所示。 在图2-1中,Generator代表GAN的生成模型G,而Discriminator代表判别模型D。在GAN中,G与D基本上都是由深度神经网络实现的一种函数。其中G根据真实的部分数据获取其分布,并将这些数据映射到新的空间当中,将新生成的数据记做[G(z)],分布记作[pg(z)],其中[z]是一个随机变量。此时,D中的输入除了正常的数据外,还包括新生成的数据[G(z)],而D的输出一般是一个标量或者一个概率值,表示之前由G生成的数据被认定是真实数据的概率,并将此概率输出到G,使得G根据次概率不断地进行调整,最后使得[G(z)]与真实的数据保持一致。在极致情况下,即D已经将新生成的数据[G(z)]当成了真实的数据,此时的模型达到了最优,并且认为G已经得到了真实数据完整的分布。一般来讲,G是某种深度神经网络,对于数据输入达到的层数,既可以是第一层,也可以是最后一层,并且对于其中的隐藏层,可以加入噪声更好的模拟真实的数据情况。除此之外,GAN对[z]的要求很少,通常[z]的维度为100维左右,并且是随机的。由于要经过D的判断将梯度回传并以此更新参数,所有G必须是可微的,否则会破坏整个GAN中信息的传递。 除了上述GAN中的生成器外,GAN中另外一个重要的部件便是判别器D了。D的主要目的是为了给生成器G提供反馈,判断输入的数据是否为真实的数据。其具体过程需要两个协议,第一个协议是从真实的数据中进行采样,输入到D之后D会给出一个概率值,值越大,表明其实真实样本的概率越大,并且假设在D输入的过程中,真实样本的个数与G生成样本的个数是相等的,在此协议下,D输出的概率值要尽可能地接近1。在第二种协议下,G会从真实的数据中按照某种分布进行采样,并将采样之后生成的数据作为D的输入,而此时D的目标输出就是使得此类型数据最后输出概率为0,而G的目标是为了使得D的输出为1,经过一系列的模型参数训练,最后会达到一种平衡,通过G生成的样本数据与真实的数据没有差异,而D所反馈的概率为0.5,即此时D已经分辨不出输入的数据到底是真实的数据还是经过G生成的样本数据。 2.2 主要算法 在原始的GAN中,对先验的要求非常的低,数据可以是任意的一种分布,最终GAN将会模拟出任意一种分布来。GAN使用机器的自身来进行训练,通过自身参数的不断调整,获得足够多的数据,并且找到现实中的某种规律,已经脱离了人类的“限制”。但是GAN由于其具有无限建模的能力,所以往往会出现函数无法逼近或者无法收敛等问题,而且GAN模拟生成的数据比较单一,不具有多样性特征,而且对于某些特定的分布,比如离散分布,其学习的效果是非常差的。面对这些问题,人们对原始的GAN进行了一系列的改进,使其克服刚才提到的缺陷。下面列举一些常见的改进型算法。 1)CGAN算法[6],通过在数据生成的过程中增加约束性的条件,即利用标签将输入输出进行标记,这样能使得模型快速达到收敛条件,但是此种算法所要求的数据必须是带带有标签的数据。 2)DCGAN算法[7],将CNN的优点应用在GAN中,使得整个训练过程趋于稳定,并且生成器生成的数据具有多样性,更加符合GAN的需求,但是此种算法由于引进了CNN,整个模型易崩溃,会出现梯度爆炸等问题。 3)WGAN算法[8],通过对训练深度神经网络中的权重进行剪枝处理,使得整个训练过程更加稳定,并且易于收敛,理论上解决了梯度消失的问题,但是如果对某些必要的权重进行剪枝,还是会使得梯度消失或者爆炸。 4)WGAN-GP算法,利用梯度惩罚措施实现生成器与判别器之间的平衡,但是其最大的缺点就是收敛速度慢,生成的样本多样性较差。 3 GAN的主要应用 GAN的主要应用是在视觉计算上面,从最初的图像生成,再到图像计算等,越来越多的人利用GAN以及改进后的GAN模型处理计算机视觉方面的问题,其中最主要的原因在于GAN可以通过自身的对抗性不断进行模型的改进,最终取得良好的效果。下面介绍几个典型的应用。 1)生成图片。应对于各种各样的数据,GAN都可以学习到其真实的数据分布,如何使得图片能够更加的接近真实事物,这一直是图片研究中的重点内容。DCGAN在此方面取得了良好的结果,由于有CNN的加入,DCGAN目前已经成为GAN模型的标准。除此之外,DCGAN还可以对图片的矢量进行运算,从而摆脱对图片数据库中图片本身的记忆。 2)图像的风格迁移与翻译。图片的风格迁移是指将图片的一种风格转换为另一种风格,例如pix2pix模型[8],就可以实现图片风格的转换,但是pix2pix模型训练的数据需要成对的数据,而循环GAN[9]突破了这一限制,主要是将原图片先映射到某一个空间中,之后再从此空间得到变换后的图片,在这个过程中,通过生成器将图片做映射,之后通过生成器与判别器的匹配可以提高重新生成图像的质量。此时,将原始图像与重新生成的图像数据进行比对,如果分布相一致,那就有理由认为目标图像与原始图像是一致的。除此之外,循环GAN还可以应用到很多的方面,包括对图像内季节的迁移,或者将2维的图片转换到三维的场景中,甚至是一些名人的图片到真人的转换。 3)图像还原。目前随着人工智能技术的发展,人脸识别的精确度也越来越高。利用人脸识别技术,可以在人群密集的地方进行人脸自动搜索,用于发现可疑人物等。但是目前制约这项技术发展的主要原因是在视频中进行人脸识别时,经常受到其他人的干扰,真正的嫌疑人有可能被其他人遮挡,只有一个侧面相,但是往往就需要从这一个侧面相当中取出全部的面貌特征进行比对。之后,TP-GAN[10]被人们提了出来,这种算法可以整合局部与整体信息,对于还原后的图像保留了原有信息的特征,所以在面对具有不同光照、不同背景甚至不同侧面的图片时,可以利用TP-GAN算法合成目标人的正脸图片,并且合成之后的图片与实际的人脸是非常相似的。其中最主要的原因是由于TP-GAN生成网络时,在关注全局结构的基础上,还关心局部推理,最后将这两个特征进行合并,最终合成最后的图像。 4 总结与展望 在图像视频领域,GAN作为一种新型的学习算法得到了广大研究者的关注。GAN对于样本不足、图像质量差、特征提取困难等问题,提供了良好的解决方案。本文对GAN在视觉方面的应用进行了介绍,分析了GAN主要改进后算法的优缺点,并列举了GAN中的主要应用。除此之外,GAN还可以与其他的深度学习模型相结合,解决了许多机器学习中无法解决的问题。 除了本文中提到的应用外,GAN还可以在其他领域中取得较大的成就。例如在专家系统中,可以利用GAN解决具体的问题,如对特定的场景进行系统生成,或者将图片与游戏相结合,生成特定的游戏场景,并提高场景的视觉质量。 参考文献: [1] Goodfellow I J, Pouget-Abadie J, Mirza M, et al. Generative Adversarial Networks[J]. Advances in Neural Information Processing Systems, 2014, 3: 2672-2680. [2] Sonka M, Hlavac V, Ceng R B D M. Image Processing, Analysis and Machine Vision[M].? Chapman & Hall Computing, 1993: 685–686. [3] Cappelli R, Maio D, Maltoni D, et al. Synthetic Fingerprint-Image Generation[C], 2000. [4] Krizhevsky A, Sutskever I, Hinton G E. ImageNet Classification with Deep Convolutional Neural Networks[C], 2012: 1097-1105. [5] 王坤峰, 苟超, 段艳杰, et al. 生成式对抗网络GAN的研究进展与展望[J]. 自动化学报, 2017, 43(3): 321-332. [6] Mirza M, Osindero S. Conditional Generative Adversarial Nets[J]. Computer Science, 2014: 2672-2680. [7] Radford A, Metz L, Chintala S. Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks[J]. Computer Science, 2015. [8] Arjovsky M, Chintala S, Bottou L. Wasserstein GAN[J], 2017. [9] Zhu J Y, Park T, Isola P, et al. Unpaired Image-to-Image Translation Using Cycle-Consistent Adversarial Networks[J], 2017: 2242-2251. [10] Huang R, Zhang S, Li T, et al. Beyond Face Rotation: Global and Local Perception GAN for Photorealistic and Identity Preserving Frontal View Synthesis[J], 2017: 2458-2467. 【通聯编辑:李雅琪】 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。