LSTM

                                                                                                                                              点击此处返回总目录

 

我们前面讲的RNN只是RNN的最简单的版本。前面讲的memory是最单纯的,我们随时都可以把值存到memory里面去,也可以随时读出来。

但是现在比较常用的memory称之为Long Short-term Memory,简写为LSTM。。

             

这种Long Short-term Memoy是比较复杂的。它有三个门。

当某个神经元的input想要写到Memory cell里面的时候呢,必须先通过一个闸门Input Gate。这个Input Gate打开的时候,才能把值写到Memory cell里面去,如果关起来了,其他神经元就没有办法把值写进去。这个Input Gate是打开还是关闭,是网络自己学的,它可以自己学什么时候要把Input Gate打开,什么时候要把Input Gate关起来。

                                      

输出的地方也有一个Output Gate,这个Output Gate会决定说,外界其他的神经元可不可以从memory里面把值读出来。当Output Gate关闭的时候,就没有办法把值读出来了,Output Gate打开的时候才可以把值读出来。跟Input Gate一样,Output Gate什么时候打开,什么时候关闭,也是网络自己学到的。

                                

 

第三个Gate叫做Forget Gate,Forget Gate是决定说什么时候memory cell把过去记得的东西忘掉。Forget Gate什么时候把里面的值继续保留下来。什么时候忘掉,什么时候保留,也是网络自己学到的。

                                       

 

整个LSTM可以看成有四个input,1个output。这四个input是,想要被存到memory里面的值、操控Input Gate的信号、操控Output Gate 的信号、操控Forget Gate的信号。

                        

 

还有一个小小的冷知识。LSTM名字是"Long Short-term Memory"而不是"Long-short Term Memory"。"-"应该放在"short"和"term"之间,因为其实还是一个Short-term的memory,只是比较长的短时记忆网络。因为RNN的memory在每个时间点都会被洗掉,所以它的short-term是非常短的,它只记得前一个时间点的事情。而LSTM可以记得比较长时间一点,只要Forget Gate不删除的话,它的值就一直有。

 

-------------------------------------------------------------------------------------------------------------------------------

更仔细来看它的formulation的话,长的像这样。1是外界的input,是要存到cell中的input;2是Input Gate;3是Forget Gate;4是Output Gate。现在假设要存到cell中的input叫做z;操控Input Gate的信号叫做Zi,所谓操控Input Gate的信号也

  • 16
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值