泛读论文:GAN 生成对抗网络合集

Generative Adversarial Nets

NIPS2014

问题

  1. 之前的一些工作在最大释然估计和近似推理(related strategies)中会遇到很多难以解决的概率计算困难
  2. 'and due to difficulty of leveraging the benefits of piecewise linear units in the generative context '(这里不是很理解,应该跟训练,反向传播有关)

本文提出了一种新的生成模型,解决了以上问题

方法

  • 训练两个网络

    • 一个生成模型:将随机噪声传输到多层感知机来生成假的样本
    • 一个判别模型:也是通过多层感知机实现,将生成的假样本和真实的样本输入训练
    • 可以用反向传播和dropout训练两个模型,生成模型在生成样本时只用前向传播算法
    • 并且不需要近似推理和马尔科夫链作为前提
  • 目标 :

  • KaTeX parse error: \tag works only in display equations

    • D ( x ) D(x) D(x) 是D output for real data $x $

    • D ( G ( z ) ) D(G(z)) D(G(z)) 是D ouput for generated fake data G ( z ) G(z) G(z)

    • Discriminator想最大化目标函数,让 D ( x ) D(x) D(x) 接近1(real) , D ( G ( z ) ) D(G(z)) D(G(z)) 接近0(fake)

    • Generator想最小化目标函数,让让 D ( G ( z ) ) D(G(z)) D(G(z)) 接近1(real)

    • 初期,G的生成效果很差,D会高置信度来拒绝生成样本,因为它们跟真实数据明显不同,所以 log ⁡ ( 1 − D ( G ( z ) ) ) \log (1-D(G(z))) log(1D(G(z))) 会饱和

    • 因此我们选择最大化 log ⁡ D ( G ( z ) ) \log D(G(z)) logD(G(z)) (即最大化D出错的概率)而不是最小化 l o g ( 1 − D ( G ( z ) ) ) log (1-D(G(z))) log(1D(G(z))) 来训练G

      • 该目标函数使G和D在动力学稳定点相同,并且在训练初期,该目标函数可以提供更强大的梯度(CS231n 2017课程里有讲)
    • 这个极大极小问题的全局最优解为 p g = p d a t a p_g=p_{data} pg=pdata 此时D无法区分训练数据分布和生成数据分布,即 D ( x ) = 1 2 D(x)=\frac{1}{2} D(x)=21 ,论文4.1给出证明(就求了一个导,令等于0,解出来 D G ∗ ( x ) = p d a t a ( x ) p d a t a ( x ) + p g ( x ) D_G^*(x)=\frac{p_{data}(x)}{p_{data}(x)+p_g(x)} DG(x)=pdata(x)+pg(x)pdata(x) 即得证

    • (1) 式等价于:

      C ( G ) = m a x D V ( G , D ) C(G)=max_DV(G,D) C(G)=maxDV(G,D)

      = E x ∼ p d a t a ( x ) [ log ⁡ D G ∗ ( x ) ] + E x ∼ p z [ log ⁡ ( 1 − D ∗ ( G ( z ) ) ) ] =\mathbb{E}_{x\sim p_{data}(x)}[\log D^*_G(x)]+\mathbb{E}_{x\sim p_{z}}[\log (1-D^*(G(z)))] =Expdata(x)[logDG(x)]+Expz[log(1D(G(z)))]

      = E x ∼ p d a t a ( x ) [ log ⁡ D G ∗ ( x ) ] + E x ∼ p g [ log ⁡ ( 1 − D ∗ ( x ) ) ] =\mathbb{E}_{x\sim p_{data}(x)}[\log D^*_G(x)]+\mathbb{E}_{x\sim p_{g}}[\log (1-D^*(x))] =Expdata(x)[logDG(x)]+Expg[log(1D(x))]

      = E x ∼ p d a t a ( x ) [ log ⁡ p d a t a ( x ) p d a t a ( x ) + p g ( x ) ] + E x ∼ p g [ log ⁡ p g ( x ) p d a t a ( x ) + p g ( x ) ] =\mathbb{E}_{x\sim p_{data}(x)}[\log \frac{p_{data}(x)}{p_{data}(x)+p_g(x)}]+\mathbb{E}_{x\sim p_{g}}[\log \frac{p_{g}(x)}{p_{data}(x)+p_g(x)}] =Expdata(x)</

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值