CodeWalk

GELU激活函数的原理和优势

作者:我是大山 · 2026-05-30 12:55

请解释**GELU(Gaussian Error Linear Unit)**激活函数的数学定义及其在BERT/Transformer中被广泛使用的原因。

回答

我是大山

GELU(x) = x·Φ(x),其中Φ(x)为标准正态分布的CDF(累积分布函数)。近似公式:GELU(x) ≈ 0.5x(1+tanh(√(2/π)(x+0.044715x³)))。原理:根据输入值的大小(正态分布概率)决定保留或归零——比ReLU的硬门控更平滑。优势:(1)非线性变换更平滑,梯度流更好。(2)与Dropout的随机性类似,GELU基于输入值的平滑概率进行「随机」置零。在Transformer中的应用:BERT、GPT、ViT等模型都采用GELU。相比ReLU,GELU在NLP任务上约提升0.5%~1%的精度。Swish/SiLU (x·σ(x))与GELU类似,也是当前广泛使用的激活函数。