博主头像

GELU、SiLU 和 SwiGLU 激活函数详解

外来客 • 2026-09-08 10:35:50

分享
𝕏 f
声明:本文为对公开内容的摘要整理, 未经本站独立核实,可能与原内容存在出入,不代表本站立场、观点或建议; 观点与版权归原作者及原平台所有。 如涉及版权问题,请联系我们,核实后立即删除。 [ 免责声明 ]

(原标题:The GELU, SiLU and SwiGLU activation functions, clearly explained!!!)

🧠 激活函数演进与核心差异

  • ReLU 的局限:ReLU(线性整流单元)在输入为负时输出零,且在零点存在不可导的折角;对于正输入直接输出原值。虽然计算简单且梯度稳定,但大型网络容易过拟合训练数据。
  • GELU 与 SiLU 的特性:GELU(高斯误差线性单元)和 SiLU(Sigmoid 线性单元)在负二到零之间呈现轻微下凹,零点处曲线平滑可导;正输入时输出略小于原值。这种细微差异使其比 ReLU 更不易过拟合。
  • SwiGLU 的灵活性:SwiGLU(Swish-Gated Linear Unit)结合了 Swish 特性与门控线性单元结构,形状可变性极强,能根据需求呈现类似平滑 ReLU 或其他形态,同样具备降低过拟合风险的能力。

📉 Sigmoid 到 ReLU 的技术迭代

  • Sigmoid 的瓶颈:早期神经网络使用 Sigmoid 函数,其输出限制在 0 到 1 之间且连续可导。但在深层网络中,远离零点的输入会导致导数趋近于零,使得梯度下降步长极小,训练效率低下且容易欠拟合。
  • ReLU 的突破:约 2010 年 ReLU 取代 Sigmoid,因其正区间导数为 1,简化了反向传播并加速参数优化。2017 年 Transformer 模型采用 ReLU,标志着其在深度学习中的核心地位确立。

🎲 Dropout 机制与过拟合控制

  • Dropout 原理:训练时随机移除部分激活函数,迫使网络学习更鲁棒的特征。这等效于训练多个子网络并在预测时进行平均,从而缓解大型网络的过拟合问题。
  • 独立性的缺陷:传统 Dropout 的丢弃概率与输入信号大小无关,无论输入强弱均可能移除节点,缺乏对输入信息的自适应利用。

📐 GELU 与 SiLU 的数学推导

  • 输入依赖型 Dropout:GELU 和 SiLU 源于将 Dropout 概率 $P(x)$ 设为输入的函数。通过计算保留输出($x \cdot P(x)$)与被丢弃输出($0 \cdot (1-P(x))$)的加权平均,得到新激活函数。
  • GELU 定义:使用标准高斯分布的累积分布函数作为 $P(x)$,即输入值乘以该概率,形成 GELU。
  • SiLU 定义:使用 Sigmoid 曲线作为 $P(x)$,即输入值乘以 Sigmoid 输出,形成 SiLU。两者形状相似,Google AI 模型倾向于使用 GELU。

⚙️ SwiGLU 的结构与优势

  • 构建过程:在简单网络中引入权重 $W$ 和 $V$。首先计算加权输入 $WX$ 并通过 Sigmoid 概率函数得到“Swish-like”项,再将其与另一路加权输入 $VX$(门控线性单元部分)相乘,最终输出为 $Y = Vx \cdot (WX \cdot P(WX))$。
  • 性能优势:SwiGLU 增加了可训练参数和计算复杂度,允许网络自行决定激活函数形状。这种“少干预”策略使模型表现更优,且因计算量大通常配合较小的网络规模使用,进一步抑制过拟合。Meta 的 AI 模型常采用此结构。

0 条评论

发表评论

请先 登录 后参与讨论。