【论文精读】(CGAN)Conditional Generative Adversarial Nets

Conditional Generative Adversarial Nets

关于原版的生成对抗网络模型以及公式推导可以参考:【论文精读】对Generative Adversarial Net的一点理解

摘要

​ 生成对抗网络最近介绍了一种新的方法来训练生成模型。本文将介绍生成对抗网络的条件版本,通过简单的输入数据 y y y来构建,作者希望生成器和辨别器都能够被训练。

​ 作者展示了此模型能够生成以类标签为条件的 M N I S T MNIST MNIST数字。

​ 作者还展示此模型如何能够用来学习一个多模态模型,并且提供了一个图像标签应用的初级例子,在这个例子中作者演示了这种方法是如何生成描述性标签的,而这种标签并不是训练标签的一部分。

1. 介绍

​ 作者先介绍了当前训练生成模型的难点,介绍了 G o o d f e l l o w Goodfellow Goodfellow提出的 G A N GAN GAN的优点。

​ 然后作者认为在无条件的对抗网络中,被生成的数据的模式没有控制。通过对模型施加额外的信息条件,就有可能监督数据生成的过程。这种条件可以基于类标签,也可以基于部分用语修复的数据,甚至是来自不同模态的数据。

​ 本文中作者展示了如何构建条件对抗网络,并且演示了两个实验,一个在 M I N I S T MINIST MINIST数据集上基于类标签,一个是在 M I R F l i c k r 25000 MIR Flickr 25000 MIRFlickr25000数据集上进行多模态学习。

2. 相关工作

​ 尽管监督学习(尤其是卷积网络)的成功,但是还存在以下两个问题:

  1. 扩大模型去容纳极大数量的预测输出种类仍然很有挑战性(因为没有限制条件,解空间无限大)。

  2. 很多研究将注意力放在学习从输入到输出的一堆一映射上,但是很多有意思的问题都被认为是一对多映射。例如一个图像可能会有很多不同的标签,不同的人也可能用不同的词语去表述同一张图。

​ 解决上述第一个问题的方法是利用额外的信息,比如使用自然语言语料库去学习标签的向量表示,这样几何关系就具有了语义上的意义。即便是预测错了也不会太离谱,还可以对预测期间未见过的标签做出预测概括。

​ 解决第二个问题的一种方法是使用条件概率生成模型,输入被当作条件变量,一对多映射被实例化为传统的预测分布。

3. 条件对抗网络

​ 如果生成器和判别器都以额外的信息 y y y为条件,那么生成对抗网络就被拓展为一个条件模型。

y y y可以是任何种类的辅助信息,例如类标签或者其他情形下的数据。我们可以像将 y y y作为额外的输入层传递给辨别器和生成器来执行这种条件。

​ 在生成器中,先验的输入噪声和 y y y以一种连接的隐藏表示形式组合起来,对抗训练框架对与如何构成这种隐藏表示具有相当大的灵活性。

​ 在辨别器中, x x x y y y作为输入输入给辨别函数(又一次以 M L P MLP MLP实现)。

​ 这种极大极小对抗的目标函数如下:

m i n G m a x D   V ( G , D ) = E x ~ p d a t a log ⁡ ( D ( x | y )   + E z ~ p z ( z ) log ⁡ ( 1 − D ( G ( z ∣ y ) ) min_Gmax_D\space V(G,D)=E_{x~p_{data}} \log(D(x|y)\space +E_{z~p_z(z)}\log{(1-D(G(z|y))} minGmaxD V(G,D)=Expdatalog(D(xy) +Ezpz(z)log(1D(G(zy))

​ 条件对抗网络的结构如下图:

image-20211123080109366

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值