InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets(译)

Abstract

       本文介绍了InfoGAN,它是一种对生成对抗网络的信息理论扩展,能够以完全无监督的方式学习特征分离表示。InfoGAN也是一个生成对抗网络,最大化潜在变量的一小部分与观察(生成)结果之间的相互信息。我们得出可以有效优化的互信息目标的下限。 具体来说,InfoGAN成功地将MNIST数据集上的数字形状的写作风格,3D渲染图像的照明姿势,以及SVHN数据集中央数字的背景分离。它还发掘包括发型,是否存在眼镜和CelebA面部数据集上的情感等视觉概念。实验表明,InfoGAN可以学习与现有监督方法学习的表征相比具有竞争力的可解释性表征。

1 Introduction

       无监督学习一般可以被描述为从大量存在的未标记数据中提取价值的问题。无监督学习的流行框架是表征学习,其目标是使用未标记的数据来学习将重要语义特征暴露为易于解码的要素的表示。学习这种表征的方法是可能存在的,并且对于许多下游任务(包括强化学习中的分类,回归,可视化和策略学习)是有帮助的。

       虽然无监督学习是不适定的,因为相关的下游任务在训练时期是未知的,但是特征分离的表示(一个数据实例的显著属性的明确表示)应该对相关但未知的任务有帮助。例如,对于面部数据集,有用的分解的表示可以为以下每个属性分配一组单独的维度:面部表情,眼睛颜色,发型,眼镜的存在与否以及相应人物的身份。特征分离的表示对于需要知道数据的显著属性的自然任务可能是有用的,其中包括面部识别和对象识别等任务。这不是非自然的监督任务,例如其目标是确定图像中的红色像素的数量是偶数还是奇数。因此,为了有用,无监督学习算法必须实际上有效地猜测可能的一组下游分类任务而不直接把所有特征都给它们。

       无监督学习研究的很大一部分是由生成模型驱动的。这是由于相信生成或“创造”观察到的数据需要某种形式理解的能力,希望一个良好的生成模型将自动学习一个特征分离的表示,即使很容易构建完美生成模型却具有随机的不好的表示。最突出的生成模型是变分自动编码器(VAE)和生成对抗网络(GAN)。

       在本文中,我们对生成对抗网络目标进行了简单的修改,鼓励其学习可解释和有意义的表示。我们通过最大化GAN噪声变量的固定小子集与观测值之间的互信息来实现,这一点相对简单。尽管它很简单,我们发现我们的方法是惊人的有效:它能够在许多图像数据集中发现高度语义和有意义的隐藏表示:数字(MNIST),面孔(CelebA)和房屋号码(SVHN)。我们无监督的特征分离表示的质量与先前使用监督标签信息的作品相比较,这些结果表明,增加互信息成本的生成模型可能是学习特征表示的有效途径

       在本文的其余部分,我们首先对相关工作进行审查,并注意到以前用于学习特征分离表示的方法所需要的监督。然后我们回顾GAN,它是InfoGAN的基础。我们描述如何最大化互信息来实现可解释的表示,并导出一个简单而有效的算法。最后,在实验部分中,我们首先将InfoGAN在相对干净的数据集上与先前方法进行比较,然后显示InfoGAN可以在复杂数据集上学习可解释的表示,其中没有已知的无监督方法可以学习到与我们可比质量的表示。

2 Related work

       现存有大量关于无监督表示学习的工作。早期的方法是基于栈式(通常是去噪)自动编码器或受限玻尔兹曼机。很多有前景的近期工作源自Skip-gram模型,这启发了跳过-思想向量和几种图像无监督特征学习技术。

       另一个有趣的工作包括阶梯网络,它在MNIST数据集的半监督变体上取得了惊人的成果。最近,基于VAE的模型在MNIST上实现了更好的半监督结果。Radford等人已经使用GAN来学习支持代码空间上的基本线性代数的图像表示。Lake 等人已经能够使用对贝叶斯计划的概率推理来学习表示,这在OMNI数据集上实现了令人信服的一次性学习结果。

       此外,先前的研究试图使用监督数据来学习特征分离表示。一类这样的方法使用监督学习训练表示的一部分来匹配所提供的标签:双线性模型分离样式和内容; 多视觉感知器分离面部身份和观点; 杨等人开发了一种产生潜伏因子转化序列的复发变体。 类似地,VAE和对抗自动编码器被用于学习特征表示,其中类标签与其他变体分离。最近开发了几种弱监督方法来消除明确标记变量的需要。disBM是一种更高阶的玻尔兹曼机,它通过对一对数据点进行“钳位”隐藏单元的一部分来学习解调表示,这些数据点在除了一个变化因素之外与已知匹配。 DC-IGN将这种“夹紧”理念扩展到VAE,并成功地学习了可以在3D渲染图像中表示姿态和光的图形代码。这一系列工作产生了令人印象深刻的成果,但它们依赖于通常不可用的数据的监督分组。惠特尼等人提出通过从连续的图像帧学习并使用时间连续性作为监控信号来减轻分组要求。

       不同于以前努力恢复分离表示的作品,InfoGAN不需要任何形式的监督。据我们所知,唯一的其他无监督方法学习解卷积的方法是hossRBM,一种受限玻尔兹曼机的高阶扩展可以在多伦多面部数据集上解析出情感与身份。然而,hossRBM只能分离开离散潜在因素,其计算成本在多个因素中呈指数增长。 InfoGAN可以分离离散和连续的潜在因素,扩展到复杂的数据集,通常不需要比常规GAN更多的训练时间。

3 Background: Generative Adversarial Networks

       生成对抗网络为了学习数据x在生成器上的生成数据分布Pg,我们首先定义一个噪声分布Pz(z),然后用G(z; θg)表示从噪声到生成数据的映射,其中G表示生成模型,z表示输入的噪声分布,θg表示生成器的参数。再定义一个D(x, θd)用来判别数据x是来自于真实数据分布而不是生成器生成的数据分布的概率,或者用来判别数据x是否来自于真实数据分布的映射,结果表示一个概率。如果输入判别模型的数据来自于真实数据,我们将其标记指派为1,如果输入判别模型的数据来自于Pg,我们将其标记指派为0。在训练过程中,固定一方的权重训练另一个,我们训练D以最大化将正确标签分配给Pg和真实数据样本的概率。同时,我们训练G最小化log(1- D(G(z)))以产生最有可能被判别器判别为真实数据的生成数据。整个训练过程可以看成是以下公式优化的过程:

4 Mutual Information for Inducing Latent Codes

       GAN公式使用简单的因子连续输入噪声向量z,而不对生成器可能使用该噪声的方式施加限制。结果,生成器可能以高度纠缠的方式使用噪声,导致z的各个维度不对应于数据的语义特征。

       然而,许多领域自然而然地分解成一组具有语义意义的变量因子。 例如,当从MNIST数据集生成图像时,如果模型自动选择分配一个离散随机变量来表示数字(0-9)的数字标识,选择两个数字代表具有的角度和数字笔画的厚度。在这种情况下,这些属性是独立的和显著的,如果我们可以通过简单地从独立的1到10变量和两个独立的连续性变量恢复MNIST数字,那么这些属性就是有用的。

       在本文中,我们提出将输入噪声向量分成为两部分:(i)z,被视为不可压缩噪声源;(ii)c,我们将其称为潜在代码,其目的在于数据分布的显著结构化语义特征。

       在数学上,我们用c1,c2,...,cL 来表示结构化隐藏变量集合。其最简单的方式,我们可以假设存在一个因素分布,可表示为

为了符号简化,我们将会隐藏代码c来表示所有的隐藏变量ci的级联。

       我们现提出一种非监督方法来发现这些隐藏因素:我们向生成网络提供非压缩噪声z和隐藏代码c,因此生成网络的形式变为G(z, c)。然而,在标准GAN中,生成器是能够通过找到一种方法满足PG(x|c) = PG(x),以此来自由忽略附加隐藏代码c的。为了解决琐碎代码的问题,我们提出一种信息-理论正则化:在隐藏代码c与生成器分布G(z, c).之间存在着很高的互信息。于是I(c;G(z, c))应该是高的。

       在信息论中,X和Y之间的互信息I(X; Y ),用于测量从关于其他随机变量X的随机变量Y学习知识的“信息数量”。互信息可被表示为两个熵项的差异:

       这个定义有个直观的解释:I(X; Y )是当Y被观测时,X的不确定性的下降。如果X和Y是独立的,于是I(X; Y ) = 0,因为知道一个变量对另一个并无意义;相比之下,如果X和Y与确定的,可逆的函数相关,最大的互信息便可以得到。这种解释使得用公式表示损失变得容易:给定任意的x~PG(x),我们希望PG(c|x)有小的熵。换言之,隐藏代码c中的信息在生成过程中不应被丢失。相似的互信息促使目标在上下文聚集之前就被考虑。于是,我们打算解决如下信息-正则化最小最大游戏:

5 Variational Mutual Information Maximization

       实际上,互信息项I(c;G(z, c))是很难直接最大化的,因为其需要接近后验P(c|x)。幸运的是,通过定义一个辅助分布Q(c|x)以估计P(c|x),我们可以得到互信息项的一个下界:

       下界互信息的技术被誉为变分信息最大化。我们另外注意到隐藏代码H(c)的熵也可以被优化,因为通常分布有一个简单的解析形式。然而,本文中我们通过固定隐藏代码分布以及将H(c)视为常量的方式进行简化。迄今为止,我们已经通过该下界绕过了显式计算后验P(c|x)的问题,但是我们仍然需要能够从内部期望的后验中取样。接下来我们陈述一个简单的引理,其消除了从后验取样的需要,它的证明推迟至附录。

引理5.1 对于任意变量X,Y以及函数f(x, y),在合适正则化的条件下:

       通过使用引理A.1,我们可以定义一个变分下界,LI (G,Q),互信息,I(c;G(z, c)):

       我们注意到LI (G,Q)很容易用蒙特卡罗模拟法近似。特别地,通过重新参数化的方法,LI可被最大化直接w.r.t.Q和w.r.t.G。因此,在不改变GAN的训练程序情况下,LI (G,Q)可被添加至GAN的目标,我们将所得算法称作信息最大化生成对抗网络(InfoGAN)。

        等式(4)表示了当辅助分布Q接近真实后验分布:

时,下界变得紧凑。此外,我们知道当变分下界对于离散隐藏代码获得其最大值LI (G,Q) = H(c)时,边界变得紧凑,可得到最大化互信息。在附录,我们记录了InfoGAN如何连接至Wake-Sleep算法以提供另一种解释。

       因此,InfoGAN被定义为如下带有变分互信息正则化和超参数λ的最小最大化游戏:

6 Implementation

       实际上,我们将辅助分布Q参数化为一个神经网络。在大多数实验室中,Q和D分享所有的卷积层,而且对于条件分布Q(c|x),还存在一个最后全连接层以输出参数,这意味着InfoGAN仅向GAN添加一个可忽略的计算成本。我们还发现LI (G,Q)收敛的速度比常规GAN要快,因此可以看成infoGAN是由GAN免费提供的。

       对于分类潜在代码ci,我们使用非线性softmax的自然选择来表示Q(ci | x)。对于连续潜在代码cj,根据真正的后验概率P(cj | x),有更多的选项。在我们的实验中 ,我们发现简单地将Q(cj | x)作为高斯因子来处理就足够了。

       即使InfoGAN引入了一个额外的超参数λ,对于离散的潜在代码,它很容易调整,简单地设置为1就足以。当隐藏代码包含连续变量时,较小的λ通常用于确保LI(G,Q)的微分熵与GAN目标的规模相同。

       由于GAN以难以训练而著称,我们基于DC-GAN介绍的现有技术设计实验,这些技术足以稳定InfoGAN训练,而且我们不必引入新的技巧。详细的实验设置见附录。

7 Experiments

       我们的实验的第一个目标是调查相互信息是否可以有效地最大化。 第二个目标是评估如果InfoGAN可以通过利用生成器来一次只改变一个潜在因素来学习分离和可解释的表示,以便评估如果这样的变化因素仅导致生成的图像中的一种类型的语义变化。 DC-IGN也使用这种方法评估他们在3D图像数据集上的学习表示,我们也应用InfoGAN建立直接比较。

7.1 Mutual Information Maximization

       为了评估潜在代码c和生成的图像G(z, c)之间的互信息是否可以通过提出的方法有效地最大化,我们在MNIST数据集上训练InfoGAN,对潜在代码c进行统一的分类分布c~Cat(K = 10,p = 0.1)。在图1中,下限LI (G,Q)快速最大化为H(c) ≈ 2.30,这意味着边界紧凑,最大化互信息已得到。

       作为基准,当没有明确促使生成图像与潜在代码最大化互信息时,我们还训练具有辅助分布Q的常规GAN。由于我们使用表达神经网络对Q进行参数化,我们可以假设Q可以合理地近似真实的后验概率P(c|x),因此在常规GAN中潜隐代码和生成图像之间几乎没有互信息。我们注意到,使用不同的神经网络架构,即使我们在实验中没有观察到这种情况,潜在代码和生成的图像之间可能存在更高的互信息。这种比较是为了证明在常规GAN中,不能保证生成器将利用潜在的代码。

7.2 Disentangled Representation

       为了从MNIST上的样式分离数字形状,我们选择使用一个分类代码c1对潜在代码进行建模,c1 Cat(K = 10, p = 0.1),可以模拟数据中的不连续变化,以及可以捕获本质上连续变化的两个连续代码:c2, c3 Unif(−1, 1)。

       在图2中我们显示离散码c1捕获形状的剧烈变化。更改分类代码c1在大多数时间之间可以切换数字。事实上,即使我们刚刚训练没有任何标签的InfoGAN,c1也可以用作分类器,通过将c1中的每个类别与数字类型进行匹配来实现对MNIST数字进行分类的5%错误率。在图2a的第二行,我们可以观察到一个数字7被分类为9。

       连续代码c2,c3捕获样式的连续变化:c2控制旋转数字和c3控制宽度。 令人惊奇的是,在这两种情况下,生成器不仅仅是拉伸或旋转数字,而是调整其他细节,如厚度或笔触样式,以确保所得到的图像是自然的。作为检查InfoGAN学习的潜在表示是否是可概括的测试,我们以夸张的方式操纵潜在代码:而不是将潜在代码从-1映射到1,我们把它从-2映射到2,覆盖了一个广泛的地区,网络从来没有接受过训练,我们仍然得到有意义的泛化。

       接下来,我们在3D图像的两个数据集上评估InfoGAN:面部和椅子,它们是DC-IGN显示学习高度可解释的图形代码的数据集。

       在面部数据集上,DC-IGN通过使用监督学习将潜在因素表示为方位角(姿势),仰角和照明作为连续潜在变量。使用相同的数据集,我们展示了InfoGAN学习了一个解开的表示,可以恢复同一数据集上的方位角(姿态),高程和照明。在这个实验中,我们选择用五个连续代码对潜在代码进行建模,ci~Unif(-1,1),1 ≤ i ≤ 5。

       由于DC-IGN需要监督,以前无法学习未标记的变体的潜在代码,因此无法从数据中自动发现显著的潜在变异因素。相比之下,InfoGAN能够自己发现这样的变化:例如,在图3d中,即使在以前的工作中既不明确地生成或标记了该变量,也会学习平滑地将面部从宽变为窄的潜在代码。

       在椅子数据集上,DC-IGN可以学习代表旋转的连续代码。 InfoGAN再次能够学习与连续代码相同的概念(图4a),另外InfoGAN还可以使用单个连续代码连续插入不同宽度的类似椅子类型(图4b)。在本实验中,我们选择用四个分类代码c1,c2,c3,c4对潜在因子进行建模。c1, c2, c3, c4 Cat(K = 20, p = 0.05)和一个连续码c5~Unif(-1,1)。

       接下来,我们对Street View House Number(SVHN)数据集进行InfoGAN评估,因为它是嘈杂的,而且含有可变分辨率和分离的数字的图像,因此学习一个可解释的表示更具挑战性,并且它没有相同的多个变体。在本实验中,我们利用四个10维分类变量和两个均匀连续变量作为潜在代码。我们在图5中显示了两个学习的潜在因素。

       最后,我们在图6中显示,InfoGAN能够在另一个具有挑战性的数据集上学习许多视觉概念:CelebA ,其中包含200,000名具有较大姿态变化和背景混乱的名人图像。在这个数据集中,我们将潜在变量建模为10个统一的分类变量,每个维度都是10。令人惊讶的是,即使在这个复杂的数据集中,InfoGAN也可以像3D图像那样恢复方位角,即使在这个数据集中,多个姿势位置没有单个面。此外,InfoGAN可以解决其他高度语义的变化,如存在或不存在眼镜,发型和情感,表明在没有任何监督的情况下获得一定程度的视觉理解。

8 Conclusion

       本文介绍了一种称为信息最大化生成对抗网络(InfoGAN)的表示学习算法。 与之前的需要监督的方法相比InfoGAN完全没有监督,可以在具有挑战性的数据集上学习可解释和分解的表示。 另外,InfoGAN在GAN之上只增加了微不足道的计算成本,并且易于训练。 利用互信息诱导表征的核心思想可以应用于其他方法,如VAE,这是未来工作的一个具有前景的领域。这项工作的其他可能的扩展包括:学习分层潜在的表示,用更好的代码改善半监督学习,并使用InfoGAN作为一个高维数据发现工具。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 151,829评论 1 331
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 64,603评论 1 273
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 101,846评论 0 226
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 42,600评论 0 191
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 50,780评论 3 272
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 39,695评论 1 192
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,136评论 2 293
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 29,862评论 0 182
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,453评论 0 229
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 29,942评论 2 233
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,347评论 1 242
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 27,790评论 2 236
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,293评论 3 221
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,839评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,448评论 0 181
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 34,564评论 2 249
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 34,623评论 2 249

推荐阅读更多精彩内容