码迷,mamicode.com
首页 > 其他好文 > 详细

激活函数

时间:2020-01-16 12:20:31      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:权重   线性   soft   学习   strong   神经网络   输入   表达   大于   

激活函数的作用

如果不用激活函数,每一层输出都是上层输入的线性函数,无论神经网络有多少层,输出都是输入的线性组合。故而激活函数可以增加模型的表达能力。

1.sigmoid函数

技术图片

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

A.  优点

在特征相差比较复杂或是相差不是特别大时效果比较好。

B.  缺点

激活函数计算量大,反向传播求误差梯度时,求导涉及除法

反向传播时,很容易就会出现梯度消失的情况,从而无法完成深层网络的训练

Sigmoids函数收敛缓慢。 

下面解释为何会出现梯度消失:

sigmoid 原函数及导数图形如下

技术图片

由图可知,导数从 0 开始很快就又趋近于 0 了,易造成“梯度消失”现象。

  2.   tanh函数

技术图片

 

 

取值范围为[-1,1]。

tanh在特征相差明显时的效果会很好,在循环过程中会不断扩大特征效果。

A.  优点

与sigmoid相比,它的输出均值是0,使得其收敛速度要比sigmoid快,减少迭代次数。

B.  缺点

tanh一样具有软饱和性,从而造成梯度消失,在两边一样有趋近于0的情况 

3.   ReLU函数

 技术图片

 

 取值范围[0,正无穷]

A.  优点

ReLU 能够在x>0时保持梯度不衰减,从而缓解梯度消失问题。

B.  缺点

随着训练的推进,部分输入会落入硬饱和区,导致对应权重无法更新。这种现象被称为“神经元死亡”。与sigmoid类似,ReLU的输出均值也大于0,偏移现象和 神经元死亡会共同影响网络的收敛性。   

针对在x<0的硬饱和问题,我们对ReLU做出相应的改进,使得 

技术图片

 

 

 

这就是Leaky-ReLU, 而P-ReLU认为,α也可以作为一个参数来学习,原文献建议初始化a为0.25,不采用正则。

4.  softmax函数

Softmax - 用于多分类神经网络输出 

技术图片

 

 技术图片

激活函数

标签:权重   线性   soft   学习   strong   神经网络   输入   表达   大于   

原文地址:https://www.cnblogs.com/AntonioSu/p/12200357.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!