自剪枝神经网络

Simple RNN从理论上来看,具有全局记忆能力,因为T时刻,递归隐层一定记录着时序为1的状态

但由于Gradient Vanish问题,T时刻向前反向传播的Gradient在T-10时刻可能就衰减为0。

从Long-Term退化至Short-Term。

尽管ReLU能够在前馈网络中有效缓解Gradient Vanish,但RNN的深度过深,替换激活函数治标不治本。

$\left |  \prod_{j=p+1}^{t}\frac{\partial b_{h}^{j}}{\partial b_{h}^{j-1}}\right |\leqslant (\beta_{W}\cdot\beta_{h})^{t-p} \quad where \quad \beta =UpperBound$

上式中指明的根源所在,由于W和h两个矩阵多次幂导致受数值影响敏感,简而言之就是深度过大。

大部分Long-Term情况下,不需要提供路径上完整的信息,但反向传播还是循规蹈矩地穿过这些冗深度。

解决方案之一是,设置可自主学习的参数来屏蔽掉这些无用的信息,与"降维"相似,这种方法叫"降层"

神经网络的剪枝策略很简单,就是添加参数矩阵,经过一定周期的学习,选择性屏蔽掉输入,精简网络。

从结构上来看,类似“树套树”,就是”神经网络套神经网络“。

动态门结构

简单概括:

★LSTM将RNN的输入层、隐层移入Memory Cell加以保护

★Input Gate、Forget Gate、Output Gate,通过训练参数,将Gate或开(置1)或闭(置0),保护Cell。

在时序展开图上则更加清晰:

公式定义

原版LSTM最早在[Hochreiter&Schmidhuber 97]提出。

今天看到的LSTM是[Gers 2002]改良过的 extended LSTM。

extended LSTM扩展内容:

★Forget Gate,用于屏蔽t-1以及之前时序信息。

在时序展开图上,由左侧锁住以保护Cell。

★三态门控:

97年提出的Gate输入类似RNN,分为两态Weight矩阵:

☻Wx——序列输入信息

☻Wh——递归隐态输入信息

2002年补充了第三态:

☻Wc——递归Cell态输入信息

将Cell的时序状态引入Gate,称为Peephole Weights。

唯一作用似乎是提升LSTM精度,Alex Graves的博士论文中这么说:

The peephole connections,meanwhile, improved the LSTM’s ability to learn tasks that require precise
timing and counting of the internal states.

具体实现的时候,为了增加计算效率,可以忽视:

Theano的Tutorial中这么说道:

The model we used in this tutorial is a variation of the standard LSTM model.

In this variant, the activation of a cell’s output gate does not depend on the memory cell’s state .

This allows us to perform part of the computation more efficiently (see the implementation note, below, for details).

而CS224D Lecture8中压根就没提。

所以双态Gate可能是更为主流的LSTM变种。

2.1 前向传播

输入门:

$i_{t}=Sigmoid(W_{i}x_{t}+U_{i}h_{t-1}+V_{i}C_{t-1})$      ①

遗忘门:

$f_{t}=Sigmoid(W_{f}x_{t}+U_{f}h_{t-1}+V_{f}C_{t-1})$    ②

输出门:

$O_{t}=Sigmoid(W_{o}x_{t}+U_{o}h_{t-1}+V_{o}C_{t})$    ③

原始Cell(RNN部分):

$\tilde{C_{t}}=Tanh(W_{c}x_{t}+U_{c}h_{t-1})$                  ④

门套Cell:

$C_{t}=i_{t}\cdot\tilde{C_{t}}+f_{t}\cdot C_{t-1}$         (输入门+遗忘门)        ⑤

$h_{t}=O_{t}\cdot Tanh(C_{t}) \quad where \quad h_{t}=FinalOutput$       (输出门)       ⑥

————————————————————————————————————————————————————

仔细观察①②③④,发现除了Peephole Weights引入的$V$阵,这四个式子是一样的。

Theano中为了GPU能够一步并行计算,没有使用Peephole Weights,这样①②③④就是一个基本并行模型:

以相同的代码,运算数据集在空间中的不同部分。

转载于:https://www.cnblogs.com/neopenx/p/4732774.html

Long-Short Memory Network(LSTM长短期记忆网络)相关推荐

  1. 利用LSTM(长短期记忆网络)来处理脑电数据

    目录 LSTM 原理介绍 LSTM的核心思想 一步一步理解LSTM 代码案例 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 .QQ交流群:903290195 Rose小哥今天介绍一下用LS ...

  2. LSTM(长短期记忆网络)原理与在脑电数据上的应用

    LSTMs(Long Short Term Memory networks,长短期记忆网络)简称LSTMs,很多地方用LSTM来指代它.本文也使用LSTM来表示长短期记忆网络.LSTM是一种特殊的RN ...

  3. 深度学习 LSTM长短期记忆网络原理与Pytorch手写数字识别

    深度学习 LSTM长短期记忆网络原理与Pytorch手写数字识别 一.前言 二.网络结构 三.可解释性 四.记忆主线 五.遗忘门 六.输入门 七.输出门 八.手写数字识别实战 8.1 引入依赖库 8. ...

  4. 神经网络学习笔记3——LSTM长短期记忆网络

    目录 1.循环神经网络 1.1循环神经网络大致结构 1.2延时神经网络(Time Delay Neural Network,TDNN) 1.3按时间展开 1.4反向传播 1.5 梯度消失,梯度爆炸 2 ...

  5. Pytorch LSTM 长短期记忆网络

    Pytorch LSTM 长短期记忆网络 0. 环境介绍 环境使用 Kaggle 里免费建立的 Notebook 教程使用李沐老师的 动手学深度学习 网站和 视频讲解 小技巧:当遇到函数看不懂的时候可 ...

  6. 【思维导图】利用LSTM(长短期记忆网络)来处理脑电数据

    文章来源| 脑机接口社区群友 认知计算_茂森的授权分享 在此非常感谢 认知计算_茂森! 本篇文章主要通过思维导图来介绍利用LSTM(长短期记忆网络)来处理脑电数据. 文章的内容来源于社区分享的文章&l ...

  7. Maltab GUI课程设计——LSTM长短期记忆网络回归预测

    文章目录 课程设计 平台:Matlab App designer 功能实现:LSTM长短期记忆网络回归预测 目的: 演示: 欢迎交流 课程设计 平台:Matlab App designer 功能实现: ...

  8. RNN循环神经网络 、LSTM长短期记忆网络实现时间序列长期利率预测

    全文链接:http://tecdat.cn/?p=25133 2017 年年中,R 推出了 Keras 包 _,_这是一个在 Tensorflow 之上运行的综合库,具有 CPU 和 GPU 功能(点 ...

  9. LSTM(长短期记忆网络)原理介绍

    相关学习资料: Pytorch:RNN.LSTM.GRU.Bi-GRU.Bi-LSTM.梯度消失.爆炸 难以置信!LSTM和GRU的解析从未如此清晰 RNN_了不起的赵队-CSDN博客_rnn 如何从 ...

最新文章

  1. Bitcoin.com推出BCH新图表,加大对BCH的支持
  2. 岚图FREE入局之战,手握哪些底牌?
  3. 远程过程调用失败_Dubbo 本地调用
  4. c#中怎样取得某坐标点的颜色
  5. java short float_Java Short floatValue()用法及代码示例
  6. 什么镜头最适合拍风景_为什么您的风景摄影套件中应始终装有远摄镜头
  7. 脱机下载至校验成功的脚本
  8. Baxter实战 (一)ubuntu14.04安装ROS-Indigo
  9. LINUX查询版本情况
  10. 高并发下如何保证数据库和缓存双写一致性?
  11. 软件如何实现屏幕共享?
  12. 眼图、星座图、瀑布图
  13. 服务端(java)实现微信支付二次签名
  14. autocad ios 虚线_autocad中画箭头、虚线绘制方法介绍
  15. 三年级计算机帮助我们学本领,三年级作文学本领40
  16. 新华DCS系统MODBUS通讯仿真测试方法介绍
  17. 毕业季:我和未来有个对话
  18. mac photoshop cs5.1 序列号
  19. 网站漏洞如何修复web漏洞jeecms
  20. 网络设备的MAC地址

热门文章

  1. java 最简单一个家庭支付收入项目(实用于刚入门的小伙伴)
  2. c语言报刊杂志订阅系统,中国报刊杂志大全_报刊大全_报刊杂志订阅
  3. python操作linux命令行_python调用调用Linux命令
  4. 自然辩证法与计算机科学的关系,科学技术与自然辩证法的关系 毕业论文
  5. gdc服务器系统备份和还原,FANUC镜像系统如何备份及恢复
  6. connot+connect+mysql+127.0.0.1_无法远程连接 MySQL 的解决方法
  7. 网络摄像头转usb接口_同时读取多个摄像头数据(包括海康网络摄像头和USB摄像头)...
  8. vr降噪器英文是什么_耳机降噪功能这么多,说说什么是ANC、ENC、CV...
  9. html5复选框控制按钮状态,HTML5如何添加原生radio按钮和checkbox复选框转换为非常好看的滑动开关按钮的插件...
  10. 信息安全技术网络安全等级保护定级指南_报业网络安全等级保护定级参考指南V2.0发布...