- PaperWeekly 2016.08.05 第一期
- PaperWeekly 第二期
- PaperWeekly 第三期
- PaperWeekly 第四期 - 基于强化学习的文本生成技术
- PaperWeekly 第五期 - 从 Word2Vec 到 FastText
- PaperWeekly 第六期 - 机器阅读理解
- PaperWeekly 第七期 -- 基于 Char-level 的 NMT OOV 解决方案
- PaperWeekly 第八期 - Sigdial2016 文章精选(对话系统最新研究成果)
- PaperWeekly 第九期 -- 浅谈 GAN
- PaperWeekly 第十期
- PaperWeekly 第十一期
- PaperWeekly 第十二期 - 文本摘要
- PaperWeekly 第十三期--最新文章解读
- PaperWeekly 第十四期 - TTIC 在 QA 任务上的研究进展
- PaperWeekly 第十六期 - ICLR 2017 精选
- PaperWeekly 第十七期 - 无监督/半监督 NER
- PaperWeekly 第十八期 - 提高 seq2seq 方法所生成对话的流畅度和多样性
- PaperWeekly 第十九期 - 新文解读(情感分析、机器阅读理解、知识图谱、文本分类)
- PaperWeekly 第二十期 - GAN(Generative Adversarial Nets)研究进展
- PaperWeekly 第二十一期 - 多模态机器翻译
- PaperWeekly 第二十二期 - Image Caption 任务综述
- PaperWeekly 第二十三期 - 机器写诗
- PaperWeekly 第二十四期 - GAN for NLP
- PaperWeekly 第二十五期 - 增强学习在 image caption 任务上的应用
- PaperWeekly 第二十六期 - 2016 年最值得读的 NLP paper 解读(3 篇)+在线 Chat 实录
- PaperWeekly 第二十七期 | VAE for NLP
- PaperWeekly 第 28 期 | 图像语义分割之特征整合和结构预测
- PaperWeekly 第 29 期 | 你的 Emoji 不一定是我的 Emoji
- PaperWeekly 第 30 期 | 解读 2016 年最值得读的三篇 NLP 论文 + 在线 Chat 实录
- PaperWeekly 第 31 期 | 远程监督在关系抽取中的应用
- PaperWeekly 第 32 期 | 基于知识图谱的问答系统关键技术研究 #01
- PaperWeekly 第 33 期 | 基于知识图谱的问答系统关键技术研究 #03
- PaperWeekly 第 34 期 | VAE 在 chatbot 中的应用
- PaperWeekly 第 35 期 | 如何让聊天机器人懂情感 PaperWeekly 第 35 期 | 如何让聊天机器人懂情感
- PaperWeekly 第 36 期 | Seq2Seq 有哪些不为人知的有趣应用?
- PaperWeekly 第 37 期 | 论文盘点:检索式问答系统的语义匹配模型(神经网络篇)
- PaperWeekly 第 38 期 | SQuAD 综述
- PaperWeekly 第 39 期 | 从 PM 到 GAN - LSTM 之父 Schmidhuber 横跨 22 年的怨念
- PaperWeekly 第 40 期 | 对话系统任务综述与基于 POMDP 的对话系统
- PaperWeekly 第 41 期 | 互怼的艺术:从零直达 WGAN-GP
- PaperWeekly 第 42 期 | 基于知识图谱的问答系统关键技术研究 #04
- PaperWeekly 第 43 期 | 教机器学习编程
- PaperWeekly 第 44 期 | Kaggle 求生
- PaperWeekly 第 45 期 | 词义的动态变迁
- PaperWeekly 第 46 期 | 关于远程监督,我们来推荐几篇值得读的论文
- PaperWeekly 第 47 期 | 开学啦!咱们来做完形填空:“讯飞杯”参赛历程
- 深度强化学习实战:Tensorflow 实现 DDPG - PaperWeekly 第 48 期
- 评测任务实战:中文文本分类技术实践与分享 - PaperWeekly 第 49 期
- 从 2017 年顶会论文看 Attention Model - PaperWeekly 第 50 期
- 深入浅出看懂 AlphaGo Zero - PaperWeekly 第 51 期
- PaperWeekly 第 52 期 | 更别致的词向量模型:Simpler GloVe - Part 1
- PaperWeekly 第 53 期 | 更别致的词向量模型:Simpler GloVe - Part 2
- 基于神经网络的实体识别和关系抽取联合学习 | PaperWeekly #54
PaperWeekly 第九期 -- 浅谈 GAN
引言
深度生成模型基本都是以某种方式寻找并表达(多变量)数据的概率分布。有基于无向图模型(马尔可夫模型)的联合概率分布模型,另外就是基于有向图模型(贝叶斯模型)的条件概率分布。前者的模型是构建隐含层(latent) 和显示层(visible) 的联合概率,然后去采样。基于有向图的则是寻找 latent 和 visible 之间的条件概率分布,也就是给定一个随机采样的隐含层,模型可以生成数据。
生成模型的训练是一个非监督过程,输入只需要无标签的数据。除了可以生成数据,还可以用于半监督的学习。比如,先利用大量无标签数据训练好模型,然后利用模型去提取数据特征(即从数据层到隐含层的编码过程),之后用数据特征结合标签去训练最终的网络模型。另一种方法是利用生成模型网络中的参数去初始化监督训练中的网络模型,当然,两个模型需要结构一致。
由于实际中,更多的数据是无标签的,因此非监督和半监督学习非常重要,因此生成模型也非常重要。本篇主要介绍一种基于对抗模式的生成模型,GAN - 从第一篇提出此模型的论文开始,之后紧接着两篇基于它的实现以及改进。三篇文章一脉相承,可以看到结合这种模型的研究进展及方向。
Generative Adversarial Nets
作者
Ian J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, Yoshua Bengio
单位
Universite of Montreal
关键词
生成模型 (Generative model)
文章来源
NIPS 2014
问题
通过模拟对抗过程,提出一种新的生成模型框架
模型
- 建模
在对抗生成模型中,同时训练两个网络,第一个网络是生成网络,G(z),输入 z 一般是来自常见概率分布函数的样本向量,维度一般比较低,比如 100。生成网络输入向量 z,输出图片样例,如果使用卷机网实现的话,整个网络可以看过一个反向的 CNN,其中的卷积层替换成 transposed convolution layer。第二个网络是识别网络 discriminator net - D(x),输入为一张图片 x,而输出为一个标量,用来代表 x 来自真实图片的概率。
- 训练
整个网络的 loss 定义为
V = E’[log D(x)] + E’’[log (1 - D(G(z)) )]
E’ - 当 x 来自真实数据的期望
E’’ - 当 x 来自生成网络的期望
很显然,在对抗网络中,生成模型希望能够增大 D(G(z)),即,希望生成的图片越真实而让识别模型“误以为”是来自真实的图片集。
如果生成网络 G 的参数用 theta 表示,识别模型的参数用 theta_d 表示,在使用 SGD 训练的时候,两组参数分别进行训练,对于 D 来说,需要对上面的公式求 Gradient,但是只更新自己的参数。对 G 来说,只有第二项是相关的,而且可以等效的转换为 maximize log D(G(z))。两个网络的参数更新交替进行。
资源
网上有很多实现,比如:
goodfeli/adversarial : Theano GAN implementation released by the authors of the GAN paper.
Newmu/dcgan_code : Theano DCGAN implementation released by the authors of the DCGAN paper.
carpedm20/DCGAN-tensorflow : Unofficial TensorFlow DCGAN implementation.
这些实现一般都会包含 MNIST 测试集。
相关工作
其他的生成模型包括 restricted Boltzmann machine (RBM), deep Boltzmann machine (DBM) 以及 variational autoencoder
简评
其他生成模型中训练过程涉及 intractable 的计算,在实际实现时往往采取马尔可夫链模特卡洛采样(MCMC)。对抗生成模型(GAN) 则不需要,整个网络的训练可以使用 backpropagation 来实现。
缺点包括训练不稳定,生成网络会塌陷到某些数据点(比如这些数据点目前看最像真实数据,生成网络会不停生成这些数据点),接下来的几篇中将提及如何改进。
[Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks] ( https://arxiv.org/abs/1511.06434 )
作者
Alec Radford, Luke Metz, Soumith Chintala
单位
关键词
DCGAN, Representation Learning
文章来源
ICLR 2016
问题
基于深度卷积网络的生成对抗模型(DCGAN) 实现
模型
在 GAN 的论文中提出的对抗模型的原型,但是对抗模型是一个大的框架,并不局限于某种网络实现。本文给出了基于卷机网的实现。
生成网络
其中反卷积的过程是
识别网络是传统的 CNN
简评
本文紧密承接上篇论文,描述了实现过程中的细节,比如参数设置。也提到了解决 GAN 中训练不稳定的措施,但是并非完全解决。文中还提到利用对抗生成网络来做半监督学习。在训练结束后,识别网络可以用来提取图片特征,输入有标签的训练图片,可以将卷基层的输出特征作为 X,标签作为 y 做训练。
Improved Techniques for Training GANs
作者
Tim Salimans, Ian Goodfellow, Wojciech Zaremba, Vicki Cheung, Alec Radford, Xi Chen
单位
OpenAI
关键词
DCGAN
文章来源
ICLR 2016
问题
提出改进 DCGAN 的措施
模型
这篇论文同样跟前文非常紧密,具体针对 DCGAN 中的问题,提出了改进方法。具体有
- feature matching 解决训练不稳定 instability 的问题
- minibatch discrimination 解决生成网络生成图片集中的问题,原理是让识别网络一次看一组图片,而不是一张图片
- 如果对实现感兴趣,其他改进细节可以参见论文
简评
对抗生成网络的模型很有意思,Bengio, Hinton 等都表达了很高的评价。相对其他生成模式而言,对抗生成模式模型清晰简单,目前来看效果也比较不错。但是目前对抗生成网络也有很多问题,比如生成模型是通过来自概率分布的向量生成样本,而不是直接表示输入的概率分布,因此,生成的图片可能不稳定之类。此外,希望能看到 GAN 在语言模型中的应用。
总结
GAN 这种模型非常新颖,从论文中的结果来看,在图像生成上取得了不错的效果,对于 MNIST 这种简单的图形数据集,生成的图片已经可以“以假乱真”。对于另外的图片,比如在第二篇论文中的 LSUN bedroom 图片集以及人脸图片集上,生成的图片效果也不错(分辨率 64×64)。
GAN 目前来看已经卷积网络图像生成中取得了不错的效果,但是还有很多问题需要继续研究改进, 比如
如何生成高像素高质量的图片。目前一般像素不超过 64。
如何提高复杂图片的质量。目前在 CIFAR,ILSVRC 等图片集上训练生成的图片还是很糟糕。
如何提高整个模型的稳定性。在实际中,尤其对于复杂图形,生成器经常很快收敛到某些单个数据集,使得整个模型的训练陷入僵局。
如何在其他领域,比如 NLP 使用 GAN,如何将 GAN 和 LSTM 结合的。目前来看,还没有成功的应用。原文作者在 reddit 上回答内容来看,由于 GAN 的输入是采样自连续分布,而 NLP 中,每个单词的表达往往是离散的,作者提到 NLP 可以用增强训练的方法替代。但是也不排除可以有其他方法将 GAN 和 LSTM 结合起来的,这也是以后的一个研究点。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论