前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >要让 GAN 生成想要的样本,可控生成对抗网络可能会成为你的好帮手

要让 GAN 生成想要的样本,可控生成对抗网络可能会成为你的好帮手

作者头像
AI研习社
发布2018-03-16 18:06:28
2.9K0
发布2018-03-16 18:06:28
举报
文章被收录于专栏:AI研习社

如何让 GAN 生成带有指定特征的图像?这是一个极有潜力、极有应用前景的问题,然而目前都没有理想的方法。韩国大学电子工程学院 Minhyeok Lee 和 Junhee Seok 近期发表论文,就生成对抗网络的控制问题给出了自己的办法,雷锋网 (公众号:雷锋网) AI 科技评论根据原文进行如下编辑,原文链接:https://arxiv.org/abs/1708.00598

简介

生成对抗网络(GANs)是最近几年提出的新方法,在其问世之后的短短时间内,生成对抗网络已经在生成真实的样本上表现出很多有前途的结果了。然而, 在生成对抗网络的使用上,目前还有未能解决的问题:由于发生器(Generator)的输入变量是随机的,控制 GANs 产生的样本非常困难。业界了已经有了一些解决方案,但是这些方案普遍没有办法很好地应用在复杂问题上。除此之外,难以将发生器集中在产生真实的图像和产生有差异的图像的任务上,也一直亟待解决。比如,沿用已知的模型,用于脸部图像生成的发生器就无法专注于两个目标中的某一个,即根据标签产生人脸的真实图像,或是产生有差异的人脸图像。这篇文章则介绍了一种新的方法,即可控生成对抗网络(Controllable GAN, CGAN)。CGAN 在控制生成样本上有很强的表现,同时,它还能控制发生器专注于单个目标(生成真实的图像或产生不同的图像)。文章最后使用 CelebA 的数据库对 CGAN 进行评估。CGAN 实现了对 GAN 的控制,相信可以加速和助益 GAN 的研究。

背景

生成对抗网络(GAN)是一种神经网络架构,被引用来生成真实的样本。尽管这个架构是近几年才提出的,GAN 的大量成果不仅表现于生成真实样本上,还体现于机器翻译和图像超分别率的应用中。

但是,由于样本发生器的输入是随机分布的,在生成真实样本的时候,很难控制 GAN。比如,生产的 vanilla GAN 样本是现实的,也具备多样性,但是随机输入和生成样本的特征之间的关系却不明显。

在过去的几年中,尝试控制由 GAN 产生的样本的研究从未停止。其中,最为著名的控制方法就是有条件的 GAN(Conditional GAN)。有条件的 GAN 将标签分别输入发生器(Generator)和鉴别器(Discriminator),由此他们可在训练时有条件的工作。但是,这种有条件的 GAN 不能解决控制发生器专注于一个任务的问题,如生成真实样本和根据输入标签在样本之间产生差异的任务。例如:CelebA 数据库包含 202559 张名人的脸部图片,有 40 中不同的特征标记,如戴帽子或者年轻人等。当有条件的 GAN 生成真实样本时,预训练的只有一些简单的标签,比如笑、帽子之类的。为了让发生器具备处理复杂标签的能力,如尖尖的鼻子或者拱形的眉毛,需要控制发生器更注重根据标签生成不同的样本。

可控生成对抗网络 CGAN

在这篇论文中,作者介绍了一种新颖的生成对抗网络架构来控制生成的样本,称为可控生成对抗网络(CGAN)。CGAN 由三个部分构成,发生器 / 解码器,鉴别器和分类器 / 编码器。在 CGAN 中,发生器和鉴别器、分类器同时工作;发生器旨在欺骗鉴别器并同时需要被分类器正确的进行分类。

与现有的模型相比,CGAN 具有两个主要的优势。首先,CGAN 可以通过参数化损失函数专注于条件 GAN 的两个主要目标中的一个目标,即真实样本或者表现差异。因此,如果要牺牲真实实现差异性,CGAN 可以根据复杂标签生成面部图像。其次,当鉴别器使用条件 GAN 时,CGAN 使用一个独立的网络进行相应输入标签的特征映射。因此,鉴别器可以更多的专注进行假样本和原始样本之间的甄别,从而提高生成样本的真实性。 在这篇论文中,使用 CelebA 进行 CGAN 的实验。通过实验,证实了 CGAN 可以有效地根据输入标签生成人脸图像样本。

材料和方法

CGAN 由三种神经网络结构组成,发生器 / 解码器,鉴别器和分类器 / 编码器。图 1 中描述了这种 CGAN 的架构。这三种结构相互协作,发生器尝试欺骗鉴别器,这与 vanilla GAN 相同,并且旨在正确的被分类器进行分类。发生器和分类器也可以理解为解码器 - 编译器的结构,原因是标签是发生器的输入同时是分类器的输出。

CGAN 对如下的方程进行最小化:

CGAN 强制将特征映射到相应输入发生器的 l。这个参数决定了发生器专注于样本真实性的程度。这篇论文中应用了 Boundary Equilbrium GAN(BEGAN)架构,即目前最新的生成图像样本的 GAN 架构。发生器由四个反卷积层组成。每层使用 5*5 的过滤器。鉴别器由四个卷积层和 4 个反卷积层构成。分类器由 4 个卷积层和一个全连接层构成。为了验证方法的效率,并没有使用 dropout 和 max-pooling。我们将α设置为 0.5,β设置为 1 并将γ设置为 5。

结果和讨论

使用 CelebA 数据库生成多标签的名人人脸图片样本

通过想发生器输入多个标签,CGAN 可以生成多标签样本。CelebA 数据库由多个标签的图片构成。例如,一个样本图片可以有 “Attractive”,“Blond Hair”,“Mouth Slightly Open” 和 “Smiling” 的标签。

首先,使用一个标签生成图片。生成的样本见图 2。

像之前讨论的,CGAN 可以通过向发生器输入多个标签生成多标签的样本。图 3 是通过 CelebA 生成的多标签图片。其中 “No Label” 的图片只通过随机分布 z~N(0,1) 生成,并且输入标签设置成一个 0 矩阵,长度为 40,l=【0,0,...,0】。“+ Attractive” 的图片由同样的 z 和 “Attractive” 标签的二进制生成。类似的,最后一组图片是由 z 和多个标签生成的。

CGAN 还具有另一优势:相较于条件 GAN,CGAN 可以生成 label-focused 样本。通过选择γ的低值,可以讲发生器更多的专注于输入标签。图 4 是 CGAN,γ=5 和条件 GAN 的对比。从图中可以看出 CGAN 生成的人脸图片比条件 GAN 更契合输入标签。例如,使用 “Arched Eyebrow” 标签时,CGAN 生成的图片全部符合这个标签的特征,而条件 GAN 则有偏差。

结论

这篇论文提出了一种新的生成网络模型,即 CGAN,这种模型可以控制生成的图片样本。CGAN 包含三个模块,发生器 / 解码器,鉴别器和分类器 / 编码器。通过将相应的特征映射到输入标签上,生成的样本可以被有效地控制。

其实 CGAN 是一个简单的架构,即为 vanilla GAN 和解码 - 编码结构的组合。通过实验,作者证实了 CGAN 可以生成具有多个标签的人脸图片。同时,这种控制有效性也可以对生成对抗网络的研究带来一些重要的提升。

论文地址:https://arxiv.org/abs/1708.00598

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-10-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI研习社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 背景
  • 可控生成对抗网络 CGAN
  • 材料和方法
  • 结果和讨论
  • 结论
  • 这篇论文提出了一种新的生成网络模型,即 CGAN,这种模型可以控制生成的图片样本。CGAN 包含三个模块,发生器 / 解码器,鉴别器和分类器 / 编码器。通过将相应的特征映射到输入标签上,生成的样本可以被有效地控制。
相关产品与服务
机器翻译
机器翻译(Tencent Machine Translation,TMT)结合了神经机器翻译和统计机器翻译的优点,从大规模双语语料库自动学习翻译知识,实现从源语言文本到目标语言文本的自动翻译,目前可支持十余种语言的互译。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档