Long Short-Term Memory (LSTM)
探索长短期记忆(LSTM)网络。了解 LSTMs 如何解决 RNNs 中的梯度消失问题,应用于时间序列、NLP 和视频分析任务。
长短期记忆 (LSTM) 是一种专门的循环神经网络 (RNN)架构,能够学习序列预测问题中的顺序依赖关系。与标准前馈神经网络不同,LSTM 具有反馈连接,因此不仅可以处理单个数据点(例如图像),还可以处理完整的数据序列(例如语音或视频)。这一能力使其特别适合处理这类任务:理解当前数据时,必须依赖较早输入中的上下文,从而解决传统 RNN 的“短期记忆”局限性。
标准 RNN 的问题#
要理解 LSTM 的创新之处,了解基础循环神经网络面临的挑战会很有帮助。虽然 RNN 旨在处理序列信息,但由于梯度消失问题,它们难以处理较长的数据序列。当网络沿时间进行反向传播时,梯度(用于更新网络权重的值)可能呈指数级变小,实际上会阻止网络学习相距较远事件之间的联系。这意味着标准 RNN 可能记住前一句中的某个词,却忘记三段之前建立的上下文。LSTM 专门通过引入更复杂的内部结构来解决这一问题,该结构能够在更长时间内维持一个上下文窗口。
LSTM 的工作原理#
LSTM 背后的核心概念是细胞状态,它通常被描述为贯穿整个网络链的传送带。这种状态允许信息沿其不变地流动,从而保留长期依赖关系。网络通过称为门的结构,决定在细胞状态中存储、更新或丢弃哪些信息。
- 遗忘门: 这一机制决定哪些信息已不再相关,应从细胞状态中移除。例如,当语言模型遇到新的主语时,它可能会“忘记”前一个主语的性别。
- 输入门: 这一门决定哪些新信息足够重要,应存储到细胞状态中。
- 输出门: 最后,这一门控制内部状态的哪些部分应输出到下一个隐藏状态,并用于当前预测。
通过调节信息流,LSTM 可以跨越超过 1,000 个步骤的时间延迟,在需要时间序列分析的任务中远胜传统 RNN。
实际应用#
在过去十年中,LSTM 推动了深度学习领域的许多重大突破。以下是其应用的两个突出示例:
- 序列到序列的翻译建模: LSTM 是机器翻译系统的基础。在这种架构中,一个 LSTM(编码器)处理一种语言的输入句子(例如英语),并将其压缩成上下文向量。随后,第二个 LSTM(解码器)使用这一向量生成另一种语言的翻译(例如法语)。这种处理不同长度输入和输出序列的能力对于自然语言处理 (NLP)至关重要。
- 视频分析与活动识别: 虽然ResNet-50等卷积神经网络 (CNNs) 擅长识别静态图像中的对象,但它们缺乏时间感。通过将 CNN 与 LSTM 结合,AI 系统可以在视频流中执行动作识别。CNN 从每一帧中提取特征,LSTM 则分析这些特征的序列,以判断一个人是在走路、跑步还是摔倒。
将 LSTM 与计算机视觉集成#
在现代计算机视觉中,LSTM 通常与强大的特征提取器搭配使用。例如,你可以使用 YOLO 模型检测各帧中的对象,再使用 LSTM 跟踪它们的轨迹或预测未来运动。
下面是一个概念示例,使用 torch 定义一个简单的 LSTM,以处理从视频流中提取的特征向量序列:
import torch
import torch.nn as nn
# Define an LSTM model for processing sequential video features
# Input size: 512 (e.g., features from a CNN), Hidden size: 128
lstm_model = nn.LSTM(input_size=512, hidden_size=128, num_layers=2, batch_first=True)
# Simulate a batch of video sequences: 8 videos, 10 frames each, 512 features per frame
video_features = torch.randn(8, 10, 512)
# Pass the sequence through the LSTM
output, (hidden_state, cell_state) = lstm_model(video_features)
print(f"Output shape: {output.shape}") # Shape: [8, 10, 128]
print("LSTM successfully processed the temporal sequence.")相关概念与区别#
区分 LSTM 与其他序列处理架构会很有帮助:
- LSTM 与 GRU:门控循环单元 (GRU)是 LSTM 的一种简化变体。GRU 将遗忘门和输入门合并为一个“更新门”,并合并细胞状态与隐藏状态。这使 GRU 在计算上更高效、训练速度更快,不过在规模更大、更复杂的数据集上,LSTM 仍可能胜过 GRU。
- LSTM 与 Transformer:Transformer架构依赖自注意力机制而非循环,因此在由GPT-4执行的 NLP 任务等场景中已基本取代 LSTM。Transformer 可以并行处理完整序列,而不是按顺序处理,从而能够在海量数据集上实现更快的训练。不过,在数据有限或存在特定时间序列约束、无需承担注意力机制开销的场景中,LSTM 仍然具有重要价值。
演进与未来#
虽然注意力机制已在生成式 AI领域占据中心地位,但 LSTM 仍是轻量级应用的可靠选择,尤其适用于计算资源受限的边缘 AI环境。研究人员仍在探索混合架构,将 LSTM 的内存效率与现代目标检测系统的表示能力相结合。
对于希望管理用于训练序列模型或复杂视觉任务的数据集的用户,Ultralytics Platform提供了全面的标注和数据集管理工具。此外,了解 LSTM 的工作原理,可以为理解自动驾驶车辆和机器人技术中使用的更先进时序模型打下坚实基础。









