激活函数总结(三十五):激活函数补充(KAF、Siren)

激活函数总结(三十五):激活函数补充

  • [1 引言](#1 引言)
  • [2 激活函数](#2 激活函数)
    • [2.1 KAF激活函数](#2.1 KAF激活函数)
    • [2.2 Siren激活函数](#2.2 Siren激活函数)
  • [3. 总结](#3. 总结)

1 引言

前面的文章中已经介绍了介绍了一系列激活函数 (SigmoidTanhReLULeaky ReLUPReLUSwishELUSELUGELUSoftmaxSoftplusMishMaxoutHardSigmoidHardTanhHardswishHardShrinkSoftShrinkTanhShrinkRReLUCELUReLU6GLUSwiGLUGTUBilinearReGLUGEGLUSoftminSoftmax2dLogsoftmaxIdentityLogSigmoidBent IdentityAbsoluteBipolarBipolar SigmoidSinusoidCosineArcsinhArccoshArctanhLeCun TanhTanhExpGaussianGCUASUSQUNCUDSUSSUSReLUBReLUPELUPhishRBFSQ-RBFISRUISRLUSQNLPLUAPLInverse CubicSoft ExponentialParametricLinearPiecewise Linear UnitCLLSquaredReLUModReLUCosReLUSinReLUProbitSmishMultiquadraticInvMultiquadraticPSmishESwishCoLUShiftedSoftPlusLogitSoftsignELiSHHard ELiSHSerfFReLUQReLUm-QReLUFReLUCReLU)。在这篇文章中,会接着上文提到的众多激活函数继续进行介绍,给大家带来更多不常见的激活函数的介绍。这里放一张激活函数的机理图:

2 激活函数

2.1 KAF激活函数

论文链接:Kafnets: kernel-based non-parametric activation functions for neural networks

KAF(Kernel Activation Function)旨在通过引入核函数的概念来提高神经网络的性能。KAF 激活函数的主要思想是将输入通过核函数进行映射,然后再应用标准的激活函数,从而实现更高维度非线性变换。这可以帮助神经网络更好地建模非线性关系。其数学表达式和数学图像分别如下所示:
f ( s ) = ∑ i = 1 D α i κ ( s , d i ) f(s) = \sum_{i=1}^D \alpha_i \kappa( s, d_i) f(s)=i=1∑Dαiκ(s,di)

其中, 内核元素的字典 d 0 , ... , d D d_0, \ldots, d_D d0,...,dD 通过采样修复 x x x 轴,在 0 附近具有均匀的步长; 用户选择内核函数(例如,高斯ReLUSoftplus)和内核元素的数量 D D D 作为超参数。更大的字典导致更具表现力的激活函数和更多可训练参数; 线性系数通过标准反向传播在每个神经元上独立调整。

优点:

  • 非线性建模 : KAF 允许神经网络进行非线性映射,有助于更好地捕获数据中的复杂模式和关系。
  • 核方法 : 引入核函数的思想可以使神经网络具备核方法的一些优点,如处理高维数据学习复杂的非线性函数。

缺点:

  • 计算成本 : 使用核函数意味着需要计算输入的非线性映射,这可能会增加计算成本,尤其是在大规模数据和深层网络中。
  • 超参数调整 : 选择适当的核函数以及核函数的超参数可能需要一些经验调整
  • 解释性 : KAF 引入了更复杂非线性映射,可能会降低模型的解释性

在某些特殊情况下可能有所应用,尤其是使用核函数时,一般不使用。。。。

2.2 Siren激活函数

论文链接:Implicit Neural Representations with Periodic Activation Functions

Siren(Sinusoidal Representation Network)是隐式神经表示周期性激活函数。具体来说,它使用正弦作为周期性激活函数。其数学表达式和数学图像分别如下所示:
Φ ( x ) = W n ( ϕ n − 1 ∘ ϕ n − 2 ∘ ⋯ ∘ ϕ 0 ) ( x ) + b n ϕ i ( x i ) = s i n ( W i x i + b i ) \Phi\left(x\right) = \textbf{W}{n}\left(\phi{n-1} \circ \phi_{n-2} \circ \dots \circ \phi_{0} \right)(x)+b_n \\ \phi_{i}(x_i)= sin(W_ix_i+b_i) Φ(x)=Wn(ϕn−1∘ϕn−2∘⋯∘ϕ0)(x)+bnϕi(xi)=sin(Wixi+bi)

优点:

  • 平滑性 : 正弦函数是一个平滑的函数,可以提供平滑的非线性变换,有助于避免梯度消失问题。
  • 表示能力 : Siren 激活函数具有强大的表示能力,能够适应多种数据模式,包括高频信号和图像中的细节。
  • 可扩展性 : Siren 可以用于处理不同尺度分辨率的数据,因此在图像生成处理方面表现出色。

缺点:

  • 计算成本 : 由于正弦函数涉及三角函数的计算,相对于某些简单的激活函数,Siren 可能具有较高的计算成本。
  • 超参数调整 : 对于正弦函数的参数(如频率)需要进行调整,这可能需要一些经验和实验。
  • 解释性 : 正弦函数不像某些其他激活函数那样具有直观物理解释,这可能会降低模型的解释性。

Siren 激活函数通常用于生成模型超分辨率任务和其他需要捕捉高频信息的任务中。

3. 总结

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

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

相关推荐
GFCGUO3 分钟前
ubuntu18.04运行OpenPCDet出现的问题
linux·python·学习·ubuntu·conda·pip
985小水博一枚呀2 小时前
【深度学习基础模型】神经图灵机(Neural Turing Machines, NTM)详细理解并附实现代码。
人工智能·python·rnn·深度学习·lstm·ntm
SEU-WYL3 小时前
基于深度学习的任务序列中的快速适应
人工智能·深度学习
萧鼎3 小时前
Python调试技巧:高效定位与修复问题
服务器·开发语言·python
OCR_wintone4213 小时前
中安未来 OCR—— 开启文字识别新时代
人工智能·深度学习·ocr
学步_技术3 小时前
自动驾驶系列—全面解析自动驾驶线控制动技术:智能驾驶的关键执行器
人工智能·机器学习·自动驾驶·线控系统·制动系统
IFTICing3 小时前
【文献阅读】Attention Bottlenecks for Multimodal Fusion
人工智能·pytorch·python·神经网络·学习·模态融合
大神薯条老师3 小时前
Python从入门到高手4.3节-掌握跳转控制语句
后端·爬虫·python·深度学习·机器学习·数据分析
程序员爱德华3 小时前
Python环境安装教程
python
huanxiangcoco3 小时前
152. 乘积最大子数组
python·leetcode