序列模型---LSTM(长短时记忆)

Posted lee-yl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了序列模型---LSTM(长短时记忆)相关的知识,希望对你有一定的参考价值。

一、RNN回顾

技术分享图片

略去上面三层,即o,L,y,则RNN的模型可以简化成如下图的形式:

技术分享图片

二、LSTM模型结构:

整体模型:

由于RNN梯度消失的问题,大牛们对于序列索引位置t的隐藏结构做了改进,可以说通过一些技巧让隐藏结构复杂了起来,来避免梯度消失的问题,这样的特殊RNN就是我们的LSTM。由于LSTM有很多的变种,这里我们以最常见的LSTM为例讲述。LSTM的结构如下图:

 技术分享图片

记忆细胞:

从上图中可以看出,在每个序列索引位置t时刻向前传播的除了和RNN一样的隐藏状态h(t),还多了另一个隐藏状态,如图中上面的长横线。这个隐藏状态我们一般称为细胞状态(Cell State),记为C(t)。如下图所示:

 技术分享图片

门控结构:

除了细胞状态,LSTM图中还有了很多奇怪的结构,这些结构一般称之为门控结构(Gate)。LSTM在在每个序列索引位置t的门一般包括遗忘门,输入门和输出门三种。下面我们就来研究上图中LSTM的遗忘门,输入门和输出门以及细胞状态。

  • 遗忘门:是控制是否遗忘的,在LSTM中即以一定的概率控制是否遗忘上一层的隐藏细胞状态。遗忘门子结构如下图所示:

技术分享图片

 

技术分享图片

  • 输入门:负责处理当前序列位置的输入,它的子结构如下图:

技术分享图片

 

技术分享图片

 

LSTM之细胞状态更新:

 在研究LSTM输出门之前,我们要先看看LSTM之细胞状态。前面的遗忘门和输入门的结果都会作用于细胞状态C(t)。我们来看看从细胞状态C(t1)如何得到C(t)。如下图所示:

技术分享图片

 我们把旧状态与ft相乘,丢弃掉我们确定需要丢弃的信息。接着加上itCt~。这就是新的候选值,根据我们决定更新每个状态的程度进行变化。

 技术分享图片

  •  输出门:有了新的隐藏细胞状态C(t),我们就可以来看输出门了,子结构如下:

技术分享图片

 

技术分享图片

 

三、LSTM的前向传播

技术分享图片

 

四、LSTM反向传播算法

技术分享图片

 技术分享图片

技术分享图片

 

以上是关于序列模型---LSTM(长短时记忆)的主要内容,如果未能解决你的问题,请参考以下文章

Keras深度学习实战(33)——基于LSTM的序列预测模型

深度学习多变量时间序列预测:LSTM算法构建时间序列多变量模型预测交通流量+代码实战

基于数据挖掘的长短期记忆网络模型油井产量预测方法

LSTM时间序列预测基于matlab深度学习的长短期记忆网络LSTM时间序列预测未来含Matlab源码 2345期

多层多输入的CNN-LSTM时间序列回归预测(卷积神经网络-长短期记忆网络)——附代码

长短时神经网络只适用于时序网络么