LSTM基础

由来

Vanilla RNN无法记忆之前的信息,比如:“我来自中国……我能流利地说中文 ”,“中文”二字来自很长的语句之前,所以这个填空就很不好填。LSTM可以较好的解决这个问题。

结构

LSTM的总体结构图
σ \sigma σ代表sigmoid函数,黄色的框框代表可被训练的layer,红色的圈圈代表直接的运算

核心

Gates
门的理念:让被允许通过的信息通过,阻止不被允许通过的信息通过。sigmoid的值域为[0,1],再加上乘法,就可以决定让百分之多少的信息通过。从极值来看,sigmoid的output为0代表所有信息都无法通过,1代表所有信息都可以通过

forget gate layer

forget gate layer
收集从 h t − 1 h_{t-1} ht1 x t x_t xt来的信息,然后决定要完全保留之前获取的信息 C t − 1 C_{t-1} Ct1的内容(sigmoid输出为1)还是完全去除(sigmoid输出为0)

Input gate layer

Input gate layer
sigmoid作用同上,tanh的范围是[-1,1]正好可以用来确定是[negative, positive],也就是从完全的负相关(-1)到无关(0),再到完全正相关(1)

更新 C t C_t Ct

更新C_t
× \times ×代表保留来路方向百分之几的信息,从左往右的第一个 × \times ×表示保留多少之前所有状态总和 C t − 1 C_{t-1} Ct1的信息,第二个 × \times ×表示保留多少从 h t − 1 h_{t-1} ht1 x t x_t xt来的经过tanh处理后得到的 C t ~ \widetilde{C_t} Ct 信息,加号( + + +)表示将之前所有状态来的信息和当前信息两者结合得到最终的输出 C t C_t Ct

决定当前输出 h t h_t ht

在这里插入图片描述
tanh作用同上,这边就是决定 C t C_t Ct的百分之多少的信息应该在当前单元输出

参考:
https://colah.github.io/posts/2015-08-Understanding-LSTMs/
https://www.jianshu.com/p/9dc9f41f0b29

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值