【DL小结3】RNN与LSTM
传统的神经网络,层与层之间是全连接的,但是每层内部的节点是无连接的,因此无法利用上下文关系。
1.RNN
RNN最大的不同之处就是在每层内部的节点之间也建立起权连接。
针对问题:训练样本是序列数据
模型思想:循环反馈
模型特点:
(1)当前时间的隐藏状态是由上一时间的隐藏状态和当前时间的输入x共同决定的
(2)U、V、W权值共享模型缺点:梯度消失,无法处理长序列数据(解决:LSTM、GRU)
RNN的前向传播
基于时间反向传播BPTT
循环神经网络(RNN)模型与前向反向传播算法 - 刘建平Pinard - 博客园
https://www.cnblogs.com/pinard/p/6509630.html
RNN的缺点
梯度爆炸/消失、很难学到长距离的信息依赖
2.LSTM
使用LSTM模型可以更好的捕捉到较长距离的依赖关系。因为LSTM通过训练过程可以学到记忆哪些信息和遗忘哪些信息。
针对RNN梯度消失问题,LSTM对序列索引位置t的隐藏结构做改进:
- 新增另一个隐藏状态,称为细胞状态(LSTM的核心思想)
- 设置门控结构控制细胞状态:遗忘门、输入门、输出门
2.1 遗忘门
遗忘门决定了上一时刻的细胞状态 C(t−1)C^{(t-1)}C(t−1)(代表长期的记忆) 有多少保留到当前时刻的细胞状态C(t)C^{(t)}C(t)。
遗忘门f(t)f^{(t)}f(t)的公式形式和RNN的隐藏状态h(t)h^{(t)}h(t)更新公式一致,区别在于激活函数,RNN是tanh激活函数,取值[-1,1],遗忘门是sigmoid函数,取值[0,1]代表遗忘概率。
2.2 输入门
输入门决定了当前时刻的输入x(t)x^{(t)}x(t)(代表当前记忆) 有多少保存到当前时刻的细胞状态C(t)C^{(t)}C(t)
输入门的第一部分i(t)i^{(t)}i(t)表示保存概率,取值[0,1],公式形式和遗忘门完全一样,第二部分a(t)a^{(t)}a(t)代表当前的记忆,公式形式则和RNN的隐藏状态h(t)h^{(t)}h(t)更新公式完全一致。
2.3 细胞状态更新
在研究LSTM输出门之前,我们要先看看LSTM之细胞状态。前面的遗忘门和输入门的结果都会作用于细胞状态C(t)C^{(t)}C(t)。
2.4 输出门
输出门决定了当前细胞状态C(t)C^{(t)}C(t) 有多少输出到 LSTM 的当前输出值 h(t)h^{(t)}h(t)。
输出门的第一部分o(t)o^{(t)}o(t)表示保存概率,公式形式和遗忘门完全一样
LSTM的前向传播
LSTM的反向传播
LSTM模型与前向反向传播算法 - 刘建平Pinard - 博客园
https://www.cnblogs.com/pinard/p/6519110.html
LSTM的缺点:
利用LSTM对句子进行建模时无法编码从后到前的信息
3.双向长短期记忆网络(BiLSTM)
通过BiLSTM可以更好的捕捉双向的语义依赖。
【DL小结3】RNN与LSTM相关推荐
- RNN以及LSTM的介绍和公式梳理
RNN以及LSTM的介绍和公式梳理 标签: 算法RNNLSTM 2015-07-25 16:32 127091人阅读 评论(40) 收藏 举报 本文章已收录于: 深度学习知识库 分类: 机器学习( ...
- 情感分类模型介绍CNN、RNN、LSTM、栈式双向LSTM
情感分类模型介绍CNN.RNN.LSTM.栈式双向LSTM 1.文本卷积神经网络(CNN) 卷积神经网络经常用来处理具有类似网格拓扑结构(grid-like topology)的数据.例如,图像可以视 ...
- 深度学习(自然语言处理)RNN、LSTM、TextCNN
目录 0 前言: 1.从RNN到LSTM 1.1 RNN 1.2 LSTM模型 1.2.1遗忘门(forget gate) 1.2.2 输入门 1.2.3 输出门 1.3 使用循环神经网络模型 2 t ...
- 【串讲总结】RNN、LSTM、GRU、ConvLSTM、ConvGRU、ST-LSTM
前言 平时很少写总结性的文章,感觉还是需要阶段性总结一些可以串在一起的知识点,所以这次写了下.因为我写的内容主要在时序.时空预测这个方向,所以主要还是把rnn,lstm,gru,convlstm,co ...
- 循环神经网络(RNN、LSTM、GRU)
循环神经网络(RNN.LSTM.GRU) 目录 循环神经网络(RNN.LSTM.GRU) 概述: 计算: LSTM(长短记忆模型): GRU:
- 记忆网络RNN、LSTM与GRU
RNN 结构 训练 应用 RNN Variants LSTM 结构 梯度消失及梯度爆炸 GRU 结构 一般的神经网络输入和输出的维度大小都是固定的,针对序列类型(尤其是变长的序列)的输入或输出数据束手 ...
- RNN和LSTM的正向/前向传播-图示公式和代码
本文先讲的基础版本的RNN,包含内部结构示意图,公式以及每一步的python代码实现.然后,拓展到LSTM的前向传播网络.结合图片+公式+可运行的代码,清晰充分明白RNN的前向传播网络的具体过程.完整 ...
- 「模型解读」浅析RNN到LSTM
https://www.toutiao.com/a6711704602531594764/ 卷积神经网络使用固定大小的矩阵作为输入(比如一张图片),然后输出一个固定大小的向量(比如不同分类的概率),适 ...
- 【模型解读】浅析RNN到LSTM
卷积神经网络使用固定大小的矩阵作为输入(比如一张图片),然后输出一个固定大小的向量(比如不同分类的概率),适合于图像分类,目标检测,图像分割等.但是除了图像外,还有非常多的信息是非固定长度或者大小的, ...
- 【图文并茂】RNN、LSTM、GRU、ConvLSTM、ConvGRU、ST-LSTM的总结
前言 平时很少写总结性的文章,感觉还是需要阶段性总结一些可以串在一起的知识点,所以这次写了下.因为我写的内容主要在时序.时空预测这个方向,所以主要还是把rnn,lstm,gru,convlstm,co ...
最新文章
- Squid故障与解决方法汇总
- 去哪面试都会问的HashMap
- struts 2中为什么抽象包不能包含action?
- python中continue用法案例_记录今天学习python中for与while循环针对break和continue的用法...
- 用C#制作PDF文件全攻略 (专至csdn)
- 一位程序猿面试蚂蚁金服后端的经验总结!
- 寻找固定的和----2013年2月26日
- 全网首发:CENTOS FreeSwitch集成NVIDIA CODEC
- xCodeGhost 事件专题总结
- Unity编辑器扩展工具Shader Forge和Behavior Designer(行为树)和 Cinema Director
- 顶岗实习周记java方向_java软件开发顶岗实习周记
- vi编辑器替换字符串命令
- gm21模型python_GM11灰色模型
- C语言获取本机IP地址
- 昆仑通态触摸屏保存历史曲线_mcgs历史数据保存到U盘
- js原生css修改,原生js获取、添加、修改_非行间css样式
- Nginx之proxy_pass详解
- 阿里云 部署SpringBoot和Vue项目 亲测可用(第一次部署经验贴)
- 2007年世界顶级防火墙排名
- 2.11 header footer hgroup address元素