知名的建站公司,免费网站外链推广,深圳营销建网站公司,未来的软件开发方向是什么摘要
在深度学习架构中建模复杂的激活函数已成为一个独特的研究方向。诸如GELU、SELU和SiLU等函数提供了平滑的梯度和改进的收敛特性#xff0c;使其成为最先进模型中的热门选择。尽管存在这一趋势#xff0c;但经典的ReLU函数仍因其简洁性、内在稀疏性以及其他有利的拓扑特…摘要
在深度学习架构中建模复杂的激活函数已成为一个独特的研究方向。诸如GELU、SELU和SiLU等函数提供了平滑的梯度和改进的收敛特性使其成为最先进模型中的热门选择。尽管存在这一趋势但经典的ReLU函数仍因其简洁性、内在稀疏性以及其他有利的拓扑特性而备受青睐。然而ReLU单元容易出现不可逆的失活现象——即所谓的“ReLU死亡问题”——这限制了其整体有效性。在本研究中我们引入了ReLU的替代梯度学习Surrogate Gradient Learning for ReLU简称SUGAR方法作为一种新颖的即插即用正则化器用于深度架构。SUGAR在正向传播过程中保留标准的ReLU函数但在反向传播过程中用平滑的替代函数替换其导数以避免梯度归零。我们证明当SUGAR与精心选择的替代函数配对时能显著提升卷积网络架构如VGG-16和ResNet-18的泛化性能同时提供更稀疏的激活并有效复活“死亡”的ReLU单元。此外我们还表明即使在通常采用GELU的现代架构如Conv2NeXt和Swin Transformer中用SUGAR替代这些函数也能产生具有竞争力甚至略微优越的性能。这些发现挑战了先进激活函数对于最优性能是必需的普遍观念。相反它们表明传统的ReLU函数特别是经过适当的梯度处理后可以作为强大且多功能的“复活”经典广泛应用于各种深度学习视觉模型中。
1 引言
深度神经网络中激活函数的选择对模型的收敛性和性能有实质性影响。在[7]中提出将修正线性单元ReLU作为激活函数之前人们曾集中精力解决S型激活函数的饱和和梯度消失问题。ReLU已被证明能加速收敛并常常提高泛化能力。作为深度学习历史上的一个里程碑ReLU已被用于AlexNet [19]该网络在ImageNet [3]基准测试中显著优于其竞争对手。这项工作明确研究了ReLU在深度卷积网络中相对于双曲正切tanh的优越性。此后ReLU已被用于众多任务包括图像分类和分割、强化学习、自然语言处理和语音识别 [10, 32, 13, 36, 14, 39]。
从数学上讲近期的研究已建立了热带几何与具有ReLU激活的前馈神经网络之间的深层联系 [42]揭示了ReLU的潜在代数结构即热带半环该结构用最大值代替加法用加法代替乘法。因此ReLU网络形成的决策边界对应于热带超曲面这是热带几何中的基本对象。此类神经网络等价于热带有理函数 [42]该函数定义为两个热带多项式的比值而热带多项式本身又由仿射函数的最大值构成。与此密切相关的是将ReLU网络的连续层直观地理解为空间折叠变换这种变换允许对输入空间中的相似性进行紧凑表示 [20, 28, 29]。
在ReLU网络中负的预激活值被真正置零从而允许稀疏表示。这可能导致在未见数据上具有更好的泛化能力但强制过多的稀疏性可能会损害预测性能因为它实际上降低了模型容量 [7]。这一现象被称为“ReLU死亡问题”一直是ReLU网络的一大警告。ReLU死亡问题催生了众多线性单元函数包括但不限于LeakyReLU [26]、PReLU [9]、GELU [11]、SELU [17]、SiLU/Swish [4, 31]、ELU [2]。所有这些函数都为负的预激活值引入了非零激活在ReLU的建模优势与平滑、连续梯度的优势之间提供了不同的权衡。
在本文中我们通过引入一种新颖的方法——ReLU的替代梯度学习SUGAR——来解决ReLU的局限性同时不牺牲其优势。SUGAR允许模型保留标准的ReLU激活同时确保即使对于负的预激活值也能保持稳定的梯度流。本工作的进一步贡献如下
我们提出了两种新的替代梯度函数即B-SiLU和NeLU它们可以无缝集成到各种模型中。这些函数一致地提高了泛化性能。我们在VGG-16 [35]和ResNet-18 [8]上进行了全面的实验证明SUGAR显著提升了这两种架构的泛化能力。我们在现代架构如Swin Transformer [23]和Conv2NeXt [5]上评估了SUGAR展示了其适应性和有效性。对VGG-16层激活的深入分析表明应用SUGAR后激活分布发生了明显变化为SUGAR在缓解ReLU死亡问题中的作用提供了视觉证据同时促进了更稀疏的表示。我们进一步探索了有SUGAR和无SUGAR情况下的损失景观为理解其优化优势提供了更深入的见解。
所提出的SUGAR方法具有几个理想的特性。它易于实现并在正向传播过程中始终使用ReLU。当与所提出的B-SiLU替代函数结合使用时VGG-16在CIFAR-10和CIFAR-100 [18]上的测试准确率分别提高了10和16个百分点而ResNet-18相比没有SUGAR的最佳模型也分别显示了9和7个百分点的相应提升。
2 背景
2.1 替代梯度学习
在传统的人工神经网络中学习依赖于基于梯度的优化方法如反向传播这要求激活函数是连续且可微的。然而脉冲神经网络SNNs是离散且不可微的使得反向传播的直接应用变得不可行。
替代梯度学习作为一种解决方案出现它通过用一个平滑且可微的近似值来替换不可微的脉冲函数的梯度从而训练SNNs [30]。这些替代函数允许在训练过程中梯度在网络中流动使得在神经形态和基于事件的计算环境中能够使用强大的优化技术。这一想法在2010年代末开始受到关注并自此成为以计算高效方式训练生物启发的脉冲模型的基础 [1, 12, 38, 41]。
最近一种名为ProxyGrad的相关方法 [22] 通过在优化过程中操纵梯度改进了卷积网络中的激活最大化AM。研究表明在反向传播中使用LeakyReLU同时在正向传播中保持ReLU可以使AM逃离较差的局部最优解并达到更高的激活值。因此该方法产生了更具信息性和可解释性的特征可视化。
2.2 前向梯度注入FGI
前向梯度注入FGI是SUGAR中的核心算法。它最初在[34]中被引入作为SNNs中的一种替代梯度策略。它利用停止梯度算子即.detach()来操纵梯度使得具有不可微脉冲的模型能够通过梯度信号进行训练。FGI允许在正向传播过程中注入梯度其方程如下间接替代梯度函数 y g ( x ) − sg ( g ( x ) ) sg ( f ( x ) ) y g(x) - \operatorname{sg}(g(x)) \operatorname{sg}(f(x)) yg(x)−sg(g(x))sg(f(x))
其中 sg ( ⋅ ) \operatorname{sg}(\cdot) sg(⋅)是停止梯度算子 f ( ⋅ ) f(\cdot) f(⋅)是正向计算其梯度被绕过而 g ( ⋅ ) g(\cdot) g(⋅)是另一个函数其梯度被注入到感兴趣的变量 x x x上但由于与自身的相减而不贡献于正向结果。选择 g ( ⋅ ) g(\cdot) g(⋅)为对负输入具有非零梯度的激活函数可以训练ReLU网络而不受ReLU死亡问题的影响。然而方程1需要在反向传播中计算 g ( ⋅ ) g(\cdot) g(⋅)的梯度。通过乘法技巧可以使 g ¨ ( ⋅ ) \ddot{g}(\cdot) g¨(⋅)在反向传播中恰好是 f ( ⋅ ) f(\cdot) f(⋅)的导数直接替代梯度函数 m x ⋅ sg ( g ~ ( x ) ) y m − sg ( m ) sg ( f ( x ) ) \begin{aligned} m x \cdot \operatorname{sg}(\tilde{g}(x)) \\ y m - \operatorname{sg}(m) \operatorname{sg}(f(x)) \end{aligned} myx⋅sg(g~(x))m−sg(m)sg(f(x))
FGI允许在正向传播过程中直接注入替代梯度函数与原始函数 f ( ⋅ ) f(\cdot) f(⋅)无关。[34]中的结果表明FGI相比经典的替代梯度部署即覆盖反向函数可以提高模型的可优化性和可移植性。
3 ReLU的替代梯度SUGAR
我们提出的方法将FGI应用于具有平滑替代函数的ReLU网络中。我们将替代梯度的潜在应用扩展到SNNs之外并旨在将此框架作为一种技术来克服普通ReLU的缺点。
在SUGAR的上下文中间接FGI可以表示为 y f ( x ) − sg ( f ( x ) ) sg ( ReLU ( x ) ) y f(x) - \operatorname{sg}(f(x)) \operatorname{sg}(\operatorname{ReLU}(x)) yf(x)−sg(f(x))sg(ReLU(x))
此公式允许梯度注入并确保即使对于负激活也能传播梯度。具体来说使用[34]中的乘法技巧可以通过以下方式直接注入替代梯度函数 m x ⋅ sg ( f ~ ( x ) ) y m − sg ( m ) sg ( ReLU ( x ) ) \begin{aligned} m x \cdot \operatorname{sg}(\tilde{f}(x)) \\ y m - \operatorname{sg}(m) \operatorname{sg}(\operatorname{ReLU}(x)) \end{aligned} myx⋅sg(f~(x))m−sg(m)sg(ReLU(x))
在这里 f ~ ( x ) \tilde{f}(x) f~(x)明确定义了ReLU的替代梯度行为。
替代函数的选择是灵活的可以包括在先进应用中常用的激活函数如ELU、GELU、SiLU、SELU和Leaky ReLU见图8。这些函数通常具有由自门控或自归一化等机制驱动的理想特性。重要的是这些替代候选函数与ReLU不同它们对负输入 x 0 x 0 x0具有非零梯度。尽管替代函数使负激活的梯度能够流动但正向传播和随后的损失计算严格依赖于 x 0 x 0 x0时的激活。因此在这种情况下替代梯度学习的影响可以解释为过滤掉低于截止阈值的预激活从而减少网络因拓扑简化和稀疏性而导致的过拟合倾向 [27, 29]但不会损害梯度流动。
在初步研究中我们意识到需要调整当前的激活函数以利用SUGAR的特定目的。如后文将深入讨论的SUGAR的效果在不同的正则化设置中有所不同。因此在以下内容中我们提出了两种与这些设置相契合的新替代函数。
3.1 B-SiLU
我们引入了一种名为有界Sigmoid线性单元B-SiLU的新型激活函数它结合了自门控特性和可调的下界参数。从数学上讲该函数可以表示为 B-SiLU ( x ) ( x α ) ⋅ σ ( x ) − α 2 , with α 1.67 \operatorname{B-SiLU}(x) (x \alpha) \cdot \sigma(x) - \frac{\alpha}{2}, \quad \text{with } \alpha 1.67 B-SiLU(x)(xα)⋅σ(x)−2α,with α1.67
其中 σ ( x ) \sigma(x) σ(x)表示Sigmoid激活。B-SiLU激活函数的导数为 d d x B − S i L U ( x ) σ ( x ) ( x α ) σ ( x ) ( 1 − σ ( x ) ) \frac{d}{dx} \mathrm{~B}-\mathrm{SiLU}(x) \sigma(x) (x \alpha) \sigma(x)(1 - \sigma(x)) dxd B−SiLU(x)σ(x)(xα)σ(x)(1−σ(x))
B-SiLU及其导数如图8所示。B-SiLU激活函数源于对SUGAR的探索性实验特别受到[33]中引入的类似swish的Sigmoid函数和[15, 40]中考察的相关阈值算子的启发。其动机是结合SiLU的自门控行为和GELU的平滑性的有利特性。
3.2 NeLU
我们进一步引入了负斜率线性单元NeLU作为ReLU的平滑导数替代品。它受到ReLU在 x 0 x 0 x0时恒定导数和GELU在 x 0 x 0 x0时平滑负斜率的启发。对于较大的负输入所得梯度会收敛回零。 d d x NeLU ( x ) { 1 , if x 0 α 2 x ( 1 x 2 ) 2 , else \frac{d}{dx} \operatorname{NeLU}(x) \left\{ \begin{array}{ll} 1, \text{if } x 0 \\ \alpha \frac{2x}{(1 x^2)^2}, \text{else} \end{array} \right. dxdNeLU(x){1,α(1x2)22x,if x0else α \alpha α控制 x 0 x 0 x0且值较小时负梯度的幅度以确保稳定性。所得梯度如图1所示。通过应用方程5和方程6中的乘法技巧可以直接设置激活的梯度如方程9所示。
4 实验
4.1 在CIFAR-10/100上的替代函数比较
我们进行了广泛的实验使用ResNet-18和VGG-16架构在CIFAR-10和CIFAR-100数据集上评估并比较了各种激活函数包括使用和不使用SUGAR的情况。在每次应用SUGAR的运行中前向函数始终采用标准的ReLU函数对于给定的替代激活函数 f f f例如ELU我们将网络在使用 f f f进行前向传播且使用其真实梯度进行反向传播非SUGAR场景时的性能与使用ReLU进行前向传播但使用 f f f的梯度进行反向传播例如使用ELU的SUGAR的相同架构的性能进行比较。每种配置都使用不同的随机种子训练了五次以确保结果的稳健性。为了单独考察激活函数和SUGAR应用对泛化能力的影响我们没有采用任何数据增强方法完整的实验设置见附录B。评估的替代函数包括LeakyReLU、SELU、ELU、GELU、SiLUSwish、Mish以及我们提出的B-SiLU和NeLU。完整的实验结果见附录C。
总体而言使用ELU、SELU尤其是B-SiLU的SUGAR相较于ReLU基线带来了最大的性能提升而LeakyReLU和NeLU的表现则始终不佳图2。在CIFAR-10数据集上使用ResNet-18架构时B-SiLU结合SUGAR将准确率从76.76%提升至86.42%。VGG-16也表现出类似的性能提升B-SiLU将测试准确率提高了近10个百分点78.50%→88.35%。 在CIFAR-100数据集上SUGAR B-SiLU的优势更为明显ResNet-18的准确率从48.99%跃升至56.51%VGG-16的准确率则从48.73%提升至64.47%图3。同样Leaky ReLU和NeLU的性能提升微乎其微甚至为负例如ResNet-18上从43.67%→43.41%这表明在这种设置下简单的线性泄漏无法充分利用SUGAR的优势。综上所述B-SiLU在各种架构和数据集上的表现均优于其他替代函数ELU和SELU提供了可靠的改进而在此设置下Leaky ReLU和NeLU并未从SUGAR中获得显著益处。
4.2 深度ReLU网络的稳定性改进
为了评估SUGAR在解决ReLU神经元失活问题上的有效性我们重新审视了文献[25]中引入的一个受控设置其中使用对称权重初始化的深度且狭窄的ReLU网络由于神经元广泛失活而无法学习。我们通过引入B-SiLU替代梯度的SUGAR来复制并扩展了原始实验这大大提高了多个简单回归任务中的层激活概率和学习效果。我们的结果表明SUGAR甚至能够通过失活的神经元传递梯度从而降低崩溃率并增强模型表达能力。详细分析请参见附录A。
4.3 Conv2NeXt和Swin Transformer
我们进一步研究了SUGAR在最新模型中的潜力。为此我们选择了一个基于卷积的模型和一个基于注意力的模型。Conv2NeXt[5]被选为卷积模型因为它与ConvNeXt[24]架构相同但针对较小的数据集进行了调整。另一方面Swin Transformer[23]是一个视觉Transformer模型专为大型数据集即ImageNet1k设计最小的模型有2800万个参数。由于我们在Tiny-ImageNet200[3]上训练了该模型因此它对于该数据集来说参数过多。我们直接采用了文献[23]和[5]中的原始模型形式。唯一进行的修改是将激活函数替换为相应的SUGAR实现。
当应用于Conv2NeXt时SUGAR始终优于在前向和反向传播中都使用GELU的基线模型如表1所示。尽管我们复现的Conv2Next结果文献[5]的准确率低于报告的83.84%使用GELU但使用NeLU的SUGAR超过了这一值。对于Swin Transformer尽管B-SiLU的性能略有下降但使用 α 0.01 \alpha0.01 α0.01的NeLU的准确率高于两个基线模型。
5 讨论
在后续分析中我们通过检查每个样本的层激活情况来考察SUGAR效应。结果表明激活分布发生了明显变化。随后我们分析了有无SUGAR时ResNet-18的损失曲面。最后我们探讨了将SUGAR作为一种正则化形式的潜力。
5.1 SUGAR激活失活神经元
为了阐明替代梯度如何影响内部表示我们分析了在CIFAR-100上训练40个epoch后VGG-16骨干网络的激活特征见图4。对于每个数据样本我们记录了一个神经元在整个训练epoch中产生输出的次数由此得到的分布反映了神经元实际参与前向传播的频率。x轴上0点处的频率对应于在所有样本中均不活跃的神经元即失活神经元。
普通ReLU基线与使用SUGARBSiLU训练的网络之间的第一个显著差异出现在第12层和第13层。ReLU模型在激活计数直方图中呈现出平坦分布大量神经元从未激活失活神经元而其他神经元则始终保持活跃。在SUGAR模型中相同的层呈现出近似正态分布以适中的激活计数为中心这表明有界的替代梯度保持了梯度流动并防止神经元变得功能惰性。
第二个差异涉及网络的浅层部分。SUGAR模型的前四个卷积层呈现出略显平坦、右偏的分布其众数低于基线。因此对于给定的图像平均而言较少的滤波器处于活跃状态这表明替代优化激活鼓励了选择性并减少了冗余特征图从而可能提高了泛化能力。
综合这些观察结果我们可以看出有界的替代梯度同时缓解了失活神经元问题并在最有益的地方促进了稀疏性。由此产生的整体平衡——早期稀疏性与良好表现的深层激活相结合——可能有助于解释第4节中报告的泛化能力提升。平均激活率的降低也暗示了在资源受限的硬件上部署时可能获得的实际收益因为内存流量和乘加运算次数与活跃神经元的数量成正比。
当前的分析仅限于层级的聚合统计量。未来的工作应跟踪训练期间激活的动态变化并评估这些趋势是否也适用于其他架构和数据集。我们在CIFAR-10上对所有测试模型都观察到了相同的激活特征模式。相应的图表可在E.2节中找到。
5.2 损失曲面分析
为了理解替代梯度如何重塑优化几何形状我们在CIFAR-100上训练ResNet-18 10个epoch后可视化了训练权重附近的损失曲面见图5。遵循文献[21]中的标准双向过程我们采样了两个随机方向并按层重新缩放以匹配相应权重张量的 ℓ 2 \ell_{2} ℓ2范数批归一化参数固定。我们在 [ − 0.25 , 0.25 ] 2 [-0.25,0.25]^{2} [−0.25,0.25]2上跨越的 100 × k 100 \times k 100×k网格上评估损失并绘制了普通ReLU模型和使用SUGARB-SiLU训练的相同模型的等高线。
普通网络的损失曲面在中心处呈现出相对平坦的盆地但向边缘急剧上升。在极端权重扰动网格的角落处损失超过25形成了陡峭的悬崖这可能会阻碍优化。相比之下SUGAR的损失曲面明显更加凸出即使在大扰动下损失也保持较低水平。更平滑的曲面意味着梯度条件更好这有助于解释我们在图2和E.1节中观察到的训练过程中更快的收敛速度。
5.3 SUGAR作为一种正则化技术
第5.1节中的经验结果为特定层中的分布偏移提供了证据。这些分布显示出由ReLU激活函数诱导的稀疏活动。已有大量工作探讨了稀疏性与泛化能力之间的关系[37, 6]。我们的目标是从正则化的角度考察SUGAR。最广泛且简单的正则化方法是权重衰减它通过将纯成本函数的梯度向小权重方向调制来发挥作用。SUGAR也通过调制纯基于ReLU的成本函数的梯度来进行正则化然而通过采用替代激活函数它以一种更复杂且自适应的方式实现了这一点具体取决于激活模式。
我们考虑了本文中研究的模型。第4.1节和第5.1节中的结果使用的模型并未进行大量正则化。在这种设置下选择与ReLU导数相差较大的替代函数会引入更严厉的正则化并提高预测性能。然而在高度正则化的设置中如第4.3节所示必须谨慎且细致地应用额外的正则化以避免欠拟合。在这种情况下建议选择一个与ReLU导数相差较小的函数例如NeLU该函数在预激活低于截止阈值时提供梯度流动同时尽可能接近地模拟ReLU的反向特性。这种行为在我们的结果中得到了反映虽然B-SiLU在VGG-16和ResNet-18上显著提高了泛化能力见第4.1节但NeLU在已经正则化的Conv2NeXt和Swin Transformer模型上被证明在增强泛化能力方面更为有效见第4.3节。
6 结论
本研究提供了有力证据表明最初应用于脉冲神经网络领域的替代梯度学习方法能够显著提升非脉冲深度神经网络中经典ReLU修正线性单元的性能。通过在前向传播中保留ReLU而在反向传播中用平滑的替代函数替换其导数SUGAR基于替代梯度的ReLU改进方法能够实现稳健的训练动态和更好的泛化能力特别是在VGG-16和ResNet-18等卷积架构中。
我们的研究结果表明SUGAR结合精心设计的替代函数如B-SiLU和NeLU为长期存在的“ReLU死亡”问题提供了一个优雅的解决方案。特别是BSiLU引入了有界平滑梯度不仅能防止神经元失活还能鼓励有益的稀疏模式。另一方面NeLU通过其平滑的负斜率提供了更保守的正则化效果在保留ReLU结构简单性和有益特性的同时改善了被抑制激活的梯度流动。
尽管NeLU负斜率对训练动态的确切影响仍是一个开放性问题但我们的实验表明它有助于在像Conv2NeXt和Swin Transformer这样的强正则化模型中进行梯度传播。这表明替代梯度形状与模型正则化强度之间存在微妙的相互作用为未来的探索指明了有前景的方向。
总之本研究将经典ReLU重新定位为深度学习工具箱中的一个有韧性的组件。通过适当的梯度处理基于ReLU的网络可以匹配甚至超越依赖更复杂激活函数的现代架构。
6.1 局限性及未来工作
SUGAR在不同模型家族中的性能表现差异显著。在VGG-16和ResNet-18等深度较低正则化的网络中它表现出明显的优势但在Conv2NeXt和Swin Transformer等高度正则化的架构中如果替代梯度与ReLU导数偏离较大则效果较差甚至可能有害。
引入的替代函数是通过经验直觉和基于试验的调优来设计的而非基于正式的设计原则。此外我们的结果表明训练动态和泛化能力有所提升但研究尚未提供关于收敛性、稳定性或泛化界限的正式保证。在没有严格分析框架的情况下很难预测SUGAR在不同训练方案下的行为。
我们的评估主要集中在图像分类任务上使用了CIFAR-10、CIFAR-100和Tiny-ImageNet等数据集以及一些简单的玩具问题。目前尚不清楚SUGAR在其他领域如自然语言处理、强化学习或时间序列建模中的表现如何在这些领域中激活动态和梯度传播可能存在显著差异。
除了解决当前的局限性和开放性问题外未来的研究可以评估针对特定架构和数据集的自动替代函数搜索。考虑基于训练信号和激活分布动态调整的替代函数或按计划调整的替代函数也可能很有趣。
此外鉴于SUGAR在应用简单ReLU的同时能改善稀疏性并减少网络内的激活分布它可能对结构化剪枝、量化感知训练或在低开销模型背景下实现高效能推理有益。
附录
A 使用SUGAR解决“ReLU死亡”问题的玩具示例
在[25]中创建了一个人为设置以导致“ReLU死亡”问题。在给定配置下一个10层的ReLU网络由于“ReLU死亡”问题产生了恒定的输出。提出的解决方案是对权重进行随机非对称初始化RAI以减少负激活的数量。在本节中我们使用SUGAR复制并扩展了这些实验并表明SUGAR能够显著降低死激活的概率。
所讨论的网络由10个宽度为2的前馈隐藏层组成仅使用ReLU激活函数。如[25]所示当神经网络相对于其宽度足够深并用对称权重初始化时初始激活概率往往接近于零。在这种情况下在超过90%的试验中由于神经元广泛且不可逆的失活网络无法学习有意义的表示。
为了进行评估我们从[25]中改编了四个在 [ − 1.5 , 1.5 ] [-1.5,1.5] [−1.5,1.5]范围内的不同玩具数据集作为回归任务。对于每个函数我们从 U [ − 3 , 3 ] d i n \boldsymbol{U}[-\sqrt{3}, \sqrt{3}]^{d_{in}} U[−3 ,3 ]din中抽取3000个样本作为网络的输入。 d in d_{\text{in}} din表示输入维度对于方程13为2其余为1。对于每个任务进行了100次独立运行。对应的方程如下 f 1 ( x ) ∣ x ∣ f 2 ( x ) x ⋅ sin ( 5 x ) f 3 ( x ) 1 { x 0 } ( x ) 0.2 sin ( 5 x ) f 4 ( x 1 , x 2 ) [ ∣ x 1 x 2 ∣ ∣ x 1 − x 2 ∣ ] \begin{aligned} f_{1}(x) |x| \\ f_{2}(x) x \cdot \sin (5 x) \\ f_{3}(x) \mathbb{1}_{\{x0\}}(x)0.2 \sin (5 x) \\ f_{4}\left(x_{1}, x_{2}\right) \left[\begin{array}{l} \left|x_{1}x_{2}\right| \\ \left|x_{1}-x_{2}\right| \end{array}\right] \end{aligned} f1(x)f2(x)f3(x)f4(x1,x2)∣x∣x⋅sin(5x)1{x0}(x)0.2sin(5x)[∣x1x2∣∣x1−x2∣]
损失计算为250个epoch上的均方误差。使用Adam[16]作为优化器学习率为0.005并在第100、150、200、225个epoch时将学习率降低0.1。每个目标函数的小批量大小为64。在本实验中使用 B − S i L U \mathrm{B}-\mathrm{SiLU} B−SiLU的导数作为替代梯度。
图6清楚地表明如[25]中所示ReLU网络无法解决方程10的回归任务。一旦应用带有B-SiLU的SUGAR网络会产生更多的激活从而能够解决回归任务。
此外我们跟踪了各层的平均激活概率如图7所示以监测各层内的活动并估计在前向传播过程中积极贡献的神经元数量。因此我们获得了网络内部活动的动态视图使我们能够评估网络是否有效利用了其容量以及在学习过程中稀疏性如何演变。早期层激活较低的模型可能在传播信息方面遇到困难而后期层激活过高的模型可能表明存在冗余。然而为了清晰起见我们仅可视化各层的平均活动。
在[25]中由于方程13的复杂性其层数从10层增加到20层。在SUGAR实验中层数保持在10层与[25]中的结果相比模型在各层中仍然产生了更多的激活如表2所示。使用[25]中建议的非对称正初始化方法可以降低神经元失活的可能性。然而一旦神经元失活由于该方法仅涉及初始化模型无法重新激活该神经元。对于SUGAR来说由于通过该特定神经元的梯度流动得以实现因此仍然有可能重新激活。
B VGG-16和ResNet-18的实验设置
在CIFAR-10和CIFAR-100上进行的所有激活函数实验均采用相同的设置
批量大小128验证集划分训练集的10%数据增强无工作线程数4优化器SGD学习率为0.001学习率计划在第100个epoch时设置一个里程碑Epoch数CIFAR-10为50个epochCIFAR-100为100个epoch重复次数每种配置进行5次独立运行种子为[1,10,20,25,42]硬件NVIDIA RTX A6000 GPUCUDA 12.6驱动560.35.03
C VGG-16和ResNet-18在CIFAR-10/100上的完整结果
本节提供了VGG-16和ResNet-18的完整结果。值得注意的是当ReLU和B-SiLU结合使用时它们在泛化能力方面表现出色。
D 激活函数及其导数 E VGG-16和ResNet-18实验的附加图表
本附录提供了额外的图表以更深入地了解VGG-16和ResNet-18实验中观察到的收敛行为、激活分布和测试准确率。
E.1 验证曲线图 E.2 激活图 E.3 条形图准确率 F Swin Transformer的实验设置
模型取自原始工作[23]。在本研究中使用了Swin Transformer的微型版本2800万个参数。尽管我们的实现与[23]完全一致但在这里我们提供了关于训练过程的详细规格。Swin Transformer在具有200个类别的Tiny ImageNet数据集上进行训练。
批量大小训练时使用的批量大小为200。验证集划分训练集的5%数据增强在训练过程中采用了多种增强技术颜色抖动强度为0.4AutoAugment策略rand-m9-mstd0.5-inc1随机擦除参数为 概率0.25模式像素计数1 Mixupalpha为0.8Cutmixalpha为1.0Mixup和Cutmix在批量模式下应用切换概率为0.5工作线程数8优化器使用AdamW优化器参数如下 Betas(0.9, 0.999)Epsilon1e-8权重衰减0.05 学习率计划使用余弦学习率调度器参数为 基础学习率5e-4根据批量大小和设备数量线性缩放预热学习率5e-7最小学习率5e-6预热epoch数20 梯度裁剪最大范数为5.0Epoch数模型训练了300个epoch。重复次数每种配置进行5次独立运行种子为[1,10,20,25,42]硬件NVIDIA GeForce RTX 4090 25GB GPUCUDA 12.4驱动550.144.03
G Conv2NeXt的实验设置
模型取自原始工作[5]。遵循[5]中的设置使用了Conv2NeXt的基础版本700万个参数。尽管我们的实现与[5]完全一致但在这里我们提供了关于训练过程的详细规格。使用torch.compile与SUGAR结合。Conv2NeXt在CIFAR-100数据集上进行训练。
批量大小每个GPU的批量大小为200通过4步梯度累积有效批量大小为800。验证集/训练集按照torchvision中CIFAR-100的默认设置为50000/10000。根据[5]未使用测试集。数据增强采用了以下增强策略 AutoAugmentrand-m9-mstd0.5-inc1颜色抖动0.4随机擦除参数为 概率0.25模式像素计数1 Mixupalpha0.8Cutmixalpha1.0结合Mixup/Cutmix在批量模式下应用切换概率为0.5 工作线程数10优化器使用AdamW优化器参数如下 学习率4e-3权重衰减0.05Epsilon1e-8Betas默认值((0.9, 0.999)) 学习率计划使用余弦学习率调度器 初始学习率4e-3最小学习率1e-6预热期20个epoch权重衰减也遵循余弦计划 Epoch数训练进行了300个epoch。重复次数每种配置进行5次独立运行种子为[1,10,20,25,42]硬件NVIDIA H100 80GB GPUCUDA 12.4驱动550.127.08