列表

详情


49. LSTM解决了RNN的什么问题,如何解决

回答思路

RNN是一类以序列数据为输入,在序列的演进方向进行递归,且所有节点单元按照链式连接的递归神经网络,RNN每一层的隐状态都由前一层的隐状态经过变换和激活函数得到。反向传播求导时最终得到的导数会包含每一步梯度的连乘,这会引起梯度爆炸或梯度消失。所以RNN很难处理"长程依赖",即无法学到序列中蕴含的间隔较长的规律。

LSTM引入了包含遗忘门、输入门、输出门的cell状态结构,公式如下:

而对于LSTM模型而言,求解有

在LSTM迭代过程中,针对而言,每一步的可以自主的选择在[0, 1]之间,或者大于1,因为是可训练学习的,那么整体也就不会一直减小,使得远距离梯度不至于完全消失,也就能够解决RNN中存在的问题。

上一题