概述:

InfoGAN是国际神经信息处理系统大会NIPS 2016上的论文,作者来自加州大学伯克利分校和OpenAI团队的研究人员,被OpenAI称为当年的五大突破之一。针对传统生成对抗网络以高度混杂的模式使用随机噪声,随机噪声的每一个维度不能显式地表示真实数据空间下的属性或特征的问题,论文所提出的InfoGAN以无监督方式学习隐空间下非混杂方式真实特征表示(disentangled representations)。

论文地址:https://arxiv.org/abs/1606.03657

源码地址:https://github.com/openai/InfoGAN、https://github.com/JonathanRaiman/tensorflow-infogan

预备知识:

(1)互信息(Mutual Information)

互信息信息论中衡量随机变量所包含随机变量的信息量,也就是衡量当随机变量被观察后随机变量减少的不确定性。互信息可以表示为两个信息熵的差形式:

当两个随机变量相互独立时,互信息

(2)信息熵(Entropy)

根据Boltzmann's H-theorem把随机变量(可能值为)的熵定义为:

当样本数量有限时,熵也可以表示为

其中,为随机变量的自信息(信息量),也是一个随机变量

(3)期望(Expectation)

X是离散型的随机变量,可能值为,对应的概率值为,概率和为1,

研究背景:(Why)

传统的生成对抗网络以高度混杂的模式使用随机噪声,即使是该网络的构建者也并不能明确的知道随机噪声的每个维度分别对应真实数据的那个属性特征,即随机噪声可解释性差。以MNIST为例,我们并不知道随机噪声的哪一个部分能对应生成数字1或3,如下图所示:

(图片来源:https://www.slideshare.net/ShuheiYoshida2/infogan-interpretable-representation-learning-by-information-maximizing-generative-adversarial-nets-71376199)

而我们希望能够对潜在空间下的随机噪声进行有序地拆解,使其不同的维度能够代表真实数据空间下不同的显著数据(如数字的宽度、高度、角度等),如下图所示。

(图片来源:https://www.slideshare.net/ShuheiYoshida2/infogan-interpretable-representation-learning-by-information-maximizing-generative-adversarial-nets-71376199)

那么如何通过非监督学习方式获取这些可分解的特征就是InfoGAN所要解决的关键科学问题。

论文核心:用于引导(inducing)潜编码的互信息(What)

针对传统生成对抗网络未充分利用输入随机噪声的不同维度的特征表示能力,InfoGAN将随机噪声分为两部分(如下图所示):

(1)不可压缩部分

(2)可解释的隐编码:对应真实数据分布下显著的语义特征(如:MNIST数字的宽度、高度、角度等):

因此,InfoGAN的生成器可以表示为,通过最大化潜编码与生成数据之间的互信息来防止生成对抗网络在训练过程中忽略隐编码的特征表示能力。因为潜编码和生成数据之间具有较高的相关性,即潜编码的不同维度对应生成数据的特定的显著性特征,因此它们之间具有较高的互信息很高,如下图所示:

因此,将互信息作为正则化项的对抗训练目标函数优化为:

互信息越大表明潜编码对生成数据具有更强大的解释能力,因此,我们希望该互信息越大越好。

但是,在计算互信息时需要用到真实的后验,因为真实的后验概率是很难采样和估计的。

因此,就需要另外一个函数来近似逼近后验概率,通过变分信息最大化方法来让变分分布来逼近真实后验,从而得到用表示的互信息的下界。

同时,为了简化分析将隐编码的数据分布固定,其熵即可视为常数,

通过变分信息最大化得到的互信息下界,就可以避免显式地计算后验概率

但是在内部期望中还存在从后验概率中采样的问题,因此还需要方法再移除内部期望的后验概率。

此时,需要根据论文中提到的引理5.1:(论文arXiv版的附录提供对引理的证明,这里不再赘述)来消除内部期望中的后验概率,即:

依据引理5.1定义互信息的变分下界,以此该变分下界可以利用重构技巧直接通过函数(网络)实现最大化,通过蒙特卡洛模拟可以很容易得逼近。

具体方法:(How)

在大多数试验中都是通过神经网络来构建网络,同时共享判别器的卷积层,如下图所示,这样也不会增加太多额外的计算成本。

图中的虚线是计算互信息的原始后验表示。但是,由于对后验概率采样很难,因此需要通过变分信息最大化方式通过来逼近真实后验,如图中红色弯曲箭头

整个网络的训练在原目标函数的基础上,增加互信息下界,因此InfoGAN的目标函数最终表示为:

其中,取1(离散型c)或者取值为和原始GANs目标函数相同数量级的较小的数值(连续性c)

实验:

InfoGAN的试验有两个目标:

(1)验证互信息是否能被有效地最大化

(2)是否能够通过无监督方式学习到可分解、可解释的特征表示(每次变化潜编码的一个维度,验证在生成图像上发生的显著特征改变)

(一)互信息最大化实验

首先,在MNIST数据集上验证,隐编码取值从10个类别中取样,每个类别的概率为0.1的离散数据,试验结果表明InfoGAN的下界能够很快达到最大值2.3

对比对象为传统的GANs仅添加辅助分布,但是没有明确地使用隐编码来最大化互信息。传统的GANs没有充分利用好隐编码,因此互信息就低。

(二)非混杂的特征表示实验

分解的特征表示试验表明:

(1)隐编码c的第一个维度可以控制生成数字的类别

(2)第二个维度控制生成数字的旋转角度

(3)第三个维度控制生成数字的宽度

总结:

目标:以无监督方式学习可分解的特征表示

方法:生成对抗网络 (GANs) + 最大化生成图片与输入隐编码之间的互信息(MI)

优势:以无监督方式学习随机噪声空间下可解释的特征表示时,无需大量的额外计算成本

参考文献:

[1] Chen X, Duan Y, Houthooft R, et al. Infogan: Interpretable representation learning by information maximizing generative adversarial nets[C]//Advances in neural information processing systems. 2016: 2172-2180.

InfoGAN:Interpretable Representation Learning by Information Maximizing GANs论文解读相关推荐

  1. 【论文阅读】InfoGAN: Interpretable Representation Learning by Information Maximizing GAN

    论文下载 bib: @inproceedings{chenduan2016infogan,author = {Xi Chen and Yan Duan and Rein Houthooft and J ...

  2. [生成对抗网络GAN入门指南](10)InfoGAN: Interpretable Representation Learning by Information Maximizing GAN

    本篇blog的内容基于原始论文InfoGAN: Interpretable Representation Learning by Information Maximizing Generative A ...

  3. InfoGAN:Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets

    InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets ...

  4. (CoRL2020)DIRL: Domain-Invariant Representation Learning Approach for Sim-to-Real Transfer 论文笔记

    (CoRL2020)DIRL: Domain-Invariant Representation Learning Approach for Sim-to-Real Transfer 论文笔记 pape ...

  5. [paper]Interpretable Representation Learning for Healthcare via Capturing Disease Progression

    加入时间衰退因子以及注意力机制的时间序列的病情诊断预测.预测下一次住院就诊的病情的主要类型. 通过电子病历查看病人检查情况,根据不同症状出现的不同时间加入注意力机制,长记忆的权重不一定比短时间的权重低 ...

  6. M5Product: Self-harmonized Contrastive Learning for E-commercial Multi-modal Pretraining 论文解读

    2022年CVPR<M5Product: Self-harmonized Contrastive Learning for E-commercial Multi-modal Pretrainin ...

  7. DRN :A Deep Reinforcement Learning Framework for News Recommendation论文解读

    文章目录 1. 论文贡献 2. 模型架构 2.1. 特征构造 2.2. 深度强化学习模型 2.3. 用户的主动反馈 2.4. 探索策略 1. 论文贡献 该论文提出了一个基于DQN的推荐框架,用于解决以 ...

  8. Efficient and Robust 2D-to-BEV Representation Learning via Geometry-guided Kernel Transformer(GKT)论文

    Efficient and Robust 2D-to-BEV Representation Learning via Geometry-guided Kernel Transformer 论文笔记 原 ...

  9. 《AHNG: Representation learning on attributed heterogeneous network(2019-Elsevier)》

    前言 私以为这篇论文核心的地方没写清楚,也可能是我学识浅薄. 这篇论文讲的是对图做 embedding,类似于语言模型中的word2vec. Abstract Network Embedding 的目 ...

最新文章

  1. crontab实例分析(转)
  2. 获取3的倍数_获取和设置pdf目录
  3. Python中的join()函数和split()函数的用法
  4. 关于luci的几个问题一
  5. 关于Android studio 3.0 Failure [INSTALL_FAILED_TEST_ONLY]安装失败的问题
  6. 第五届蓝桥杯校内选拔赛试题java组_第五届蓝桥杯校内选拔赛试题java组
  7. 【刷题】HDU 4966 GGS-DDU
  8. 279. Perfect Squares
  9. php实现从本网站每天出站连接向目标网站贡献的IP和PV的统计
  10. Cloudera Hadoop 4 实战课程(Hadoop 2.0、集群界面化管理、电商在线查询+日志离线分析)...
  11. 浅谈ThreadPoolExecutor线程池底层源码
  12. inspinia中文管理后台_JAVA项目实战开发电商项目案例(六与七)商品分类与商品模块管理开发
  13. 开关二极管的工作原理
  14. 通俗易懂的欧拉回路——哥尼斯堡七桥问题
  15. Beautiful Songs
  16. c语言中有关随机数的程序,C语言中随机数相关问题
  17. 电子书籍制作工具软件大全
  18. 【C语言学习】C语言初探
  19. 晨控可视化标签在资产管理上的应用及优势
  20. C#记录程序运行时间记录显示

热门文章

  1. 计算机辅助教学在语文应用,多媒体计算机辅助教学在中学语文教学中应用.pdf...
  2. 只允许微信浏览器访问
  3. 【FFmpeg学习】H264 视频码流分析
  4. 多测师肖sir_高级讲师_第2个月第33讲解jenkins
  5. 唠唠SE的集合-01——Collection接口
  6. B站梨米特概率论与数理统计学习笔记(1)
  7. Typora基础用法:pandoc安装,导入导出word文档,pdf文件。设置图片目录
  8. HTML期末作业课程设计期末大作业——电影网页制作
  9. 0-1整数规划的LINGO求解
  10. 修改git 所有历史记录