infoGAN中一个重要的采样技巧

【写在前面】这篇文章写给了解infoGAN的同学,或对于互信息参数模型感兴趣的同学。写作起因是,我发现介绍infoGAN的文章往往忽略了一个重要的采样技巧,而这个技巧对于以互信息为约束的参数模型极为重要。

1.铺垫

1.1 信息熵
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
信息熵反应信息带来的惊讶程度,概率越低,惊讶程度越大,信息熵越大。
1.2 互信息
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
两个随机变量X和Y的互信息有两种等价的定义:一种是二者的联合概率密度与它们各自概率密度的积直接的KL距离,另一种是用X自身的惊讶程度(《infoGAN中一个重要的采样技巧》)减去在已知Y的基础上,X带来的惊讶程度(《infoGAN中一个重要的采样技巧》)。翻转X和Y也成立。
1.3 引理
对于随机变量《infoGAN中一个重要的采样技巧》和它们的函数《infoGAN中一个重要的采样技巧》服从
《infoGAN中一个重要的采样技巧》
证明
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
这里需要解释的是第四行到第五行,
1)《infoGAN中一个重要的采样技巧》是不给定《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》里取,《infoGAN中一个重要的采样技巧》是给定《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》里取,所以《infoGAN中一个重要的采样技巧》能选择的范围是《infoGAN中一个重要的采样技巧》的子集;
2)《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》上有值,在《infoGAN中一个重要的采样技巧》等于0,这是显然的;
3)这样《infoGAN中一个重要的采样技巧》

2.用互信息的形式重写GAN的目标【这部分可跳过】

2.1 GAN的目标
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》分别表示判别器和产生器。
2.2 GAN的目标的互信息写法
定义《infoGAN中一个重要的采样技巧》为判别器的输出变量,《infoGAN中一个重要的采样技巧》
(其他一个什么值也可以。在GAN收敛时等于0.5),定义
《infoGAN中一个重要的采样技巧》
为判别器的输入,《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》分别表示真实数据和产生的数据,《infoGAN中一个重要的采样技巧》表示网络参数。
《infoGAN中一个重要的采样技巧》
这一目标是说,GAN努力减小《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》之间的互信息,也就是迷惑判别器,使其不能通过《infoGAN中一个重要的采样技巧》来得到正确的判断。在理想情况下,《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》之间的互信息为0。

3.infoGAN神来之笔的采样技巧

3.1 infoGAN想做什么
普通GAN中的隐变量《infoGAN中一个重要的采样技巧》是一个随机采样,常选择高斯分布。这样隐变量的可解释性很差。而infoGAN要使得隐变量和产生的图像之间获得较大的关联性,比如某个隐变量和生成图像的类别相关,另一个和生成图像的风格相关,等等。关联性的形式化就是互信息。
3.2 infoGAN的(新增)目标函数
《infoGAN中一个重要的采样技巧》
这里重点讲新增的目标函数:
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
这里的《infoGAN中一个重要的采样技巧》表示和类别相关的隐变量,服从类别分布《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》的联合概率分布的函数,表示生成的数据。忽略《infoGAN中一个重要的采样技巧》的影响(因为《infoGAN中一个重要的采样技巧》是高斯噪声)就可以认为《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》的概率密度函数的函数。
3.3 infoGAN的采样
重点来了,从《infoGAN中一个重要的采样技巧》来采样是比较麻烦的,因为我们并不知道后验概率《infoGAN中一个重要的采样技巧》的数学形式,而直接从《infoGAN中一个重要的采样技巧》采样是比较方便的。这就用到了1.3节的引理,只要反着用就可以搞定。
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
《infoGAN中一个重要的采样技巧》
简单解释一下,就是《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》里取,《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》里取,这样和《infoGAN中一个重要的采样技巧》《infoGAN中一个重要的采样技巧》里取是没有区别的,因为《infoGAN中一个重要的采样技巧》

完。

参考文献:

  1. InfoGAN: using the variational bound on mutual information (twice)
  2. InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets Xi Chen,Yan Duan, Rein Houthooft,John Schulman, Ilya Sutskever, Pieter Abbeel
    原文作者:WilliamY
    原文地址: https://www.jianshu.com/p/73223deb3aa4
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞