在开始之前,首先区分下均命名为RNN,新手很容易混淆的两大神经网络:循环神经网络(Recurrent Neural Network,RNN)和递归神经网络(Recurssion Neural Network,RNN)。
递归神经网络(RNN)是空间上的展开,处理的是树状结构的信息,模型结构如下:
循环神经网络(RNN)是时间上的展开,擅长处理以时间序列数据作为输入的预测问题, 其原因在于 RNN 的网络结构可以处理时间序列数据之间的相关性。模型结构如图所示,包括输入层 x、隐藏层 h、输出层 o,在隐藏层 h 上有一个循环操作,同时 RNN 在所有时刻的线性关系参数 U、 W、 V 都是共享的, 极大地减少了参数训练量.。图 (b) 为 RNN 展开结构图, 可以看到 RNN 通过权值 W 实现隐藏层之间的依赖关系。
1、长短期记忆神经网络LSTM
长短期神经网络(long short term memory,LSTM)是循环神经网络(RNN)的一种。实际应用中发现RNN 存在诸如梯度消失、梯度爆炸以及长距离依赖信息能力差等问题,因此引入了 LSTM。LSTM 在主体结构上与 RNN 类似,其主要的改进是在隐藏层