InfoGAN

论文: InfoGAN: Interpretable Representation Learning byInformation Maximizing Generative Adversarial Nets

Abstract

作者提出了InfoGAN,InfoGAN作为GAN,也是最大化隐变量和观测之间的一个小的子集的互信息。但是作者将互信息的下界作为优化目标,这样可以实现高效的优化。 具体来说:InfoGAN可以学习到可解释的特征,比如情感等。

Introduction

无监督学习的目的在于从数据中学习特征,一个常见的无监督学习框架就是表示学习。表示学习对于一些下游任务比如:分类,回归,策略学习都是非常有用的。

然而,无监督学习是一个病态问题,因为相关的下游任务通常是未知的。数据的解耦表示(disentangled representation)对于相关的,但是未知的下游任务有比较好的效果。所谓的解耦表示:就是显式的表示数据的显著特征,比如对于人脸,一个有用的解耦表示就是,将人脸表情,眼睛颜色,是否带眼镜等一个个特征分别表示一个特征维度,每个维度的不同取值表示各个特征的取值。个人觉得,这个有点像数据挖掘里面做特征工程的感觉,把特征一个个分开,每个特征表示不同的含义,这样可以有效地分析什么特征对于分类问题适合,什么特征适合分割。一个无监督学习算法如果能够大概猜到下游的任务是什么,这一点是非常关键的。

无监督学习研究的一个重点就是生成模型,通常希望一个好的生成模型可以学习到数据的解耦表示。目前最负盛名的生成模型就是VAE和GAN了。这是有关VAE的一篇博客

文章框架:回顾最近的工作(实现特征的解耦表示以前需要监督信息)——回顾GAN——InfoGAN的具体实现——实验结果

Related Work

无监督学习的方法有比较多,早期的方法基于SAE,RBM。一种比较受大家看好的方法源于Skip-gram模型(来自于NLP的一种模型)。实现特征的解耦表示的方法几乎都需要监督信息,除了hossRBM,但是hossRBM计算复杂度随着factor是指数增长的,而且只能解耦离散的隐变量。

Mutual Information for Inducing Latent Codes

通常,GAN生成的通过生成器生成的数据是高度耦合的,导致数据的每一个维度不代表具体的具有语义含义的特征。比如,利用MNIST数据集,最好是希望生成一个随机的变量,代表1~9, 然后再生成两个随机变量,分别代表数字的倾斜角度,宽度。本文正是为了解决这个问题。

为此,作者将输入噪声向量分成两部分:

  • 未压缩的噪声源
  • 隐变量编码,代表数据分布的显著的结构化语义特征

标准的生成对抗网络中,会忽视隐变量c的作用,而在info-GAN中则需要强化隐变量c的作用,使得c能够直接代表生成的变量的某一方面的属性,所以需要让隐变量与生成的变量G(z,c)拥有尽可能多的共同信息。因此引入了信息论的观点,定量表达互信息为I(c;G(z,c)),并且在生成器网络的训练中通过调整使得这个量最大化。在信息论中,互信息I(x; y)表示x里面关于y的信息有多少。

对于等式(H表示熵) : I(X;Y) =H(X)−H(X|Y) =H(Y)−H(Y|X)

上面的等式有一个很直观的解释,I(X; Y)表示当Y被观测到之后,X的不确定性的变化量。当X, Y相互独立时,I(X; Y)为0。因此,受文本聚类问题的一些论文启发,作者提出了如下损失函数:

Variational Mutual Information Maximization

这部分主要讲为了优化上述目标函数,作者采取的近似方法。由上文中,可知求I需要涉及到P(c|x),但是这个分布很难求。所以通过使用下界替代I来进行简化。这种方法参考了Variational Information Maximization [29]。 简化之后的函数I不在需要使用P(c|x)而是使用了一个下界函数Q(c|x)来进行替代,而这个Q(c|x)本质上是对P(c|x)的一种下界拟合,在本文中通过神经网络来实现。具体公式可以参见论文。简化之后,虽然不需要使用P(c|x),但是需要从P(c|x)中采样以计算期望。因此,作者做了进一步的推导。这块没太看懂,作者似乎用了蒙特卡洛模拟(reparametrization trick),然后作者将改进后的目标函数加入到GAN中,就得到了InfoGAN。InfoGAN相比于普通GAN,似乎就是代价函数改了一下。在附录中,作者还将InfoGAN和 Wake-Sleep algorithm联系在一起。

Implementation

具体训练时不变,改一下目标函数即可,lambda对于离散隐变量通常设置为1即可。实验结果,略。。。

你可能感兴趣的:(InfoGAN)