【神经网络】LSTM为什么能缓解梯度消失

LSTM通过细胞状态的加法更新和门控单元来缓解梯度消失问题。遗忘门和输入门控制信息流,细胞状态允许长期依赖的保存,输出门则决定何时输出信息。这种设计使LSTM能学习到何时遗忘梯度,何时保留,从而处理长序列数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.LSTM的结构

        我们先来看一下LSTM的计算公式:

1.遗忘门:

2.输入门:

3.细胞状态

4.输出门

 2.LSTM的梯度路径

        根据LSTM的计算公式,可以得出LSTM的cell state与f_{t}\tilde{C_{t}}i_{t}都存在计算关系,而f_{t}\tilde{C_{t}}i_{t}的计算公式又全部都与C_{t-1}有关,所以从C_{t}C_{t-1}的反向传播的公式如下:

         由LSTM各个门的计算公式可以进一步推导得到:

         根据公式,如果要计算时刻k的,简单的利用上式进行乘t-k+1次即可。在公式中的f_{t},也就是遗忘门可以控制\frac{\partial C_{t}}{\partial C_{t-1}}的值。由于\frac{\partial C_{t}}{\partial C_{t-1}}的值也与f_{t}前面三项值有关,所以\frac{\partial C_{t}}{\partial C_{t-1}}的值不一定局限于[0,1],也有可能是大于1的,所以在一定程度上减缓了梯度消失。从计算公式角度来看,f_{t}i_{t}o_{t}\tilde{C_{t}}都是LSTM学习得到的,LSTM会通过学习改变门控的值来决定什么时候遗忘梯度,什么时候保留梯度,即依靠学习得到权值去控制依赖的长度。

3.总结

        总结起来,LSTM能缓解梯度消失,其实主要是以下两点的结果:

        1.cell状态的加法更新策略使得梯度传递更恰当,使得梯度更新有可能大于1。

        2.门控单元可以决定遗忘多少梯度,他们可以在不同的时刻取不同的值。这些值都是通过隐层状态和输入的数据学习到的。

Reference:

        1.https://www.zhihu.com/question/34878706/answer/665429718

        2.通俗易懂的LSTM_长竹Danko的博客-CSDN博客

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值