长短期记忆(LSTM)简介

RNN 的主要限制 在于它无法记住很长的序列,并且会陷入梯度消失的问题。

什么是梯度消失问题?

当添加更多具有某些激活函数的层时,神经网络中损失函数的梯度趋近于零,这使得网络难以训练。

长短期记忆(LSTM)

LSTM 可以解决梯度消失问题。它通过忽略(忘记)网络中无用的数据/信息来实现这一点。如果没有来自其他输入(之前的句子单词)的有用信息,LSTM 就会忘记这些数据。当新的信息出现时,网络会决定哪些信息应该被忽略,哪些信息应该被记住。

LSTM 架构

让我们看看 RNN 和 LSTM 之间的区别。

在 RNN 中,我们有一个非常简单的结构,只有一个激活函数(tanh)。

在 LSTM 中,我们拥有多个组件,而不仅仅是具有单一激活功能的简单网络,从而使网络能够忘记和记住信息。

使用的符号

LSTM 有 4 个不同的组成部分,分别是

  1. 单元状态(记忆单元)
  2. 忘记门
  3. 输入门
  4. 输出门

让我们逐一了解这些组件。

1. 单元状态(记忆单元)

它是 LSTM 的第一个组件,贯穿整个 LSTM 单元。可以把它想象成一条传送带。

细胞状态负责记忆和遗忘。它基于输入的上下文。这意味着一些先前的信息应该被记住,而一些则应该被遗忘,一些新的信息应该被添加到记忆中。第一个操作(X )是逐点运算,它只是将细胞状态乘以一个[-1, 0, 1]的数组。乘以0的信息将被LSTM遗忘。另一个操作是(+),它负责向状态添加一些新的信息。

2. 忘记门

顾名思义,遗忘 LSTM 门决定哪些信息应该被遗忘。S 型函数层用于做出这一决定。该 S 型函数层被称为"遗忘门层"。

它对h(t-1)x(t) 进行点积运算,并在 sigmoid 层的帮助下,为单元状态***C(t-1)***中的每个数字输出一个介于 0 和 1 之间的数字。如果输出为"1",则表示我们将保留它。"0"表示完全忘记它。

3. 输入门

输入门向 LSTM 提供新信息,并决定是否将该新信息存储在单元状态中。

这分为三个部分-

  1. 一个S 型函数层决定需要更新的值。该层被称为"输入门层"。
  2. tanh 激活函数层创建一个新的候选值向量Č(t),可以添加到状态中。
  3. 然后我们结合这两个输出,***i(t) * Č(t),***并更新单元状态。

新的细胞状态***碳原子数(t)***是通过将遗忘门和输入门的输出相加而得到的。

4.输出门

LSTM 单元的输出取决于新的单元状态。

首先,一个 S 型函数层决定要输出单元状态的哪些部分。然后,在单元状态上使用一个tanh层将值压缩到 -1 到 1 之间,最后乘以 S 型函数门的输出。

LSTM 实际应用

现在我们已经了解了 LSTM 的架构和组件,让我们看看它的实际作用。

结论

正如文章中提到的,LSTM 可以通过遗忘和记忆信息来延长信息的保存时间。这由 4 个组件实现------一个单元状态和 3 个门控。它还能克服梯度消失问题,而这正是 RNN 的一个局限性。这使得 LSTM 比普通 RNN 更具优势。我们还了解了 LSTM 的架构和工作原理。

相关推荐
飞哥数智坊17 小时前
GPT-5-Codex 发布,Codex 正在取代 Claude
人工智能·ai编程
倔强青铜三17 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试
虫无涯18 小时前
Dify Agent + AntV 实战:从 0 到 1 打造数据可视化解决方案
人工智能
Dm_dotnet20 小时前
公益站Agent Router注册送200刀额度竟然是真的
人工智能
算家计算20 小时前
7B参数拿下30个世界第一!Hunyuan-MT-7B本地部署教程:腾讯混元开源业界首个翻译集成模型
人工智能·开源
机器之心20 小时前
LLM开源2.0大洗牌:60个出局,39个上桌,AI Coding疯魔,TensorFlow已死
人工智能·openai
Juchecar21 小时前
交叉熵:深度学习中最常用的损失函数
人工智能
林木森ai21 小时前
爆款AI动物运动会视频,用Coze(扣子)一键搞定全流程(附保姆级拆解)
人工智能·aigc
聚客AI1 天前
🙋‍♀️Transformer训练与推理全流程:从输入处理到输出生成
人工智能·算法·llm
BeerBear1 天前
【保姆级教程-从0开始开发MCP服务器】一、MCP学习压根没有你想象得那么难!.md
人工智能·mcp