http://blog.csdn.net/pipisorry/article/details/78246220

双向RNN:BRNN模型(Bidirectional RNN)

BRNN(Bi-directional RNN)由 Schuster 在"Bidirectional recurrent neural networks, 1997"中提出,是单向 RNN 的一种扩展形式。普通 RNN 只关注上文,而 BRNN 则同时关注上下文,能够利用更多的信息进行预测。

结构上, BRNN 由两个方向相反的 RNN 构成,这两个 RNN 连接着同一个输出层。BRNN不仅接受上一个时刻的隐层输出作为输入,也有接受下一个时刻的隐层输出作为输入;这就达到了上述的同时关注上下文的目的。其具体结构图如下

深度学习:循环神经网络RNN的变体深度学习:循环神经网络RNN的变体深度学习:循环神经网络RNN的变体

Structure of a bidirectional recurrent neural network as described by Schuster and Paliwal in Schuster and Paliwal [1997].

BRNN与语言模型

对于语言模型来说,很多时候光看前面的词是不够的,比如下面这句话:

我的手机坏了,我打算____一部新手机。

可以想象,如果我们只看横线前面的词,手机坏了,那么我是打算修一修?换一部新的?还是大哭一场?这些都是无法确定的。但如果我们也看到了横线后面的词是『一部新手机』,那么,横线上的词填『买』的概率就大得多了。

基本循环神经网络是无法对此进行建模的,因此,我们需要双向循环神经网络。

BRNN前向推导

深度学习:循环神经网络RNN的变体

某小皮



深度循环神经网络

前面我们介绍的循环神经网络只有一个隐藏层,我们当然也可以堆叠两个以上的隐藏层,这样就得到了深度循环神经网络。如下图所示:

深度学习:循环神经网络RNN的变体

深度学习:循环神经网络RNN的变体

from:http://blog.csdn.net/pipisorry/article/details/78246220

ref:


分类:

技术点:

相关文章: