对LSTM的理解

LSTM(Long Short-Term Memory)是长短期记忆网络,是一种时间递归神经网络,适合于处理和预测时间序列中间隔和延迟相对较长的重要事件。(百度百科

LSTM是通过控制细胞状态,结合上一次的输出ht-1和本次输入向量xt而输出新的ht。这里细胞状态类似于传送带,将之前学习过的信息保存,在这上信息不容易丢失。

(盗了个图,原文链接:https://www.jianshu.com/p/9dc9f41f0b29   写得很好)

LSTM控制细胞状态的结构为“门”,门是一种让信息选择通过的方法,他们包含一个sigmoid神经网络层和一个pointwise乘法操作。(pointwise是点积),sigmoid层输出0~1之间的数值,描述每个部分有多少量可以通过。0代表不许任何量通过,1指允许任何量通过。

忘记门

决定从细胞状态(传送带)中丢弃什么信息,该门会读取ht-1和xt,通过sigmoid输出一个0到1之间的数值,1表示完全保留,0表示完全舍弃。

例如,他今天有事,所以我。。。当处理到‘’我‘’的时候选择性的忘记前面的’他’,或者说减小这个词对后面词的作用。

输入门

决定往细胞状态中添加什么新信息。这个过程有两个部分。第一,sigmoid层决定什么值将被更新,第二,一个tanh层创建一个新的候选值向量。将二者相乘并传给细胞状态。

例如:他今天有事,所以我。。。。当处理到‘’我‘’这个词的时候,就会把主语我更新到细胞中去。

更新细胞状态

将上一个细胞状态与忘记门相乘,丢弃不需要的信息,并与输入门相加,添加有用的信息。(公式如图,还是盗的,链接同上)

输出门

输出值是基于细胞状态的,但只是细胞状态的一部分。通过sigmoid函数在ht-1和xt中计算出要输出的部分,通过tanh函数处理细胞状态(得到一个在-1和1之间的值)并将它和sigmoid门的输出相乘,最终仅仅输出我们确定要输出的部分

在语言模型的例子中,因为他就看到了一个 代词,可能需要输出与一个 动词 相关的信息。例如,可能输出是否代词是单数还是负数,这样如果是动词的话,我们也知道动词需要进行的词形变化。 
例如:上面的例子,当处理到‘’我‘’这个词的时候,可以预测下一个词,是动词的可能性较大,而且是第一人称。 

会把前面的信息保存到隐层中去。


最后附上原文链接:https://blog.csdn.net/roslei/article/details/61912618

                                https://www.jianshu.com/p/9dc9f41f0b29

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值