【转载】激活函数函数有哪些?如何选择激活函数?

12 篇文章 1 订阅

激活函数是神经网络中非线性的来源,因为如果去掉这些函数,那么整个网络就只剩下线性运算,线性运算的复合还是线性运算的,最终的效果只相当于单层的线性模型.

这个讲的好点击https://blog.csdn.net/tyhj_sf/article/details/79932893

(1)Sigmoid函数

左端趋近于0,右端趋近于1,且两端都趋于饱和.

关于函数饱和解释:参考https://www.cnblogs.com/tangjicheng/p/9323389.html

这里写图片描述

如果我们初始化神经网络的权值为 [0,1] 之间的随机值,由反向传播算法的数学推导可知,梯度从后向前传播时,每传递一层梯度值都会减小为原来的0.25倍,如果神经网络隐层特别多,那么梯度在穿过多层后将变得非常小接近于0,即出现梯度消失现象;当网络权值初始化为 (1,+∞) (1,+∞)(1,+∞) 区间内的值,则会出现梯度爆炸情况。
数学分析见文章:https://www.jianshu.com/p/917f71b06499

Sigmoid 的 output 不是0均值(即zero-centered)。这会导致后一层的神经元将得到上一层输出的非0均值的信号作为输入。
其解析式中含有幂运算,计算机求解时相对来讲比较耗时。对于规模比较大的深度网络,这会较大地增加训练时间.

(2)Tanh函数

tanh(x)及其导数的几何图像

它解决了Sigmoid函数的不是zero-centered输出问题,然而,梯度消失(gradient vanishing)的问题和幂运算的问题仍然存在。

 

(3) ReLu函数

relu(x)=max(x,0)

这里写图片描述

是个分段线性函数,显然其导数在正半轴为1,负半轴为0,这样它在整个实数域上有一半的空间是不饱和的。相比之下,sigmoid函数几乎全部区域都是饱和的.

ReLU虽然简单,但却是近几年的重要成果,有以下几大优点:
1) 解决了gradient vanishing问题 (在正区间)
2)计算速度非常快,只需要判断输入是否大于0
3)收敛速度远快于sigmoid和tanh

ReLu是分段线性函数,它的非线性性很弱,因此网络一般要做得很深。但这正好迎合了我们的需求,因为在同样效果的前提下,往往深度比宽度更重要,更深的模型泛化能力更好。所以自从有了Relu激活函数,各种很深的模型都被提出来了,一个标志性的事件是应该是VGG模型和它在ImageNet上取得的成功.

ReLU也有几个需要特别注意的问题:
1)ReLU的输出不是zero-centered
2)某些神经元可能永远不会被激活(Dead ReLU Problem),导致相应的参数永远不能被更新。有两个主要原因可能导致这种情况产生: (1) 非常不幸的参数初始化,这种情况比较少见 (2) learning rate太高导致在训练过程中参数更新太大,不幸使网络进入这种状态。解决方法是可以采用Xavier初始化方法,以及避免将learning rate设置太大或使用adagrad等自动调节learning rate的算法。

人们为了解决Dead ReLU Problem,提出了将ReLU的前半段设为αx 非0,通常α=0.01  (  Leaky ReLU函数: f(x)=max(αx,x)  )。为了解决zero-centered问题,提出了ELU (Exponential Linear Units) 函数,f(x)=x  if x>0  otherwise   a(e^x  −1).

(4) Swish函数(Google大脑团队)

定义为  swish(x)=x⋅Sigmoid

图像如下图所示:

Swish

 

从图像上来看,Swish函数跟ReLu差不多,唯一区别较大的是接近于0的负半轴区域, Google大脑做了很多实验,结果都表明Swish优于ReLu

(5) Gated linear units(GLU)激活函数(facebook提出)

我就是懒了

参考https://blog.csdn.net/qq_32458499/article/details/81513720

 

 

还有其他激活函数,如GTU,Maxout等,学海无涯,楫棹莫收.

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

https://spaces.ac.cn/archives/4647

 

转载自https://blog.csdn.net/u010513327/article/details/81019522,感谢原作者辛勤付出

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值