LSTM模型是为了解决RNN神经网络中的梯度爆炸问题。
(1)模型思路:
RNN是想把所有信息都记住,不管是有用的信息还是没用的信息。LSTM:设计一个记忆细胞(具备选择性记忆的功能),可以选择记忆重要信息,过滤掉噪声信息,减轻记忆负担。
(2)LSTM前向传播:
LSTM模型:
RNN模型:
两者相比,LSTM内部更加复杂,且RNN只有一条链路串联起各个神经元,而LSTM是由两条链路串联起来的。
LSTM内部结构分析:
和代表细胞记忆,前者为t-1时刻的记忆,后者为t时刻的记忆。
和代表状态,前者为t-1时刻的状态,后者为t时刻的状态。
这里的f的代表遗忘门,代表更新门,代表输出门 。
模型公式理解:
模型原理分析:
结合例子说明记忆细胞原理:场景为期末考试,前一个神经元代表考高等数学,下一个神经元代表考线性代数,结合神经元分析:
Xt代表准备开始复习线代,代表去考试,代表考完线代后的记忆,
代表考完线代的状态, 代表考完高数的记忆,代表考完高数后的状态。神经元的目标就是想考好每一门科目!因为是有监督学习,所以需要用成绩来监督神经元里面的参数,来不断迭代更新。
遗忘门作用:遗忘掉高数的部分知识,通过这个相乘操作来进行。因为这里是向量矩阵相乘,比如f中为[1,0,0,1,0,1],1代表保留,0代表遗忘,与考完高数后的记忆相乘后,就能忘掉没用的内容,保留下来有用的内容。
更新门作用:学线代的过程中,可能学到一些与考试无关的内容,更新门就负责过滤掉这部分内容。也是通过相乘操作来过滤的。过滤后的记忆在图中向上传播,用来相加形成考线代的新的记忆(去掉高数中无用记忆+学习线代过滤后的记忆)。如下图所示:
输出门作用:
tanh:在这里相当于把线代的学习记忆转化为一种考试能力,因为不是所有知识点都能派上用场,Ot与之相乘,相当于找出一部分能力去考试。