0. 背景
这篇博客主要总结一下常用的激活函数公式及优劣势,包括sigmoid relu tanh gelu
1. sigmoid
- sigmoid函数可以把实数域光滑的映射到0,1空间。
- 函数值恰好可以解释为属于正类的概率(概率的取值范围是0~1),中心为0.5。
- sigmoid函数单调递增,连续可导,导数形式非常简单,是一个比较合适的函数
优点:平滑、易于求导
缺点:
- 激活函数计算量大(在正向传播和反向传播中都包含幂运算和除法);
- 反向传播求误差梯度时,求导涉及除法;
- Sigmoid导数取值范围是0, 0.25,由于神经网络反向传播时的“链式反应”,很容易就会出现梯度消失的情况。例如对于一个10层的网络, 根据0.25^10很小,第10层的误差相对第一层卷积的参数W1的梯度将是一个非常小的值,这就是所谓的“梯度消失”。
- Sigmoid的输出不是0均值(即zero-centered);这会导致后一层的神经元将得到上一层输出的非0均值的信号作为输入,随着网络的加深,会改变数据的原始分布。
推导:https://zhuanlan.zhihu.com/p/24967776
2. tanh
tanh为双曲正切函数,其英文读作Hyperbolic Tangent。tanh和 sigmoid 相似,都属于饱和激活函数,区别在于输出值范围由 (0,1) 变为了 (-1,1),可以把 tanh 函数看做是 sigmoid 向下平移和拉伸后的结果
tanh作为激活函数的特点:
相比Sigmoid函数,
- tanh的输出范围时(-1, 1),解决了Sigmoid函数的不是zero-centered输出问题;
- 幂运算的问题仍然存在;
- tanh导数范围在(0, 1)之间,相比sigmoid的(0, 0.25),梯度消失(gradient vanishing)问题会得到缓解,但仍然还会存在
DNN 前面使用tanh 最后用sigmoid
3. relu
Relu(Rectified Linear Unit)——修正线性单元函数:该函数形式比较简单,
公式:relu=max(0, x)
ReLU作为激活函数的特点:
- 相比Sigmoid和tanh,ReLU摒弃了复杂的计算,提高了运算速度。
- 解决了梯度消失问题,收敛速度快于Sigmoid和tanh函数,但要防范ReLU的梯度爆炸
- 容易得到更好的模型,但也要防止训练中出现模型‘Dead’情况。
ReLU 强制将x<0部分的输出置为0(置为0就是屏蔽该特征),可能会导致模型无法学习到有效特征,所以如果学习率设置的太大,就可能会导致网络的大部分神经元处于‘dead’状态,所以使用ReLU的网络,学习率不能设置太大。
Leaky ReLU中的公式为常数,一般设置 0.01。这个函数通常比 Relu 激活函数效果要好,但是效果不是很稳定,所以在实际中 Leaky ReLu 使用的并不多。
PRelu(参数化修正线性单元) 中的公式作为一个可学习的参数,会在训练的过程中进行更新。
RReLU(随机纠正线性单元)也是Leaky ReLU的一个变体。在RReLU中,负值的斜率在训练中是随机的,在之后的测试中就变成了固定的了。RReLU的亮点在于,在训练环节中,aji是从一个均匀的分布U(I,u)中随机抽取的数值。
4. Gelu
gelu(gaussian error linear units)就是我们常说的高斯误差线性单元,它是一种高性能的神经网络激活函数,因为gelu的非线性变化是一种符合预期的随机正则变换方式,公式如下:
其中Φ(x)指的是x xx的高斯正态分布的累积分布,完整形式如下:
计算结果约为:
或者可以表示为:
由此可知,概率P ( X ≤ x ) (x可看成当前神经元的激活值输入),即X的高斯正态分布ϕ(X)的累积分布Φ(x)是随着x的变化而变化的,当x增大,Φ(x)增大,当x减小,Φ(x)减小,即当x越小,在当前激活函数激活的情况下,越有可能激活结果为0,即此时神经元被dropout,而当x越大越有可能被保留。
使用技巧:
1.当在训练过程中使用gelus作为激活函数进行训练时,建议使用一个带有动量(momentum)的优化器,并将其作为深度学习网络的一种规范。
2.在使用gelus的过程中,公式(3)的σ 函数的选择是非常关键的,一般需要使用与正态分布的累积分布近似的函数,一般可以选择与正态分布的累积分布较为近似的函数sigmoid(x)=1/(1 e^{(-x)})作为σ 函数。
优势:
- 相比Relu,给网络模型增加非线性因子
- Relu将小于0的数据映射到0,将大于0的给与 等于 映射操作,虽然性能比sigmoid好,但是缺乏数据的统计特性,而Gelu则在relu的基础上加入了统计的特性。论文中提到在好几个深度学习任务中都优于Relu的效果。
Ref
- https://zhuanlan.zhihu.com/p/100175788 Gelu