机器学习与Tensorflow(5)——循环神经网络、长短时记忆网络
1.循环神经网络的标准模型
- 前馈神经网络能够用来建立数据之间的映射关系,但是不能用来分析过去信号的时间依赖关系,而且要求输入样本的长度固定
- 循环神经网络是一种在前馈神经网络中增加了分亏链接的神经网络,能够产生对过去数据的记忆状态,所以可以用于对序列数据的处理,并建立不同时段数据之间的依赖关系
- 循环神经网络是一类允许节点连接成有向环的人工神经网络。如下图:

2.循环神经网络与递归神经网络
- 从广义上说,递归神经网络可以分为结构递归神经网络和时间递归神经网络
- 从狭义上说,递归神经网络可以通常就是指结构递归神经网络,而时间递归神经网络则被称为循环神经网络
3.标准循环神经网络的结构类型(两种)
不妨设t时刻,网络的输入向量为x(t),隐含向量为h(t),网络的输出向量是o(t),用V表示输入层与隐含层之间的连接权值,U表示隐含层与隐含层之间的连接权值,W表示隐含层与输出层之间的连接权值,b和a表示隐含层的输出层的偏置
Elman网络:
- 网络结构如下图:

- Elman网络包含从隐含节点到上下文节点的反馈链接,以及从上下文节点调到隐含节点的前馈链接,其中上下文节点的输入是隐含层上一时刻的输出
- Elman网络从0时刻到T时刻的计算过程可以描述为:

Jordan网络:
- 网络结构如下图:

- Jordan网络包含从输出节点到上下文节点的反馈,以及从上下文节点到隐含节点的前馈链接,其中上下文节点的输入是输出层上一时刻的输出。此外,Jordan网络的上下文节点允许自连接
- Jordan网络从0时刻到T时刻的计算过程可以描述为:

4.长短时记忆网络(long short-term memory,LSTM)
- 长短时记忆网络(LSTM network),又称为长短时记忆循环网络,是一种在经典循环神经网络的基础上发展起来的改进模型。
- LSTM网络的特点在于利用记忆模块代替普通的隐含节点,确保梯度在传递跨越很多时间步骤之后不消失或爆炸,从而能够克服传统循环神经网络训练中遇到的某些困难
- 长短时记忆网络非常适合于从经验中学习分类,以及处理和预测那些在重要事件之间存在未知时长延迟的时间序列
- 循环神经网络和长短时记忆网络之间的对应关系如下图所示:

5.传统记忆块组成
- 传统记忆块有一个或者多个具有内部状态的记忆细胞(memory sell)、一个输入挤压单元(input squashing unit)、一个输入门控单元(input gating unit)、一个输入门单元(input gate unit)、一个输出门单元(output gate unit)、一个输出挤压单元(outnput squashing unit)、和一个输出门控单元(output gating unit)几部分组成。

机器学习与Tensorflow(5)——循环神经网络、长短时记忆网络的更多相关文章
- 基于TensorFlow的循环神经网络(RNN)
RNN适用场景 循环神经网络(Recurrent Neural Network)适合处理和预测时序数据 RNN的特点 RNN的隐藏层之间的节点是有连接的,他的输入是输入层的输出向量.extend(上一 ...
- 循环神经网络与LSTM网络
循环神经网络与LSTM网络 循环神经网络RNN 循环神经网络广泛地应用在序列数据上面,如自然语言,语音和其他的序列数据上.序列数据是有很强的次序关系,比如自然语言.通过深度学习关于序列数据的算法要比两 ...
- LSTM——长短时记忆网络
LSTM(Long Short-term Memory),长短时记忆网络是1997年Hochreiter和Schmidhuber为了解决预测位置与相关信息之间的间隔增大或者复杂语言场景中,有用信息间隔 ...
- 长短时记忆网络(LSTM)
长短时记忆网络 循环神经网络很难训练的原因导致它的实际应用中很处理长距离的依赖.本文将介绍改进后的循环神经网络:长短时记忆网络(Long Short Term Memory Network, LSTM ...
- (转)零基础入门深度学习(6) - 长短时记忆网络(LSTM)
无论即将到来的是大数据时代还是人工智能时代,亦或是传统行业使用人工智能在云上处理大数据的时代,作为一个有理想有追求的程序员,不懂深度学习(Deep Learning)这个超热的技术,会不会感觉马上就o ...
- RNN学习笔记(一):长短时记忆网络(LSTM)
一.前言 在图像处理领域,卷积神经网络(Convolution Nerual Network,CNN)凭借其强大的性能取得了广泛的应用.作为一种前馈网络,CNN中各输入之间是相互独立的,每层神经元的信 ...
- tensorflow实现循环神经网络
包括卷积神经网络(CNN)在内的各种前馈神经网络模型, 其一次前馈过程的输出只与当前输入有关与历史输入无关. 递归神经网络(Recurrent Neural Network, RNN)充分挖掘了序列数 ...
- tensorflow RNN循环神经网络 (分类例子)-【老鱼学tensorflow】
之前我们学习过用CNN(卷积神经网络)来识别手写字,在CNN中是把图片看成了二维矩阵,然后在二维矩阵中堆叠高度值来进行识别. 而在RNN中增添了时间的维度,因为我们会发现有些图片或者语言或语音等会在时 ...
- Tensorflow中循环神经网络及其Wrappers
tf.nn.rnn_cell.LSTMCell 又名:tf.nn.rnn_cell.BasicLSTMCell.tf.contrib.rnn.LSTMCell 参见: tf.nn.rnn_cell.L ...
随机推荐
- Spring注解方式配置Redis
@Configuration public class RedisConfiguraion { @Bean public JedisConnectionFactory redisConnectionF ...
- Jenkin配置执行远程shell命令
转载自 http://www.cnblogs.com/parryyang/p/6261730.html 在利用jenkins进行集成化部署的时候,我们在部署生成的war包时,往往需要进行一些备份,或者 ...
- 二十、Flyweight 享元模式
原理: 代码清单: BigChar public class BigChar { //字符名称 private char charname; //大型字符 # . \n 组成 private Stri ...
- m_sequencer、p_sequencer
https://blog.csdn.net/zhajio/article/details/79608323 p - parent sequencer - 要处理的实际sequencer类型的句柄,这个 ...
- js控制style样式
1.行内样式获取打印出来 2.内嵌和外链的获取不了 <div style="width:200px;height:200px; background: red;">&l ...
- [Selenium] 在Chrome的开发者工具中验证检查XPath/CSS selectors
Evaluate and validate XPath/CSS selectors in Chrome Developer Tools Method 1 : From Elements panel U ...
- 设计模式 策略模式2 c++11
根据需求的不同 选择不同的策略算法 之前是保存的各种策略类的指针 这里直接使用 function bind 选择对应的算法 代码 // 005.cpp: 定义控制台应用程序的入口点. // #inc ...
- 20170805_linux
http://blog.csdn.net/aaaaatiger/archive/2007/07/28/1713611.aspx Delphi/Pascal code ? 1 2 3 4 5 6 7 ...
- powerDesigner 正向工程生成sql注释
找到script-->objects-->column-->add value内容如下: %:COLUMN% %:DATATYPE%[.Z:[%Compressed%? compre ...
- Maven学习 一 概念介绍
一 Maven是什么 Maven是一个Apache公司的开源项目,主要有两个作用:(1)是项目构建工具.(2)是用来管理java程序中jar包的依赖. 它包含了一个项目对象模型(Project Obj ...