RNN、LSTM和GRU网络原理

RNN(Recurrent Neural Networks)基本模型:

 

RNN、LSTM和GRU网络原理

RNN计算公式:

RNN、LSTM和GRU网络原理

RNN、LSTM和GRU网络原理

通过反向传播计算所有W和b。

 

多种RNN:根据实际应用场景的不同,衍生出多种RNN结构

RNN、LSTM和GRU网络原理

两种多对多模型:命名体识别(RNN基本模型Tx=Ty)、机器翻译(encode-decode编码器-解码器)

多对一:情感分析                                             一对多:语音生成

 

     RNN的问题是,前一次的预测值y<1>会影响下一次的y<2>,但是很难影响到更远的y<5>、y<6>,也就是RNN不擅长处理长期依赖问题,容易出现梯度消失。针对RNN的缺陷,提出优化模型LSTM、GRU,基本思路是在隐藏层a<t>公式加入控制结构。

 

GRU(Gated Recurrent Unit)基本模型图

RNN、LSTM和GRU网络原理

计算公式:在RNN的a<t>公式上加控制

原公式的a<t>换成c<t>,   RNN、LSTM和GRU网络原理

增加一个门控公式,        RNN、LSTM和GRU网络原理

两个公式的结果联合共同门控,得到最终的c<t>,   RNN、LSTM和GRU网络原理

如果RNN、LSTM和GRU网络原理=1,则c<t>=RNN、LSTM和GRU网络原理,就是RNN基本类型。

如果RNN、LSTM和GRU网络原理=0,则c<t-1>=c<t>,相当于a<0>=a<1>,隐藏层不更新,直接往下传到很远,这种设计缓解了长距离信息传不到。

实际的RNN、LSTM和GRU网络原理只会取接近0或1的值,不会直接取到0或1。

 

LSTM基本模型图

RNN、LSTM和GRU网络原理

计算公式:也是在RNN的a<t>公式上加控制

a<t>、c<t>两路信息并行,   RNN、LSTM和GRU网络原理

更新门、遗忘门、输出们,三个门的公式分别:RNN、LSTM和GRU网络原理RNN、LSTM和GRU网络原理RNN、LSTM和GRU网络原理 = RNN、LSTM和GRU网络原理

两个公式的结果联合共同门控,得到最终的c<t>和a<t>,

 RNN、LSTM和GRU网络原理

RNN、LSTM和GRU网络原理

 

双向RNN(Bidirectional RNN)

RNN、LSTM和GRU网络原理

将RNN基本型公式的y<t>   

RNN、LSTM和GRU网络原理

 

RNN演化趋势:1)长距离依赖,双向同时获取上下文信息,2) 注意力机制部分信息重点学习

 

RNN扩展转载此博客:

https://blog.****.net/red_stone1/article/details/79446105