LSTM 网络中几个门的理解
个人认为下面这篇博文非常适合初学或者学的很浅的朋友。
转自http://www.jianshu.com/p/9dc9f41f0b29
经常接触LSTM,GRU,RNN这些模型,对于LSTM的印象只是知道它用来解决梯度消失梯度爆炸问题,对于长距离的句子的学习效果不好的问题,而且大概知道里面是加了一些参数,加了门单元来选择忘记和记住一些信息。但是具体公式没有推过,所以理解的不够深。
但是上面这篇长博文,作者真心花了很多心血来创作,写的详细,易懂,对于学习lstm有很大的帮助。
读完后我觉得要理解几个门的作用,文中作者提到的三个例子恰到好处。个人认为这三个例子是弄明白lstm的关键。
忘记门:
作用对象:细胞状态
作用:将细胞状态中的信息选择性的遗忘
让我们回到语言模型的例子中来基于已经看到的预测下一个词。在这个问题中,细胞状态可能包含当前主语的类别,因此正确的代词可以被选择出来。当我们看到新的主语,我们希望忘记旧的主语。
例如,他今天有事,所以我。。。当处理到‘’我‘’的时候选择性的忘记前面的’他’,或者说减小这个词对后面词的作用。
输入层门:
作用对象:细胞状态
作用:将新的信息选择性的记录到细胞状态中
在我们语言模型的例子中,我们希望增加新的主语的类别到细胞状态中,来替代旧的需要忘记的主语。
例如:他今天有事,所以我。。。。当处理到‘’我‘’这个词的时候,就会把主语我更新到细胞中去。
输出层门:
作用对象:隐层ht
在语言模型的例子中,因为他就看到了一个 代词,可能需要输出与一个 动词 相关的信息。例如,可能输出是否代词是单数还是负数,这样如果是动词的话,我们也知道动词需要进行的词形变化。
例如:上面的例子,当处理到‘’我‘’这个词的时候,可以预测下一个词,是动词的可能性较大,而且是第一人称。
会把前面的信息保存到隐层中去。
Gated Recurrent Unit (GRU)就是lstm的一个变态,这是由 Cho, et al. (2014) 提出。它将忘记门和输入门合成了一个单一的 更新门。同样还混合了细胞状态和隐藏状态,和其他一些改动。最终的模型比标准的 LSTM 模型要简单,也是非常流行的变体。
以上的观点纯属个人通过学习这篇博文后的一些理解,有错误的地方请大家见谅。
LSTM 网络中几个门的理解相关推荐
- 从任务到可视化,如何理解LSTM网络中的神经元 By 机器之心2017年7月03日 14:29 对人类而言,转写是一件相对容易并且可解释的任务,所以它比较适合用来解释神经网络做了哪些事情,以及神经网
从任务到可视化,如何理解LSTM网络中的神经元 By 机器之心2017年7月03日 14:29 对人类而言,转写是一件相对容易并且可解释的任务,所以它比较适合用来解释神经网络做了哪些事情,以及神经网络 ...
- Gram矩阵与卷积网络中的卷积的直观理解
Gram矩阵其实是一种度量矩阵.矩阵分析中有这样的定义. 设 V V是nn维欧式空间 ϵ1,⋯,ϵn \mathbf{\epsilon_1, \cdots, \epsilon_n }是它的一个基, g ...
- 目标检测网络中的 bottom-up 和 top-down理解
看目标检测网络方面的论文时,出现了一组对比词汇: bottom-up和top-down,查了一些资料,结合个人理解,得到的看法是: top-down: 顾名思义是自上而下进行,最初来源于行人检测框架, ...
- 网络中数据传输的理解
网络中数据传输 前后端交互理解 实际上以太网中传输的是模拟信号,不一定是二进制的(一般使用PAM编码),没有所谓的字节一说(所以一般网速也不用字节表示).这些模拟信号进到网卡里之后才会被转换成符合计算 ...
- 【LSTM】基于LSTM网络的人脸识别算法的MATLAB仿真
1.软件版本 matlab2021a 2.本算法理论知识 长短时记忆模型LSTM是由Hochreiter等人在1997年首次提出的,其主要原理是通过一种特殊的神经元结构用来长时间存储信息.LSTM网络 ...
- 基于keras的双层LSTM网络和双向LSTM网络
1 前言 基于keras的双层LSTM网络和双向LSTM网络中,都会用到 LSTM层,主要参数如下: LSTM(units,input_shape,return_sequences=False) un ...
- 从Tensorflow代码中理解LSTM网络
目录 RNN LSTM 参考文档与引子 缩略词 RNN (Recurrent neural network) 循环神经网络 LSTM (Long short-term memory) 长短期记忆人 ...
- (译)理解 LSTM 网络 (Understanding LSTM Networks by colah)
前言:其实之前就已经用过 LSTM 了,是在深度学习框架 keras 上直接用的,但是到现在对LSTM详细的网络结构还是不了解,心里牵挂着难受呀!今天看了 tensorflow 文档上面推荐的这篇博文 ...
- 【译】深入理解LSTM网络
递归神经网络 人类不会每时每刻都开始思考. 当你阅读这篇文章时,你会根据你对之前单词的理解来理解每个单词. 你不要扔掉所有东西,然后再从头开始思考. 你的想法有持久性. 传统的神经网络无法做到这一点, ...
最新文章
- 用 Python 爬了点你们喜欢的小电影
- laravel 163发送邮件
- 【luogu 3811】【模板】乘法逆元
- Ubuntu系统下桌面卡死,但是鼠标键盘可以动
- python rowspan_Python tkinter rowspan未正确调整元素大小
- 万方数据知识平台 TFHpple +Xpath解析
- Apache JMeter 压试 HTTP接口
- libevent源码深度剖析十二
- Installing OwnCloud 9 on Debian 8
- 不识 Pandas,纵是老手也枉然?
- 数据分析,怎么做才算到位?
- 关于GIS/RS的一些网站和论坛
- Dev中ChartControl——属性熟悉与简单应用
- 爬取淘宝评论以及词云图
- Win10 删除网络驱动器
- 三运放差分放大电路分析_三运放差动放大电路
- 受用一生的高效PyCharm使用技巧(三)
- 人脸识别:人脸数据集
- PHP 按照字节来分割字符串
- raise_objection和drop_objection的学习