梯度爆炸、梯度消失、过拟合

梯度消失 梯度爆炸

什么是梯度消失(弥散)

随着传播深度的增加,梯度大小呈指数级别的增大或减小

梯度消失的情况
(1)激活函数进入饱和区。导数变得很小,因为梯度的计算需要激活函数的导数,导数很小使得梯度很小
(2)激活函数值为0

为什么会出现梯度消失

梯度消失的原因是由于用链式法则求导,使得梯度被层层放缩。所以只要用链式法则求导,就会有梯度消失,只是不同的激活函数程度不同。
可推导:
在这里插入图片描述
详细分析过程1-图缺失
过程推导2

RNN的梯度消失和普通DNN的不同之处

普通DNN中不同的层有不同的参数,各是各的梯度;而 RNN 中同样的权重在各个时间步共享,最终的梯度 g = 各个时间步的梯度 g_t 的和。
由于这个原因,RNN上总的梯度不会消失,因为近距离梯度不会消失,远距离梯度即使越传越弱,总梯度也会因为近距离梯度而不->0。所以RNN上梯度消失的含义是,梯度被近距离梯度主导,导致模型难以学到远距离的依赖关系。

LSTM怎么防止梯度消失和爆炸

所以LSTM防止的是:梯度受近距离梯度的控制,导致模型难以学到远距离的依赖关系的问题

LSTM 中梯度的传播有很多条路径, 这条路径上只有逐元素相乘和相加的操作,梯度流最稳定;但是其他路径上梯度流与普通 RNN 类似,照样会发生相同的权重矩阵反复连乘。
详细分析

过拟合

什么是过拟合

模型过于复杂,测试误差

解决过拟合的方法

1. l a m b d a lambda lambda正则化(NN称权重衰减)

在代价函数中加入正则化项

ligistic中可以用正规方程求解lambda

2.dropout正则化

每一层设置p(每个unit消失的概率),keep_prob=1-p unit单元保留的概率

留下的unit的a值变为原来的a/(1-p)

3.early stop

把测试集和验证机的代价函数随迭代次数变化曲线画在一个图中,当二者距离开始增大的时候,stop迭代

4.数据扩增

5.Relu

不会像tanh一样进入饱和区,使得梯度弥散

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值