1 简介
-
概念
LSTM(Long Short-Term Memory)也称为长短期记忆网络,是一种改进的循环神经网络(RNN),专门设计用于解决传统RNN的梯度消失问题和长程依赖问题。LSTM通过引入门机制和细胞状态,能够更好地捕捉长序列数据中的长期依赖关系。
-
核心思想
通过引入门机制(输入门、遗忘门、输出门)和细胞状态(Cell State)来控制信息的流动,从而决定哪些信息需要保留、哪些信息需要丢弃。
-
内部结构
遗忘门:决定了哪些信息应该被丢弃(即遗忘)。它读取当前输入和前一时刻的隐藏状态,然后输出一个0到1之间的数值,表示当前时刻的信息应当保留或丢弃的比例。
输入门:决定了哪些信息需要被存储到当前的单元状态中。通过这个门来更新单元状态的记忆。
细胞状态:可以将其视为一条贯穿整个网络的"传送带",携带长期记忆;信息通过细胞状态传递,并由各个门控机制选择性地修改。
输出门:控制从单元状态到隐藏状态的信息流出,决定当前的隐藏状态输出多少细胞状态的内容。
2. LSTM的内部结构图
2.1 整体内部结构
2.2 遗忘门结构图
2.3 输入门结构图
2.4 细胞状态更新图
细胞更新的结构与计算公式非常容易理解,这里没有全连接层,只是将刚刚得到的遗忘门门值与上一个时间步得到的Ct−1相乘,再加上输入门门值与当前时间步得到的未更新Ct相乘的结果。最终得到更新后的Ct作为下一个时间步输入的一部分。整个细胞状态更新过程就是对遗忘门和输入门的应用。
注意:由于当前记忆状态和上一次的记忆状态不是相乘而是相加,则解决了RNN中容易梯度保证的问题。
2.4 输出门结构图
3. 优缺点总结:
-
LSTM的优点:
- 能够捕捉长期依赖:通过门控机制,LSTM能够记住长期的依赖关系,解决了传统RNN无法记住长期信息的问题。
- 避免梯度消失
- 细胞状态 Ct 的更新公式中,Ct−1 和 Ct 之间是线性关系(通过遗忘门 ft 控制)
- LSTM的梯度主要通过细胞状态 Ct 传播,而细胞状态的更新是线性的,梯度路径更加稳定
- 线性关系避免了梯度在时间步之间的连乘,从而缓解了梯度消失问题
- 灵活的记忆控制:LSTM通过遗忘门和输入门灵活地控制信息的传递,使得模型能够记住有用的信息,并丢弃不必要的信息。
-
LSTM的缺点:
- 计算开销较大,由于包含多个门的计算,训练和推理时需要更多的计算资源
- 相对于简单的RNN和GRU(门控递归单元),LSTM较为复杂,调参时需要更多的时间和精力