人工智能开发框架应用 课件 4-生成对抗网络_第1页
人工智能开发框架应用 课件 4-生成对抗网络_第2页
人工智能开发框架应用 课件 4-生成对抗网络_第3页
人工智能开发框架应用 课件 4-生成对抗网络_第4页
人工智能开发框架应用 课件 4-生成对抗网络_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

7.1生成对抗网络7.1.1什么是生成对抗网络7.1.2生成对抗网络的工作原理7.1.3经典的生成对抗网络结构7.1.1什么是生成对抗网络

生成对抗网络是一种用于生成模拟数据的神经网络结构,它由生成器和判别器这两个深度神经网络模型组成。其中,生成器生成模拟数据,而判别器判断模拟数据与真实数据之间的区别。在网络的训练过程中,生成器和判别器类似于两个人在不断的博弈,二者都在训练过程中不断提高。最终生成器能够生成高质量的模拟数据,判别器能够更精准的判别模拟数据和真实数据。生成对抗网络的出现极大的促进了无监督学习,图片生成领域的研究。目前,生成对抗网络广泛应用于深度学习各个领域例如人机博弈、图像分割、视频预测、风格迁移等。现在非常火爆的ChatGPT就是一个基于生成对抗网络的人工智能聊天机器人,能够自动回答用户的提问,产生高质量的对话体验。ChatGPT利用生成对抗网络的生成器生成回答,判别器判断回答是否真实,通过不断的对抗学习,不断优化自己的回答能力,以提供更加智能、自然的对话体验。又如阿尔法狗,阿尔法狗是一款使用的人工智能围棋程序,它也是基于生成对抗网络训练的,利用生成器生成可能的下一步棋局,判别器判断下一步棋局是否合理。通过不断的对抗学习,阿尔法狗就具备了挑战世界围棋强手的能力。还有当前手机上各种APP基于个人图片或视频提供“换脸”、“换衣”、“换背景”等功能,生成新的图片和视频,也是基于生成对抗网络实现的。7.1.2生成对抗网络的工作原理

生成对抗网络一般由一个生成器和一个判别器组成。网络的实现原理如下:在网络训练过程中,生成器通过学习训练集数据的特征,在判别器的指导下,将随机噪声分布尽量拟合为训练数据的真实分布,生成具有训练集特征的模拟数据。判别器则负责区分输入的数据是真实的还是生成器生成的模拟数据,并将结果反馈给生成器。生成器根据反馈结果对自身进行优化再次生成新的模拟数据交给判别器再次判断。随着上述过程循环往复执行多次,生成器判别器的能力同步提高,直到生成器生成的数据能够以假乱真,并且判别器也无法判断数据真假,整个网络训练过程结束。生成对抗网络网络训练过步骤下。(1)生成器在初始状态下生成模拟数据发送给判别器,由于生成器未训练此时生成的数据随机分布。(2)判别器经过真实数据训练后,基于真实数据对生成器生成的模拟数据进行判断,特征接近真实数据的模拟数据映射为1,特征不真实数据的模拟数据映射为0。(3)生成器根据判别器输出的0和1分布,更新模型参数,使自己生成的模拟数据更多的被判别器映射为1。经过(2)、(3)、(2)、(3)步骤的循环交替。生成器模拟的数据更接近于真实数据,且判别器的判别能力也进一步提高。(4)生成器模拟的数据特征和真实数据相差无几,判别器无论再怎么训练,也无法区分真实数据和生成器生成的模拟数据,生成对抗网络网络训练结束。7.1.3经典的生成对抗网络结构

实现生成对抗网络最基本的架构就是GAN,随后基于GAN之上产生了许多变种的架构如DCGAN、CGAN和CycleGAN等,其中CycleGAN相对复杂一些,将放在单元8中单独介绍其结构和应用。下面将介绍GAN架构及其变种的网络结构DCGAN和CGAN。1.GANGAN是由两个神经网络生成器(Generator)和判别器(Discriminator)构成的。GAN网络结构如图7-1所示。生成器的任务是从随机噪声中生成模拟数据,判别器就是一个简单的二分类神经网络,用于判定输入的数据是来自于真实的数据集还是由生成器生成的模拟数据。如果生成器生成模拟数据够真实,判别器是无法判断模拟数据和真实数据的,在整个训练过程中,判别器只是用来帮助训练生成器,一旦训练过程结束,判别器就没有用了。图7-17.1.3经典的生成对抗网络结构

2.DCGANDCGAN是使用卷积神经网络的生成对抗网络,其原理和GAN一样,只是把卷积神经网络的卷积技术用于GAN模式的网络里,生成器网络(Generator)在生成数据时,使用反卷积的重构技术来重构原始图片。判别器网络(Discriminator)使用卷积技术来识别数据特征,并做出判别。为了让GAN能够适应于卷积神经网络结构,DCGAN做出了一些改进,以提高数据样本的质量和模型的收敛速度。DCGAN网络结构如图7-2所示。图7-27.1.3经典的生成对抗网络结构

图7-2的上部分为生成器网络结构,生成器中使用ReLU函数作为激活函数,最后一层使用Tanh函数作为激活函数,且去掉了全连接层,使网络变为全卷积网络。图7-2的下部分为判别器网络结构,判别器中利用卷积层代替了所有池化层,且使用LeakyReLU函数作为激活函数。7.1.3经典的生成对抗网络结构

3.CGANGAN生成的数据是随机的,不可预测的,无法控制网络输出特定的图片,生成目标不明确,可控性不强。针对GAN不能生成具有特定属性的模拟数据的问题,产生了条件生成对抗网络(ConditionalGAN,CGAN)。CGAN的核心思想在于对生成器和判别器的输入中增加了额外的信息,例如数据的类别标签等。生成器生成的数据在足够真实且与特定信息相匹配的情况下,才能够通过判别。这样给生成器就只能生成指定要求的数据,一定程度上解决了GAN生成结果不确定性的问题。CGAN网络结构如图7-3所示。图7-3其中,生成器的输入包含有预生成数据的标签信息y。判别器的输入也包括样本的标签信息y,这就使得判别器和生成器都可以学习到样本和标签之间的联系,使网络生成的结果具有一定的确定性。8.1CycleGAN

CycleGAN被称为循环生成对抗网络,是GAN的一个变种,主要应用于域迁移领域,如风格迁移、物体转换和季节转化,图像增强等。在CycleGAN出现之前大多使用Pix2Pix实现图像风格转换,但Pix2Pix具有很大的局限性,它要求风格迁移中的两种风格图像要一一对应出现,如影像地图图像与矢量地图图像,而现实中很难找到风格不同的相同图像。CycleGAN的创新在于,两种风格图像之间无须建立一对一的映射关系,如橙子图像和苹果图像,就可以实现风格迁移,还可以在两者之间进行域迁移。在风格迁移中,迁移之前的图像风格称为源域,迁移后的图像风格称为目标域。风格迁移时,CycleGAN首先将图像从源域转换到目标域,然后,再从目标域转回源域,如果两次转换误差都很小,那么转换后的图像应该与输入的图像基本一致。通过这样的来回转换,CycleGAN能够自主的将转换前后图片的一一配对,类似于有监督学习打标签,提升了转换效果。这种目标域和源域之间的来回转换也称为循环。CycleGAN网络结构如图8-1所示。8.1CycleGAN

由图8-1可以看出,CycleGAN结构由两个普通的GAN组成,每个GAN内部都有一个生成器网络。其中一个生成器G学习

温馨提示

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

最新文档

评论

0/150

提交评论