【深度学习】深入理解长短期记忆网络 LSTM

文章目录

  • [一、LSTM 网络概述](#一、LSTM 网络概述)
    • [1. 什么是 LSTM 网络](#1. 什么是 LSTM 网络)
    • [2. RNN 网络的基础结构](#2. RNN 网络的基础结构)
    • [3. Tanh 双曲正切函数](#3. Tanh 双曲正切函数)
    • [4. Sigmoid 函数](#4. Sigmoid 函数)
  • [二、LSTM 网络内部结构](#二、LSTM 网络内部结构)
    • [1. 遗忘门](#1. 遗忘门)
    • [2. 输入门](#2. 输入门)
    • [3. 输出门](#3. 输出门)

一、LSTM 网络概述

1. 什么是 LSTM 网络

LSTM 网络,全称为长短期记忆网络(Long Short‑Term Memory),是循环神经网络(RNN)的一种经典变体。它的大部分基础架构与标准 RNN 一致,但通过重新设计隐状态 h 的更新方式,有效缓解了传统 RNN 在处理长序列时容易出现的梯度弥散或梯度激增问题。LSTM 的核心创新在于引入了带自循环的"细胞状态"通道,使得信息能够在时间步之间选择性地持续传递或被舍弃,从而具备捕捉远距离时序依赖关系的能力。

生活类比:

假设你在浏览某电商平台的商品评论区,打算根据买家反馈决定是否下单。当你快速翻阅大量评论时,大脑会下意识地记住一些关键形容词,比如"性价比高""做工精细"或"物流很快",而自动忽略"了""的""吗"等虚词。第二天朋友问起这些评论的内容,你肯定不会逐字复述,而是概括出印象最深的几个结论,例如"质量不错,值得购买"。那些无关紧要的细节早已从你的短期记忆中淡出,这正是注意力与遗忘机制的直观体现。

2. RNN 网络的基础结构

如下图所示,RNN 按时间步依次处理输入序列:每个单词的词向量首先与上一时刻的隐状态结合,经过线性变换和 tanh 激活函数后,得到当前时刻的隐状态,再传递给下一时刻。如此反复,直到最后一个输入处理完毕,最终产生整体输出。

3. Tanh 双曲正切函数

该激活函数将输入值压缩至 (-1, 1) 区间,起到非线性映射和数值归一化的作用,常用于控制状态更新的幅度。

4. Sigmoid 函数

Sigmoid 函数将输入映射到 (0, 1) 范围,其输出可解释为"门控信号"的开启程度,0 表示完全关闭,1 表示完全打开,是 LSTM 中所有门控单元的基础激活函数。

二、LSTM 网络内部结构

LSTM 的精髓在于其内部的"细胞状态"(即记忆单元),该状态贯穿整个时间链,并由三种门控机制(遗忘门、输入门、输出门)协同调控信息的流入、保留与流出。

1. 遗忘门

当前输入 x 和上一时刻隐状态 h 分别与各自的权重矩阵 U、W 相乘,加上偏置后,送入 Sigmoid 激活函数,产生一个介于 0 和 1 之间的遗忘系数。随后,该系数与上一时刻的细胞状态 c(即"记忆仓库")进行点积运算,结果中接近 0 的部分会被丢弃,接近 1 的部分则得以保留。

初始时刻,细胞状态 c 为空。随着每个新词的输入,经过遗忘门筛选后,保留下来的重要信息会被逐渐添加到仓库中。这一过程反复进行,最终仓库中累积的即为整个序列的关键特征。

功能:决定从上一时间步的细胞状态中剔除哪些无用信息。

执行步骤:

将前一隐状态与当前输入共同输入 Sigmoid 函数,输出值越接近 0 表示越应遗忘,越接近 1 表示越应保留。

2. 输入门

功能:判断当前时刻的输入数据中有哪些新信息值得被存入细胞状态,从而完成状态的更新。

执行步骤:

① 将前一隐状态和当前输入同时送入 Sigmoid 函数,得到"更新权重",取值 0~1,用以评估各分量是否重要。

② 将同样的两份信息送入 tanh 函数,生成一个候选值向量(新知识的雏形)。

③ 将 Sigmoid 的输出(权重)与 tanh 的输出(候选值)逐元素相乘,只有被权重标记为重要的候选内容才被允许写入细胞状态。最终,这些筛选后的信息与原有状态相加,完成记忆的更新。

3. 输出门

功能:基于当前更新后的细胞状态,确定下一时刻的隐状态应当携带哪些信息,即决定最终要对外输出的内容。

执行步骤:

① 将前一隐状态和当前输入一同送入 Sigmoid 函数,得到一个输出门控信号。

② 将刚刚更新完毕的细胞状态送入 tanh 函数,将值缩放至 (-1, 1)。

③ 将 tanh 的输出与 Sigmoid 的输出相乘,得到当前时刻的隐状态。该隐状态既作为本时间步的输出,也会连同新的细胞状态一起传递给下一个时间步,继续参与后续的计算。

(此过程确保了每一步的输出都经过门控筛选,避免无关噪声干扰后续预测)

相关推荐
xiancai_xianyu8 小时前
企业本体语义:设备保养与供应商评估,为什么需要统一的语义模型?
大数据·人工智能
中微极客8 小时前
多模态AI实战:GPT-4o/Gemini/Claude 3对比与工程落地
人工智能
武子康8 小时前
GitHub Actions `pull_request_target` 与 Pwn Request:高权限工作流里的 Fork 代码执行风险(2026)
人工智能·github·ai编程
laboratory agent开发8 小时前
AI agent多知识源并存时,一致性为何总出偏差
大数据·人工智能
markvivv8 小时前
智能问数 Multi-Agent Harness 架构设计与实践
人工智能·harness
Jiamiren8 小时前
WEEX Labs 周度观察:AI 基础设施的“权力游戏”与硬核变现时代
人工智能·游戏
是上好佳佳佳呀8 小时前
【机器学习|DAY02】数据划分与特征工程
人工智能·机器学习
Database_Cool_9 小时前
AI Agent 应用数据库选型:阿里云 PolarDB-X 高并发分布式数据底座
数据库·人工智能·阿里云
中微极客9 小时前
从Prompt到RAG:LLM工程实战全链路解析
人工智能·python·prompt