长短期记忆网络LSTM

上两小节我们主要讲述了循环神经网络RNN,但是尽管 RNN 被设计成可以利用历史的信息来预测当前的决策,例如使用之前出现的单词来加强对当前单词的理解,但是预测RNN决策的主要还是最后输入的一些信号,更早之前的信号会随着时间的推迟而变得强度越来越低,它对后续的影响越来越弱。这样就会给RNN带来了新的技术挑战一一长期依赖(Long-Term Dependencies) 问题。

当遇到一些上下文信息场景更加复杂的情况时,比如当模型试着去预测“Here for several days of rain, so the air is very fresh”中最后一个单词“fresh”时,我们可以凭直观感觉填写出“fresh"或“good”等,但 RNN 模型仅仅根据短期依赖就无法很好地解决这种问题。因为根据“very”,模型判断出最后一个单词是形容词,根据“air”,模型判断出这个形容词要去形容“air”,但如果模型需要预测清楚具体用什么形容词去形容 “air”,就需要考虑先前提到的但离当前位置较远的上下文信息,在这句话中就是上半句中的“rain”以及修饰“rain”的相关单词。

随着长短期记忆网络( LongSort Term Memory, LSTM)的发明,长期依赖的问题得到解决,也是循环神经网络中的一种。

LSTM的简介

LSTM 的主要思想是:门控单元以及线性连接的引入

1)门控单元:有选择性的保存和输出历史信息

2)线性连接:如下图中的水平线可以看作是 LSTM 的“主干道”,通过加法,Ct−1可以无障碍的在这条主干道上传递,因此 LSTM可以更好地捕捉时序数据中间隔较大的依赖关系。
在这里插入图片描述

下图为一个LSTM,共有三个神经元。
在这里插入图片描述

下面我们介绍下LSTM的神经元内部结构以及工作原理。

LSTM的关键是细胞状态,细胞状态可以无障碍的在这条主干道上传递。

细胞的状态类似于输送带,细胞的状态在整个链上运行,它只会进行少量的线性百年换,信息很容易保持不变的流过整个链。

在这里插入图片描述
LSTM具有遗忘或记忆信息到细胞状态的能力,这个能力是由被称为门(Gate)的结构所赋予的,这个门的作用是让信息有多少量需要被记住。

在我们 LSTM 中的第一步是决定我们会从细胞状态中丢弃什么信息。这个决定通过一个称为忘记门层完成。该门会读取h_{t-1}和x_t,输出一个在 0 到 1 之间的数值。1 表示上个神经元的状态信息“完全保留”,0 表示“完全舍弃”。
在这里插入图片描述

下一步是确定该神经元的新状态信息被存放在细胞状态中。这里包含两个部分。第一,sigmoid 层称 “输入门层” 决定什么值我们将要把新状态的信息保留下来。然后,一个 tanh 层创建一个新的该神经元的新状态。

在这里插入图片描述
现在是更新旧细胞状态的时间了,C_{t-1}更新为C_t。前面的步骤已经决定了将会做什么,我们现在就是实际去完成。

我们把旧状态与f_t相乘,丢弃掉我们确定需要丢弃的信息。接着与新状态进行相加。综合得出该神经元的输出的状态,也即更新细胞的状态。

在这里插入图片描述
最终,我们需要确定输出什么值。这个输出将会基于我们的细胞状态,也是要经过选择的。首先,我们经过一个 sigmoid 层来确定细胞状态的哪个部分将输出出去。接着,我们把细胞状态通过tanh 进行处理并将它和 sigmoid 门的输出相乘,最终我们会输出我们确定输出的那部分。

在这里插入图片描述
总结:该节我们讲述了RNN所不能解决的长期依赖问题以及引出了长短期记忆网络LSTM,然后我们剖析了LSTM的内部神经元结构以及其工作的原理。

关注小鲸融创,一起深度学习金融科技!

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值