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

摘要

本文描述了InfoGAN,它是生成对抗网络的信息论扩展,能够以完全无监督的方式学习分解表征。 InfoGAN是一种生成对抗网络,它还可以最大化潜在变量的一小部分与观察之间的互信息。 我们得出了可以有效优化的互信息目标的下界。 具体来说,InfoGAN成功解开了MNIST数据集中数字形状的写作风格,3D渲染图像的照明姿势以及SVHN数据集中心数字的背景数字。 它还发现了视觉概念,包括发型,眼镜的存在/不存在以及CelebA面部数据集上的情绪。 实验表明,InfoGAN学习可解释的表示,这些表示与现有监督方法学习的表示形成竞争。

引言

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

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

无监督学习研究的很大一部分是由生成建模驱动的。它的动机是认为合成或“创造”观察数据的能力需要某种形式的理解,并且希望一个好的生成模型能够自动学习一个分解表征,即使它很容易用任意不良表示构建完美的生成模型。最突出的生成模型是变分自动编码器(VAE)[3]和生成性对抗网络(GAN)[4]。

在本文中,我们对生成对抗网络的目标进行了简单的修改,鼓励它学习可解释的和有意义的表示。我们通过最大化GAN噪声变量的一个固定小子集与观测值之间的互信息来实现,结果是相对简单的。尽管它很简单,我们发现我们的方法非常有效:它能够在许多图像数据集上发现高阶语义和有意义的潜在表示:数字(MNIST),面部(CelebA)和门牌号码(SVHN)。我们的无监督分解表征的质量与使用监督标签信息的先前工作相匹配[5-9]。这些结果表明,增加互信息损失的生成建模可能是学习分解表征的有效方法。

在本文的其余部分,我们首先回顾相关工作,注意以前学习分解表征的方法所需的监督。然后我们回顾一下GAN,这是InfoGAN的基础。我们描述了如何最大化互信息产生可解释的表示,并导出一个简单而有效的算法。最后,在实验部分,我们首先将InfoGAN与在相对干净的数据集上的先前方法进行比较,然后表明InfoGAN可以在复杂数据集上学习可解释的表示,其中没有先前的无监督方法可以学习与我们方法相当的表示。

相关工作

在无监督表示学习方面存在大量工作。早期的方法基于堆叠(通常是去噪)自动编码器或限制Boltzmann机[10-13]。许多有前景的近期工作起源于Skip-gram模型[14],它启发了skip-thought vectors[15]和几种无监督的图像特征学习技术[16]。

另一个有趣的工作包括梯形网络[17],它在MNIST数据集的半监督变体上取得了惊人的成果。最近,基于VAE的模型在MNIST上获得了更好的半监督结果[18]。 GANs [4]已被Radford等人[19]使用去学习支持编码空间基本线性代数的图像表示。 Lake等 [20]已经能够使用贝叶斯程序的概率推理来学习表示,这使得在OMNI数据集上获得令人信服的一次性学习结果。

此外,先前的研究试图使用监督数据来学习分解表征。一类这样的方法使用监督学习训练一个表示的子集以匹配所提供的标签:双线性模型[21]分离样式和内容;多视图感知器[22]分离面部身份和观点;杨等人[23]开发了一种循环的变体,它产生一系列潜在因子转化。类似地,VAE [5]和对抗性自动编码器[9]被证明可以学习从其他变体分离的类标签的表示。

最近开发了几种弱监督方法,以消除明确地标记变异的需要。 disBM [24]是一种高阶Boltzmann机,它通过“钳制”一部分隐藏单元来学习分解表征,它对与成对数据点已知在除了一个变化因素之外的所有数据点中都匹配。 DC-IGN [7]将这种“钳制”理念扩展到VAE并成功学习可以表示3D渲染图像中的姿势和光的图形编码。这一系列工作产生了令人印象深刻的结果,但它们依赖于通常无法获得的监督数据分组。惠特尼等人[8]提出通过从连续的图像帧中学习并使用时间连续性作为监督信号来减轻分组要求。

与之前引用的努力恢复分解表征的工作不同,InfoGAN不需要任何形式的监督。据我们所知,唯一一种学习解开表征的无监督方法是hossRBM [13],这是一种能够解决多伦多人脸数据集中分离情感的尖峰和平板限制玻尔兹曼机器的高阶扩展[25]。然而,hossRBM只能分解离散的潜在因子,并且其计算成本在因子数量上呈指数增长。 InfoGAN可以分解离散和连续的潜在因子,扩展到复杂的数据集,并且通常不需要比常规GAN更多的训练时间。

背景:生成对抗网络

Goodfellow等人[4]介绍了Generative Adversarial Networks(GAN),这是一个使用minimax游戏训练深度生成模型的框架。 目标是学习与实际数据分布匹配的生成器分布。 GAN不是试图明确地将概率分配给数据分布中的每个x,而是学习生成器网络G,其通过将噪声变量变换为样本G(z)来从生成器分布生成样本。 通过对抗对抗性鉴别器网络D来训练该生成器,所述对抗性鉴别器网络D旨在区分来自真实数据分布和发生器分布的样本。 因此对于给定的生成器,最佳鉴别器是。 更正式的是,minimax游戏由以下表达式给出:

为潜在编码引入互信息

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

然而,许多领域自然地分解成一组语义上有意义的变化的因子·。例如,当从MNIST数据集生成图像时,如果模型自动选择分配离散随机变量来表示数字的数字标识(0-9),并选择两个额外的连续变量来表示数字笔迹的角度和宽度,这样可能是理想的。在这种情况下,这些属性既独立又突出,如果我们可以在没有任何监督的情况下恢复这些概念是有用的,只需指定一个独立的1-of-10变量和两个独立的连续变量生成MNIST数字。

在本文中,我们建议将输入噪声矢量分解为两部分,而不是使用单个非结构化噪声矢量:(i)z,它被视为不可压缩噪声的来源; (ii)c,我们将其称为潜在编码,并将针对数据分布的显著结构化语义特征。

在数学上,我们用表示结构化潜在变量的集合。在其最简单的形式中,我们可以假设一个因式分布,由给出。为了便于表示,我们将使用潜在编码c来表示所有潜在变量的级联。

我们现在提出一种以无人监督的方式发现这些潜在因子的方法:我们为生成器网络提供不可压缩噪声z和潜在码c,因此生成器的形式变为G(z,c)。然而,在标准GAN中,通过找到满足的解,发生器可以自由地忽略附加的潜在编码c。为了解决平凡编码的问题,我们提出了一种信息论正则化:潜在编码c和生成器分布G(z,c)之间应该有很高的互信息。因此应该很高。

在信息论中,X和Y之间的互信息,测量从随机变量Y的知识中学习的关于另一个随机变量X的“信息量”。互信息可以表示为两个熵项的差异:

这个定义有一个直观的解释:I(X; Y)是观察到Y时X的不确定性的减少。 如果X和Y是独立的,那么I(X; Y)= 0,因为知道一个变量对另一个变量一无所知; 相反,如果X和Y通过确定的,可逆的函数相关,则获得最大互信息。 这种解释使得制定损失变得容易:给定任何,我们希望具有小的熵。 换句话说,潜在编码c中的信息不应该在生成过程中丢失。 在聚类的背景下,之前已经考虑过类似的互信息启发目标[26-28]。 因此,我们建议解决以下信息 - 正则化的极小极大游戏:

变分互信息最大化

在实践中,互信息项难以直接最大化,因为它需要访问后验P(c | x)。 幸运的是,通过定义辅助分布Q(c | x)来逼近P(c | x),我们可以得到它的下界:

这种下界互信息技术称为变分信息最大化[29]。 我们还注意到潜在编码H(c)的熵也可以优化,因为对于常见分布,它具有简单的分析形式。 然而,在本文中,我们通过修复潜在的编码分布来选择简单性,我们将H(c)视为常量。 到目前为止,我们已经绕过了必须通过这个下限明确计算后验P(c | x)的问题,但我们仍然需要能够从内部期望中的后验进行采样。 接下来,我们陈述一个简单的引理,其证据推迟到附录,从而无需从后验采样。

Lemma 5.1 对于任意变量X,Y和函数在适当的正则化条件下:

通过使用Lemma A.1,我们定义一个变化的下界,,互信息,

我们注意到很容易用蒙特卡罗模拟近似。 特别是,可以最大化 w.r.t Q直接地和 w.r.t. G通过重新参数化技巧。 因此,可以添加到GAN的目标而不改变GAN的训练过程,我们称之为最终算法信息最大化生成对抗网络(InfoGAN)。 方程(4)表明,当辅助分布Q接近真正的后验分布时,下界变得紧密:。此外,我们知道 当变分下界达到离散潜在编码的最大值时,界限变得紧密并达到最大互信息。 在附录中,我们注意到InfoGAN如何连接到唤醒 - 睡眠算法[30]以提供替代解释。 因此,InfoGAN被定义为具有互信息和超参数λ的变分正则化的以下极小极大游戏:

实施

在实践中,我们将辅助分布Q参数化为神经网络。在大多数实验中,Q和D共享所有卷积层,并且存在一个最后的全连接层以输出条件分布Q(c | x)的参数,这意味着InfoGAN仅向GAN添加可忽略的计算成本。我们还观察到总是比正常的GAN目标更快收敛,因此InfoGAN基本上是免费的GAN。

对于分类潜在码,我们使用softmax非线性的自然选择来表示。对于连续潜在代码,根据什么是真正的后验,有更多选项。
在我们的实验中,我们发现简单地将视为因式高斯是足够的。

即使InfoGAN引入了额外的超参数λ,它也很容易调整,简单地设置为1就足以支持离散的潜在编码。当潜在编码包含连续变量时,通常使用较小的λ来确保现在涉及差分熵的与GAN目标处于相同的比例。
由于已知GAN难以训练,我们基于DC-GAN [19]引入的现有技术设计我们的实验,这足以稳定InfoGAN训练,我们不必引入新技巧。详细的实验设置在附录中描述。

实验

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

互信息最大化

为了评估潜在代码c和生成的图像G(z,c)之间的互信息是否可以通过所提出的方法有效地最大化,我们在MNIST数据集上训练InfoGAN,在潜在代码上具有统一的分类分布。在图1中,下界快速最大化为,这意味着边界(4)是紧密的并且实现了最大的互信息。

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

分解表征

。。。。。

InfoGAN 翻译相关推荐

  1. 经典论文复现 | InfoGAN:一种无监督生成方法

    过去几年发表于各大 AI 顶会论文提出的 400 多种算法中,公开算法代码的仅占 6%,其中三分之一的论文作者分享了测试数据,约 54% 的分享包含"伪代码".这是今年 AAAI ...

  2. ML Mastery 博客文章翻译(二)20220116 更新

    Machine Learning Mastery 计算机视觉教程 通道在前和通道在后图像格式的温和介绍 深度学习在计算机视觉中的 9 个应用 为 CNN 准备和扩充图像数据的最佳实践 8 本计算机视觉 ...

  3. A State-of-the-Art Survey on Deep Learning Theory and Architectures论文翻译分析

    A State-of-the-Art Survey on Deep Learning Theory and Architectures 摘要 近年来,深度学习在各种应用领域取得了巨大成功.机器学习这一 ...

  4. 【CVPR2020 论文翻译】 | Explaining Knowledge Distillation by Quantifying the Knowledge

    本篇基于有道翻译进行翻译的.为了自己阅读翻遍, 公式部分处理不太好. 论文原文链接:https://arxiv.org/abs/2003.03622 Abstract 本文提出了一种通过对深度神经网络 ...

  5. GAN生成对抗网络论文翻译(二)

    英语论文,每天翻译一节(在家自学控制力还是太差),纯属自己翻译,小白一只,如果您能提出建议或者翻译修改,将非常感谢,首先谢谢! 2 Generative Adversarial Networks As ...

  6. InfoGAN论文理解及复现

    InfoGAN论文理解及复现 by AHU Random_Walker 主要从四个方面来了解相关工作,即 Motivation Related Work-Method Experiments Conc ...

  7. Paper之BigGAN:《Large Scale Gan Training For High Fidelity Natural Image Synthesis》翻译与解读

    Paper之BigGAN:<Large Scale Gan Training For High Fidelity Natural Image Synthesis>翻译与解读 目录 效果 1 ...

  8. Mysql函数group_concat、find_in_set 多值分隔字符字段进行数据库字段值翻译

    Mysql函数group_concat.find_in_set进行数据库字段值翻译 场景 配方表:记录包含的原料 sources表示原料,字段值之间用逗号分隔 原料表:对应原料id和原料名称 现需要查 ...

  9. “Attention is All You Need 翻译

    <p><img src="output_0_0.png" alt="png"></p> "Attention is ...

  10. 基于PyTorch的Seq2Seq翻译模型详细注释介绍(一)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qysh123/article/deta ...

最新文章

  1. UVALive - 3902 Network
  2. 帮我看看这点破事 EVENT
  3. C# 校验帮助类-正则表达式
  4. MySQL之 从复制延迟问题排查
  5. asp.net core mvc接口,请求响应统一日志管理
  6. oracle自增自删分区的脚本,oracle实现自增方法(错误ora-04098解决)
  7. java 实现压缩zip的几种方案
  8. 玩玩机器学习5——构造单层神经网络解决非线性函数(三次函数)的曲线拟合
  9. 想了解 spring-cloud-kubernetes,那就先来实战一把官方demo
  10. 为什么你拼命学,却一无所成?
  11. 云终端要如何和服务器配置起来使用的
  12. HLSL Effect的vertex shader和pixel shader的参数传递
  13. 电商系统购物车流程图
  14. facebook登陆,如何邀请玩家成为测试人员
  15. Python自动登录校园网
  16. Rain on your Parade(二分图匹配-Hopcroft-Carp算法)
  17. 服务器被大流量攻击该怎么办
  18. Linux中EXT3与EXT4的区别!
  19. AI人工智能机器人教室方案(含全套配置)
  20. 设计模式中的solid原则

热门文章

  1. dmg为什么下载成php,解答:dmg是什么意思,dmg文件如何打开,及怎么把dmg转换成iso
  2. windos读写ext3工具_“ ext2fsd” Windows系统工具,用于读写ext2 / 3/4文件系统
  3. 人工智能机器学习模型构建数据集猫狗数据集(cats_and_dogs_filtered.zip)数据集百度网盘下载地址
  4. 易语言c语言哪个做游戏脚本,游戏简易脚本制作教程
  5. win7 升级IE11报错(无法安装)
  6. oracle 常用函数
  7. 电视盒子为啥不安装鸿蒙,电视盒子视频播放不了怎么办?只需三步轻松解决!...
  8. java异常体系简介
  9. 华为eNSP的基础入门实验
  10. 【C语言开源库】C语言开源库zlog的使用