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

一篇吃透RNN(循环神经网络),LSTM(长短期记忆网络),BiLSTM(双向长短期记忆网络)算法,计算机小白也能轻松看懂

NLP-AHU-125(神秘暗号)

哈喽各位CSDN的小伙伴们,我是一名专注AI入门干货的大学生博主~ 相信刚接触深度学习序列模型的同学,都被RNN、LSTM、BiLSTM这三个“孪生兄弟”绕晕过:明明都是处理序列数据,为啥RNN频频拉胯,LSTM成了香饽饽,BiLSTM又凭啥在NLP里封神?

今天我将从设计灵感、核心结构和数学表达三个方面讲解一下这三个模型,话不多说,直接开始。

一、先搞懂:为啥要发明RNN?灵感藏在人类记忆里

在RNN出现之前,传统神经网络(比如CNN、全连接网络)就是个“没记性”的呆子:处理图片、独立数据时很拿手,可碰到序列数据(文本、语音、时间序列、股票数据)直接傻眼——完全记不住前面的信息,根本没法理解上下文关联。

这时候研究者就琢磨:人类处理序列信息,靠的是记忆啊! 比如我们读一句话,看到后半句时,脑子里还记着前半句的内容,才能读懂整句话的意思;听一首歌,后面的旋律要结合前面的节奏才好听。

RNN设计灵感

RNN(Recurrent Neural Network,循环神经网络)的设计灵感,正是模仿人类的短时记忆机制:让神经网络拥有“记忆功能”,处理当前输入时,能把之前的信息存起来,和当前信息结合,一起输出结果。

简单说,RNN的核心就是“循环复用隐藏状态”,同一个网络结构在序列的每个时间步重复使用,把上一时刻的记忆传递到当前时刻,完美适配序列数据的时序依赖特性。

RNN核心结构

RNN的结构十分简单,就像一条单向链条,包含三个核心部分:

1. 输入层:每个时间步t的输入(比如一句话里第t个词的词向量);

2. 隐藏层:存储记忆的核心,表示t时刻的隐藏状态,既接收当前输入,也接收上一时刻的隐藏状态

3. 输出层:根据当前隐藏状态生成输出(比如文本分类、词性标注结果)。

这里要吐槽一句:RNN虽然想法很美好,但它是个“金鱼脑子”,记忆只有7秒。处理短序列还行,一旦序列变长(比如长文本、长时间序列),前面的信息就会彻底丢失,还会出现梯度消失/梯度爆炸问题,根本学不到长距离的依赖关系,这也是后来LSTM诞生的原因。

RNN数学表达

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

:输入层到隐藏层的权重矩阵;

:隐藏层自循环的权重矩阵;

:隐藏层偏置项;

:双曲正切激活函数,把隐藏状态值压缩到[-1,1]之间,保证数值稳定。

2. 输出层公式:

:隐藏层到输出层的权重矩阵;

:输出层偏置项;

• 要是做分类任务,后面再加个softmax函数转概率就行。

二、LSTM:RNN的“升级版学霸”,专治长序列健忘症

眼看着RNN在长序列面前频频翻车,研究者们坐不住了:既然是记性差,那就给它装个“可控记忆仓库”!于是LSTM(Long Short-Term Memory,长短期记忆网络)横空出世,完美解决了RNN的梯度消失问题,成了序列建模的顶流。

LSTM设计灵感

LSTM的灵感很直接:人类不会记住所有信息,而是选择性记忆、遗忘!比如我们看完一篇长文,会记住核心观点,忘掉无关紧要的细节;早上出门,会记住带钥匙,忘掉昨晚无关紧要的小事。

基于这个思路,LSTM在RNN的基础上,新增了细胞状态(Cell State) 这个“长期记忆传送带”,再搭配三个门控单元,像三个小管家一样,精准控制哪些信息该忘、哪些该记、哪些该输出,彻底告别“金鱼记忆”。

LSTM核心结构

LSTM的结构比RNN复杂一丢丢,但每个部分都有明确作用。

1. 细胞状态:长期记忆仓库,像一条贯穿整个序列的传送带,只做少量线性操作,信息能轻松流过,负责存储长期重要信息,不容易丢失;

2. 遗忘门:“忘事小管家”,决定把细胞状态里哪些旧信息丢掉,比如长文中的冗余词汇、无关数据;

3. 输入门:“记事小管家”,决定把当前输入的哪些新信息存进细胞状态,比如长文的核心论点、关键数据;

4. 候选细胞状态:待存入的新信息,相当于要记的新内容;

5. 输出门:“输出小管家”,决定从细胞状态里提取哪些信息,作为当前隐藏状态输出。

LSTM数学表达

每个门控都用sigmoid激活函数,输出[0,1]之间的值,0代表完全丢弃,1代表完全保留,公式安排:

1. 遗忘门:

2. 输入门:

3. 细胞状态更新(旧记忆+新信息,融合出当前长期记忆):

4. 输出门:

5. 隐藏状态输出(从长期记忆里提取当前输出):


简单总结:LSTM通过门控,实现了长期记忆的可控读写,长序列文本、语音、时间序列随便拿捏,比RNN的性能强了不止一个档次。

三、BiLSTM:双向拿捏上下文,NLP场景的神

LSTM已经很厉害了,但它还有个小短板:只能单向处理序列,从前往后记信息,没法看到后面的内容反过来理解前面的。

可在NLP里,上下文是双向的。比如一句话:“我今天去____,买了一杯奶茶”,光看前面不知道填啥,看后面“买奶茶”就知道是奶茶店。这种需要结合前后文理解的场景,LSTM就力不从心了,于是BiLSTM(Bidirectional LSTM,双向长短期记忆网络)应运而生。

BiLSTM的设计灵感

人类理解语言,会兼顾前文和后文,不是只顺着读,倒着看也能辅助理解。比如做词性标注、命名实体识别,只有结合上下文,才能准确判断词义。BiLSTM它没有改动LSTM的内部结构,而是把两个LSTM拼在一起:一个正向LSTM(从左到右处理序列),一个反向LSTM(从右到左处理序列),最后把两个方向的隐藏状态拼接起来,同时捕捉过去和未来的信息。

BiLSTM核心结构

BiLSTM的结构就是“正向LSTM+反向LSTM”

1. 对同一个输入序列x_1,x_2,...,x_t,正向LSTM计算出正向隐藏状态,记录从开头到当前时刻的信息;

2. 反向LSTM从序列末尾开始处理,计算出反向隐藏状态,记录从当前时刻到结尾的信息;

3. 把正向和反向隐藏状态拼接,得到最终的隐藏状态,再输入输出层得到结果。

这种双向结构,让模型能完整捕捉上下文信息,在文本分类、情感分析、命名实体识别、机器翻译等NLP任务中,效果远超单向LSTM。

BiLSTM数学表达

BiLSTM的公式就是正向和反向LSTM的结合,核心是隐藏状态拼接:

1. 正向LSTM隐藏状态:
2. 反向LSTM隐藏状态:
3. 最终隐藏状态:代表向量拼接)

4. 输出层:


四、总结:RNN、LSTM、BiLSTM到底有什么区别

模型核心特点优点缺点使用场景
RNN单向循环,短时记忆结构简单,计算快记性差,长序列梯度消失短序列任务
LSTM门控+细胞状态,长时记忆解决梯度消失,长序列友好结构复杂,计算量稍大长序列、时序依赖强的任务
BiLSTM双向LSTM,兼顾上下文整捕捉上下文,NLP效果好计算量翻倍,参数更多NLP核心任务(文本标注、翻译、分类)
http://www.jsqmd.com/news/588687/

相关文章:

  • LangChain4j聊天记忆存储选型指南:除了MongoDB,向量库、Redis、S3怎么选?
  • CTF杂项Misc零基础通关攻略!隐写\+编码\+流量分析,新手最快拿分题型
  • 长程Agent入门基础教程(非常详细),搞懂埃森哲MemexRL“建索引”,收藏这一篇就够了!
  • 遗传算法VRP问题:VRP,多车容量约束 针对物流问题,根据实际情况,设置多车多容量,采用遗传...
  • LINE Pay沙盒环境从申请到调试:一份给新手的完整踩坑记录(含PC端测试技巧)
  • the brain understanding by first LLM engineer.
  • R3A: Reliable RTL Repair Framework with Multi-Agent Fault Localization and Stochastic Tree-of-Though
  • 从0到1落地以太坊DApp:智能合约编写+前端交互全流程保姆级实战
  • Prompt提示词使用技巧与实战案例
  • Datawhale首次进入全球前30!
  • 【电池容量提取+锂电池寿命预测】 基于Transformer-BiGRU的锂电池剩余寿命预测Matlab代码(单变量)
  • Godot游戏练习01-第24节-多人游戏暂停菜单,游戏优化
  • ODA SDK源码下载后,为什么你的几何内核还是黑盒?聊聊那些不开放的核心库
  • 3分钟终极指南:如何快速解决微信QQ语音无法播放的烦恼
  • CST仿真设计:双焦点聚焦透镜的研究与应用
  • ESP32:运行hello word例程
  • 【配网可靠性评估】含可再生能源的配电网可靠性评估方法Matlab代码
  • 4个维度掌握GraphvizOnline:从入门到精通的轻量级零成本效率提升指南
  • 从CTF实战到原理剖析:手把手教你玩转MD5碰撞与fastcoll工具
  • 网络安全学习第164天
  • LeetCode HOT100 - 完全平方数
  • 25年世界数学最重大的3发现,指向同一个思想:与“复杂性”共存
  • Windows 卸载 Oracle 19c
  • 基于SpringBoot校园学生健康监测管理系统【源码文末联系】
  • 广告词“我看起来娘但我是男子汉,我看起来娘因为我是个女的!”是用于做什么用的?
  • o1-like推理模型:通过延长思维链实现深度推理
  • 掌握开源2D CAD:从入门到精通的高效绘图指南
  • 全国400电话认证平台哪家强?2026年度专业服务商推荐清单 - 企业服务推荐
  • 技术博客】探索cst仿真设计中的反射透射性线圆转换与线线转换:案例与录屏
  • seo网站诊断需要哪些资料_seo网站诊断的重要性是什么