LSTM长短期记忆网络

理解本文需要读者有RNN基础,关于RNN可参考《RNN循环神经网络》

1 背景

LSTM最早是1997年被提出的,由于深度学习的兴起,形成了完整的框架。LSTM是用于解决RNN处理长序列时梯度消失或梯度爆炸问题。

2 结构

LSTM各个层的结构一致,上图是LSTM中间某一层的结构。与RNN相比,逻辑更复杂,这样的结构能够避免RNN梯度消失或梯度爆炸问题,兼顾长期和短期的记忆。而RNN的结构如下图所示。

3 设计直觉

以柯南破案为例,构造一个LSTM模型,其中输入是一系列的线索,输出推理结论。LSTM的输出最后可以接一个概率分类器,输出每个嫌疑人是案犯的概率。

|------|-------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|
| 符号 | 含义 | 例子中类比对象 |
| x(t) | t时刻输入 | t时刻接收到的线索 |
| h(t) | t时刻隐藏状态 | t时刻学习到的特征或推理结果。它表示t时刻的短期记忆 |
| c(t) | t时刻细胞状态/工作记忆/长期记忆 | 表示t时刻掌握各个嫌疑人的信息。工作记忆是心理学和认知科学领域的概念,指的是个体在执行认知任务(如推理、学习、语言理解等)时,用于暂时存储和操作信息的一种有限容量的记忆系统。它就像大脑的 "工作台",在短时间内保持和处理当前需要关注的信息,例如我们在做数学心算时,暂时记住中间计算步骤的能力就依赖于工作记忆 |

3.1 遗忘过程

随着线索的增多和推理的进行,有些嫌疑人被排除,那么其相关的信息需要被遗忘。相反,有些很久以前的重要线索时至今日依然有效,这部分信息就不能被遗忘。

遗忘门根据上一时刻的推理h(t-1)和当前时刻接收到的线索x(t),决定工作记忆c(t)中各部分内容遗忘的比例。作用是清理无用信息。

举例:

情况1:上一时刻推理是"嫌疑人是左撇子",当前时刻接收到的线索是"小李惯用手是右手",那么在柯南的工作记忆中将排除小李的嫌疑,后续对于小李的信息将抹除

情况2:相反,如果当前时刻接收到的线索是"小红惯用手是左手",那么后续对于小红的记忆不会抹除。

3.2 输入过程

当接收到有价值的线索时,就要把这部分信息保存到工作记忆中。

输入门是根据上一时刻的推理h(t-1)和当前时刻接收到的线索x(t),决定存入工作记忆c(t)中的比例和内容,作用是记忆有价值的线索。比较特别的是此处既输出比例,又输出内容,二者相乘才得到最终内容,而不是直接输出最终内容,这是与遗忘过程相对应的,遗忘过程是计算出遗忘比例,再用比例乘原始长期记忆。

举例:

情况1:上一时刻推理是"嫌疑人是左撇子",当前时刻接收到的线索是"小李惯用手是右手,小李的社会关系有甲乙丙丁",那么生成候选记忆是小李的信息(比如社会关系),但存入比例为0,因此不会把候选记忆存入工作记忆中

情况2:当前时刻接收到的线索是"小红惯用手是左手。小红案发前去过五金店",那么生成的候选记忆是小红的信息(比如行程),存入比例较高,会把候选记忆存入工作记忆中。

3.3 工作记忆更新

即根据遗忘门和输入门,利用遗忘比例和保存比例,对上一时刻的工作记忆c(t-1)和当前时刻候选记忆c'(t)进行遗忘或保存,该遗忘的遗忘,该保存的保存。

3.4 输出过程

作用是根据已有信息做决策,形成中间推理结果。但并不是直接将已有信息提取出来,而是计算一个比例值,决定哪些部分提取比例高,哪些部分提取比例低。比例依然是由上一时刻的推理h(t-1)和当前时刻接收到的线索x(t)决定的。

例如,当前时刻接收到的线索是"小红惯用手是左手。小红案发前购买过刀具",那么对于小红信息的提取比例较高,将其信息提取后,经过加工(tanh),将推理出小红的作案嫌疑较大。

例如,当前时刻接收到的线索是"凶手被受害人划伤",柯南开启尘封的记忆,想起来小红手指包着创可贴,那么将小红信息的提取比例较高。"小红手指包着创可贴"这个记忆很可能是很久之前看到过的,但仍能够对当前的推理产生帮助。

可以发现,输入的线索和上一时刻的短期记忆(统称为线索)通过输入门和遗忘门形成长期记忆,实现了线索到长期记忆的转化,在未来合适的时间线索将会触发,产生影响。

4 计算过程

4.1 遗忘门

作用:遗忘门用于控制上一时刻的长期记忆有多少比例保留到当前时刻。

计算方法:上一时刻输出h(t-1)与当前时刻输入xt拼接后,乘Wf做线性变换,添加偏置bf后,经过Sigmoid函数得到ft。f代表forget。ft是一个0到1之间的比例,在下文工作记忆的计算中可以看到,ft表示长期记忆有多少比例保留到当前时刻。这里Wf和bf是需要训练的参数。

4.2 输入门

作用:输入门用于更新长期记忆。其中i(t)表示当前时刻信息有多少比例更新到长期记忆里,C(t)表示产生的当前时刻信息。

计算方法:i(t)与遗忘门类似,只是参数换成了W(i)和b(i),i表示input。将参数换成W(c)和b(c),再经过tanh激活得到了C(t),其中c代表cell。

4.3 输出门

作用:输出门用于筛选长期记忆中有用的信息,并将此信息输出。

计算方法:与输入门类似,只是参数换成配Wo和bo,其中o代表output,h代表hidden。

4.4 长期记忆

将遗忘门和输入门的结果结合,得到更新后的长期记忆。

4.5 sigmoid和tanh

sigmoid输出0-1的数值,在LSTM中类似于筛选器,按重要性对信息进行筛选。

tanh输出-1到1的数值,在LSTM中起到激活的作用,并增加非线性。

5 参考资料

长短期记忆神经网络(LSTM)介绍以及简单应用分析「建议收藏」-腾讯云开发者社区-腾讯云

相关推荐
王中阳Go1 分钟前
09 Go Eino AI应用开发实战 | Hertz Web 框架搭建
人工智能·后端·go
智驱力人工智能11 分钟前
从人海战术到智能巡逻 城市街道违规占道AI识别系统的实践与思考 占道经营检测系统价格 占道经营AI预警系统
人工智能·安全·yolo·目标检测·无人机·边缘计算
STLearner12 分钟前
VLDB 2025 | 时间序列(Time Series)论文总结(预测,异常检测,压缩,自动化等)
数据库·人工智能·深度学习·神经网络·机器学习·数据挖掘·时序数据库
GEO-optimize17 分钟前
2025年末GEO服务商推荐甄选:综合实力测评及优选指南
人工智能·搜索引擎·geo
Ven%23 分钟前
【AI大模型算法工程师面试题解析与技术思考】
人工智能·python·算法
我很哇塞耶27 分钟前
BOSS直聘3B超越Qwen3-32B,更多训练数据刷新小模型极限
人工智能·ai·大模型
趁你还年轻_27 分钟前
超越对话:AI 智能体如何自主完成复杂任务?
人工智能
禾高网络38 分钟前
互联网医院系统,互联网医院系统核心功能及技术
java·大数据·人工智能·小程序
AI营销实验室39 分钟前
原圈科技AI CRM系统:数据闭环与可视化革新的行业突破
大数据·人工智能
AndrewHZ41 分钟前
【复杂网络分析】什么是图神经网络?
人工智能·深度学习·神经网络·算法·图神经网络·复杂网络