LSTM(长短时记忆网络)

这篇具有很好参考价值的文章主要介绍了LSTM(长短时记忆网络)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、什么是LSTM?

二、LSTM详解

 0.什么是门?

1. 遗忘门

2.输入门

3.更新记忆

4.输出门


一、什么是LSTM?

LSTM是RNN的一种,可以解决RNN短时记忆的不足,当一条序列足够长,那RNN将很难将信息从较早的时间步传送到后面的时间步,而LSTM能学习长期依赖的信息,记住较早时间步的信息,因此可以做到联系上下文。

比如:

1.

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

RNN可以根据前面几个单词有效预测出空白处单词为sky。

2.

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

RNN可以根据空格处附近的信息得出,这里应该填一种语言,但还不知道具体是哪种语言,我们想的是让模型根据前文的I grew up in France,得出这里应该是法语,但是序列相隔距离太远,RNN做不到有效利用历史信息,所以我们需要依靠LSTM来完成。

二、LSTM详解

LSTM有三个门,分别为遗忘门,输入门(有的也叫更新门,候选门,作用是一样的),输出门。通过这三个门来控制哪些信息该遗忘丢弃,哪些信息该保留,或者保持不变。就像管道阀门一样,控制流通不流通。

先来看一张lstm结构的展开图,后面对三个门及作用进行拆解。

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

符号说明:

:当前时刻输入信息 

:上一时刻的隐藏状态

:传递到下一时刻的隐藏状态

 :sigmoid函数,通过这个函数可以将数据变为0-1范围的数值。

tanh: tanh函数,通过这个函数可以将数据变为[-1,1]范围的数值

LSTM的特点:

lstm比rnn多一个细胞状态(cell state),也有人叫记忆细胞。

下图中的水平黑线表示上一时刻的细胞状态通过三个门的控制及线性运算来决定哪些信息该遗忘丢弃,哪些信息该保留,或者不变,从而生成当前时刻的细胞状态,然后输出到下一时刻,以此来进行记忆的更新。

这只是某个时刻的细胞状态的更新过程,在整个长序列中,每个时刻的细胞状态都对上一时刻的信息选择性的进行遗忘丢弃,或者保留,或者不变,对记忆进行更新,从传送到,因此可以做到长期记忆。

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

 0.什么是门?

LSTM通过门(gate)来控制细胞状态遗忘或添加记忆,门的结构就是一个sigmoid层再点乘上一时刻的细胞状态,下图就是一个门。

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

sigmoid层输出的值范围在[0, 1],可以作为门控信号,0点乘任何值还是0,表示过不去,这些记忆就遗忘了,1表示可以通过,记忆就保留下来了。

1. 遗忘门

遗忘门的作用对象是细胞状态,作用是控制细胞状态中的信息进行选择性的遗忘,决定哪部分需要丢弃,哪些需要保留。那么是如何控制细胞状态选择性遗忘记忆的呢,我们结合公式来看:

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

遗忘门的公式: 

 lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

 权重矩阵对和拼接而成的矩阵进行矩阵相乘,再加上偏置,投入到sigmoid函数中,得到一个与相同维度的矩阵, 比如,得到为[ 0,0,1,0],矩阵中每一个值都决定中对应信息的遗忘或保留,0代表彻底丢弃,1代表完全保留。

比如一个语言模型,根据之前的所有词预测下一个词。细胞状态可能已经记住了当前人物的性别,以便下次预测人称代词(他还是她),但当出现一个新人物时,需要将上一个人物的性别忘掉。

举例:

小明是一个帅气的男生,小美喜欢...,当处理到‘’小美‘’的时候,需要选择性的忘记前面的’小明’,或者说减小这个词对后面词的作用。

2.输入门

输入门的作用对象也是细胞状态,作用是决定要往细胞状态中存储哪些新的信息,也就是细胞状态选择性的添加哪些新的记忆。那么如何决定添加哪些新的信息呢,输入门分两个部分进行。

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

 第一部分:

 构建一个输入门,决定哪些信息被添加到细胞状态中,作为新的记忆。

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

输入门公式: 

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

与遗忘门公式差不多,输入门通过线性运算得到一个与相同维度的矩阵, 比如,得到为       [ 0,0,1,0],矩阵中每一个值都决定中对应信息的丢弃或保留,0代表彻底丢弃,1代表完全保留

 第二部分:

构建出一个候选细胞状态,它保存了 和中的信息,然后与​​​​​​​的值点乘,来决定哪些记忆是有用的,依然中0代表彻底丢弃,1代表完全保留,这样保留下来的信息作为新的记忆添加给新的细胞状态,所以这里叫候选细胞状态,它只是一个等候选择的,有用的才会被作为新记忆添加。

 lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

候选细胞状态 的公式:

 lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

接着上一个例子:

这一步传入了一些信息,比如小美喜欢穿裙子,输入门就是要在这些信息中筛选出来有用的,用来记住新人物的性别,记住小美的性别为女,作为新的记忆添加。

3.更新记忆

新的细胞状态中的记忆由两部分构成。

一部分是,上一时刻的记忆细胞遗忘掉没用的记忆后剩下的旧记忆

另一部分是,输入门中把有用的信息筛选出来当作新的记忆

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

新的细胞状态的公式:

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

 点乘表示处理后的旧记忆,点乘表示需要添加的新记忆,加起来就是新的细胞状态。

继续举例:

小明是一个帅气的男生,小美喜欢穿裙子,这一步是要忘记小明性别为男,记住小美性别为女。

4.输出门

输出门的作用是决定最终输出什么,也就是​​​​​​​,这个输出是以新的细胞状态为基础的,分两部分进行。

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

第一部分:

依然使用sigmoid层来得到,比如​​​​​​​=[0,0,0,1],来决定哪部分细胞状态需要被输出,需要的记忆才输出,并不是所有的都输出。

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

 的公式:

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

 第二部分:

把新的细胞状态通过tanh函数处理,将输出值变为[-1. 1],再点乘,来控制哪部分需要输出。

lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理

 的公式:

 lstm,深度学习,lstm,rnn,深度学习,人工智能,自然语言处理文章来源地址https://www.toymoban.com/news/detail-647676.html

到了这里,关于LSTM(长短时记忆网络)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python-基于长短期记忆网络(LSTM)的SP500的股票价格预测 股价预测 Python数据分析实战 数据可视化 时序数据预测 变种RNN 股票预测

    Python-基于长短期记忆网络(LSTM)的SP500的股票价格预测 股价预测 Python数据分析实战 数据可视化 时序数据预测 变种RNN 股票预测 近些年,随着计算机技术的不断发展,神经网络在预测方面的应用愈加广泛,尤其是长短期记忆人工神经网络(Long Short-Term Memory,LSTM)在各领域、各

    2024年02月03日
    浏览(26)
  • LSTM(长短时记忆网络)

    目录 一、什么是LSTM? 二、LSTM详解  0.什么是门? 1. 遗忘门 2.输入门 3.更新记忆 4.输出门 LSTM是RNN的一种,可以解决RNN短时记忆的不足,当一条序列足够长,那RNN将很难将信息从较早的时间步传送到后面的时间步,而LSTM能学习长期依赖的信息,记住较早时间步的信息,因此可

    2024年02月13日
    浏览(20)
  • 长短期记忆网络(LSTM)原理解析

            长短期记忆网络(Long Short-Term Memory,简称LSTM)是一种常用于处理序列数据的深度学习模型。它在循环神经网络(Recurrent Neural Network,RNN)的基础上进行了改进,旨在解决传统RNN中的梯度消失和梯度爆炸问题,同时能够更好地捕捉长期依赖关系。         LSTM的

    2024年02月13日
    浏览(22)
  • 深度学习实战——循环神经网络(RNN、LSTM、GRU)

           忆如完整项目/代码详见github: https://github.com/yiru1225 (转载标明出处 勿白嫖 star for projects thanks) 目录 系列文章目录 一、实验综述 1.实验工具及内容 2.实验数据 3.实验目标 4.实验步骤 二、循环神经网络综述 1.循环神经网络简介 1.1 循环神经网络背景 1.2 循环神经网络

    2023年04月24日
    浏览(19)
  • 【长短时记忆网络(LSTM)和门控循环单元(GRU)】

    长短时记忆网络(LSTM)和门控循环单元(GRU)都是为了解决传统循环神经网络(RNN)在处理长序列数据时遇到的梯度消失问题而设计的。它们通过引入门控机制,有效地保持长期依赖信息,同时避免了梯度在时间反向传播过程中消失的问题。 LSTM通过使用三个门(输入门、遗

    2024年04月09日
    浏览(24)
  • 回归算法|长短期记忆网络LSTM及其优化实现

    本期文章将介绍LSTM的原理及其优化实现 序列数据有一个特点,即“没有曾经的过去则不存在当前的现状”,这类数据以时间为纽带,将无数个历史事件串联,构成了当前状态,这种时间构筑起来的事件前后依赖关系称其为时间依赖,利用这类依赖关系进行建模是对其进行学

    2024年02月08日
    浏览(26)
  • 解密长短时记忆网络(LSTM):从理论到PyTorch实战演示

    本文深入探讨了长短时记忆网络(LSTM)的核心概念、结构与数学原理,对LSTM与GRU的差异进行了对比,并通过逻辑分析阐述了LSTM的工作原理。文章还详细演示了如何使用PyTorch构建和训练LSTM模型,并突出了LSTM在实际应用中的优势。 关注TechLead,分享AI与云服务技术的全维度知

    2024年02月11日
    浏览(19)
  • 深度学习-循环神经网络-RNN实现股价预测-LSTM自动生成文本

    基于文本内容及其前后信息进行预测 基于目标不同时刻状态进行预测 基于数据历史信息进行预测 序列模型:输入或者输出中包含有序列数据的模型 突出数据的前后序列关系 两大特点: 输入(输出)元素之间是具有顺序关系。不同的顺序,得到的结果应该是不同的,比如“

    2024年01月24日
    浏览(25)
  • 【深度学习】——循环神经网络RNN及实例气温预测、单层lstm股票预测

           密集连接网络和卷积神经网络都有主要的特点,那就是它们没有记忆。它们单独处理每个输入,在输入和输入之间没有保存任何状态。举个例子:当你在阅读一个句子的时候,你需要记住之前的内容,我们才能动态的了解这个句子想表达的含义。生物智能已渐进的方

    2023年04月24日
    浏览(23)
  • 【算法小记】深度学习——循环神经网络相关原理与RNN、LSTM算法的使用

    文中程序以Tensorflow-2.6.0为例 部分概念包含笔者个人理解,如有遗漏或错误,欢迎评论或私信指正。 卷积神经网络在图像领域取得了良好的效果,卷积核凭借优秀的特征提取能力通过深层的卷积操作可是实现对矩形张量的复杂计算处理。但是生活中除了图像这样天然以矩阵形

    2024年01月25日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包