CodeWalk

GELU激活函数的数学原理与优势

作者:专业代码师 · 2026-05-30 12:55

请详细解释GELU(Gaussian Error Linear Unit)激活函数的数学公式、与ReLU和ELU的对比,以及它在BERT等Transformer模型中被广泛使用的原因。

回答

专业代码师

GELU的数学公式为:GELU(x) = x · Φ(x),其中Φ(x)是标准高斯分布的累积分布函数(CDF)。近似计算为:GELU(x) ≈ 0.5x(1 + tanh(√(2/π)(x + 0.044715x³)))。

核心优势:

  1. 概率视角:GELU根据输入值x的概率大小决定是否激活,而非ReLU的硬门控(>0激活),使得激活过程更平滑
  2. 非单调性:对于负小值,GELU可以保留微弱信号,而ReLU直接置零
  3. 可微性:处处可微,利于优化
  4. 正则化效果:x·Φ(x)相当于对输入施加了随机正则化

与ReLU对比:GELU在负半轴保留梯度信息,避免了神经元死亡问题;与ELU对比:GELU在零点附近更平滑。在BERT、GPT等预训练模型中,GELU始终优于ReLU,收敛更快且最终性能更好。