激活函数总结(十二):三角系列激活函数补充(Sinusoid、Cosine、Arcsinh、Arccosh、Arctanh)

激活函数总结(十二):三角系列激活函数补充

  • 1 引言
  • 2 激活函数
    • 2.1 Sinusoid激活函数
    • 2.2 Cosine激活函数
    • 2.3 Arc系列激活函数
  • 3. 总结

1 引言

在前面的文章中已经介绍了介绍了一系列激活函数 (SigmoidTanhReLULeaky ReLUPReLUSwishELUSELUGELUSoftmaxSoftplusMishMaxoutHardSigmoidHardTanhHardswishHardShrinkSoftShrinkTanhShrinkRReLUCELUReLU6GLUSwiGLUGTUBilinearReGLUGEGLUSoftminSoftmax2dLogsoftmaxIdentityLogSigmoidBent IdentityAbsoluteBipolarBipolar Sigmoid)。在这篇文章中,会接着上文提到的众多激活函数继续进行介绍,给大家带来更多不常见的激活函数的介绍。这里放一张激活函数的机理图:
在这里插入图片描述

最后,对于文章中没有提及到的激活函数,大家可以通过评论指出,作者会在后续的文章中进行添加补充。

2 激活函数

2.1 Sinusoid激活函数

Sinusoid(正弦)激活函数是一种周期性激活函数,它使用正弦函数来将输入映射到输出,输出范围在 -1 到 1 之间,具有周期为 [-2π,2π] 。正弦函数在输入值变化时以曲线波动的方式增加和减小,从而引入了一定的非线性性质。其数学表达式和数学图像分别如下所示:
f ( x ) = s i n ( x ) f(x) = sin(x) f(x)=sin(x)激活函数总结(十二):三角系列激活函数补充(Sinusoid、Cosine、Arcsinh、Arccosh、Arctanh)_第1张图片
优点:

  • 周期性表示: 正弦激活函数是一个周期性函数,可以在某些情况下对数据的周期性特征建模。如果输入数据具有明显的周期性,那么Sinusoid激活函数可能能够更好地捕捉这些模式。
  • 非线性性质: 正弦激活函数是非线性的,可以引入一定的非线性变换,增加神经网络的表达能力。在某些数据中,非线性激活函数可能有助于更好地拟合数据分布。

缺点:

  • 只有周期性特性: 正弦激活函数的周期性特性也可能成为缺点,因为它会限制神经网络的能力,使其难以处理非周期性的数据特征(在不同的周期内的输出会有类似的值)。
  • 梯度问题: 在一些输入范围内,正弦激活函数的导数值可能非常接近零导致梯度消失的问题。这可能会影响训练的稳定性和效率。
  • 计算复杂性: 计算正弦函数可能会比其他一些常见的激活函数更加耗时,尤其是在大规模的神经网络中,这可能会影响模型的训练和推理速度。

虽然理论上而言:Sinusoid激活函数因其周期性的特性会被一些特殊问题应用,但是在当前深度学习模型的背景下很难得到广泛应用。。。

2.2 Cosine激活函数

Cosine(余弦)激活函数是一种使用余弦函数将输入映射到输出的周期性非线性激活函数。其数学表达式和数学图像分别如下所示:
f ( x ) = c o s ( x ) f(x)=cos(x) f(x)=cos(x)激活函数总结(十二):三角系列激活函数补充(Sinusoid、Cosine、Arcsinh、Arccosh、Arctanh)_第2张图片

这里Cosine激活函数的优缺点同Sinusoid激活函数!!! 同样地,Cosine激活函数在当前深度学习模型的背景下很难得到广泛应用。。。

2.3 Arc系列激活函数

Arc系列激活函数通常指的是一些反三角函数(也称为逆三角函数)作为激活函数,这些函数可以将输入映射到某种角度或弧度范围内。这些函数的常见代表包括反正弦(Arcsinh)、反余弦(Arccosh)、反正切(Arctanh)等。其数学表达式和数学图像分别如下所示:
A r c s i n h ( x ) = arcsin ⁡ ( x ) Arcsinh(x)= \arcsin(x) Arcsinh(x)=arcsin(x)激活函数总结(十二):三角系列激活函数补充(Sinusoid、Cosine、Arcsinh、Arccosh、Arctanh)_第3张图片

A r c c o s h ( x ) = arccos ⁡ ( x ) Arccosh(x)= \arccos(x) Arccosh(x)=arccos(x)激活函数总结(十二):三角系列激活函数补充(Sinusoid、Cosine、Arcsinh、Arccosh、Arctanh)_第4张图片

A r c t a n h ( x ) = arctan ⁡ ( x ) Arctanh(x)= \arctan(x) Arctanh(x)=arctan(x)激活函数总结(十二):三角系列激活函数补充(Sinusoid、Cosine、Arcsinh、Arccosh、Arctanh)_第5张图片

优点:

  • 角度映射: Arc系列激活函数可以将输入映射到特定的角度或弧度范围内。这在某些任务中可能有用,例如处理角度信息的问题。
  • 非线性性质: 这些函数都是非线性的,可以引入一定的非线性变换,增加神经网络的表达能力。

缺点:

  • 输出范围限制: 这些函数的输出范围可能不符合神经网络激活函数的常见范围要求,如 [0, 1] 或 [-1, 1]。
  • 梯度问题: 在某些输入范围内,这些函数的导数可能变得非常小,导致梯度消失问题。
  • 计算复杂性: 计算反三角函数可能比一些其他常见的激活函数更加耗时,尤其是在大规模的神经网络中,可能影响模型的训练和推理速度。

关于Arcsinh和Arccosh激活函数几乎没有人提及相关资料,可能存在一定问题!!!,Arctanh提及较多但是现在也很少被应用。。。。

3. 总结

到此,使用 激活函数总结(十二) 已经介绍完毕了!!! 如果有什么疑问欢迎在评论区提出,对于共性问题可能会后续添加到文章介绍中。如果存在没有提及的激活函数也可以在评论区提出,后续会对其进行添加!!!!

如果觉得这篇文章对你有用,记得点赞、收藏并分享给你的小伙伴们哦。

你可能感兴趣的:(深度学习,机器学习,人工智能,深度学习,python,激活函数)