InfoGAN

目录主要内容

Chen X., Duan Y., Houthooft R., Schulman J., Sutskever I., Abbeel P. InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets. arXiv preprint arXiv 1606.03657, 2016.

既然都能生成图片了, 那至少得能够抓住数据的特征信息, 解耦.

主要内容

一些GAN的输入会包括z, c)), 其中z)是噪声, 而c)是一些别的信息, 比如标签信息, 一个很自然的问题是, 怎么保证GAN会利用这部分信息呢? 换言之, 怎么保证生成器生成的图片Gz, c))c)有不可否认的关联呢?

衡量两个随机变量关联性的指标, 经典的便是互信息

[IX, Y) = HX) – HX|Y),
]

在这个问题里就是

[Ic,Gz,c)) = Hc) – Hc|Gz,c)).
]

直接估计互信息是很困难的, 利用变分方法可以得到一个有效的下界这也是VAE的灵魂):

[egin{array}{ll}
Ic,Gz,c)) & = mathbb{E}_{x sim P_G} mathbb{E}_{Pc|x)} log Pc|x) + Hc) \
& = mathbb{E}_{x sim P_G} [mathrm{KL}Pc|x) | Qc|x)) + mathbb{E}_{Pc|x)}log Qc|x)] + Hc) \
& ge mathbb{E}_{x sim P_G}mathbb{E}_{Pc|x)}log Qc|x) + Hc)=: L_{I}G, Q).
end{array}
]

其中Q)是我们用来近似Pc|x))的. 上述还是存在一个问题, 即Pc|x))依然无法处理, 不过注意到

[L_IG, Q) = mathbb{E}_{c sim Pc), x sim Gz, c)}[log Qc|x)] + Hc).
]

我们可以给出一个合理的先验分布.

c in mathcal{C})是离散的时候, 令Q)的输出向量的长度为|mathcal{C}|), 可直接令该向量的softmax后的向量为概率向量;

c)是连续的时候, 倘若x=Gz, c^*)), 则可以假设Qc|x) sim mathcal{N}c^*, sigma^2 I)), 此时

[log Qc|x) propto log exp-frac{|c-c^*|_2^2}{2sigma^2}) propto -|c-c^*|_2^2.
]

最后的损失便为

[min_{G, Q} max_D V_{mathrm{InfoGAN}} D, G, Q) = VD, G) – lambda cdot L_IG, Q).
]

其中VD, G))是普通的GAN的损失.

看一些InfoGAN的实现: z)服从[0, 1]均匀分布, 类别标签服从均匀分布1/K)), 其他的用于描述角度宽度的c)服从[-1, 1]的均匀分布.

实际上, 应该还是有一个超参数sigma^2)的, 但是当我们假设其与x)无关的时候, 在损失部分其为一常数, 所以就不用管了这和VAE在decoder部分的处理也是一致的).

估计是没弄好啊, 这没看出变化来.

image-20201125200554855

Published by

风君子

独自遨游何稽首 揭天掀地慰生平