热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

IanGoodfellow生成对抗网络(GAN)论文解析

原文:GenerativeAdversarialNets作者:AditDeshpande编译:KK4SBB欢迎人工智能领域技术投稿、约稿、给文章纠错,请发送邮件至[email pr

原文:Generative Adversarial Nets
作者:Adit Deshpande
编译:KK4SBB
欢迎人工智能领域技术投稿、约稿、给文章纠错,请发送邮件至[email protected]

Yann LeCun大神曾经说过,“对抗训练是近些年来机器学习领域中最炫酷的想法”。没错,对抗训练已经在深度学习的圈子里掀起了不小的涟漪。本文将介绍三篇基于Ian Goodfellow开创性工作论文。

GAN简介

笔者曾在一篇博文中简单提过Ian Goodfellow的生成对抗网络论文,《九篇深度学习好文》。这些网络模型的基本思想就是基于两个模型:一个生成模型和一个判别模型。

判别模型的任务是判断一张给定的图片是真实的还是经过人工修饰。生成器的任务是模拟生成与图集中的图片相似的合成图片。我们可以把这个过程看作一种零和游戏。

论文中打了个比方,生成模型类似“一个假币制造团伙,试图生产和使用假币”,而判别模型类似“金融警察,发现和查处假币”。生成器不断地愚弄判别器,而判别器试图反抗生成器的愚弄。由于模型训练通过交替优化,两种模型最终都能达到“无法区分真品和赝品”的程度。

对抗网络的拉普拉斯金字塔

对抗网络的一大用途就是在经过充分训练之后,能够生成以假乱真的图片。下面是Goodfellow 在2014年发表的论文中给出的例子。

Ian Goodfellow 生成对抗网络(GAN)论文解析

如图所示,生成器模拟生成的手写数字和人脸图片非常相似,而模拟CIFAR-10数据集生成的图片则略逊色。

为了改善这一现象,Emily Denton, Soumith Chintala, Arthur Szlam 和 Rob Fergus等人发表了一篇论文《Deep Generative Image Models using Laplacian Pyramid of Adversarial Networks》。这篇文章的主要贡献在于提供了一种网络模型结构,利用这种网络生成的高质量图片对人类评判者的蒙蔽概率接近40%。

方法

在讨论文章细节之前,我们先来回顾生成器在GAN模型中发挥的作用。它需要生成大量复杂的图片来迷惑经过训练的判别器 —— 乍一看这项任务并不轻松。该文作者们所采取的方法是用多个CNN模型以此生成不同尺度的图片。第一作者Emily Denton在LAPGANs的讲座中说到:

“低分辨率的图片很容易生成。依照低分辨率的图片生成另一张分辨率稍高的图片也不是那么困难。”

此文采用的方法是构造一组生成模型的拉普拉斯金字塔。有些读者可能还不熟悉,可以参考阅读这篇文章。基本的思想是金字塔每一层表示了某个尺度下图片包含的信息。相当于对原始图片按尺度做了层级分解。

一个简单的GAN模型需要输入和输出两部分。生成器按照概率分布输入一个噪声向量,输出一张图片。判别器输入这张图片(或是训练集中的一张真实图片),输出一个分数,表示该图片的真实性。接着,我们来看看条件GAN(CGAN)。它的主体部分与GAN都相同,区别在于生成器和判别器还需要输入额外的信息。这种信息类似于某种类别标签或是另一张图片。

网络结构

作者们提出了一组卷积网络模型,金字塔的每一层都对应一个卷积网络。传统的GAN结构只用一个生成器来产生整张图片,他们采用的方法是用一组CNN产生一系列分辨率逐渐提高的图片。

每一层都对应独立的CNN,并且都基于两部分训练,一张低分辨率的图片以及一个噪声向量(传统GAN的输入只有后者)。这也是CGAN思想的实践之处。它的输出是一张合成图片,升采样之后作为金字塔后一级的输入。因为在每个层级的生成器能够利用来自不同分辨率的信息,以便在各个层级中创建更细粒度的输出,所以此方法是有效的。

Ian Goodfellow 生成对抗网络(GAN)论文解析

Ian Goodfellow 生成对抗网络(GAN)论文解析

生成对抗文本到图像合成

这篇论文发表于去年六月,主要介绍将文字描述转换为图片的方法。例如,网络模型的输入可以是“一朵粉红色花瓣的花”,输出就是包含这些特征的一幅图片。这项任务由两部分组成。一方面通过自然语言处理技术来分析和理解输入的文本信息,另一方面是生成准确和自然的图片的生成模型。

论文作者认为,从文字到图像的过程比图像到文字的过程难很多倍(参加Karpathy的论文)。不仅因为像素点的数量非常多,而且不能把整个任务拆解为每一步预测下一个词语(图像到文字的方式工作)。

方法

论文中所采用的方法是基于由递归文本编码器生成的文本特征来训练一个GAN模型(详细内容参考这篇论文)。生成器和判别器在各自的网络结构中使用这些特征。这也是GAN连接输入的文本描述和输出的合成图像的桥梁。

网络结构

我们首先来看生成器。噪声向量z以及文本编码是网络的输入。文本编码是一种封装输入描述信息的方式,随后它被拼接到噪声向量(参见下图)。然后用逆卷积层将输入向量转化为合成图片。

判别器输入一张图片,经过一组卷积层(包括 BatchNorm 和 ReLU)。最终输出一个表示图片真实度的分数。

Ian Goodfellow 生成对抗网络(GAN)论文解析

训练

这个模型有趣的一点是它的训练方式。如果你仔细考虑需要解决的任务,会发现生成器有两项工作需要完成。一项是生成真实和伪造的图片,另一项是要确保生成的图片与文字描述相关。同样,判别器也需要考虑这两方面的因素,确保伪造图片或者与描述不匹配的图片被检测到。

为了创建这些通用的模型,作者用三种类型的数据进行训练:{真实图像,正确文本},{假图像,正确文本},和{真实图像,错误文本}。对于最后一组训练数据,判别器必须找出与文字描述不匹配的图像(即使他们看起来很自然)。

Ian Goodfellow 生成对抗网络(GAN)论文解析

超分辨率GAN

作为在此领域进行快速创新的证明,Twitter的团队在不久前发布了这篇论文。此篇论文中介绍的模型是超分辨率生成对抗网络(SRGAN)。此文的主要贡献是发明了一种全新的损失函数(比普通的MSE更好),使得网络模型能够根据严重降采样的图像恢复出逼真的纹理和细节。

方法

我们先来看看这个新的损失函数。这种损失函数可以分为两部分:对抗损失和内容损失。从上层角度分析,对抗损失鼓励看起来自然的图像(它们像是来自数据集),内容损失确保新的高分辨率图像具有原始低分辨率图像的类似特性。

网络结构

接着我们深入到细节。对同一张图片,我们分别准备一个高分辨率版本和一个低分辨率版本。接着训练生成器,使根据低分辨率图片输出的合成图片,尽可能接近高分辨率版本。此输出被称为超分辨图像。然后,训练判别器来区分这些图像。

Ian Goodfellow 生成对抗网络(GAN)论文解析

损失函数

我们再回到新的损失函数。它实际上是多个独立损失函数的加权和。第一部分是内容损失,这实际上是新的重建图像(网络输出)与实际的高分辨率图像之间的欧氏距离。按照作者的理解,这样做的主要目标是确保两图像的内容相似,将它们送入训练好的ConvNet模型后看各自的特征**情况。

作者定义的另一种主要损失函数是对抗损失。这类似于传统的GAN。它鼓励输出与原始数据分布类似的结果。有了这个新的损失函数,生成器确保输出更高分辨率的自然图像,却仍然保留与低分辨率图像类似的像素空间。

Ian Goodfellow 生成对抗网络(GAN)论文解析

小结

GAN采用了大规模的无监督式训练(我们只需要一个真实的图集,不需要标注等等信息)。这意味着我们可以利用现在大量的非结构化图像数据。训练结束后,我们可以使用输出或中间层作为特征提取器,用于给其它分类器提供特征,它不需要太多的训练数据就能达到不错的精度。


Ian Goodfellow 生成对抗网络(GAN)论文解析

Ian Goodfellow 生成对抗网络(GAN)论文解析

由CSDN主办的中国云计算技术大会(CCTC 2017)将于5月18-19日在北京召开,Spark、Container、区块链、大数据四大主题峰会震撼袭来,包括Mesosphere CTO Tobi Knaup,Rancher labs 创始人梁胜、Databricks 工程师 Spark commiter 范文臣等近60位技术大牛齐聚京城,为云计算、大数据以及人工智能领域开发者带来一场技术的盛大Party。现在报名,只需399元就可以聆听近60场的***技术专家分享,还等什么,登陆官网(http://cctc.csdn.net/),赶快报名吧!

Ian Goodfellow 生成对抗网络(GAN)论文解析


推荐阅读
  • python绘制拟合回归散点图_机器学习之利用Python进行简单线性回归分析
    前言:在利用机器学习方法进行数据分析时经常要了解变量的相关性,有时还需要对变量进行回归分析。本文首先对人工智能机器学习深度学习、相关分析因果分析回归分析 ... [详细]
  • 从2019年AI顶级会议最佳论文,探索深度学习的理论根基与前沿进展 ... [详细]
  • 了解供应链简单来说,供应链涉及一系列旨在向最终用户提供产品或服务的步骤。企业组织及其供应商之间始终存在一个网络,来生产特定产品并将其交付给最终用户。该网络包括不同的活动、人员、实体 ... [详细]
  • 独家解析:深度学习泛化理论的破解之道与应用前景
    本文深入探讨了深度学习泛化理论的关键问题,通过分析现有研究和实践经验,揭示了泛化性能背后的核心机制。文章详细解析了泛化能力的影响因素,并提出了改进模型泛化性能的有效策略。此外,还展望了这些理论在实际应用中的广阔前景,为未来的研究和开发提供了宝贵的参考。 ... [详细]
  • 能够感知你情绪状态的智能机器人即将问世 | 科技前沿观察
    本周科技前沿报道了多项重要进展,包括美国多所高校在机器人技术和自动驾驶领域的最新研究成果,以及硅谷大型企业在智能硬件和深度学习技术上的突破性进展。特别值得一提的是,一款能够感知用户情绪状态的智能机器人即将问世,为未来的人机交互带来了全新的可能性。 ... [详细]
  • 投融资周报 | Circle 达成 4 亿美元融资协议,唯一艺术平台 A 轮融资超千万美元 ... [详细]
  • 本文深入探讨了 hCalendar 微格式在事件与时间、地点相关活动标记中的应用。作为微格式系列文章的第四篇,前文已分别介绍了 rel 属性用于定义链接关系、XFN 微格式增强链接的人际关系描述以及 hCard 微格式对个人和组织信息的描述。本次将重点解析 hCalendar 如何通过结构化数据标记,提高事件信息的可读性和互操作性。 ... [详细]
  • 深入浅出解读奇异值分解,助你轻松掌握核心概念 ... [详细]
  • 理工科男女不容错过的神奇资源网站
    十一长假即将结束,你的假期学习计划进展如何?无论你是在家中、思念家乡,还是身处异国他乡,理工科学生都不容错过一些神奇的资源网站。这些网站提供了丰富的学术资料、实验数据和技术文档,能够帮助你在假期中高效学习和提升专业技能。 ... [详细]
  • 当前,众多初创企业对全栈工程师的需求日益增长,但市场中却存在大量所谓的“伪全栈工程师”,尤其是那些仅掌握了Node.js技能的前端开发人员。本文旨在深入探讨全栈工程师在现代技术生态中的真实角色与价值,澄清对这一角色的误解,并强调真正的全栈工程师应具备全面的技术栈和综合解决问题的能力。 ... [详细]
  • AI TIME联合2021世界人工智能大会,共探图神经网络与认知智能前沿话题
    AI TIME携手2021世界人工智能大会,共同探讨图神经网络与认知智能的最新进展。自2018年在上海首次举办以来,WAIC已成为全球AI领域的年度盛会,吸引了众多专家学者和行业领袖参与。本次大会将聚焦图神经网络在复杂系统建模、知识图谱构建及认知智能应用等方面的技术突破和未来趋势。 ... [详细]
  • 第三届人工智能、网络与信息技术国际学术会议(AINIT 2022)
    20223rdInternationalSeminaronArtificialIntelligence,NetworkingandInformationTechnology第三届 ... [详细]
  •   作为一种编程语言,Python比C#,Java,C和C++更具吸引力。它被称为“胶水语言”,它也被喜欢它的程序员誉为“美丽”的编程语言。从云计算,客户端到物联网终端,Pytho ... [详细]
  • 在CentOS 6.5环境中,本文详细介绍了如何配置SSH无密钥登录,并成功执行PSSH命令。首先,确保系统已安装PSSH工具,可使用 `yum install pssh` 进行安装。若未配置免密钥登录,PSSH命令将无法正常执行,例如尝试运行 `pssh -H root@192.168.245.129 -i uptime` 时会失败。通过生成并分发SSH公钥,可以实现无密码登录,从而顺利执行PSSH命令。此外,本文还提供了详细的步骤和常见问题的解决方案,帮助用户顺利完成配置。 ... [详细]
  • 2018年热门趋势:轻松几步构建高效智能聊天机器人
    2018年,构建高效智能聊天机器人的简易步骤成为行业焦点。作为AI领域的关键应用,聊天机器人不仅被视为企业市场智能化转型的重要工具,也是技术变现的主要途径之一。随着自然语言处理技术的不断进步,越来越多的企业开始重视并投资于这一领域,以期通过聊天机器人提升客户服务体验和运营效率。 ... [详细]
author-avatar
卡夫卡咯
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有