LSTM介绍
长短期记忆网络(Long Short-Term Memory NetWork,LSTM)是循环神经网络的一个变体,可以有效地解决简单循环神经网络的梯度爆炸或消失问题。将其按照时序展开如下图所示。
其中, x 1 , x 2 , x 3 . . . x t x_{1},x_{2},x_{3}...x_{t} x1,x2,x3...xt为每个时刻的输入, c 1 , c 2 , c 3 . . . c t c_{1},c_{2},c_{3}...c_{t} c1,c2,c3...ct为每个时刻的内部状态, h 1 , h 2 , h 3 . . . h t h_{1},h_{2},h_{3}...h_{t} h1,h2,h3...ht为每个时刻的外部状态。
循环单元结构如下图所示:
图片引自邱锡鹏教授所著《神经网络与深度学习》,本节内容参考此书。
在简单循环神经网络的基础上,LSTM主要改进在以下两个方面:
1.新的内部状态
LSTM引入一个新的内部状态c t _t t∈R D ^D D,专门进行线性的循环信息传递,同时输出信息给隐藏层的外部状态h t _t t∈R D ^D D,内部状态通过下面的公式计算:
其中,f t _t t∈[0,1] D ^D D、i t _t t∈[0,1] D ^D D和o t _t