了解 GELU 激活函数如何增强 GPT-4 等变压器模型,提高梯度流、稳定性和效率。
GELU(高斯误差线性单元)是现代神经网络,尤其是变压器架构中常用的一种激活函数。由丹-亨德里克斯(Dan Hendrycks)和凯文-金佩尔(Kevin Gimpel)在论文《高斯误差线性单元(GELUs)》中提出,其目的是结合 dropout、zoneout 和ReLU(整流线性单元)的特性来提高模型性能。ReLU 会急剧截断负值,而 GELU 则不同,它根据输入值的大小而非符号加权,从而提供更平滑的曲线。
GELU 函数根据输入值对输入进行调节,从而有效决定是否 "激活 "神经元。它将输入乘以应用于该输入的标准高斯累积分布函数(CDF)的值。直观地说,这意味着离零较远的输入(包括正输入和负输入)更有可能被保留,而离零较近的输入被清零的几率更高。这种概率方法引入了一种随机正则化形式,类似于剔除,但由输入值本身决定,从而产生了一种非线性函数,可以捕捉数据中更复杂的模式。
与更简单的激活函数相比,GELU 具有更多优势,因此被最先进的模型所采用:
由于其强大的经验性能,GELU 已成为许多高级深度学习模型的热门选择:
该函数能够提供平滑的非线性,并将输入大小纳入激活决策,因此在训练深度网络时非常有效。虽然它的计算量比 ReLU 稍大,但它的性能优势往往能证明在大规模模型中使用它是正确的。 PyTorch和 TensorFlow.