VALSE

查看: 4972|回复: 0

【VALSE前沿技术选介16-03期】

[复制链接]

124

主题

124

帖子

2260

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2260
发表于 2016-3-8 12:45:53 | 显示全部楼层 |阅读模式
http://mp.weixin.qq.com/s?__biz=MzA3Mjk0OTgyMg==&mid=402057350&idx=1&sn=e7d1a75a66a6cd56e1c33f8b0f225a5d#rd

【VALSE前沿技术选介16-03期】


如果说 RNN 现在已经不能更火爆,那么在 RNN 基础上做出的各种模型上的改进是否更值得被关注?如果说自 Deep Learning 刷新了图像分类的错误率后还有什么更让人振奋的事情,那就是图像生成了。基于上述两个热点,今天要为大家推荐和介绍的是近期的一篇论文《Generating Images with Recurrent Adversarial Networks》。推荐的两大原因是它主要是在一个名为 Generative Adversarial Networks(GAN)的模型上做出的改进,第二原因是它为 GAN 这种 generative models 提出了一种新的 evaluation method。
既然是图像生成,就要考虑 generative models。过去的两三年中出现的 generative models 主要可被归于两类。一类是基于 Variational AutoEncoder(VAE),其优点是改变了 AutoEncoder 中很容易过拟合的 reconstruction error based learning 的方法,将学习的目标变成去尽可能满足某个预设的先验分布的性质。然而,可以看出,这种需要“假设先验分布”的方式仍然有局限。而第二类 generative models,Generative Adversarial Networks(GAN)则较好地避开了这个问题。GAN 启发自博弈论中的纳什均衡,其包含一对模型——一个生成模型(G)和一个判别模型(D)。用一个很经典的比喻就是,生成模型(G)就像小偷,要尽可能地提高自己的偷窃手段去欺骗身为警察的判别模型(D),而D也要尽可能地训练自己的火眼金睛去防止被欺骗。所以,真正的学习过程就变成了一种生成模型(G)和判别模型(D)之间的竞争过程——随机从真实样本和由生成模型(G)生成出的“假样本”中取一个,让判别模型(D)去判断是否为真。所以,体现在公式上,就是下面这样一个 minmax 的形式。
QQ截图20160308123811.png
从上面的描述中可以看出,GAN 这种竞争的方式不再要求一个假设的数据分布,从而真正达到了理论上可以完全逼近真实数据。然而,everything has a price. 这种不需要预先建模的方式的缺点就是在于它太过自由了,对于较大的图片,较多的 pixel 的情形,基于简单 GAN 的方式就不太可控了。这时候,一个自然的想法就是不要让 GAN 一次完成全部任务,而是一次生成一部分,分多次生成一张完整的图片。Sounds familiar?对啊,就是去年 DeepMind 大火的一个工作 DRAW[1] 的思想咯。DRAW[1] 中指出,我们人类在完成一幅图画时,都不一定是一笔完成的,我们又为何要求机器能做到呢?所以 DRAW 用了一种 sequential VAE 的模型,让机器一点点“写”出了一个个数字。而今天要推荐的这篇论文又和 DRAW 有着非常多的相似点。
Sequential models 的好处便是可以让下一步的 model 利用上一步得到的结果,在之前的结果上做出修改,类似于一种 conditional 的方式。为了让 GAN 也拥有这种 sequential 的能力,他们将把 GAN 和 LSTM 结合,称为 GRAN,使其分割成了 step by step 的过程。每一个 step 中,就像 LSTM 的 cell 一样,都有一个 QQ截图20160308124005.png ,这个决定的是 what to draw,也就是画的 content,也是每一个 step 的 output;同时,就像 LSTM 中的 hidden states 一样,这里也有 QQ截图20160308124057.png 与简单的 LSTM 不同的是,这里决定每个 cell 内容,也就是的不仅仅是 hidden states,还有一个 “hidden of prior”,是专属于 GAN 中的生成模型 G 的一个先验 QQ截图20160308124214.png QQ截图20160308124308.png 拼接(concatenate)之后共同决定当前 step 的 update——what to draw。
QQ截图20160308124408.png
并且,因为完美利用了 gradient of convolution 还是 convolution 的性质,这个改造后的 GRAN 可以将每次的求导看做一次 decoding 过程,而每次的 convolution 等操作变成 encoding 过程,也就可以因此对应到 DRAW 中的 decoder 和 encoder 部分。而 GAN 和 DRAW 最大的不同之处便在于,GAN 中在计算 loss 时是在 hidden space 中,而 DRAW 是在原始 input space 中。
QQ截图20160308124510.png
那么在实验中,这篇论文也确实证明了 sequential models(multi-step)生成的图像比 single step 的要好。只不过,generative models 的 evaluation 还比较模糊,所以实验结果上并不能很好地和以前的 GAN 或者相关方法做比较。接下来另一个重点来了,这篇论文的一个创新便是提出了一种 GAN 这种特殊 generative models 的评价方法。过去用于评价 generated image 的 Parzen Windows 或者 manual evaluation 等方法都各有各的缺点。这篇论文提出,既然本来就是竞争模型,可以让两组 GAN 互相“竞争”评价。互为评委,互为选手。下面这个配图也是挺萌的……
QQ截图20160308124854.png
最后说说缺点吧,现阶段来看这个模型的可扩展性还不是那么好,尽管说是 step by step 的,在最后的实验中也只用了几个 discrete step 做实验,[1,3,5,] 这样。
[1] Karol Gregor, Ivo Danihelka, Alex Graves, Danilo Jimenez Rezende, Daan Wierstra. “DRAW: A Recurrent Neural Network For Image Generation”. ICML 2015.



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|Vision And Learning SEminar

GMT+8, 2024-4-26 00:56 , Processed in 0.020016 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表