激活函数总结(四十):激活函数补充
1 引言
在前面的文章中已经介绍了介绍了一系列激活函数 (Sigmoid
、Tanh
、ReLU
、Leaky ReLU
、PReLU
、Swish
、ELU
、SELU
、GELU
、Softmax
、Softplus
、Mish
、Maxout
、HardSigmoid
、HardTanh
、Hardswish
、HardShrink
、SoftShrink
、TanhShrink
、RReLU
、CELU
、ReLU6
、GLU
、SwiGLU
、GTU
、Bilinear
、ReGLU
、GEGLU
、Softmin
、Softmax2d
、Logsoftmax
、Identity
、LogSigmoid
、Bent Identity
、Absolute
、Bipolar
、Bipolar Sigmoid
、Sinusoid
、Cosine
、Arcsinh
、Arccosh
、Arctanh
、LeCun Tanh
、TanhExp
、Gaussian
、GCU
、ASU
、SQU
、NCU
、DSU
、SSU
、SReLU
、BReLU
、PELU
、Phish
、RBF
、SQ-RBF
、ISRU
、ISRLU
、SQNL
、PLU
、APL
、Inverse Cubic
、Soft Exponential
、ParametricLinear
、Piecewise Linear Unit
、CLL
、SquaredReLU
、ModReLU
、CosReLU
、SinReLU
、Probit
、Smish
、Multiquadratic
、InvMultiquadratic
、PSmish
、ESwish
、CoLU
、ShiftedSoftPlus
、Logit
、Softsign
、ELiSH
、Hard ELiSH
、Serf
、FReLU
、QReLU
、m-QReLU
、FReLU
、CReLU
、KAF
、Siren
、ARiA
、m-arcsinh
、PAU
、DELU
、PDELU
、CosLU
、NFN
、Hermite
)。在这篇文章中,会接着上文提到的众多激活函数继续进行介绍,给大家带来更多不常见的激活函数的介绍。这里放一张激活函数的机理图:
2 激活函数
2.1 AHAF激活函数
论文链接:Adaptive hybrid activation function for deep neural networks
Adaptive hybrid activation function(AHAF)自适应混合活化函数结合了整流单元 (rectifier units)
和压扁 (squashing) 函数
的特性。其数学表达式和数学图像分别如下所示:
ψ
j
(
u
j
)
=
β
j
u
j
σ
(
γ
j
u
j
)
=
β
j
u
j
1
+
e
−
γ
j
u
j
\psi_j(u_j)=\beta_j u_j \sigma(\gamma_ju_j)=\frac{\beta_j u_j}{1+e^{-\gamma_ju_j}}
ψj(uj)=βjujσ(γjuj)=1+e−γjujβjuj
其中,
β
j
\beta_j
βj 和
γ
j
\gamma_j
γj 是在训练过程中与突触权重
一起训练的参数。
优点:
- 不受梯度消失的影响:提出的该激活函数克服了
σ
(
x
)
\sigma(x)
σ(x) 激活函数中产生的
梯度消失
的影响。 - 可训练参数:在AHAF激活函数中,众多参数都是可训练的,可以在算法运行过程中
自适应训练
合适的参数。仅仅当 u j < < 0 u_j<<0 uj<<0 时,才会产生较小的振幅值。此时,可以通过调节增益参数
γ j \gamma_j γj 来补偿
。
缺点:
- 参数众多,难以训练:在模型训练过程中,
激活函数
会对结果产生严重影响。而且,在网络训练过程中,不停地更新参数
会导致模型训练的复杂度
呈现几何倍
地增加,很难训练出合适
的参数。
从激活函数结构来说,该激活函数具有较好的效果。但是当前还未得到验证
,使用的时候需要注意。。。
2.2 SERLU激活函数
论文链接:Effectiveness of Scaled Exponentially-Regularized Linear Units (SERLUs)
Scaled Exponentially-Regularized Linear Unit (SERLU) 在静止
的同时打破SELU的单调性
, 保留自规范化
属性。与SELU不同,新的 函数在负输入区域
引入凹凸形
函数 使用缩放指数函数正则化
线性函数,即 称为缩放指数正则线性单元 (SERLU)。这 凸块形功能对大负输入
的响应几乎为零
同时能够在统计上将 SERLU 的输出推向零平均值
。其数学表达式和数学图像分别如下所示:
SERLU
(
x
)
)
=
λ
s
e
r
l
u
x
if
x
≥
0
SERLU
(
x
)
)
=
λ
s
e
r
l
u
α
s
e
r
l
u
x
e
x
if
x
<
0
\text{SERLU}\left(x\right)) = \lambda_{serlu}x \text{ if } x \geq 0 \\ \text{SERLU}\left(x\right)) = \lambda_{serlu}\alpha_{serlu}xe^{x} \text{ if } x < 0
SERLU(x))=λserlux if x≥0SERLU(x))=λserluαserluxex if x<0
特点:
- SERLU是对SELU的
改进
,引入“自控机制”使负值极限为0
,与Swish相比,该函数更为灵活
。 - 但SERLU的
光滑性
不好,影响网络的训练效率
。 - 不是
自适应
函数,如果改为自适应函数,超参数的可变范围太大
,训练起来较为困难
。
虽然SERLU具有一定的改进,但是与此同时带来较大
的局限性
,因此很少使用。。。。
3. 总结
到此,使用 激活函数总结(四十) 已经介绍完毕了!!! 如果有什么疑问欢迎在评论区提出,对于共性问题可能会后续添加到文章介绍中。如果存在没有提及的激活函数
也可以在评论区提出,后续会对其进行添加!!!!
如果觉得这篇文章对你有用,记得点赞、收藏并分享给你的小伙伴们哦😄。