当前位置: 首页 > news >正文

循环神经网络系列算法原理与数学表达研究 ——RNN、LSTM 与 BiLSTM

RNN、LSTM、BiLSTM 详解:从设计动机到数学推导

Form:NLP-AHU-130

在处理文本、语音、时间序列这类带先后顺序的数据时,RNN、LSTM 和 BiLSTM 是深度学习领域最经典的三类循环神经网络。它们的演进逻辑非常清晰:RNN 解决了“怎么记住过去信息”,但很快暴露出梯度消失的问题;LSTM 用门控机制和细胞状态解决了长依赖;BiLSTM 则在此基础上,让模型能同时看到上下文信息。

下面我们从设计动机、核心结构、算法流程和数学公式四个维度,完整拆解这三个模型。


传统 RNN:序列建模的起点

设计灵感

RNN 的核心设计思想,来自于对人类时序记忆机制的模仿:当我们理解一句话时,每个词的含义都依赖它前面的语境。

  • 它引入了循环连接(隐藏层自环结构),让信息可以在时间维度上传递。
  • 模型在不同时间步共享同一组权重参数,大幅减少了参数量,同时天然适配变长序列输入。
致命缺陷:梯度消失/爆炸

虽然结构简单,但标准 RNN 在处理长序列时几乎无法有效训练:

  • 在反向传播过程中,梯度会随时间步的增加,经过矩阵乘法的反复作用而指数级衰减或放大。
  • 这导致模型无法学习到距离较远的序列依赖关系,只能记住最近几十步的信息,也就是我们常说的“短期记忆”。
核心结构与数学表达

设模型在第步的输入为,隐藏状态(记忆单元)为,输出为

(1) 隐藏状态更新(核心公式)

  • :输入到隐藏层的权重矩阵
  • :隐藏层到隐藏层的循环权重矩阵
  • :偏置项
  • :激活函数,用于引入非线性,输出范围

(2) 输出层(可选)如果是分类任务,通常会在输出后接 Softmax 函数。

总结与局限
  • 优点:结构简单,能处理任意长度的序列,适合建模短序列依赖。
  • 缺点:无法学习长距离依赖,梯度消失问题严重,几乎无法应用于长文本、语音等复杂场景。

LSTM:解决长依赖的记忆大师

设计动机

为了解决 RNN 的梯度消失问题,LSTM(Long Short-Term Memory)在 1997 年被提出。它的设计灵感来自于计算机的内存管理系统

  • 引入了一条贯穿整个时间序列的“信息高速公路”——细胞状态,让信息可以无阻碍地流动。
  • 用三个“门控”来控制信息的写入、保留和读取,实现对记忆的精细化管理。
核心创新:细胞状态与三门控
  • 细胞状态:LSTM 的“长期记忆”。它的更新以线性加法为主,梯度在反向传播时能稳定流动,从而避免了梯度消失。
  • 门控机制:由 Sigmoid 函数实现,输出值在 0 到 1 之间,0 代表完全关闭,1 代表完全打开:
    1. 遗忘门:决定要丢弃哪些旧记忆。
    2. 输入门:决定要写入哪些新信息。
    3. 输出门:决定要输出哪些记忆给下一层。
算法流程与数学公式

在第 (t) 步,LSTM 的计算分为以下 6 个步骤:

(1) 遗忘门:控制旧记忆的保留

(2) 输入门:控制新信息的写入

(3) 候选细胞状态:生成待写入的新信息

(4) 细胞状态更新(核心公式)

这里的表示逐元素相乘(Hadamard 积)。 这个公式完美体现了 LSTM 的记忆逻辑:用遗忘门保留旧记忆,用输入门写入新记忆。

(5) 输出门:控制记忆的读取

(6) 隐藏状态更新

为什么 LSTM 能解决梯度消失?
  • 关键在于细胞状态的更新方式。它主要由加法构成,不像 RNN 那样全是矩阵乘法。
  • 在反向传播时,梯度可以沿着细胞状态这条路径几乎无损地传递回前面的时间步,从而有效缓解了梯度消失问题,让模型能够学习到上千步的长距离依赖。

BiLSTM:同时看见过去与未来

设计动机

标准 LSTM 只能按时间顺序单向处理序列,只能利用当前位置之前的信息。但在很多 NLP 任务中,一个词的含义往往也依赖于它后面的语境:

  • 例如“我去银行存钱”,“银行”的含义需要“存钱”这个后文来确定。
  • 为了解决这个问题,BiLSTM(Bidirectional LSTM)被提出,它可以同时利用过去和未来的上下文信息。
核心结构:双向 LSTM

BiLSTM 由两个独立的 LSTM 组成:

  • 正向 LSTM:从左到右处理序列,生成包含前文信息的隐藏状态
  • 反向 LSTM:从右到左处理序列,生成包含后文信息的隐藏状态
  • 最终的隐藏状态由这两个方向的状态拼接而成。
数学表达

(1) 正向计算

(2) 反向计算

(3) 状态拼接

优缺点分析
  • 优点:能够捕获完整的上下文信息,在序列标注、命名实体识别、机器翻译等任务中效果显著优于单向 LSTM。
  • 缺点:计算量翻倍(约为单向 LSTM 的 2 倍),且无法用于实时流式任务,因为它需要等待整个序列全部输入后才能进行反向计算。

三者核心对比速览

特性RNNLSTMBiLSTM
记忆能力短期(<50步)长期(>1000步)长期+双向
梯度问题严重消失/爆炸基本解决与 LSTM 一致
上下文利用仅前文仅前文前文+后文
计算复杂度中(3组门控)高(2×LSTM)
典型应用场景简单时序预测语音识别、文本分类分词、NER、机器翻译

总结与展望

  1. RNN:序列建模的开山之作,但其梯度消失的硬伤限制了它的应用。
  2. LSTM:通过门控机制和细胞状态,解决了长依赖问题,是循环神经网络的集大成者。
  3. BiLSTM:在 LSTM 的基础上引入双向建模,是 NLP 任务的经典方案。

虽然现在 Transformer 模型大行其道,但 RNN、LSTM 作为序列建模的基础,其设计思想依然深刻影响着后续模型的发展,也是理解注意力机制等更复杂模型的必经之路。

拓展阅读

如需进一步系统学习循环神经网络相关理论与进阶内容,推荐斯坦福经典NLP课程官方讲义,内容与本文高度契合:
Stanford CS224N: Recurrent Neural Networks
链接:https://web.stanford.edu/class/cs224n/readings/cs224n-2019-notes05-rnn-lstm.pdf

该讲义权威且体系化,完整覆盖RNN→LSTM→BiLSTM全演进脉络,包含详细的模型结构拆解、数学公式推导、梯度消失问题解析及双向循环机制原理,与本文核心知识点一一对应,是深入学习的优质资料。

http://www.jsqmd.com/news/588090/

相关文章:

  • 如何解决微信QQ语音无法播放?Silk音频转换工具让跨设备播放不再难
  • 三维空间智能体体系技术方案:基于空间计算操作系统(SpaceOS™)的目标连续控制与空间智能体系构建方案
  • 从零到精通的Android Kotlin实战学习旅程:50个项目带你掌握移动开发核心技能
  • DL基础营 | 第P1周:Pytorch实现mnist手写数字识别
  • 【创作一周年纪念】365天的坚持:从《初识C语言》到现在的成长之旅,感谢遇见
  • 告别重复打卡:远程办公族的智能签到自动化解决方案
  • 《名称更改说明书》
  • 写程序职场工牌防刮耐磨套一体切割,输出:比淘宝款更贴合,更耐用。
  • Pytest参数化测试中文乱码?这2个隐藏技巧让你的测试报告清晰可读
  • 2025届必备的五大降AI率神器实测分析
  • SEO_新手必看的SEO完整入门指南与实战方法
  • 哈工大编译原理笔记:从“及格万岁”到“真香”的保姆级学习路线(附避坑指南)
  • 多账号登录兼容:让跨平台玩家实现无缝协作的Minecraft解决方案
  • 编写程序做耳机绕线器自适应切割,适配所有型号,输出:解决线材乱缠痛点,随身小物件。
  • maskgen使用教程
  • 快速原型实践:用快马一键生成手机端路由器管理登录界面
  • 数学期望
  • 基于 Redis 的分布式倒计时发令枪。
  • 让经典《魔兽争霸III》适配现代设备:WarcraftHelper使用指南
  • MouseClick:开源鼠标自动化工具从入门到精通
  • 2026年包头市租车门店,租车/汽车租赁,租车门店联系方式 - 品牌推荐师
  • buuctf--传感器(曼切斯特编码实战:从569A到Flag的逆向之旅)
  • 设计露营简易餐具套装,轻量化一次性可降解,输出:户外爱好者低成本装备。
  • 嘉立创——图层管理器
  • 保姆级教程:在RK3588的Buildroot里添加自己的C/C++程序(CMake项目)
  • 2026年非标法兰源头厂家优选,品质与实力并存,双相钢法兰/变压器法兰/船用法兰/不锈钢法兰/法兰,非标法兰公司怎么选择 - 品牌推荐师
  • YimMenu:GTA V增强工具的系统化应用与安全实践指南
  • 在Linux上使用OneNote的3种高效工作流:P3X OneNote Linux完全指南
  • 从报错到解决:ipmitool lan与lanplus接口区别详解(避坑指南)
  • 6G与机器人技术融合:开启未来智能新时代