论文阅读:How to Construct Deep Recurrent Neural Networks

来源:互联网 发布:局域网屏幕监控软件 编辑:程序博客网 时间:2024/06/05 09:46

原文地址

对一般前向传播网络的深度定义是不适用于RNN的,因为RNN的时序结构,当它依时序展开时,只要t够大,那么依照一般定义这都是一个deep RNN。
这里写图片描述
但是从上图可以看出,在一个单独的time step中,普通RNN的结构无论是input-to-hidden(xtht)还是hidden-to-hidden(ht1ht)还是hidden-to-output(htyt),他们都是shallow的——仅仅是输入的线性映射后面跟了一个element-wise的非线性激活函数,中间没有任何intermediate的非线性隐藏层。

下图中灰色椭圆为RNN原有结构,白色椭圆为加入的非线性层(如全连接层)
这里写图片描述

Deep Input-to-Hidden Function

通过加深模型的input-to-hidden层能够使模型更好的学习到数据的非时序结构(如空间结构),图2中没有相应的illustration。将CNN的输出作为RNN的输入个人觉得也可以分到这一类。

Deep Hidden-to-Output Function(DO)

文章说DO function可以用来disentangle the factors of variations in the hidden state,是的输出的预测更加容易。
若存在L个intermediate的非线性层,则DO RNN的yt更新公式为:
这里写图片描述

Deep Hidden-to-Hidden Transition(DT)

最简单的DT RNN如图2(b)所示。DT RNN增加了RNN hidden state的表达能力,使得模型能适应变化更加剧烈的输入。但是非线性的增加也可能使梯度传播变得困难。一种可行的解决方案是参照ResNet加入shortcut connection,如图2(b*)所示。
图2(c)表示同时使用DO和DT的RNN。
若存在L个intermediate的非线性层,则DT RNN的ht更新公式为:
这里写图片描述

Stack of Hidden States

如图2(d)所示,隐藏层的堆叠,但是并没有增加隐藏层的非线性所以仍然是浅层RNN,和DT RNN本质上是不同的。文中说这种堆叠结构能够可以处理输入序列的多种time scales,不太理解。DT-RNN和这种堆叠结构是可以同时使用的。
Stacked RNN的更新公式为:
这里写图片描述
其中h(l)t是第l层hidden state在时间t的状态,当l=1是,输入使用xt而不是h(l1)t。可以从更新公式看出堆叠结构和DT的不同。

阅读全文
0 0
原创粉丝点击