一个节点的激活函数定义了该节点在给定的输入或输入集合下的输出,是确定神经网络输出的数学方程式。
1. Sigmoid 激活函数
图像:
函数表达式:
适用范围:
(1)输出范围是 0 到 1,对输出进行了归一化
(2)由于概率的取值范围是 0 到 1,可用于将预测概率作为输出的模型
(3)曲线平滑,域内无间断点,,可避免跳跃输出
(4)曲线光滑,任一点可微,可以得出任意两点的斜率
(5)预测结果明确
缺点:
(1)梯度消失,随着隐藏层数目的增加,分类准确率反而下降
(2)输出不是以 0 为中心,降低权重更新的效率
(3)执行指数运算,计算机运行较慢
2. Tanh / 双曲正切激活函数
图像:
函数表达式:
tanh 函数和 sigmoid 函数比较:
曲线较为相似,但比sigmoid函数有优势。
(1)tanh 的输出间隔为 1
(2)整个函数以 0 为中心
(3)负输入将被强映射为负,而零输入被映射为接近零
适用范围:
在一般的二元分类问题中,tanh 函数用于隐藏层,而 sigmoid 函数用于输出层,但这并不是固定的,需要根据特定问题进行调整。
3. ReLU 激活函数
图像:
函数表达式:
与sigmoid 函数和 tanh 函数相比的优点:
(1)当输入为正时,不存在梯度饱和问题
(2)ReLU 函数中只存在线性关系,因此计算速度比 sigmoid函数 和 tanh 函数更快
与sigmoid 函数和 tanh 函数相比的缺点:
(1)Dead ReLU 问题。当输入为负时,ReLU 完全失效。在正向传播过程中,这不是问题。但是在反向传播过程中,如果输入负数,则梯度将完全为零,sigmoid 函数和 tanh 函数也具有相同的问题;
(2)ReLU 函数的输出为 0 或正数,这意味着 ReLU 函数不是以 0 为中心的函数。
4. Leaky ReLU
图像:
函数表达式:
与ReLU函数相比的优点:
(1)把 x 的非常小的线性分量给予负输入(0.01x)来调整负值的零梯度问题;
(2)有助于扩大 ReLU 函数的范围,通常 a 的值为 0.01 左右
(3)函数范围是负无穷到正无穷
注意
理论上,Leaky ReLU 具有 ReLU 的所有优点,而且 Dead ReLU 不会有任何问题。但在实际操作中,尚未完全证明 Leaky ReLU 总是比 ReLU 更好。
5. ELU
图像:
函数表达式:
与 ReLU 函数相比的优点:
(1)ELU 有负值,这会使激活的平均值接近零。因为它们使梯度更接近自然梯度,可以使学习更快
(2)没有 Dead ReLU 问题,输出的平均值接近 0,以 0 为中心;
(3)均值向零加速学习。通过减少偏置偏移的影响,使正常梯度接近于单位自然梯度
(4)ELU 在较小的输入下会饱和至负值,从而减少前向传播的变异和信息。
注意:
尽管理论上比 ReLU 要好,但目前在实践中没有充分的证据表明 ELU 总是比 ReLU 好。
6. PReLU(Parametric ReLU)
图像:
函数表达式:
(1)参数α通常为 0 到 1 之间的数字,并且通常相对较小。
(2)如果 a_i= 0,则 f 变为 ReLU
(3)如果 a_i> 0,则 f 变为 leaky ReLU
(4)如果 a_i 是可学习的参数,则 f 变为 PReLU
优点:
(1)避免 Dead ReLU 问题。在负值域,PReLU 的斜率较小
(2)PReLU 在负值域是线性运算。尽管斜率很小,但不会趋于 0。
7. Softmax
图像:
函数表达式:
适用范围:
用于多类分类问题,在多类分类问题中,超过两个类标签则需要类成员关系。
优点:
(1)与正常的 max 函数不同:max 函数仅输出最大值,但 Softmax 确保较小的值具有较小的概率,并且不会直接丢弃
(2)Softmax 函数获得的各种概率彼此相关,因为Softmax 函数的分母结合了原始输出值的所有因子
缺点:
(1)在零点不可微
(2)会产生永不激活的死亡神经元,负输入的梯度为零,这意味着对于该区域的激活,权重不会在反向传播期间更新
8. Swish
图像:
函数表达式:
self-gating优点:
Swish是一种self-gated 激活函数。self-gating 的优点在于它只需要简单的标量输入,而普通的 gating 则需要多个标量输入。self-gated 激活函数能够轻松替换以单个标量为输入的激活函数(例如 ReLU),而无需更改隐藏容量或参数数量。
优点:
(1)无界性。防止慢速训练期间,梯度逐渐接近 0 并导致饱和。
(2)导数恒 > 0;
(3)平滑度在优化和泛化中起了重要作用。
9. Maxout
图像:
特点:
在 Maxout 层,激活函数是输入的最大值,因此只有 2 个 maxout 节点的多层感知机就可以拟合任意的凸函数。
单个 Maxout 节点
(1)对一个实值函数进行分段线性近似 (PWL) ,其中函数图上任意两点之间的线段位于图(凸函数)的上方。
(2)可以对 d 维向量(V)实现
两个 Maxout 节点
(1)两个凸函数 h_1(x) 和 h_2(x),由两个 Maxout 节点近似化,函数 g(x) 是连续的 PWL 函数。
(2) 由两个 Maxout 节点组成的 Maxout 层可以很好地近似任何连续函数。
10. Softplus
图像:
函数表达式:
Softplus 的导数
logistic / sigmoid 函数。
优点:
Softplus 函数类似于 ReLU 函数,但是相对较平滑,像 ReLU 一样是单侧抑制。它的接受范围很广:零到正无穷