论文学习笔记 - BIRNN - 1

  单向RNN(forward和backward)只利用了序列数据其中一个方向的信息(left-to-right或者right-to-left),信息量不够,在很多任务中往往达不到性能要求。要想提高模型性能就要尽可能多的利用数据信息,该如何利用序列两个方向上的信息?至少有2种方式可以利用序列数据两个方向上的信息,一是merge两个不同方向的RNN,二是BiRNN。

Merge

  Merge是指组合两个独立的单向RNN的预测结果。即分别独立训练两个RNN,一个forward,提取left-to-right方向上的特征,而另一个backward,提取right-to-left方向上的特征,最后将两个RNN的预测输出按照某种方式组合,比如线性等。

  此种方式利用了两个单向RNN的特征信息,类似于一种学习多个弱分类模型,将其组合在一起来共同完成任务。

论文学习笔记 - BIRNN - 1_第1张图片

           图1  单向RNN结构图

BiRNN

  BiRNN是指组合两个独立的单向RNN的输出状态,再将组合之后的网络状态通过一层或多层网络映射到预测结果。与merge结构相同的是,两个单向RNN,一个forward,用于提取left-to-to-right的特征,一个backward,用于提取right-to-left的特征。

论文学习笔记 - BIRNN - 1_第2张图片

                      图 2 BiRNN结构图

 

MergeBiRNN

  Merge和BiRNN两种网络结构利用的序列信息量还是不同的,相比于merge,BiRNN利用信息量更大。

  两者都是组合两个单向的RNN,每个RNN提取不同方向上的特征,且最终预测结果都有left-to-right和right-to-left的特征。

  然而,在一个时刻,merge的网络状态中有两个单向独立的RNN状态,分别只提取了一个方向上的特征。BiRNN有一个网络状态,其同时组合了两个方向上的信息,相比而言,信息的利用程度比merge要深。但是BiRNN要比merge结构要复杂。

 

参考文献:

Dzmitry Bahdanau, KyungHyun Cho, Yoshua Bengio. NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE

Mike Schuster and Kuldip K. Paliwal, Member, IEEE. Bidirectional Recurrent Neural Networks

你可能感兴趣的:(论文学习笔记,深度学习)