双向lstm_LSTM 为何如此有效?这五个秘密是你要知道的

长短期记忆网络(LSTM)为解决RNN的长期依赖问题而生,通过“门”机制实现有效记忆。本文揭示了LSTM的五个秘密,包括“忘记门”、“输入门”以及“细胞状态”的作用,阐述了LSTM如何在处理序列数据时避免梯度消失和长期记忆消失的问题。LSTM已广泛应用于语音识别、机器翻译等领域,显著提高了相关服务的质量。
摘要由CSDN通过智能技术生成

6f60026ca3134e2d3678e05223f21d99.png 图片来源 佩吉·乔卡尔

长短期记忆网络(LSTM),作为一种改进之后的循环神经网络,不仅能够解决 RNN无法处理长距离的依赖的问题,还能够解决神经网络中常见的梯度爆炸或梯度消失等问题,在处理序列数据方面非常有效。

有效背后的根本原因有哪些?本文结合简单的案例,带大家了解关于 LSTM 的五个秘密,也解释了 LSTM如此有效的关键所在。

秘密一:发明LSTM是因为RNN 发生严重的内存泄漏

之前,我们介绍了递归神经网络(RNN),并演示了如何将它们用于情感分析。

RNN 的问题是远程内存。例如,它们能够预测出“the clouds are in the…”这句话的下一个单词“sky”,但却无法预测出下面这句话中缺失的单词:“她在法国长大。现在到中国才几个月。她说一口流利的 …”(“She grew up in France. Now she has been in China for few months only. She speaks fluent …”)

随着间隔的拉长,RNN变得无法学会信息连接。 在此示例中,最近的信息表明,下一个词可能是一种语言的名称,但是如果我们想缩小哪种语言的范围,那么就需要到间隔很长的前文中去找“法国”。 在自然语言文本中,这种问题,完全有可能在相关信息和需要该信息的地方出现很大的差异。这种差异在德语中也很常见。

3c8265c3b45a3c1c5ef1c1affd8a4258.png

图片来自FB Engineering Tejas Patil的博客上

为什么RNN在长序列文本方面存在巨大的问题? 根据设计,RNN 在每个时间步长上都会接受两个输入:一个输入向量(例如,输入句子中的一个词)和一个隐藏状态(例如,以前词中的记忆表示)。

RNN下一个时间步长采用第二个输入向量和第一隐藏状态来创建该时间步长的输出。 因此,为了捕获长序列中的语义,我们需要在多个时间步长上运行RNN,将展开的RNN变成一个非常深的网络。

阅读参考:

长序列并不是RNN的唯一麻烦制造者。 就像任何非常深的神经网络一样,RNN也存在梯度消失和爆炸的问题,因此需要花费大量时间进行训练。人们已经提出了许多技术来缓解此问题,但还无法完全消除该问题,这些技术包括:

  • 仔细地初始化参数

  • 使用非饱和激活函数,如ReLU

  • 应用批量归一化、梯度消失、舍弃网络细胞等方法

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值