首页 > 其他分享 >LSTM初学习

LSTM初学习

时间:2023-03-25 19:22:25浏览次数:35  
标签:RNNs 通过 细胞 学习 信息 操作 LSTM

首先引入循环神经网络
在传统的神经网络中,很难利用之前的事件对当前事件进行分类,而循环神经网路就可以改善这一点。
循环神经网络(下面简称RNNs)可以通过不停的将信息循环操作,保证信息持续存在,从而解决上述问题
image
image
这种链式的结构揭示了RNNs与序列和列表类型的数据密切相关。

  • 局限性:
  • 有时候我们需要利用近期的信息来执行来处理当前的任务。例如,考虑用一个语言模型通过利用以前的文字信息来预测下一个文字。如果我们需要预测“the clouds are in the sky”这句话的最后一个字,我们不需要其他的信息,通过前面的语境就能知道最后一个字应该是sky。在这种情况下,相关信息与需要该信息的位置距离较近,RNNs能够学习利用以前的信息来对当前任务进行相应的操作。如下图所示通过输入的信息来预测出
    image

  • 假设现在有个更为复杂的任务,考虑到下面这句话“I grew up in France… I speak fluent French.”,现在需要语言模型通过现有以前的文字信息预测该句话的最后一个字。通过以前文字语境可以预测出最后一个字是某种语言,但是要猜测出French,要根据之前的France语境。这样的任务,不同之前,因为这次的有用信息与需要进行处理信息的地方之间的距离较远,这样容易导致RNNs不能学习到有用的信息,最终推导的任务可能失败
    image

理论上是可以通过调参来改善这一情况,但实际上行不通(Hochreiter (1991) [German] 和Bengio, et al. (1994))

引入LSTM

Long Short Term Memory networks(以下简称LSTMs),一种特殊的RNN网络

结构
image
image

  • 黄色类似于CNN里的激活函数操作,粉色圆圈表示点操作,单箭头表示数据流向,箭头合并表示向量的合并(concat)操作,箭头分叉表示向量的拷贝操作

LSTMs的核心是细胞状态,用贯穿细胞的水平线表示。

  1. LSTM的第一步就是决定细胞状态需要丢弃哪些信息。这部分操作是通过一个称为忘记门的sigmoid单元来处理的。它通过查看和信息来输出一个0-1之间的向量,该向量里面的0-1值表示细胞状态中的哪些信息保留或丢弃多少。0表示不保留,1表示都保留。忘记门如下图所示。
    image
  2. 下一步是决定给细胞状态添加哪些新的信息。这一步又分为两个步骤,首先,利用和通过一个称为输入门的操作来决定更新哪些信息。然后利用和通过一个tanh层得到新的候选细胞信息,这些信息可能会被更新到细胞信息中。
    image

image
image

image
image

标签:RNNs,通过,细胞,学习,信息,操作,LSTM
From: https://www.cnblogs.com/zhao-wei/p/17255397.html

相关文章

  • Linux内核的裁剪移植,Linux内核裁剪移植学习分享
    原文:https://blog.csdn.net/weixin_36246029/article/details/11660769222.内核裁剪移植内核源码是大量模块代码的集合!每一个模块代码都是大量的.c和.h文件组成的!内......
  • 上位机学习记录(8) 编写上位机报警功能(使用SeeSharp开源控件)
    上位机学习记录(8)编写上位机报警功能(使用SeeSharp开源控件)第一步:安装SeeSharp在Nuget中搜索SeeSharp。第二步:程序设计大致样式如下:简要说明:一个固定文本框显示:系......
  • Seatunnel学习记录
    1简介AboutSeatunnelSeaTunnelisaveryeasy-to-useultra-high-performancedistributeddataintegrationplatformthatsupportsreal-timesynchronizationof......
  • 上位机学习记录(7) 小边框控件编写(绘制外边框,标题栏与文字就行)
    上位机学习记录(7)小边框控件编写publicpartialclassHeadPanel:Panel{publicHeadPanel(){InitializeComponent();......
  • Docker学习笔记:二、安装Docker
    二、安装Docker安装环境CentOS71、Docker版本CE即社区版(免费,支持周期7个月)stabletestnightlyEE即企业版,强调安全,付费使用,支持周期24个月安装指南:https......
  • go语言学习-grpc2:proto文件说明
    messageprotobuf中定义一个消息类型是通过关键字message字段指定。消息就是需要传输的数据格式的定义,它类似java中的class,go中的structmessageUser{stringusername=1......
  • 【C++】类与对象理解和学习(中)
    六大默认成员函数前言每个类中都含有六大默认成员函数,也就是说,即使这个类是个空类,里面什么都没有写,但是编译器依然会自动生成六个默认成员函数,可以说它们六个是祖师爷钦点的......
  • 2023爬虫学习笔记 -- MongoDB数据库
    一、下载安装mongodb1、下载地址https://www.mongodb.com/try/download/community2、一路下一步安装,路径不要出现空格中文等特殊字符3、设置环境变量将bin目录地址放到path......
  • 嵌入式学习记录
    整整三年的疫情已经把我折磨的不像样子了,身材走样,体重从90kg不到,到现在的110kg,从基本不怎么水肿的脸到现在几乎每天都挂着的水肿,甚至连自己最喜欢的篮球和健身也基本不......
  • LINUX学习笔记
    Linux学习笔记1VMwareWorkstationPro中打开虚拟机后,1.文件操作(1)进入到home文件夹.zzh@ubuntu:/$cdhomezzh@ubuntu:/home$(2)在home文件夹中添加一一个新的文......