LSTM结构原理

什么是LSTM

LSTM(长短时记忆)网络是一种特殊的RNN网络,通过门结构,对细胞状态进行删除或者添加信息。门能够选择性的决定让哪些信息通过,其中们结构通过sigmoid曾和一个点乘操作来实现。

LSTM能够处理文本数据或者时序数据。

LSTM 解决了什么问题

LSTM的门结构能够选择性的记忆或者忘记信息,有效避免了梯度消失问题,并保持了长期记忆的能力。

LSTM的实现原理

门的实现

通过Sigmoid层和一个点乘操作的组合,sigmoid函数输出的结构在0-1之间。

1、遗忘门(forget gate)

遗忘门f:决定遗忘多少前一时刻的记忆

为一个向量(与h 、c有相同的维度)。

  • C表示长期记忆
  • h(t-1)表示上一时刻网络状态,h(t)表示当前时刻网络状态;
    遗忘门的权重和当前时刻的状态输入xt拼接上一个时刻的网络状态h(t-1)相乘,再经过sigmoid函数得到ft(值为0-1之间)

2、输入门(input gate)

输入门:决定要记住多少当前输入信息,同时结合遗忘门的输出,计算出新的记忆单元状态。

Ct^表示短时记忆

更新Ct

通过遗忘门和输入门的向量更新Ct

3、输出门(output gate)

输出门:决定哪些值流出

更新输出

状态ht:LSTM的输出,通过ot计算多少长期记忆用于LSTM的输出。

整体流程

LSTM结构中包含:遗忘门、输入门、输出门。图中上方的传输带传递的是长期记忆。

  • 遗忘门计算当前输入向量xt与前一时刻的记忆向量h(t-1)拼接的向量与遗忘门权重向量wf相乘,经过sigmoid激活函数得到ft向量。根据上一个时刻的输出与当前时刻的输入选择需要在单元状态中遗忘的状态。
  • 输入门计算两部分信息,第一部分记住多少当前输入信息,第二部分计算遗忘门输出的信息,结合两部分计算新的记忆单元。根据上一个状态输出和当前输入选择需要在单元状态中新记忆的状态。
  • 输出门计算记忆单元中多少内容作为LSTM 的输出。根据单元状态和当前输入决定LSTM的输出

遗忘门、输入门、输出门中输入门包含两个参数,其他门各包含一个参数。维度是(h, h+x)


感谢:https://www.bilibili.com/video/BV1i44y1P7J5?spm_id_from=333.788.player.switch&vd_source=91cfed371d5491e2973d221d250b54ae

相关推荐
Xiaoxiaoxiao02091 分钟前
迎接情感 AI 的新时代 —— 加入 GAEA 社区!
人工智能
花月C15 分钟前
算法 - 差分
人工智能·算法·机器学习
拆房老料15 分钟前
深入解析提示语言模型校准:从理论算法到任务导向实践
人工智能·算法·语言模型
rengang6618 分钟前
352-Spring AI Alibaba OpenAI DashScope 多模态示例
java·人工智能·spring·多模态·spring ai·ai应用编程
音视频牛哥18 分钟前
RTMP/RTSP/WebRTC/SRT/HLS/DASH/GB28181/WebTransport/QUIC协议规范深度分析
人工智能·计算机视觉·音视频·webrtc·大牛直播sdk·dash·webtransport
张较瘦_19 分钟前
[论文阅读] AI+ | AI如何重塑审计行业?从“手工筛查”到“智能决策”:AI审计的核心逻辑与未来路径
论文阅读·人工智能
不爱学英文的码字机器25 分钟前
深度解析《AI+Java编程入门》:一本为零基础重构的Java学习路径
java·人工智能·后端·重构
B站计算机毕业设计之家27 分钟前
python图像识别系统 AI多功能图像识别检测系统(11种识别功能)银行卡、植物、动物、通用票据、营业执照、身份证、车牌号、驾驶证、行驶证、车型、Logo✅
大数据·开发语言·人工智能·python·图像识别·1024程序员节·识别
晨非辰33 分钟前
《数据结构风云》递归算法:二叉树遍历的精髓实现
c语言·数据结构·c++·人工智能·算法·leetcode·面试
mailangduoduo39 分钟前
命令行传参及调试——vscode平台
c++·人工智能·vscode·代码调试·命令行传参