RNN中的梯度消失与梯度爆炸问题

梯度消失与梯度爆炸问题

循环神经网络(Recurrent Neural Network,RNN)是一类具有短期记忆能力的神经网络.在循环神经网络中,神经元不但可以接受其他神经元的信息,也可以接受自身的信息,形成具有环路的网络结构。

在RNN中,梯度计算时需要沿时间步反向传播(BPTT,Backpropagation Through Time),这个算法即按照时间的逆序将梯度信息一步步地往前传递.当输入序列比较长时了,时间步展开导致的长链乘积会存在梯度爆炸和消失问题,也称为长程依赖问题。

上图是一个简单的循环神经网络,只有一个隐藏层的神经网络,𝒉_𝑡不仅和当前时刻的输入𝒙_𝑡 相关,也和上一个时刻的隐藏层状态𝒉_{𝑡−1} 相关

分析步骤

分析:

1、使用了一个4层的前馈神经网络来模拟展开的RNN。

2、若激活函数是Sigmoid,求梯度的最大值是0.25,可能会导致梯度消失问题,这时候网络就学习不到东西了,即无法更新梯度。

3、若权重设置过大了,可能出现梯度爆炸问题,梯度变成NaN。

注:最后等式括号中根据不同的激活函数有不同的导数。

相关推荐
高洁011 小时前
AI智能体搭建(3)
人工智能·深度学习·算法·数据挖掘·知识图谱
Hcoco_me3 小时前
大模型面试题71: DPO有什么缺点?后续对DPO算法有哪些改进?
人工智能·深度学习·算法·自然语言处理·transformer·vllm
哥布林学者4 小时前
吴恩达深度学习课程五:自然语言处理 第一周:循环神经网络 课后习题与代码实践
深度学习·ai
TTGGGFF4 小时前
人工智能:[特殊字符] Bert-Base-Chinese预训练模型部署手册
人工智能·深度学习·bert
kebijuelun4 小时前
DeepSeek Engram:给大模型新增一条“记忆稀疏”轴
人工智能·深度学习·语言模型·transformer
香草泡芙4 小时前
AI Agent 深度解析:原理、架构与未来应用浪潮
人工智能·深度学习·机器学习
yunhuibin4 小时前
CNN基础学习
人工智能·python·深度学习·神经网络
学习的学习者5 小时前
CS课程项目设计22:基于Transformer的智能机器翻译算法
人工智能·python·深度学习·transformer·机器翻译
StfinnWu5 小时前
论文阅读 Deep Residual Learning for Image Recognition
论文阅读·人工智能·深度学习
lkbhua莱克瓦245 小时前
机器学习的演进与深度学习的革命
人工智能·深度学习·机器学习