深度学习中的激活函数

神经网络中添加激活函数,目的是增加网络的非线性

一、sigmoid

sigmoid函数也叫Logistics函数,用于隐层神经元输出,取值范围为(0,1),它可以将一个实数映射到(0,1)的区间,可以用来二分类。

sigmoid缺点:激活函数计算量大,反向传播求误差梯度时,求导设计除法;反向传播时,很容易就会出现梯度消失的情况,从而无法完成深层网络的训练;sigmoid函数收敛缓慢。

二、ReLu

ReLu优点:使用ReLu得到的SGD的收敛速度会比sigmoid/tanh快很多。

ReLu缺点:训练的时候容易造成死神经元,比如,一个非常大的梯度流过一个ReLu神经元,更新过参数后,这个神经元再也不会对任何数据有激活现象了,那么这个神经元的梯度就永远都会是0,如果learning rate很大,那么很有可能网络中的40%的神经元都‘dead’了。所以需要非常小心的设置learning rate。

三、ELU

ELU通过在正直区间取输入x本身减轻了梯度弥散问题,这一点特性这四种激活函数都具备。四者当中只有ReLu的输出值没有负值,所以输出的均值会大于0,当激活值得均值非0时,就会对下一层造成一个bias,如果激活值之间不会相互抵消(即均值非0),会导致下一层的激活单元有bias shift。如此叠加,单元越多时,bias shift就会越大。相比ReLu, ELU可以取到负值,这让单元激活均值可以更接近0,类似于batch normalization的效果但是只需要更低的计算复杂度。虽然LReLu和PReLu都也有负值,但是它们不保证在不激活状态下(就是在输入为负的状态下)对噪声鲁棒。反观ELU在输入取较小值时具有软饱和的特性,提升了对噪声的鲁棒性。

总结ELU实现了两个优点:将前面单元输入的激活值均值控制在0;让激活函数的负值部分也可以被使用了(这意思应该是之前的激活函数,负值部分几乎不携带信息,特别是ReLu)。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值