论文笔记之:Generative Adversarial Nets

简介: Generative Adversarial Nets NIPS 2014      摘要:本文通过对抗过程,提出了一种新的框架来预测产生式模型,我们同时训练两个模型:一个产生式模型 G,该模型可以抓住数据分布;还有一个判别式模型 D 可以预测来自训练样本 而不是 G 的样本的概率.训练 G 的目的是让 D 尽可能的犯错误,让其无法判断一个图像是产生的,还是来自训练样本.这个框架对应了一个 minimax two-player game. 也就是,一方得势,必然对应另一方失势,不存在两方共赢的局面,这个就是这个游戏的规则和属性。

 

Generative Adversarial Nets

NIPS 2014 

 

  摘要:本文通过对抗过程,提出了一种新的框架来预测产生式模型,我们同时训练两个模型:一个产生式模型 G,该模型可以抓住数据分布;还有一个判别式模型 D 可以预测来自训练样本 而不是 G 的样本的概率.训练 G 的目的是让 D 尽可能的犯错误,让其无法判断一个图像是产生的,还是来自训练样本.这个框架对应了一个 minimax two-player game. 也就是,一方得势,必然对应另一方失势,不存在两方共赢的局面,这个就是这个游戏的规则和属性。当任意函数 G 和 D的空间,存在一个特殊的解,G 恢复出训练数据的分布,D 在任何地方都等于 1/2 。当 G 和 D 定义为 multilayer perceptrons, 整个系统可以通过 BP 算法来进行训练。在训练或者产生样本的过程中,不需要马尔科夫链 或者 unrolled approximate inference network 。

 

  引言:深度学习的希望是发现丰富的,等级模式,代表在人工只能应用中遇到的数据的分布,像 natural images,audio waveforms 包含 speech, 自然语言库的 symbols。到目前为止,最有影响力的 DL 的应用已经涉及到 discriminative models,通常都是将高维,丰富的输入到一个类别标签。 Deep discriminative models 没有那么大的影响力,因为预测许多很难搞定的概率计算是相当困难的,例如:最大似然估计和相关的策略;由于结合 piecewise linear units 的优势也很困难。我们提出了一种新的 generative model estimation procedure 避开了这些困难。

  在这个提出的 adversarial nets framework 中,产生式模型需要和一个敌手进行对抗:一个 discriminative model 需要学习是否是一个样本是来自于 model distribution 或者 是 data distribution 。这个产生式模型需要看作是造假的团伙,企图制造假币;而 discriminative model 类似于 警察,试着检查出假钞。这个游戏竞争的结果就是,使得两个队伍的不断的改善其自身的模型,而产生的假钞变成名副其实的艺术品。(做到真假难辨)

  这个 framework 可以产生用于许多类别的模型和优化算法 特定的 training algorithm 。我们探索一种特殊的情况,称为 adversarial nets。

 

  Adversarial nets

  The adversarial modeling framework 是最直接的方式,当 models 都是多层感知机(multilayer perceptrons)。为了在数据 x 上学习到 generator 的分布 $p_g$,我们在输入 noise variable $p_z(z)$ 定义一个 prior,然后表示到 data space 的 $G(z; \theta_g)$ 一个 mapping,其中 G 是一个 differentiable function,由多层感知机 $D(x; \theta_d)$ 表示。D(x)表示 x 来自 data 而非 $p_g$ 的概率。我们训练 D 来最大化赋予 training example 和 来自 G 的样本的概率。我们同时训练 G 来最小化 $log(1-D(G(z))): $

  换句话说,就是 D 和 G 采用下面的 two-player minimax game with value function V(G, D) :  

  在接下来的一节,我们展示 adversarial nets 的理论分析,本质上展示了训练的准则(training criterion)允许恢复出数据产生分布 as G and D are given enough capacity, i.e. the non-parametric limit. 图 1 给出了一个很好的展示,实际上,我们必须以一种迭代的方式来进行这个游戏。优化 D 在 训练的内部训练中完成的代价是非常昂贵的,在有限的数据集上会导致 overfitting。相反,我们相互间隔 k steps 来优化 D ,one step 来优化 G 。这使得 D 保持在其 optimal solution 附近,只要 G 改变的足够缓慢。这个策略类比 SML/PCD training,这个过程总结在算法 1 中。 

  实际上,Equation 1 可能并没有提供足够的梯度来使得 G 学习的足够好。在学习的早期,G 是 poor 的,D 可以高置信度的方式 reject samples,因为他们和原始数据很明显不相同。在这种情况下,$log(1-D(G(z)))$ saturates (饱和了)。Rather than training G to minimize $log(1-D(G(z)))$ , 我们可以训练 G 来最大化 $log D(G(z))$ 。这个目标函数 results in the same fixed point of the dynamics of G and D but provides much stronger gradients early in learning . (在早期,提供了非常强的梯度信息)  

  图 1.  这四个小图展示了对抗训练的过程。其中,这几条线的意思分别是:

  ------ the discriminative distribution (D, blue, dashed line) 蓝色的虚线 表示判别式的分布 ;

  ------ the data generating distribution (black, dotted line) $p_x$   黑色的点线 表示 数据产生的分布 ; 

  ------ the generative distribution $p_g (G)$    绿色的实线 。 

  ------ the lower horizontal line is the domain from which z is sampled .   底部的水平线 是采样 z 的 domain  

  ------ the horizontal line above is part of the domain of x .    上部的水平线 是 x domain 的部分 。

  ------ the upward arrows show the mapping x = G(z) imposes the non-uniform distribution $p_g$ on transformed samples.   向上的箭头展示了 mapping x = G(z),这个映射是非均匀分布 到 转换的samples。

  (a)考虑一个接近收敛的 对抗 pair。$p_g$ 和 $p_{data}$ 相似;D 是一个有一定准确性的 classifier。

  (b)在算法 D 的内部循环被训练用来 从数据中判断出 samples,收敛到 $D^*(x) = \frac{p_{data}(x)}{p_{data}(x) + p_g(x)}$ 。 

  (c)在更新 G 之后,D 的梯度已经引导 G(z) to flow to regions that are more likely to be classified as data. 

  (d)在几次训练之后,如果 G 和 D 有足够的能力,他们会达到一个平衡,使得两者都已经无法进一步的提升自我,即:$p_g = p_{data}$ 。这个时候,discriminator 已经无法判别两个分布的区别,也就是说,此时的 D(x) = 1/2 。

 

  Theoretical Results 

  作者表明 the minimax game has a global optimum for $p_g = p_{data}$。 

 

  Global Optimality of $p_g = p_{data}$: 

  对于任意一个 generator G,我们考虑最优的 discriminator D 。 

  Proposition 1 .  对于 fixed G,最优的 discriminator D 是 :

  Proof . 对于判别器 D 的训练准则,给定任意的 generator G,为了最大化 quantity V(G, D) 

  

  对于任意的  $ (a, b) \in R^2 \ {0, 0} $,函数 y ->a log(y) + b log(1-y) 在 $\frac{a}{a+b}$ 达到其最大值。The discriminator 不需要在 $Supp (p_{data} U Supp(p_g))$ 之外进行定义。

  

  训练 D 的目标可以表达为:maximizing the log-likelihood for estimating the conditional probability $P(Y = y|x)$,其中 Y 表示是否 x 来自于 $p_{data}$ (with y = 1) 还是 $p_g$ (with y = 0)。Equation 1 的 minimax game 可以表达为:

  

 

  

  Experiments

  

  

  

 

 

  

 

  

 

   

  

  

    

  

   

   

 

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

相关文章
|
机器学习/深度学习 搜索推荐 算法
Learning Disentangled Representations for Recommendation | NIPS 2019 论文解读
近年来随着深度学习的发展,推荐系统大量使用用户行为数据来构建用户/商品表征,并以此来构建召回、排序、重排等推荐系统中的标准模块。普通算法得到的用户商品表征本身,并不具备可解释性,而往往只能提供用户-商品之间的attention分作为商品粒度的用户兴趣。我们在这篇文章中,想仅通过用户行为,学习到本身就具备一定可解释性的解离化的用户商品表征,并试图利用这样的商品表征完成单语义可控的推荐任务。
23882 0
Learning Disentangled Representations for Recommendation | NIPS 2019 论文解读
|
3月前
|
机器学习/深度学习 算法
生成对抗网络(Generative Adversarial Networks,简称GANs)
生成对抗网络(GANs)由Ian Goodfellow等人于2014年提出,是一种通过生成器和判别器的对抗训练生成逼真数据样本的深度学习模型。生成器创造数据,判别器评估真实性,两者相互竞争优化,广泛应用于图像生成、数据增强等领域。
160 1
|
6月前
|
机器学习/深度学习 存储 算法
【博士每天一篇文献-综述】Continual lifelong learning with neural networks_ A review
这篇综述论文深入探讨了神经网络在终身学习领域的研究进展,包括生物学启发的概念、终身学习方法的分类与评估,以及未来研究方向,旨在解决神经网络在学习新任务时如何避免灾难性遗忘的问题。
82 2
|
6月前
|
机器学习/深度学习 算法 TensorFlow
【文献学习】Analysis of Deep Complex-Valued Convolutional Neural Networks for MRI Reconstruction
本文探讨了使用复数卷积神经网络进行MRI图像重建的方法,强调了复数网络在保留相位信息和减少参数数量方面的优势,并通过实验分析了不同的复数激活函数、网络宽度、深度以及结构对模型性能的影响,得出复数模型在MRI重建任务中相对于实数模型具有更优性能的结论。
63 0
【文献学习】Analysis of Deep Complex-Valued Convolutional Neural Networks for MRI Reconstruction
|
机器学习/深度学习 自然语言处理 算法
【论文泛读】 知识蒸馏:Distilling the knowledge in a neural network
【论文泛读】 知识蒸馏:Distilling the knowledge in a neural network
【论文泛读】 知识蒸馏:Distilling the knowledge in a neural network
|
机器学习/深度学习 PyTorch 测试技术
SegNeXt: Rethinking Convolutional Attention Design for Semantic Segmentation 论文解读
我们提出了SegNeXt,一种用于语义分割的简单卷积网络架构。最近的基于transformer的模型由于在编码空间信息时self-attention的效率而主导了语义分割领域。在本文中,我们证明卷积注意力是比transformer中的self-attention更有效的编码上下文信息的方法。
443 0
|
机器学习/深度学习 算法
Keyphrase Extraction Using Deep Recurrent Neural Networks on Twitter论文解读
该论文针对Twitter网站的信息进行关键词提取,因为Twitter网站文章/对话长度受到限制,现有的方法通常效果会急剧下降。作者使用循环神经网络(recurrent neural network,RNN)来解决这一问题,相对于其他方法取得了更好的效果。
131 0
|
机器学习/深度学习 存储 自然语言处理
论文推荐:Rethinking Attention with Performers
重新思考的注意力机制,Performers是由谷歌,剑桥大学,DeepMind,和艾伦图灵研究所发布在2021 ICLR的论文已经超过500次引用
158 0
|
机器学习/深度学习 关系型数据库
GAN:生成对抗网络 Generative Adversarial Networks
GAN:生成对抗网络 Generative Adversarial Networks
123 2
GAN:生成对抗网络 Generative Adversarial Networks
|
机器学习/深度学习 数据挖掘 计算机视觉
CV:翻译并解读2019《A Survey of the Recent Architectures of Deep Convolutional Neural Networks》第一章~第三章(二)
CV:翻译并解读2019《A Survey of the Recent Architectures of Deep Convolutional Neural Networks》第一章~第三章
CV:翻译并解读2019《A Survey of the Recent Architectures of Deep Convolutional Neural Networks》第一章~第三章(二)