梯度消失、梯度爆炸概念及一些激活函数的图像

一、激活函数图像

(1)sigmoid

(2)tanh

(3)ReLU

二、什么是梯度消失和梯度爆炸?

在反向传播过程中需要对激活函数进行求导,如果导数大于1,那么随着网络层数的增加梯度更新将会朝着指数爆炸的方式增加这就是梯度爆炸。同样如果导数小于1,那么随着网络层数的增加梯度更新信息会朝着指数衰减的方式减少这就是梯度消失。因此,梯度消失、爆炸,其根本原因在于反向传播训练法则,属于先天不足。

根本原因:

(1)隐藏层的层数过多。

(2)激活函数。BP算法基于梯度下降策略,以目标的负梯度方向对参数进行调整,计算梯度包含了对激活函数进行求导。如果此部分大于1,那么层数增多时,最终要求的梯度将以指数形式增加,即发生梯度爆炸;如果此部分小于1,那么随着层数增多,求出的梯度将以指数形式衰减,即发生梯度消失。

由图可见,sigmoid函数的导数最大值不超过0.25,因此作为激活函数在反向传播时很容易发生梯度消失,因此一般不适合用于神经网络中。同理,tanh函数比sigmoid要好一些,但它的导数仍是小于1的。综上,在神经网络中一般采用ReLU函数作为激活函数。

如何防止梯度消失?

· 采用ReLU函数作为激活函数。

· 权重初始化采用高斯初始化。

如何防止梯度爆炸?

· 使用 ReLU / maxout 等代替 sigmoid。

· 设置梯度剪切阈值,如果超过了该阈值,直接将梯度设为该值。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值