1 从 RNN 说起
循环神经网络Recurrent Neural Network,RNN 是一种用于处理序列数据的神经网络。
相比一般的神经网络来说,他能够处理序列变化的数据。比如某个单词的意思会因为上文提到的内容不同而有不同的含义,RNN就能够很好地解决这类问题。
2 RNN的缺点,为什么要引入LSTM
长短期记忆(Long short-term memory, LSTM)是一种特殊的RNN,主要是为了解决长序列训练过程中的梯度消失和梯度爆炸问题。
简单来说,就是相比普通的RNN,LSTM能够在更长的序列中有更好的表现。
- RNN 仅有一个传递状态 , 而LSTM 具有两个传递状态,分别是 【注意,LSTM中的 相当于 RNN中的 】
3 介绍LSTM 的门结构
- 相信大家都知道了LSTM有3个门,遗忘门、输入门和输出门,下面就从三个门讲些细节!
3.1 遗忘门(遗忘阶段)
遗忘阶段以粉色突出显示
:电流输入
:上一层传下来的状态
- 先算出,也就是遗忘门的开口(开口的大小可以说是很形象了)
: 是输出0-1 之间的数,这样 就是一个 0-1 之间的数
- 那么×可以理解为选择性地忘记前一个节点发过来的数据来控制中的信息,哪些需要忘记,哪些需要记住。
3.2 输入门
- 同理,先计算输入门的开度,
:电流输入
:上一层传下来的状态
:是由 propagation 决定的
- 对于当前的输入 , 是还要做一个 tanh 运算的。
3.3 相加得到 Ct
- 这里用 来表示memory(是一个传递状态)
3.4 输出门
- 同理,先计算输出门的开度,
- 计算,传给下一层
3.5 总结+公式推导
4 为什么LSTM能够解决Gradient Vanishing的问题
参考博文:
https://blog.csdn.net/qq_38147421/article/details/107692418
文章出处登录后可见!
已经登录?立即刷新