常见激活函数
作用:激活函数是来向神经网络中引入非线性因素的,通过激活函数,神经网络就可以拟合各种曲线
1.sigmoid
一般应用在二分类的输出层
缺点:
1.sigmoid 极容易导致梯度消失问题,可以从导数曲线可以看出,绝大多数的导数值为0
2.Sigmoid 函数的输出不是以零为中心的(non-zero-centered),这会导致神经网络收敛较慢,详细原因请参考 https://liam.page/2018/04/17/zero-centered-active-function/
2.softmax
和sigmoid关系:Softmax函数是二分类函数Sigmoid在多分类上的推广
https://zhuanlan.zhihu.com/p/356976844
3.tanh
优点:
1.tanh解决了sigmoid中的 zero-centered 问题
缺点:
2.对于梯度消失问题依旧无能为力。
4.Relu系列
4.1 Relu
优点:
1.可以缓解梯度消失,因为导数在正数部分是恒等于1的
缺点:
1.Relu的输出不是zero-centered
2.由于负数部分导数恒为0,会导致一些神经元无法激活,叫做Dead ReLU Problem
4.2 leaky Relu
leaky Relu就是为了解决Relu的0区间带来的影响,其数学表达为:
其中$k$是为超参数,一般数值较小,比如0.01
4.3 Elu
Elu激活函数也是为了解决Relu的0区间带来的影响,其数学表达为:
Elu相对于leaky Relu来说,计算要更耗时间一些
参考
https://zhuanlan.zhihu.com/p/44398148
https://liam.page/2018/04/17/zero-centered-active-function/
https://www.cnblogs.com/tornadomeet/p/3428843.html