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

相关推荐
神奇夜光杯5 分钟前
Python酷库之旅-第三方库Pandas(202)
开发语言·人工智能·python·excel·pandas·标准库及第三方库·学习与成长
正义的彬彬侠8 分钟前
《XGBoost算法的原理推导》12-14决策树复杂度的正则化项 公式解析
人工智能·决策树·机器学习·集成学习·boosting·xgboost
Debroon18 分钟前
RuleAlign 规则对齐框架:将医生的诊断规则形式化并注入模型,无需额外人工标注的自动对齐方法
人工智能
羊小猪~~24 分钟前
神经网络基础--什么是正向传播??什么是方向传播??
人工智能·pytorch·python·深度学习·神经网络·算法·机器学习
AI小杨26 分钟前
【车道线检测】一、传统车道线检测:基于霍夫变换的车道线检测史诗级详细教程
人工智能·opencv·计算机视觉·霍夫变换·车道线检测
晨曦_子画30 分钟前
编程语言之战:AI 之后的 Kotlin 与 Java
android·java·开发语言·人工智能·kotlin
道可云32 分钟前
道可云人工智能&元宇宙每日资讯|2024国际虚拟现实创新大会将在青岛举办
大数据·人工智能·3d·机器人·ar·vr
人工智能培训咨询叶梓41 分钟前
探索开放资源上指令微调语言模型的现状
人工智能·语言模型·自然语言处理·性能优化·调优·大模型微调·指令微调
zzZ_CMing41 分钟前
大语言模型训练的全过程:预训练、微调、RLHF
人工智能·自然语言处理·aigc
newxtc42 分钟前
【旷视科技-注册/登录安全分析报告】
人工智能·科技·安全·ddddocr