常见激活函数
神经网络中,常见的激活函数有以下几种:
1. sigmoid
f(x)=1+e−x1
f′(x)=f(x)(1−f(x))
2. tanh
f(x)=ex+e−xex−e−x
f′(x)=?
- 二者都需要指数计算
- sigmoid和tanh都是S型的非线性激活函数,对输入做非线性映射。
- 不同的是sigmoid将响应值限制在了(0,1),而tanh则是(-1,1).
- 在自变量处于极大和极小值区域,导数几乎为0,在反向传播过程中,导致梯度消失,无法更新权值。
3. ReLU
f(x)={x,x>00,x<=0
相对于S型函数,计算简单,在x>0区域,不存在梯度消失。
ReLU有个严重的问题,存在死区。在死区处,无法更新权值。
5. Leaky ReLU
见下图。解决ReLU死区问题,引入了一个新参数ai
6. PReLU
与Leaky ReLU类似,但是参数ai根据数据来定的
参考
7. RReLU
与Leaky ReLU类似,但是参数ai在U(I,u)中随机选择的