0
有两个因素会影响梯度的大小:梯度所经过的权重值和激活函数(或者更准确地说,是它们的导数)。
如果这些因素中的任何一个小于1,则梯度可能会随时间消失;如果大于1,则可能发生梯度爆炸。例如,对于除0以外的所有输入,tanh的导数<1;sigmoid函数甚至更糟,它将始终≤0.25。
在LSTM的循环中,激活函数是具有导数为1.0的恒等函数。因此,反向传播的梯度不会消失或爆炸,而是可以保持恒定。
循环的有效权重等价于遗忘门激活。因此,如果遗忘门打开(激活接近1.0),则梯度不会消失。由于遗忘门激活永远不会> 1.0,因此梯度也就不会爆炸。 这就是LSTM擅长学习长期依赖关系的原因。
收藏