ARTICLE
长短期记忆网络
长短期记忆网络 (LSTM) 长短期记忆网络(Long Short-Term Memory, LSTM)是一种特殊的循环神经网络(RNN)架构,由 Hochreiter 和 Schmidhuber 于 1997 年提出,专门设计用于解决传统 RNN 在处理长序列时面临的梯度消失和梯度爆炸问题。LSTM 的核心创新在于引入了一个"细胞状态"(Cell Stat
长短期记忆网络 (LSTM)
长短期记忆网络(Long Short-Term Memory, LSTM)是一种特殊的循环神经网络(RNN)架构,由 Hochreiter 和 Schmidhuber 于 1997 年提出,专门设计用于解决传统 RNN 在处理长序列时面临的梯度消失和梯度爆炸问题。LSTM 的核心创新在于引入了一个"细胞状态"(Cell State)和三个门控机制,使得网络能够学习何时记住、何时遗忘信息,从而有效地捕捉长期依赖关系。
传统 RNN 的局限
标准 RNN 通过将前一时刻的隐藏状态与当前输入结合来传播信息:。然而,当序列变长时,反向传播中的梯度要么趋于零(梯度消失),要么指数爆炸(梯度爆炸)。这使得网络几乎无法学习相隔较远的时间步之间的依赖关系。LSTM 通过引入恒定的误差流(Constant Error Carousel,CEC)机制从根本上解决了这一问题。
LSTM 的核心架构
LSTM 单元在每个时间步 维护三个关键向量:遗忘门 、输入门 、输出门 ,以及细胞状态 和隐藏状态 。每个门都是一个逻辑函数(sigmoid)激活的全连接层,输出值在 之间,控制信息的通过比例。
遗忘门决定从细胞状态中丢弃哪些信息:
输入门决定哪些新信息存储到细胞状态中。它由两部分组成:一个 sigmoid 层决定更新哪些值,一个 层生成新的候选细胞状态 :
随后,旧的细胞状态 被更新为新的细胞状态 ——这是 LSTM 最关键的操作,通过逐元素的线性运算实现梯度的长距离流动:
输出门基于更新后的细胞状态决定输出什么:
其中 表示逐元素乘法(哈达玛积)。
梯度流动与长期记忆
LSTM 通过加法操作 而非矩阵乘法来更新细胞状态,这使得梯度在反向传播时可以不受阻碍地流过多层。当遗忘门 接近 1 且输入门 接近 0 时,细胞状态的信息可以被完整地保留到后面的时间步。这一设计使得 LSTM 在超过 1000 个时间步的序列上仍能有效训练,相比之下,传统 RNN 在序列长度超过 10-20 时就会出现明显的梯度衰减。
变体与应用
LSTM 有多种变体。窥视孔连接(Peephole Connections)允许门层直接查看细胞状态;Gers 和 Schmidhuber(2000)证明这有助于学习更精确的时间模式。门控循环单元(GRU)是 Cho 等人提出的简化版本,将遗忘门和输入门合并为"更新门",参数量更少但在大多数任务上表现相近。
在应用层面,LSTM 长期主导了自然语言处理领域,被广泛用于机器翻译、情感分析和语音识别。Google 的神经网络机器翻译系统(GNMT)和Apple 的 Siri 语音识别引擎都曾深度依赖 LSTM。在金融预测中,LSTM 被用于股票价格预测、波动率建模和信用评分等任务,因其能够捕捉市场数据中的长期动态模式。尽管Transformer架构自 2017 年以来在许多序列建模任务上逐渐取代了 LSTM,但 LSTM 在时间序列预测、异常检测和边缘设备推理等场景中仍然广泛使用,因其推理效率高、延迟低且可解释性更强。