本文是InfoGAN的翻译,原文地址:https://arxiv.org/abs/1606.03657
相当一部分部分翻译参照于:https://blog.csdn.net/pingguolou/article/details/72920970
本文介绍了InfoGAN,它是一种对生成对抗网络的信息理论扩展,能够以完全无监督的方式学习特征分离表示。 InfoGAN也是一个生成对抗网络,它能最大化潜在变量的一小部分与观察(生成)结果之间的互信息。作者得出了一种可以有效优化的互信息目标的下界。具体来说,InfoGAN成功地从MNIST数据集中提取了手写数字的风格,从有照明的3D渲染图中提取了目标的姿势,从SVHN数据集中提取了房屋号码。InfoGAN还能够发掘发型、是否存在眼镜、CelebA面部数据集上的表情等视觉概念。实验表明,InfoGAN可以学习与现有监督方法学习得到了具有竞争力的可解释性表征。
无监督学习一般可以被描述为从大量存在的未标记数据中提取数值的问题。无监督学习的流行框架是表征学习 [1,2] ,其目标是使用未标记的数据来学习一种表示,以从重要语义特征中找到易于解释的要素。学习这种表征的方法是可能存在的[2],并且对于许多下游任务(包括分类,回归,可视化,和强化学习的策略学习)是有用的。
虽然无监督的学习是病态的(不一定正确)的,因为相关的下游任务在训练时期是未知的,但是特征分离的表示(一个数据实例的显著属性的明确表示)应该对相关但未知的任务有帮助。例如,对于面部数据集,有用的分解的表示可以为以下每个属性分配一组单独的维度:面部表情,眼睛颜色,发型,眼镜的存在与否,以及相应人物的身份。特征分离的表示对于需要知道数据的显著属性的自然任务可能是有用的,包括面部识别和对象识别等任务。非自然的监督任务,例如去确定图像中的红色像素的数量是偶数还是奇数。因此,无监督学习算法必须对下游分类任务有正确的效果(在不直接接触下游任务的情况下)。
无监督学习研究的很大一部分是由生成模型驱动的。它们的动力源于对生成模型能力的相信,或为观察数据“创造”某种形式的理解,并希望良好的生成模型能自动学习一个有区分度的表示,即便通过随便一个不好的表示也容易构造完美的生成模型。最突出的生成模型是变分自动编码器(VAE)[3]和生成对抗网络(GAN)[4]。
本文对生成对抗网络目标进行了简单的修改,鼓励其学习可解释和有意义的表示。通过最大化GAN噪声变量的固定小子集与观测值之间的互信息来实现,这一点相对比较直观。尽管它很简单,但这个方法惊人的有效,它能够在许多图像数据集中发现高度语义和有意义的隐藏表示:数字(MNIST),面孔(CelebA),和房屋号码(SVHN)。作者将本文无监督的特征分离表示的质量与先前使用的有监督标签信息[5-9]相比较。比较结果表明,增加互信息成本的生成模型是学习特征表示的有效途径。
在本文的其余部分,首先对相关工作进行回顾,并注意到以前用于学习特征分离表示的方法所需要的监督。然后回顾了GAN,它是InfoGAN的基础。之后描述如何最大化互信息来实现可解释的表示,并导出一个简单而有效的算法。最后,在实验部分中,首先将InfoGAN在相对干净的数据集上与先前方法进行比较,然后显示InfoGAN可以在复杂数据集上学习可解释的表示,没有已知的无监督方法可以学习到与本文可比质量的表示。
现在存在大量关于无监督表示学习的工作。早期的方法是基于堆叠的(通常是去噪)自动编码器或受限玻尔兹曼机[10-13]。很多有前景的近期工作源自Skip-gram模型[14],这启发了skip-thought vectors[15]和几种图像无监督特征学习技术的发展[16]。
另一个有趣的工作包括阶梯网络[17],它在MNIST数据集的半监督变学习上取得了惊人的成果。最近,基于VAE的模型在MNIST上实现了更好的半监督结果[18]。 Radford等[19]已经使用GAN[4]来学习支持编码空间上的基本的线性的代数图像表示。 Lake等已经能够使用对贝叶斯规划的概率推理来学习一些表示,这在OMNI数据集上实现了令人信服的one-shot学习结果。
此外,先前的研究试图使用监督数据来学习分离的特征表示。一类方法是使用监督学习训练表示的一部分来匹配所提供的标签:用于分离样式和内容得到双线性模型[21];用于分离视觉特征与视点的多视觉感知器[22];杨等人[23]开发了一种产生潜在因素变换的递归变体。类似地,VAE[5]和对抗自动编码器[9]被用于学习特征表示,其中类标签与其他变量分离。
最近开发了几种弱监督方法来消除对明确标记变量的需要。disBM[24]是一种更高阶的玻尔兹曼(Boltzmann)机,它通过为一对数据点进行“钳住”隐藏单元的一部分来学习有区分度的表示。DC-IGN[7]将这种“钳住”的理念扩展到VAE,并成功地学习了可以在3D渲染图像中表示姿态和光的图形编码。这一系列工作产生了令人印象深刻的成果,但它们依赖于通常不可用的数据的监督分组。惠特尼等人[8]提出通过从连续的图像帧学习并使用时间连续性作为监督信号来减轻分组的要求。
不同于所引用的那些努力恢复有分离性的表示的工作,InfoGAN不需要任何形式的监督。唯一的其他无监督学习有区分度表示的方法是hossRBM[13],一种限制玻尔兹曼机的高阶扩展可以在多伦多面部数据集[25]上解析出情感与身份[25]的特征。然而,hossRBM只能分离开离散潜在因素,其计算成本随着因素的数目呈指数增长。InfoGAN可以分离离散和连续的潜在因素,扩展到复杂的数据集,并且通常不需要比常规GAN更多的训练时间。
Goodfellow等提出了生成对抗网络[4],一种使用minimax游戏来学习深度生成模型的框架。它的目标是学习能够匹配真实数据分布 P d a t a ( x ) P_{data}(x) Pdata(x) 的生成数据分布 P G ( x ) P_G(x) PG(x) 。与明确的为每个数据分布中的样本点 x x x 分配概率不同,生成对抗网络学习一种生成器 G G G , G G G 能通过变换噪声 z ∼ P n o i s e ( z ) z\sim P_{noise}(z) z∼Pnoise(z) 来生成分布 P G P_G PG 中的样本。生成器的训练过程是通过与能够区分从 P d a t a P_{data} Pdata 所产生的原始样本和从 P G P_G PG 生成数据的判别网络 D D D 的对抗来实现的。最优的判别器是 D ( x ) = P d a t a ( x ) P d a t a ( x ) + P G ( x ) D(x)=\frac {P_{data}(x)} {P_{data}(x)+P_G(x)} D(x)=Pdata(x)+PG(x)Pdata(x) 。
从形式上来说,minimax游戏的过程可以通过以下公式描述:
(1) min G max D V ( G , D ) = E x ∼ P d a t a [ log D ( x ) ] + E z ∼ n o i s e [ log ( 1 − D ( G ( z ) ) ) ] \min_G\max_D V(G,D)=\mathbb E_{x\sim P_{data}}[\log D(x)]+\mathbb E_{z\sim noise}[\log(1-D(G(z)))]\tag{1} GminDmaxV(G,D)=Ex∼Pdata[logD(x)]+Ez∼noise[log(1−D(G(z)))](1)
GAN公式使用简单因素的连续噪声输入向量 z z z ,而不对生成器可能使用该噪声的方式施加限制。结果,生成器可能以高度纠结的方式使用噪声,导致 z z z 的各个维度不对应于数据的语义特征。
然而,许多定义域可以自然而然地分解成一组具有语义意义的变量因子。例如,当从MNIST数据集生成图像时,如果模型自动选择分配一个离散随机变量来表示数字(0-9)的数字标识,选择两个可加的连续变量来代表数字角度和笔画厚度。在这种情况下,这些属性是独立的和显著的,如果可以无监督的从独立的1到10变量和两个独立的连续性变量恢复MNIST数字,那么这些属性就是有用的。
本文作者提出将输入噪声向量分成为两部分:
(i) z z z ,被视为不可压缩的噪声源;
(ii) c c c ,将其称为潜在代码,其目的在于数据分布的显著结构化的语义特征。
在数学上,用 c 1 , c 2 , . . . , c L c_1,c_2,...,c_L c1,c2,...,cL 表示结构化潜在变量的集合。在其最简单的形式中,可以假设一个因式分布,由 P ( c 1 , c 2 , . . . , c L ) = Π i = 1 L P ( c i ) P(c_1,c_2,...,c_L)= \Pi_{i=1}^L P(c_i) P(c1,c2,...,cL)=Πi=1LP(ci) 给出。为了便于表示,使用潜在代码 c c c 来表示所有潜在变量 c i c_i ci 的联合。
作者提出一种以无监督的方式发现这些潜在因子的方法:为生成器网络提供不可压缩噪声 z z z 和潜在编码 c c c ,因此生成器的形式变为 G ( z , c ) G(z,c) G(z,c) 。然而,在标准GAN中,通过找到满足 P G ( x ∣ c ) = P G ( x ) P_G(x|c)= P_G(x) PG(x∣c)=PG(x) 的解,生成器可以自由地忽略附加潜在代码 c c c 。为了解决潜在编码平凡化的问题,作者提出了一种基于信息论的正则化方法:潜在码 c c c 和生成分布 G ( z , c ) G(z,c) G(z,c) 之间应该有很高的互信息。因此 I ( c ; G ( z , c ) ) I(c;G(z,c)) I(c;G(z,c)) 应该很高。
在信息论中,X和Y之间的互信息 I ( X ; Y ) I(X;Y) I(X;Y) 测量从随机变量Y的知识中学习的关于另一个随机变量X的“信息量”。互信息可以表示为两个熵项的差值:
(2) I ( X ; Y ) = H ( X ) − H ( X ∣ Y ) = H ( Y ) − H ( Y ∣ X ) I(X;Y)=H(X)-H(X|Y)=H(Y)-H(Y|X)\tag{2} I(X;Y)=H(X)−H(X∣Y)=H(Y)−H(Y∣X)(2)
这个定义有一个直观的解释: I ( X , Y ) I(X,Y) I(X,Y) 是观察到 Y Y Y 时, X X X 的不确定性的减少量。如果 X X X 和 Y Y Y 是独立的,那么 I ( X ; Y ) = 0 I(X;Y)=0 I(X;Y)=0 ,因为一个变量与另一个变量毫无关系;相反,如果X和Y通过确定性可逆函数相关,则获得最大互信息。这种解释使得制定代价函数的公式变得容易:给定任何 x P G ( x ) x~P_G(x) x PG(x) ,希望 P G ( c ∣ x ) P_G(c|x) PG(c∣x) 具有小的熵。换句话说,潜在码 c c c 中的信息不应该在生成过程中丢失。在聚类的背景下,之前已经有过类似的互信息启发目标函数[26-28]。因此,本文建议通过以下信息正规化的minimax游戏来解决问题:
(3) min G max D V I ( D , G ) = V ( D , G ) − λ I ( c ; G ( z , c ) ) \min_G\max_DV_I(D,G)=V(D,G)-\lambda I(c;G(z,c))\tag{3} GminDmaxVI(D,G)=V(D,G)−λI(c;G(z,c))(3)
在实践中,互信息项 I ( c ; G ( z , c ) ) I(c;G(z,c)) I(c;G(z,c)) 难以直接最大化,因为它先得到后验概率 P ( c ∣ x ) P(c|x) P(c∣x) 。幸运的是,通过定义辅助分布 Q ( c ∣ x ) Q(c|x) Q(c∣x) 来逼近 P ( c ∣ x ) P(c|x) P(c∣x) ,可以得到它的下界:
(4) I ( c ; G ( z , c ) ) = H ( c ) − H ( c ∣ G ( z , c ) ) = E x ∼ G ( z , c ) [ E c ′ ∼ P ( c ∣ x ) [ log P ( c ′ ∣ x ) ] ] + H ( c ) = E x ∼ G ( z , c ) [ D K L ( P ( ⋅ ∣ x ) ∣ ∣ Q ( ⋅ ∣ x ) ) + E c ′ ∼ P ( c ∣ x ) [ log Q ( c ′ ∣ x ) ] ] + H ( c ) ≥ E x ∼ G ( z , c ) [ E c ′ ∼ P ( c ∣ x ) [ log Q ( c ′ ∣ x ) ] ] + H ( c ) I(c;G(z,c))=H(c)−H(c|G(z,c))=\mathbb E_{x∼G(z,c)}[\mathbb E_{c'\sim P(c|x)} [\log P(c'|x)]]+H(c)\\=\mathbb E_{x∼G(z,c)}[D_{KL}(P(·|x)||Q(·|x))+\mathbb E_{c'∼P(c|x)}[\log Q(c'|x)]] + H(c)\\≥\mathbb E_{x∼G(z,c)}[\mathbb E_{c'∼P(c|x)}[\log Q(c'|x)]]+H(c)\tag{4} I(c;G(z,c))=H(c)−H(c∣G(z,c))=Ex∼G(z,c)[Ec′∼P(c∣x)[logP(c′∣x)]]+H(c)=Ex∼G(z,c)[DKL(P(⋅∣x)∣∣Q(⋅∣x))+Ec′∼P(c∣x)[logQ(c′∣x)]]+H(c)≥Ex∼G(z,c)[Ec′∼P(c∣x)[logQ(c′∣x)]]+H(c)(4)
这种对互信息取下界的技术被称为变分信息最大化[29]。潜在编码 H ( c ) H(c) H(c) 的熵也可以优化,因为对于常见分布,它具有简单的分析形式。然而,在本文中,通过修复潜在编码分布来选择简化的表示,并将 H ( c ) H(c) H(c) 视为常量。到目前为止,作者已经绕过了必须通过这个下限明确计算后验 P ( c ∣ x ) P(c|x) P(c∣x) 的问题,但仍然需要能够从内部期望中的后验进行采样。接下来陈述一个简单的引理,其证明在附录中。这个引理使得对的后验采样变得不必要。
引理5.1 对随机变量 X , Y X,Y X,Y 和函数 f ( x , y ) f(x,y) f(x,y) ,在合适的规则条件下: E x ∼ X , y ∼ Y ∣ x [ f ( x , y ) ] = E x ∼ X , y ∼ Y ∣ x , x ′ ∼ X ∣ y [ f ( x ′ , y ) ] . \mathbb E_{x\sim X, y\sim Y|x}[f(x,y)]=\mathbb E_{x\sim X,y\sim Y|x,x'\sim X|y}[f(x',y)]. Ex∼X,y∼Y∣x[f(x,y)]=Ex∼X,y∼Y∣x,x′∼X∣y[f(x′,y)].
通过使用 引理A.1 作者可以定义互信息 I ( c ; G ( z , c ) ) I(c;G(z,c)) I(c;G(z,c)) 变分的下界 L I ( G , Q ) L_I(G,Q) LI(G,Q) :
(5) L I ( G , Q ) = E c ∼ P ( c ) , x ∼ G ( z , c ) [ log Q ( c ∣ x ) ] + H ( c ) = E x ∼ G ( z , c ) [ E c ′ ∼ P ( c ∣ x ) [ log Q ( c ′ ∣ x ) ] ] + H ( c ) ≤ I ( c ; G ( z , c ) ) L_I(G,Q)=E_{c\sim P(c), x\sim G(z,c)}[\log Q(c|x)]+H(c)=E_{x\sim G(z,c)}[\mathbb E_{c'\sim P(c|x)}[\log Q(c'|x)]]+H(c)\\\leq I(c;G(z,c))\tag{5} LI(G,Q)=Ec∼P(c),x∼G(z,c)[logQ(c∣x)]+H(c)=Ex∼G(z,c)[Ec′∼P(c∣x)[logQ(c′∣x)]]+H(c)≤I(c;G(z,c))(5)
注意到 L I ( G , Q ) L_I(G,Q) LI(G,Q) 很容易用蒙特卡罗模拟近似。 特别是,可以对于 Q Q Q 和 G G G 使用重参数化技巧将 L I L_I LI 最大化。 因此, L I ( G , Q ) L_I(G,Q) LI(G,Q) 可以添加到GAN的目标而不改变GAN的训练过程,作者称之为信息最大化生成对抗网络(InfoGAN)。
公式(4) 表明,当辅助分布 Q Q Q 接近真实的后验分布 E x [ D K L P ( ⋅ ∣ x ) ∣ ∣ Q ( ⋅ ∣ x ) ) ] → 0 \mathbb E_x[D_{KL}P(·|x)||Q(·|x))]→0 Ex[DKLP(⋅∣x)∣∣Q(⋅∣x))]→0 时,下限变紧了。另外,当变分下界达到离散潜码的最大值 L I ( G , Q ) = H ( c ) L_I(G,Q)= H(c) LI(G,Q)=H(c) 时,边界变紧并且达到最大互信息。在附录中提到InfoGAN如何与Wake-Sleep算法[30]联系以提供替代解释。
因此,InfoGAN被定义为具有互信息和超参数λ的变分正则化的以下minimax游戏:
(6) min G , Q max D V I n f o G A N ( D , G , Q ) = V ( D , G ) − λ L I ( G , Q ) \min_{G,Q}\max_D V_{InfoGAN}(D,G,Q)=V(D,G)-\lambda L_I(G,Q)\tag{6} G,QminDmaxVInfoGAN(D,G,Q)=V(D,G)−λLI(G,Q)(6)
在实现中,作者将辅助分布 Q Q Q 参数化为神经网络。 在大多数实验中, Q Q Q 和 D D D 共享所有卷积层,并且存在一个最终完全连接的层以输出条件分布 Q ( c ∣ x ) Q(c|x) Q(c∣x) 的参数,这意味着InfoGAN仅向GAN添加了可忽略的计算成本。在实验中, L I ( G , Q ) L_I(G,Q) LI(G,Q) 总是比正常的GAN目标更快收敛,因此InfoGAN基本上是对GAN的一种“解脱”。
对于分类的潜在代码 c i c_i ci ,作者使用非线性softmax来表示 Q ( c i ∣ x ) Q(c_i|x) Q(ci∣x)。对于连续潜在代码 c j c_j cj ,根据真正的后验概率 P ( c j ∣ x ) P(cj|x) P(cj∣x) ,有更多的选项。本文的实验中简单地将 Q ( c j ∣ x ) Q(c_j|x) Q(cj∣x) 作为因子化的高斯来处理就足够了。
即使InfoGAN引入了一个额外的超参数 λ \lambda λ ,对于离散的潜在代码,它很容易调整,简单地设置为1就足够。当潜在编码包含连续变量时,较小的 λ \lambda λ 通常用于确保包含差分熵的 L I ( G , Q ) L_I(G,Q) LI(G,Q) 的规模与GAN目标的规模相同。
由于GAN难以训练,作者基于DC-GAN[19]介绍的现有技术设计实验,这些技术足以稳定InfoGAN的训练,而且不必引入新的技巧。
实验的第一个目标是调查是否可以有效地最大化互信息。第二个目标是评估InfoGAN是否可以通过利用生成器一次仅改变一个潜在因子来学习有区分度的可解释的表示,以评估改变这样的因素是否导致生成的图像中只有一种类型的语义变化。 DC-IGN[7]也使用这种方法来评估他们在3D图像数据集上的学习表示,在这个基础上,作者应用InfoGAN与之直接比较。
为了评估潜在编码 c c c 和生成的图像 G ( z , c ) G(z,c) G(z,c) 之间的互信息是否可以通过提出的方法有效地最大化,作者在MNIST数据集上训练InfoGAN,对潜在编码 c c c 进行统一的分类分布 c ∼ C a t ( K = 10 , p = 0.1 ) c\sim Cat(K=10,p=0.1) c∼Cat(K=10,p=0.1) 。在 图1 中,下限 L I ( G , Q ) L_I(G,Q) LI(G,Q) 被快速最大化为 H ( c ) ≈ 2.30 H(c)\approx 2.30 H(c)≈2.30 ,这意味着下限 ( 4 ) (4) (4) 快速紧贴到到最大的互信息。
作为基准,当没有明确促使生成图像与潜在编码最大化的互信息时,作者还训练具有辅助分布 Q Q Q 的常规GAN。由于作者使用神经网络对 Q Q Q 进行参数化,假设 Q Q Q 可以合理地近似真实的后验概率 P ( c ∣ x ) P(c|x) P(c∣x) ,因此在常规GAN中潜在编码和生成图像之间几乎没有互信息。作者注意到,使用不同的神经网络架构,即使在实验中没有观察到这种情况,潜在代码和生成的图像之间可能存在更高的相互信息。这种比较是为了证明在常规GAN中,不能保证生成器能够利用潜在编码。
图1: L I L_I LI 的下界在训练过程中的变化。
为了从MNIST上的样式分离数字形状,作者选择使用一个分类代码 c 1 ∼ C a t ( K = 10 , p = 0.1 ) c_1\sim Cat(K=10,p=0.1) c1∼Cat(K=10,p=0.1) 对潜在代码进行建模,以模拟数据中的不连续变化,以及可以捕获本质上连续变化的两个连续码: c 2 , c 3 ∼ U n i f ( − 1 , 1 ) c_2,c_3\sim Unif(-1,1) c2,c3∼Unif(−1,1) 。
在 图2 中,作者证实了离散编码 c 1 c_1 c1 可以捕获形状的剧烈变化。更改分类代码 c 1 c_1 c1 在大多数时间之间可以切换数字。事实上,即使训练没有任何标签的InfoGAN, c 1 c_1 c1 也可以用作分类器,通过将 c 1 c_1 c1 中的每个类别与数字类型进行匹配,实现了对MNIST数字进行分类的5%错误率。比如在 图2a 的第二行,一个数字7被分类为了9。
连续代码 c 2 , c 3 c_2,c_3 c2,c3 捕获样式的连续变化: c 2 c_2 c2 控制旋转数字, c 3 c_3 c3 控制宽度。 令人惊奇的是,在这两种情况下,生成器不仅仅是拉伸或旋转数字,而是调整其他细节,如厚度或笔触样式,以确保所得到的图像是自然的。作为检查InfoGAN学习的潜在表示是否可泛化,作者以夸张的方式操纵潜在代码:不是将潜在代码从-1映射到1,把它从-2映射到2。在一个广泛的域内网络都从来没有接受过训练,本文的模型仍然能有意义的泛化。
图2: 在MNIST数据集上修正潜在的编码。在所有潜在代码操作的图中使用这样的约定,即每个潜在编码从左到右变化,而其他潜在编码和噪声是固定的。不同的行对应于固定潜在编码和不同随机样本的噪声。
在(a)中,一列包含来自 c 1 c_1 c1 中相同类别的五个样本,一行显示 c 1 c_1 c1 中10个可能类别的生成图像,其他噪声是固定的。
在(a)中, c 1 c_1 c1 中的每个类别主要对应于一个数字类型;
在(b)中,在没有信息正规化的情况下训练的GAN上改变 c 1 c_1 c1 导致不可解释的变化;
在(c)中,小的 c 2 c_2 c2 表示左倾数字,大的 c 2 c_2 c2 对应右倾数字;
在(d)中, c 3 c_3 c3 平滑地控制宽度。
作者为了可视化目的重新排序了(a),因为分类代码本质上是无序的。
接下来,对3D图像的两个数据集:面部[31]和椅子[32]评估InfoGAN,在DC-IGN能学到可解释图形编码的数据集上。
在面部数据集上,DC-IGN通过使用监督学习将表示为方位角(姿势),仰角和照明等潜在因素看做连续潜在变量。使用相同的数据集,文中展示了InfoGAN学习了一个有区分度的表示,可恢复同一数据集上的方位角(姿态),仰角和照明。在这个实验中选择五个连续编码对潜在编码进行建模, c i ∼ U n i f ( − 1 , 1 ) , 1 ≤ i ≤ 5 c_i\sim Unif(-1,1),1\leq i\leq 5 ci∼Unif(−1,1),1≤i≤5 。
由于DC-IGN需要监督,以前无法学习未标记的变体的潜在代码,因此无法从数据中自动发现显着的潜在可变因素。相比之下,InfoGAN能够自己发现这样的变化:例如,在 图3d 中,即使在以前的工作中不明确地生成或标记了该变量,也会学习将面部从宽到平滑地变化为窄的潜在编码。
图3: 在三维脸数据集上修改潜在编码。为了显示学习的连续潜在因素对输出的影响(它们的值在-1到1之间变化)。
在(a)中表示其中一个连续的潜码始终捕捉不同形状的面的方位角;
在(b)中,连续代码捕获仰角变化;
在(c)中,连续代码捕获照明的方向;
最后在(d)中,连续代码学习在宽脸和窄脸之间进行插值,同时保留其他视觉特征。
对每个因素,取与先前监督学习方法[7]的5次随机运行的结果中最相似的直接进行比较。
在椅子数据集上,DC-IGN可以学习代表旋转的连续编码。InfoGAN再次能够学习与连续代码相同的概念(图4a),另外InfoGAN还可以使用单个连续代码连续插入不同宽度的类似椅子类型(图4b)在本实验中,选择用四个分类代码 c 1 , c 2 , c 3 , c 4 c_1,c_2,c_3,c_4 c1,c2,c3,c4 对潜在因子进行建模。 c 1 , c 2 , c 3 , c 4 ∼ ( K = 20 , p = 0.05 ) c_1,c_2,c_3,c_4\sim (K=20,p=0.05) c1,c2,c3,c4∼(K=20,p=0.05) 和一个连续码 c 5 ∼ U n i f ( − 1 , 1 ) c_5\sim Unif(-1,1) c5∼Unif(−1,1) 。
图4: 操纵3D椅子上的潜在编码。
在(a)中,显示捕获椅子姿势的连续编码,同时保留其形状(尽管学习的姿势映射在不同类型之间变化);
在(b)中,表明连续代码可以学习捕获不同椅子类型的宽度,并在它们之间平滑插值。
对于每个因素,与之前监督结果[7]的5次随机运行中最类似的结果提供直接比较。
接下来对SVHN数据集进行评估。在这个数据集上学习一个可解释的表示更具挑战性,因为它含有很大的噪声,并且有可变分辨率和模糊的数字,并且在这个数据集中同一个目标没有多次出现的变体。作者利用四个10维分类变量和两个均匀连续变量作为潜在代码。在 图5 中显示了学习到的两个潜在因素。
图5: 操纵SVHN上的潜在代码。
在(a)中一个连续编码捕获了光照的变化,即使在数据集中每个数字仅出现一个光照条件;
在(b)中显示一个分类编码来控制中心数字的上下文,例如,在第二列中,数字9(部分地)存在于右侧,而在第三列中,存在数字0,这表示InfoGAN已经学会将中心数字与其上下文分开。
最后在 图6 中显示InfoGAN能够在另一个具有挑战性的数据集上学习许多视觉概念:CelebA [33],其中包含200,000名具有较大姿态变化和背景混乱的名人图像。在这个数据集中,作者将潜在变量建模为10个统一的分类变量,每个维度都是10。令人惊讶的是,即使在这个复杂的数据集中,InfoGAN也可以像3D图像那样恢复方位角,即使在这个数据集中同一张脸没有用多个姿态被展示过。此外,InfoGAN可以解决其他高度语义的变化,如存在或不存在眼镜,发型和情感,在没有任何监督的情况下获得一定程度的视觉理解。
图6: 在CelebA上操纵潜在编码。
(a)表明分类代码可以通过离散连续性的这种变化来捕捉面部的方位角;
(b)中,分类代码的一个子集用于表示存在眼镜;
(c)显示发型的变化,大致从少发到多发;
(d)显示情绪的变化,大致从严厉到快乐。
本文介绍了一种称为信息最大化生成对抗网络(InfoGAN)的表示学习算法。 与以前需要监督的方法相比,InfoGAN完全没有监督,并且在具有挑战性的数据集上学习可解释和有区分度的表示。此外,InfoGAN在GAN之上仅增加了可忽略不计的计算成本,并且易于训练。 使用互信息表示的核心思想可以应用于其他方法,如VAE [3],这是未来工作的一个有前途的领域。这项工作的其他可能的扩展包括:学习分层潜在表示,改进具有更好代码的半监督学习[34],并使用InfoGAN作为高维数据发现工具。
[1] Y. Bengio, “Learning deep architectures for ai,” Foundations and trends in Machine Learning, vol. 2, no. 1, pp. 1–127, 2009.
[2] Y. Bengio, A. Courville, and P. Vincent, “Representation learning: A review and new perspectives,” Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol. 35, no. 8, pp. 1798–1828, 2013.
[3] D. P. Kingma and M. Welling, “Auto-encoding variational bayes,” ArXiv preprint arXiv:1312.6114, 2013.
[4] I. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley, S. Ozair, A. Courville, and Y. Bengio, “Generative adversarial nets,” in NIPS, 2014, pp. 2672–2680.
[5] D. P. Kingma, S. Mohamed, D. J. Rezende, and M. Welling, “Semi-supervised learning with deep generative models,” in NIPS, 2014, pp. 3581–3589.
[6] B. Cheung, J. A. Livezey, A. K. Bansal, and B. A. Olshausen, “Discovering hidden factors of variation in deep networks,” ArXiv preprint arXiv:1412.6583, 2014.
[7] T. D. Kulkarni, W. F. Whitney, P. Kohli, and J. Tenenbaum, “Deep convolutional inverse graphics network,” in NIPS, 2015, pp. 2530–2538.
[8] W. F. Whitney, M. Chang, T. Kulkarni, and J. B. Tenenbaum, “Understanding visual concepts with continuation learning,” ArXiv preprint arXiv:1602.06822, 2016.
[9] A. Makhzani, J. Shlens, N. Jaitly, and I. Goodfellow, “Adversarial autoencoders,” ArXiv preprint arXiv:1511.05644, 2015.
[10] G. E. Hinton, S. Osindero, and Y. - W. Teh, “A fast learning algorithm for deep belief nets,” Neural Comput., vol. 18, no. 7, pp. 1527–1554, 2006.
[11] G. E. Hinton and R. R. Salakhutdinov, “Reducing the dimensionality of data with neural networks,” Science, vol. 313, no. 5786, pp. 504–507, 2006.
[12] P. Vincent, H. Larochelle, Y. Bengio, and P. - A. Manzagol, “Extracting and composing robust features with denoising autoencoders,” in ICLR, 2008, pp. 1096–1103.
[13] G. Desjardins, A. Courville, and Y. Bengio, “Disentangling factors of variation via generative entangling,” ArXiv preprint arXiv:1210.5474, 2012.
[14] T. Mikolov, K. Chen, G. Corrado, and J. Dean, “Efficient estimation of word representations in vector space,” ArXiv preprint arXiv:1301.3781, 2013.
[15] R. Kiros, Y. Zhu, R. R. Salakhutdinov, R. Zemel, R. Urtasun, A. Torralba, and S. Fidler, “Skip-thought vectors,” in NIPS, 2015, pp. 3276–3284.
[16] C. Doersch, A. Gupta, and A. A. Efros, “Unsupervised visual representation learning by context prediction,” in ICCV, 2015, pp. 1422–1430.
[17] A. Rasmus, M. Berglund, M. Honkala, H. Valpola, and T. Raiko, “Semi-supervised learning with ladder networks,” in NIPS, 2015, pp. 3532–3540.
[18] L. Maaløe, C. K. Sønderby, S. K. Sønderby, and O. Winther, “Improving semi-supervised learning with auxiliary deep generative models,” in NIPS Workshop on Advances in Approximate Bayesian Inference, 2015.
[19] A. Radford, L. Metz, and S. Chintala, “Unsupervised representation learning with deep convolutional generative adversarial networks,” ArXiv preprint arXiv:1511.06434, 2015.
[20] B. M. Lake, R. Salakhutdinov, and J. B. Tenenbaum, “Human-level concept learning through probabilistic program induction,” Science, vol. 350, no. 6266, pp. 1332–1338, 2015.
[21] J. B. Tenenbaum and W. T. Freeman, “Separating style and content with bilinear models,” Neural computation, vol. 12, no. 6, pp. 1247–1283, 2000.
[22] Z. Zhu, P. Luo, X. Wang, and X. Tang, “Multi-view perceptron: A deep model for learning face identity and view representations,” in NIPS, 2014, pp. 217–225.
[23] J. Yang, S. E. Reed, M. - H. Yang, and H. Lee, “Weakly-supervised disentangling with recurrent transformations for 3d view synthesis,” in NIPS, 2015, pp. 1099–1107.
[24] S. Reed, K. Sohn, Y. Zhang, and H. Lee, “Learning to disentangle factors of variation with manifold interaction,” in ICML, 2014, pp. 1431–1439.
[25] J. Susskind, A. Anderson, and G. E. Hinton, “The Toronto face dataset,” Tech. Rep., 2010.
[26] J. S. Bridle, A. J. Heading, and D. J. MacKay, “Unsupervised classifiers, mutual information and ’phantom targets’,” in NIPS, 1992.
[27] D. Barber and F. V. Agakov, “Kernelized infomax clustering,” in NIPS, 2005, pp. 17–24.
[28] A. Krause, P. Perona, and R. G. Gomes, “Discriminative clustering by regularized information maximization,” in NIPS, 2010, pp. 775–783.
[29] D. Barber and F. V. Agakov, “The IM algorithm: A variational approach to information maximization,” in NIPS, 2003.
[30] G. E. Hinton, P. Dayan, B. J. Frey, and R. M. Neal, “The" wake-sleep" algorithm for unsupervised neural networks,” Science, vol. 268, no. 5214, pp. 1158–1161, 1995.
[31] P. Paysan, R. Knothe, B. Amberg, S. Romdhani, and T. Vetter, “A 3d face model for pose and illumination invariant face recognition,” in AVSS, 2009, pp. 296–301.
[32] M. Aubry, D. Maturana, A. Efros, B. Russell, and J. Sivic, “Seeing 3D chairs: Exemplar part-based 2D-3D alignment using a large dataset of CAD models,” in CVPR, 2014, pp. 3762–3769.
[33] Z. Liu, P. Luo, X. Wang, and X. Tang, “Deep learning face attributes in the wild,” in ICCV, 2015.
[34] J. T. Springenberg, “Unsupervised and semi-supervised learning with categorical generative adversarial networks,” ArXiv preprint arXiv:1511.06390, 2015.