【超全干货】BERT模型深度解析,一文让你彻底理解大模型的核心架构
BERT)全称是“基于编码器架构的双向自编码模型”,是一种基于[]架构的预训练语言模型。自2018年由谷歌提出以来,便在自然语言处理(NLP)领域掀起了一场革命。它凭借独特的架构与训练方式,成为了众多NLP任务的首选模型,深刻改变了我们理解和应用语言的方式。自回归模型、自编码模型和序列到序列模型的区别:自回归:仅包含解码器。类似于“读小说”,例如GPT模型;自编码: 仅包含编码器。类似于“做完形填
BERT是基于Transformer架构的双向预训练语言模型,突破了传统单向模型的局限。其"预训练+微调"范式大大降低了标注数据需求。BERT采用MLM和NSP两种预训练任务,通过双向编码机制同时考虑上下文信息,能够处理句对分类、单句分类、问答和标注等多种NLP任务,显著提升了语言理解的深度和广度,推动了NLP领域的快速发展。
1、概述
BERT(Bidirectional Encoder Representations from Transformers)全称是“基于Transformer编码器架构的双向自编码模型”,是一种基于[Transformer]架构的预训练语言模型。自 2018年由谷歌提出以来,便在自然语言处理(NLP)领域掀起了一场革命。它凭借独特的架构与训练方式,成为了众多 NLP任务的首选模型,深刻改变了我们理解和应用语言的方式。

自回归模型、自编码模型和序列到序列模型的区别:
自回归:仅包含解码器。 类似于“读小说”,例如GPT模型;
自编码: 仅包含编码器。类似于“做完形填空”,例如ELMo、Bert模型;
序列到序列模型:包含编码器和解码器。例如Transform模型。
1.1、突破传统语言模型局限
在 BERT出现之前,语言模型大多基于单向的序列处理方式,如循环神经网络(RNN)及其变体长短期记忆网络(LSTM)和门控循环单元(GRU),它们只能从前向后或从后向前理解文本,无法同时捕捉单词的左右上下文信息。而 BERT采用双向 Transformer架构,能够同时考虑句子中每个单词的前后文,极大地丰富了语义理解的深度和广度。
1.2、预训练与微调范式的创新
BERT开创了“预训练 + 微调”的新范式,为 NLP任务的高效解决提供了通用框架。它先在海量无监督文本数据上进行预训练,学习通用的语言知识和语义模式,然后针对具体任务进行微调,只需少量标注数据即可实现任务特定的优化。这种范式大大减少了对大规模标注数据的依赖,降低了任务开发成本,同时提升了模型在不同任务上的泛化能力。以情感分析为例,以往需要大量标注的情感文本进行训练,现在只需在预训练好的 BERT模型基础上微调,即可快速构建高精度的情感分析模型。
1.3、推动 NLP 领域的快速发展
BERT的出现为 NLP领域带来了质的飞跃,它在多项基准测试中取得了前所未有的成绩,如在GLUE(General Language Understanding Evaluation)基准测试中刷新了多项任务的最高分,几乎在所有任务上都超越了以往的最佳模型。成功激发了学术界和工业界对预训练语言模型的深入研究和广泛应用,促使更多基于BERT的变体和改进模型不断涌现,如RoBERTa、ALBERT等,进一步推动了NLP技术的创新和发展,使机器对语言的理解和生成能力迈向了新的高度。
2、模型介绍
2.1、模型架构
BERT是一种基于Transformer架构的模型,且只包含Encoder模块,由多个Encoder block模块堆叠而成。其架构如下图所示。

从上图左侧,我们可以看到BERT包含三种模块:
- 最底层⻩⾊标记的
Embedding模块。 - 中间层蓝⾊标记的
Transformer模块。 - 最上层绿⾊标记的预[
微调]模块。
上图右侧是Encoder block的内部模块图。图中蓝色模块被画成了两层,这表示BERT模型中堆叠了多个Transformer编码器块。每个编码器块都包含自注意力机制(Self-Attention Mechanism)和前馈神经网络(Feed-Forward Neural Network),以及层归一化(Layer Normalization)和残差连接(Residual Connections)。
BERT模型有两种规模:Base版和Large版。其中,Base版包含12层Transformer编码器,隐藏层大小为768,自注意力头数为12,总参数量约为1.1亿;Large版则包含24层Transformer编码器,隐藏层大小为1024,自注意力头数为16,总参数量约为3.4亿。
BASE版:L = 12,H = 768,A = 12,总参数量为 1.1 亿;LARGE版:L = 24,H = 1024,A = 16,总参数量为 3.4 亿。
2.2、单向编码与双向编码
2.2.1 单向编码
单向编码指的是在编码过程中,模型只能利用到当前位置之前的文本信息(或只能利用到当前位置之后的文本信息,但这种情况较少见),而无法同时利用到当前位置前后的文本信息。单向的LSTM或早期的Transformer变体,往往只能单向处理文本序列,即从左到右或从右到左。这种单向处理方式限制了模型对上下文信息的全面捕捉,尤其是在处理需要同时考虑前后文信息的任务时,如词义消歧、情感分析等,单向模型的表现往往不尽如人意。这种编码方式使得模型在处理文本时具有一种“前瞻性”或“回顾性”,但缺乏全局的上下文理解能力。
GPT是一个典型的采用单向编码的预训练语言模型。GPT使用Transformer的解码器部分作为其主要结构,通过自回归的方式进行训练,即模型在生成下一个词时只能看到之前的词,无法看到之后的词。
2.2.2 双向编码
双向编码则允许模型在编码过程中同时利用到当前位置前后的文本信息,从而能够更全面地理解文本的上下文。这种编码方式使得模型在处理文本时具有更强的语义理解能力和更丰富的信息来源。
BERT是一个典型的采用双向编码的预训练语言模型。BERT通过掩码语言模型(MLM)的方式进行训练,即随机掩盖文本中的部分词汇,然后让模型预测这些被掩盖的词汇。
举个例子:考虑一个文本序列“今天天气很好,我们决定去公园散步。”
- 在单向编码中,每个词或标记的编码仅依赖于其之前的词或标记。因此,在编码“决定”这个词时,模型只会考虑“今天”、“天气”、“很好”和“我们”这些在它之前的词。
- 在双向编码中,每个词或标记的编码都会同时考虑其前后的词或标记。因此,在编码“决定”这个词时,模型会同时考虑“今天”、“天气”、“很好”以及之后的“去公园散步”等词,从而更全面地理解整个句子的语义。

2.3、Embedding模块

BERT的输入Embedding模块由三部分组成:
Token Embeddings:输入文本中的每个单词或字符转换为一个固定维度的向量。Base版为768维,Large版为1024维。Position Embeddings:单词或字符在句子中的位置信息。BERT中的位置嵌入是可学习的,它会随着模型的训练而更新,非固定的三角函数。Segment Embeddings:用于区分同一输入序列中不同句子的来源。对于多句输入,BERT会为每个句子分配一个不同的段编号,来区分它们。Segment Embeddings的取值通常是0和1,如果输入包含两个句子,通常第一个句子的token会被赋予全0的向量,第二个句子的token会被赋予全1的向量。下图是一个示例。

2.4、预训练
BERT的预训练过程主要包括两个阶段:Masked Language Model(MLM)和Next Sentence Prediction(NSP)。

2.4.1、Masked Language Model (MLM)
Masked Language Model,即遮蔽语言模型,是BERT预训练的一个重要部分。在这一阶段,模型的任务是预测输入句子中被随机遮蔽(masked)掉的部分单词。
- 输入文本处理:首先,对于输入的句子,随机选择句子中15%的单词进行遮蔽。对于每个被选中的单词,有80%的概率直接用[
MASK]标记替换,10%的概率用随机的一个单词替换(这有助于模型学习理解上下文的重要性,而不仅仅是依赖于[MASK]标记),剩下的10%则保持不变(这有助于模型在微调阶段更好地处理未遮蔽的单词)。 - 模型预测:模型的目标是根据上下文预测这些被遮蔽单词的原始值。这种机制促使BERT能够深入理解文本中的语义关系。

我们来看一个例子,假设有一句话:my dog is hairy
(1)80%的时候是[MASK]。如,my dog is hairy—>my dog is [MASK]
(2)10%的时候是随机的其他token。如,my dog is hairy—>my dog is apple
(3)10%的时候是原来的token。如,my dog is hairy—>my dog is hairy
这三种情况中,第一种情况即最基本的掩码语言模型,希望模型能够学会利用上下文来预测出正确的词;第二种情况可用于增强模型的鲁棒性;第三种情况则是为了减少预训练和微调、推理等后续使用场景之间的差别,因为在微调、推理等场景中输入是完整的,不可能出现[MASK] 这种特殊符号,但我们仍希望模型能够对没有掩码的词计算出很好的向量表示。
2.4.2、Next Sentence Prediction (NSP)
Next Sentence Prediction,即下一句预测,是BERT预训练的另一个重要部分,旨在提高模型对句子间关系的理解能力。
- 句子对生成:在预训练时,模型不仅接收单个句子作为输入,还接收句子对。这些句子对可能是连续的(即真实的下一句),也可能是随机组合的(即非连续的)。
- 模型预测:对于每个句子对,模型需要预测第二个句子是否是第一个句子的真实下一句。这是一个简单的二分类任务,输出是一个[0, 1]范围内的值,表示第二个句子是第一个句子真实下一句的概率。
连续句对:[CLS]今天天气很糟糕[SEP]下午的体育课取消了[SEP]随机句对:[CLS]今天天气很糟糕[SEP]鱼快被烤焦啦[SEP]
其中 [SEP] 标签表示分隔符。 [CLS] 表示标签用于类别预测,结果为 1,表示输入为连续句对;结果为 0,表示输入为随机句对。
通过训练 [CLS] 编码后的输出标签,BERT 可以学会捕捉两个输入句对的文本语义。
注:在BERT的后续版本中,Next Sentence Prediction(NSP)任务被废弃了。因为研究人员发现这个任务对下游任务的性能提升有限,因此在BERT的一些后续变体中被弃用了。
2.5、微调
根据自然语言处理(NLP)下游任务输入和输出形式的不同,微调任务可以分为四类,分别是句对分类、单句分类、文本问答和单句标注,如下图所示。

2.5.1、句对分类任务
- 任务描述:句对分类任务涉及两个句子的输入,并需要模型判断这两个句子之间的关系或情感倾向等。
- 应用场景:例如,自然语言推断(NLI)任务,需要判断一个句子是否可以从另一个句子推断出来;或者语义文本相似性(STS)任务,需要评估两个句子的语义相似度。
如下图所示,句对分类的处理过程为:

- 输入处理:将两个句子(句对)作为输入,在两个句子之间添加特殊的分隔符[SEP],并在开头添加开始符[CLS],在末尾添加结束符[EOS]。[CLS]标记的输出表示将被用作句对分类的输入特征。
- 模型微调:在预训练的BERT模型基础上,添加一个全连接层作为输出层,用于句对分类任务。
- 特征提取:利用BERT编码器提取的句对表示,结合注意力机制等技术,捕捉两个句子之间的关系和交互信息,用于句对分类。
举例说明:下面有两个句子,我们要判断句子2是否是句子1的合理后续,即句子间的逻辑关系,如蕴含、中立、矛盾等。在这个例子中,可以视为一个蕴含关系,因为好天气通常适合户外运动。
句子1: “今天的天气真好。”
句子2: “适合去户外运动。”
BERT处理:将两个句子用[SEP]分隔,并在开头添加[CLS]标记,然后输入到BERT模型中。模型输出[CLS]标记的表示,用于句对关系的分类。
[CLS] 今天的天气真好。 [SEP] 适合去户外运动。 [SEP]
模型输出标签:entailment(蕴含)
注:实际的模型输出是一个概率分布,如[0.85, 0.1, 0.05],分别对应蕴含、中立、矛盾的概率,这里为了简化只给出了最可能的标签。
2.5.2、单句分类任务
- 任务描述:单句分类任务是将单个句子作为输入,并输出该句子的类别或情感倾向。
- 应用场景:如情感分析(判断文本是正面、负面还是中性)、垃圾邮件检测(判断邮件是否为垃圾邮件)等。
如下图所示,单句分类的处理过程为:

- 输入处理:将单个句子作为输入,添加开始符[CLS]。
- 模型微调:与句对分类类似,在预训练的BERT模型基础上添加一个全连接层作为输出层,用于单句分类任务。通过微调整个模型来优化分类性能。
- 特征提取:利用BERT编码器提取的单个句子表示,捕捉句子中的语义信息,用于单句分类。
举例说明:下面的句子,我们将句子分类为正面情感或负面情感。在这个例子中,句子表达的是正面情感。
句子: “这部电影非常精彩!”
BERT处理:将句子作为输入,添加[CLS]标记,然后输入到BERT模型中。模型输出一个或多个类别的概率分布,选择概率最高的类别作为分类结果。
[CLS] 这部电影非常精彩!
输出概率分布:[0.95, 0.05],其中第一个值对应正面情感的概率,第二个值对应负面情感的概率。
2.5.3、文本问答任务
- 任务描述:文本问答任务涉及一个问题和一段文本(如文章或段落),模型需要从文本中找出问题的答案。
- 应用场景:如机器阅读理解(MRC),自动问答系统(FAQ)等。
如下图所示,文本回答的处理过程为:

- 输入处理:将问题和相关文档或段落作为输入,使用特殊的分隔符[SEP]将问题和文档分隔开。
- 答案抽取:BERT模型通过编码器部分提取问题和文档的表示,然后可以结合指针网络等机制来定位答案在文档中的位置。在某些情况下,可能需要在BERT模型的基础上添加额外的层(如两个指针层)来指示答案的起始和结束位置。
- 微调任务:针对问答任务进行微调,优化模型在定位答案位置方面的性能。
举例说明:下方的问题,我们从文档中找出问题的答案。在这个例子中,答案是"北京不是省份"。
问题: “北京是中国的哪个省份?”
文档: “北京是中国的首都,位于华北地区,不是省份。”
BERT处理:将问题和文档分别作为输入,然后输入到BERT模型中。模型输出包括两个指针,用于指示答案在文档中的位置。
问题:[CLS] 北京是中国的哪个省份? [SEP]
文档:[CLS] 北京是中国的首都,位于华北地区,不是省份。 [SEP]
模型输出:
- 起始索引:(在文档中的位置,假设从0开始) 23
- 结束索引:(同样,假设从0开始) 25
注:这里的索引只是示意性的,实际输出可能依赖于文档的预处理和编码方式。
2.5.4、单句标注任务
- 任务描述:单句标注任务是对句子中的每个词或子词进行标注,如命名实体识别(NER)、词性标注(POS Tagging)等。
- 应用场景:在信息抽取、文本分析等领域有广泛应用。
如下图所示,单句标注的处理过程为:

- 输入处理:将单个句子作为输入,不需要特殊的分隔符,但可能需要对句子进行分词处理以符合BERT的输入要求。
- 序列标注:将单句标注视为序列标注任务,其中句子中的每个单词或子词都被分配一个标签。BERT模型通过编码器部分提取句子的表示,然后结合序列标注层(如CRF层或softmax层)来为每个单词或子词分配标签。
- 微调模型:在BERT模型的基础上添加一个序列标注层,并通过微调来优化标注性能。微调过程中,模型会学习如何将句子的表示映射到对应的标签序列上。
3、总结
BERT模型架构以其独特的双向编码器结构和预训练机制,在自然语言处理领域展现出显著的特点与优势。其核心在于通过大规模无监督预训练,捕捉语言中的深层语义信息,使得模型在处理各类自然语言任务时,能够更准确地理解文本的上下文含义,进而提升任务处理的精准度与效率。
BERT模型的优势体现在多个方面。其一,双向编码机制使得模型能够同时考虑文本的左右上下文,突破了传统单向模型的信息局限,从而在语义理解上更为全面和深入。其二,预训练加微调的范式极大地降低了模型对于特定任务标注数据的依赖,使得模型能够在少量标注数据下快速适应新任务,提高了模型的泛化能力和应用灵活性。
在自然语言处理领域,BERT模型的应用前景极为广阔。从文本分类、情感分析到问答系统,BERT均展现出强大的性能提升潜力。随着模型架构的不断优化和计算资源的日益丰富,BERT模型有望在更多复杂、高精度的自然语言处理任务中发挥关键作用,推动整个领域向更高层次的智能化发展。同时,BERT模型的成功也为后续研究提供了宝贵的思路与启示,引领自然语言处理技术迈向新的发展阶段。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线科技企业深耕十二载,见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事,早已在效率与薪资上形成代际优势,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我们整理出这套 AI 大模型突围资料包:
- ✅ 从零到一的 AI 学习路径图
- ✅ 大模型调优实战手册(附医疗/金融等大厂真实案例)
- ✅ 百度/阿里专家闭门录播课
- ✅ 大模型当下最新行业报告
- ✅ 真实大厂面试真题
- ✅ 2025 最新岗位需求图谱
所有资料 ⚡️ ,朋友们如果有需要 《AI大模型入门+进阶学习资源包》,下方扫码获取~
① 全套AI大模型应用开发视频教程
(包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点)
② 大模型系统化学习路线
作为学习AI大模型技术的新手,方向至关重要。 正确的学习路线可以为你节省时间,少走弯路;方向不对,努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划,带你从零基础入门到精通!
③ 大模型学习书籍&文档
学习AI大模型离不开书籍文档,我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。
④ AI大模型最新行业报告
2025最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。
⑤ 大模型项目实战&配套源码
学以致用,在项目实战中检验和巩固你所学到的知识,同时为你找工作就业和职业发展打下坚实的基础。
⑥ 大模型大厂面试真题
面试不仅是技术的较量,更需要充分的准备。在你已经掌握了大模型技术之后,就需要开始准备面试,我精心整理了一份大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

以上资料如何领取?

为什么大家都在学大模型?
最近科技巨头英特尔宣布裁员2万人,传统岗位不断缩减,但AI相关技术岗疯狂扩招,有3-5年经验,大厂薪资就能给到50K*20薪!

不出1年,“有AI项目经验”将成为投递简历的门槛。
风口之下,与其像“温水煮青蛙”一样坐等被行业淘汰,不如先人一步,掌握AI大模型原理+应用技术+项目实操经验,“顺风”翻盘!

这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。

以上全套大模型资料如何领取?

更多推荐



所有评论(0)