“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 分钟前
【算法】动态规划实战:从入门到精通
人工智能
人工智能培训10 分钟前
大模型与传统小模型、传统NLP模型的核心差异解析
人工智能·深度学习·神经网络·机器学习·生成对抗网络
沪漂阿龙14 分钟前
面试题详解:智能客服 Agent 系统全栈拆解——Rasa Pro、对话管理、意图识别、GraphRAG、Qwen 与 RAG 优化实战
人工智能·架构
薛定猫AI33 分钟前
【深度解析】Gemini Omni 多模态生成与 Agent 化创作工作流:从视频编辑到 UI 生成的技术演进
人工智能·ui·音视频
羊羊小栈34 分钟前
AI赋能电力巡检:智能故障预警系统
人工智能·yolo·目标检测·毕业设计·大作业
Python私教39 分钟前
视觉 Agent 爬取 vs Playwright 脚本:Browser Use 2026 选型表
人工智能
Python私教42 分钟前
Crawlee StagehandCrawler:自然语言点 Load More 的工程化爬虫
人工智能
南屹川43 分钟前
【容器化】Docker实战:从入门到生产环境部署
人工智能
海蓝可知天湛1 小时前
Agent&IELTS雅思口语专属语料库
人工智能·github·rag·ielts·skills
随身数智备忘录1 小时前
什么是设备管理体系?设备管理体系包含哪些核心模块?
网络·数据库·人工智能