3 LSTM模型
-
学习目标:
-
了解LSTM内部结构及计算公式.
-
掌握Pytorch中LSTM工具的使用.
-
了解LSTM的优势与缺点.
-
-
LSTM(Long Short-Term Memory)也称长短时记忆结构, 它是传统RNN的变体, 与经典RNN相比能够有效捕捉长序列之间的语义关联, 缓解梯度消失或爆炸现象. 同时LSTM的结构更复杂, 它的核心结构可以分为四个部分去解析:
-
遗忘门
-
输入门
-
细胞状态
-
输出门
-
-
3.1 LSTM的内部结构图:
-
结构解释图:
-
多个隐藏层
-
3.1.1 遗忘门部分结构图与计算公式:
-
3.1.2 遗忘门结构分析:
-
与传统RNN的内部结构计算非常相似, 首先将当前时间步输入x(t)与上一个时间步隐含状态h(t-1)拼接, 得到[x(t), h(t-1)], 然后通过一个全连接层做变换, 最后通过sigmoid函数进行激活得到f(t), 我们可以将f(t)看作是门值, 好比一扇门开合的大小程度, 门值都将作用在通过该扇门的张量, 遗忘门门值将作用的上一层的细胞状态上, 代表遗忘过去的多少信息, 又因为遗忘门门值是由x(t), h(t-1)计算得来的, 因此整个公式意味着根据当前时间步输入和上一个时间步隐含状态h(t-1)来决定遗忘多少上一层的细胞状态所携带的过往信息.
-
-
遗忘门内部结构过程演示:
-
3.1.3 激活函数sigmiod的作用:
-
用于帮助调节流经网络的值, sigmoid函数将值压缩在0和1之间.
-
-
3.2 输入门部分结构图与计算公式:
-
3.2.1 输入门结构分析:
-
我们看到输入门的计算公式有两个, 第一个就是产生输入门门值的公式, 它和遗忘门公式几乎相同, 区别只是在于它们之后要作用的目标上. 这个公式意味着输入信息有多少需要进行过滤. 输入门的第二个公式是与传统RNN的内部结构计算相同. 对于LSTM来讲, 它得到的是当前的细胞状态, 而不是像经典RNN一样得到的是隐含状态.
-
-
输入门内部结构过程演示:
-
3.3 细胞状态更新图与计算公式: