循环神经网络(RNN,recurrent neural network)是一类扩展的人工神经网络,它是为了对
序列数据进行建模而产生的。
1、前导知识
命名实体识别任务



2、循环神经网络的内部构造
2.1 网络内部计算过程


2.2 循环神经网络遇到的问题
深层面临的问题
- 当网络层次越来越深的时候(序列越来越长)就可能产生:
- 梯度爆炸
- 梯度消失
- 当网络层次越来越深的时候(序列越来越长)就可能产生:
循环神经网络深层面临的问题
The cat , which aleardy ate apples banana …, was full.
The cats, which aleardy ate apples banana …, were full.
正确的预测可能依赖于很久之前的某些信息,然而,RNN的预测受到的主要影响是较为靠近的词的影响

3、经典循环神经网络
3.1 LSTM



1)LSTM第一步
2)LSTM第二步
3)LSTM第三步
4)LSTM第四步

3.2 GRU


3.3 RNN、GRU、LSTM的对比
RNN vs. GRU vs. LSTM

4、循环神经网络的变体
4.1 双向循环网络(Bi-directional RNNs)
- RNN处理输入序列既可以从正向处理信息,也同时从反向处理信息

4.2 深层循环网络(Multi-layer RNNs)
- 在复杂应用场景下可以使用多层循环网络
- 也就是单层循环网络的堆叠
