“hidden act“:“gelu“在bert中作用

在 BERT 中,"hidden_act": "gelu" 表示隐藏层(如前馈网络中的激活函数)使用的是 GELU(Gaussian Error Linear Unit) 激活函数。


一、GELU 激活函数是什么?

GELU(Gaussian Error Linear Unit)是一个非线性激活函数,它的数学定义如下:

其中 Φ(x)\Phi(x)Φ(x) 是标准正态分布的累积分布函数(CDF):

BERT 实际中使用的是一个近似形式:


二、GELU 的作用与优势

GELU 主要用于 Transformer 中的 前馈网络层(Feedforward Layer),具体在 BERT 的实现里,它出现在以下位置:

python 复制代码
# 假设这是 transformer 的一层
x = Linear1(hidden_states)
x = GELU(x)
x = Linear2(x)
相较于 ReLU 的优势:
激活函数 是否平滑 是否零点处连续 对负数的处理方式
ReLU 不连续 直接置 0
GELU 连续 以概率方式缩放

GELU 的"以概率方式决定激活强度"的方式,能够保留部分负值信息,使得信息流更平滑,更利于深层网络的训练。


三、在 BERT 中使用 GELU 的原因

  1. 提升模型表现:GELU 提供更细腻的非线性表达能力,实验表明 BERT 使用 GELU 比 ReLU 效果更好。

  2. 连续性和平滑性:避免 ReLU 的硬剪断问题,有助于梯度稳定传播。

  3. 更自然的概率解释:它模拟了"保留输入的概率是基于其大小"的机制,这在自然语言建模任务中非常有用。


四、总结

  • "hidden_act": "gelu" 是 BERT 中用于前馈子层的激活函数设置。

  • GELU 是一种比 ReLU 更平滑的激活函数,能更好地捕捉输入的非线性关系。

  • BERT 使用 GELU 是为了提高训练稳定性和模型效果,是其架构中一个关键的小改进点。

相关推荐
李昊哲小课6 分钟前
OpenCV Haar级联分类器人脸检测完整教程
人工智能·opencv·计算机视觉
hit56实验室6 分钟前
【易经系列】用六:利永贞。
人工智能
星爷AG I11 分钟前
9-22 目标跟踪(AGI基础理论)
人工智能·agi
m0_6038887113 分钟前
FineInstructions Scaling Synthetic Instructions to Pre-Training Scale
人工智能·深度学习·机器学习·ai·论文速览
新缸中之脑17 分钟前
RAG 陷阱:向量搜索不是语义理解
人工智能
EmmaXLZHONG22 分钟前
Reinforce Learning Concept Flow Chart (强化学习概念流程图)
人工智能·深度学习·机器学习·流程图
薛定谔的猫198224 分钟前
十三.调用 BERT 中文文本情感分析交互式推理模型训练好的
人工智能·深度学习·bert
home_49827 分钟前
与gemini关于宇宙观科幻对话
人工智能
Candice Can27 分钟前
【机器学习】吴恩达机器学习Lecture2-Linear regression with one variable
人工智能·机器学习·线性回归·吴恩达机器学习
undsky_32 分钟前
【RuoYi-SpringBoot3-Pro】:将 AI 编程融入传统 java 开发
java·人工智能·spring boot·ai·ai编程