当前位置:   article > 正文

常用激活函数_sigmoid函数求导的取值范围

sigmoid函数求导的取值范围

1、sigmoid

优点:能够把输入的连续实值变换为0和1之间的输出,如果是非常大的负数,那么输出就是0;如果是非常大的正数,输出就是1。

缺点:

(1)sigmoid函数的导数范围是(0,0.25],导数最大都不大于1,容易引起梯度消失

(2)公式包含幂运算,导致方向传播运算速度慢

(3)Sigmoid函数输出不是零中心对称。sigmoid的输出均大于0,这就使得输出不是0均值,称为偏移现象,这将导致后一层的神经元将上一层输出的非0均值的信号作为输入。关于原点对称的输入和中心对称的输出,网络会收敛地更好。

sigmoid函数的函数图和导数图

 

 

2、tanh

优点:

(1)tanh函数梯度相对于sigmoid函数来说较大,收敛速度更快且引起梯度消失更慢。

(2)它解决了Sigmoid函数的不是zero-centered输出问题。

缺点:

(1)tach函数的导数范围是(0,1],他们的导数最大都不大于1,仍然存在梯度消失的问题。

(2)仍然存在幂运算的问题。

tanh函数的函数图和导数图

 

3、ReLU

ReLU目前是最常用的activation function,优点:

(1)ReLU函数的左侧导数为0,右侧导数恒为1,这就避免了“梯度消失“的发生

(2)计算速度非常快,只需要判断输入是否大于0,收敛速度远快于sigmoid和tanh

缺点:

(1)恒为1的导数容易导致“梯度爆炸“,但设定合适的阈值可以解决这个问题(更新梯度的时候,如果梯度超过这个阈值,那么就将其强制限制在这个范围之内)

(2)如果左侧横为0的导数有可能导致把神经元学死,不过设置合适的步长(学习率)也可以有效避免这个问题的发生。

ReLU函数的函数图和导数图

 

4、Leaky ReLU

人们为了解决Dead ReLU Problem,提出了将ReLU的前半段设为αx而非0,通常α=0.01。另外一种直观的想法是基于参数的方法,即f(x)=max(αx,x),其中α可由反向传播算法学出来。理论上来讲,Leaky ReLU有ReLU的所有优点,外加不会有Dead ReLU问题,但是在实际操作当中,并没有完全证明Leaky ReLU总是好于ReLU。

 

参考地址:https://blog.csdn.net/tyhj_sf/article/details/79932893

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/333556
推荐阅读
相关标签
  

闽ICP备14008679号