BERT架构简介

一、BERT模型架构

  BERT沿用原始Transformer模型中的编码器层,具有编码器的堆叠。但BERT没有使用解码器层,因此没有掩码多头注意力子层。(BERT的设计者认为,对序列后续部分进行掩码会阻碍注意力过程)。于是,BERT引入了双向注意力机制 ,即一个注意力头从左到右,另一个注意力头从右到左注意所有单词。

图1 BERT模型架构

二、BERT模型训练

  BERT的训练过程分为两项任务:掩码语言建模 (Masked Language Modeling,MLM)和下一句预测(Next Sentence Prediction, NSP)

2.1 掩码语言建模

  BERT对句子进行双向分析,随机对句子中的某一个单词进行随机掩码。

复制代码
原句:The cat sat on it because it was a nice rug.
Transformer:The cat sat on it <masked sequence>.
BERT:The cat sat on it [MASK] it was a nice rug.

  上述掩码过程只是一个注意力子层的效果,当使用多个注意力子层时,就可以看到整个序列,运行注意力过程,然后观测被掩码的词元。

2.2 下一句预测

  在这个过程中会添加两个新的词元:

  • CLS词元:二分类词元,添加到第一个句子的开头,用于预测第二个句子是否跟随第一个句子。

  • SEP词元:分隔符词元,添加到每个句子的结尾,用于分隔不同的句子。


图2 输入嵌入过程

2.3 总结

  • 使用WordPiece对句子进行词元化
  • 使用MASK词元随机替换句子中的单词
  • 在序列的开头插入CLS分类词元
  • 在序列的两个句子结尾插入SEP词元
  • 句子嵌入是在词嵌入的基础上添加的,因此句子A和句子B具有不同的嵌入值
  • 位置编码采用了可学习方法,而没有采用原始Transformer中的正弦-余弦位置编码方法

参考文献

1 丹尼斯·罗斯曼.《基于GPT-3、ChatGPT、GPT-4等Transformer架构的自然语言处理》 M. 北京: 清华大学出版社, 2024

相关推荐
记忆停留w7 分钟前
从单体到微服务:Redis 协同 MySQL、Milvus、MinIO 搭建企业级RAG/AI Agent脚手架架构
大数据·人工智能·redis·微服务·ai·架构·milvus
承受失20 分钟前
Cloud Agent 开发笔记(4):Skill 与 MCP 集成、项目后记
人工智能·prompt
进击的横打23 分钟前
【人工智能】AI基础知识(第七节:RAG)
人工智能
KaMeidebaby26 分钟前
卡梅德生物技术快报|抗体亲和力成熟工业化调控新机制:差异性浆细胞增殖工艺优化思路
java·开发语言·人工智能·算法·机器学习·架构·spark
OpenApi.cc1 小时前
猫狗分类模型 GPU版
pytorch·深度学习·分类
tmlx3I0811 小时前
高光谱拼接算法(六)RANSAC 误匹配剔除
人工智能·算法·机器学习
Mininglamp_27182 小时前
Claude Code 封禁中国开发者之后:本地 AI 编程工具的替代方案实测
开发语言·人工智能·windows·开源软件·ai-native
硅谷秋水2 小时前
World Engine:迈向自动驾驶的后训练时代
人工智能·深度学习·机器学习·计算机视觉·语言模型·自动驾驶
RobinDevNotes2 小时前
PentAGI:全自主 AI 渗透测试代理系统
人工智能
明理的信封2 小时前
AI 基础设施的“去 Python 化“:Rust 与 C# 的两条替代路径
人工智能·python·rust