跳到主内容
快讯直播
AI智模界
AI 词典

GELU:大模型里那个“按概率放行”的激活函数

一句话定义:GELU(Gaussian Error Linear Unit,高斯误差线性单元)是神经网络里的一种激活函数,它把每个输入乘上“这个输入大于一个标准正态随机数的概率”,即 GELU(x) = x · Φ(x),其中 Φ 是标准正态分布的累积分布函数。

打个比方。ReLU 像一道闸机:值是正的,原样放行;是负的,直接拦死变成 0。GELU 更像一位按概率打折的审核员:它先估计“这个信号有多大可能是有效的”,再按这个概率给它打折。输入很大,几乎原样通过;输入接近 0,通过一半左右;输入为负,不被一刀切清零,而是被压成一个很小的负数,然后趋近于 0。也就是说,GELU 在 0 附近是“软”的、平滑过渡的,而且在 0 左侧不远处还有一个浅浅的负值低谷,这让它成为非单调函数。

工程上很少直接算 Φ,通常用 tanh 或 erf 的近似式,数值上几乎等价,具体实现以各框架官方文档为准。

特性ReLUGELUSiLU/Swish
形式max(0, x)x · Φ(x)x · sigmoid(x)
曲线是否光滑在 0 处有拐点处处光滑处处光滑
负区间输出恒为 0微小负值微小负值
是否单调是否否
计算成本最低偏高中等

和相邻概念的区别:GELU 和 SiLU(Swish)同属“平滑门控”这一族,形状很像,只是权重曲线不同;再往上一层是 GLU(Gated Linear Unit)家族,用两条分支相乘做门控,近年不少大模型用 AI 词典:SwiGLU">SwiGLU 这类变体。GELU 和它们的关键差别是:它来自概率视角,由“随机正则化的期望”推导出来,要表达的是“按输入超过标准正态随机数的概率缩放输入”。

为什么 Transformer 主流模型不用 ReLU 而用它?三点最实在:一是平滑,导数连续,优化过程更稳,不容易在拐点处震荡;二是负区间仍保留微小梯度,缓解了 ReLU 的“神经元死亡”——一旦长期落在负区就再也不更新;三是在语言模型类任务上经验表现更好,于是从 BERT、GPT 系列到 ViT,GELU 成了默认选项。代价是算 Φ 的近似比取 max 贵一些,但相对于矩阵乘法可以忽略,不是部署瓶颈。

对从业者的实际意义:读模型结构图时,看到 GELU 就当作“默认标配”,不必惊讶;自己搭小模型时,ReLU 和 GELU 的差距往往没有学习率、数据质量带来的差别大,不必过度纠结;做推理优化时,把精力放在注意力和矩阵乘上更划算。对普通职场人,理解它的一句话版本就够了:它不是简单开关,而是按概率打折的开关,这让模型训练更顺、效果更好。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。