1
Transformer :大语言模型的雏形
前几篇文章中我们了解到Transformer 的架构包括编码器-解码器结构,基于多头注意力机制和前馈神经网络。以及了解了Transformer与deepseek的关联。在大模型的发展中,BERT和GPT作为其中浓墨重彩的一笔,也值得我们去了解。
Transformer 作为大语言模型(LLM)的核心架构,广泛应用于 BERT、GPT 和 DeepSeek。BERT 使用双向 Transformer 进行上下文理解,GPT 则专注于生成文本,DeepSeek 则通过混合专家(MoE)提升效率。
2
BERT:双向上下文理解的突破
BERT(双向编码器表示来自 Transformer)由 Google 于 2018 年推出 。它是基于 Transformer 编码器部分的模型,BERT使用了多层Transformer编码器堆叠在一起,每一层都包含多头自注意力机制和前馈神经网络。采用双向训练,意味着它同时考虑句子左右上下文。这种设计通过掩码语言建模(MLM)和下一句预测(NSP)进行预训练:
掩码语言建模:随机掩盖输入序列中的某些词,模型需基于上下文预测这些词。
下一句预测:判断两个句子是否连续,增强句子间关系的理解。
BERT的核心特点
BERT分三个主要模块:
最底层黄色标记的Embedding模块
中间层蓝色标记的Transformer模块
最上层绿色标记的预微调模块
Embedding模块
BERT中的该模块是由三种Embedding共同组成
图2. BERT的Embedding模块
1、Token Embeddings 是词嵌入张量, 第一个单词是CLS标志, 可以用于之后的分类任务
2、Segment Embeddings 是句子分段嵌入张量, Segment Embedding 帮助模型区分句子之间的关系
3、Position Embeddings 是位置编码张量, 和传统的Transformer不同, 不是三角函数计算的固定位置编码, 而是通过学习得出来的
BERT 的输入表示是通过将上述三种 Embedding 相加得到的。
双向上下文理解
BERT中只使用了经典Transformer架构中的Encoder部分, 完全舍弃了Decoder部分. 而两大预训练任务也集中体现在训练Transformer模块中。BERT采用双向编码器,能够同时考虑句子中每个单词的左右上下文信息,突破了传统单向语言模型的局限。
预训练与微调范式
1、预训练:BERT通过两个任务进行预训练:
遮蔽语言模型(Masked Language Model, MLM):随机遮蔽部分词汇,让模型预测被遮蔽的词。
下一句预测(Next Sentence Prediction, NSP):判断两个句子是否连续。
2、微调:在预训练基础上,使用特定任务的标注数据进行优化,适应下游任务。
预训练完成后,BERT 可通过添加少量任务特定层进行微调,适用于问答、情感分析、命名实体识别等任务。其双向特性使其在 11 项 NLP 任务上达到当时的最先进结果,例如 GLUE 分数提升至 80.5%(绝对提升 7.7%)。BERT 的成功标志着 Transformer 在理解型任务上的突破。
下图是如何对BERT模型进行微调(Fine-tuning)的示例。微调是指在预训练模型基础上,针对特定任务进行额外的训练,以提高模型在该任务上的表现。以下是对每个任务类别的详细解释:
图3. 不同自然语言处理任务中,如何对BERT模型进行微调(Fine-tuning)
(a) 句子对分类任务(Sentence Pair Classification Tasks)
在句子对分类任务中,模型的输入是成对的句子,任务是判断这两个句子之间的关系。例如:
MNLI (Multi-Genre Natural Language Inference): 这个任务涉及判断一个句子(前提)是否能推导出另一个句子(假设),并且有三种可能的关系:蕴含、矛盾和中立。
QQP (Quora Question Pairs): 该任务旨在判断两个问题是否具有相同的意思。
(b) 单句分类任务(Single Sentence Classification Tasks)
在单句分类任务中,模型的输入是单个句子,任务是对该句子进行分类。以下是一些常见的单句分类任务:
SST-2 (Stanford Sentiment Treebank): 该任务用于情感分析,模型需要判断句子的情感是积极还是消极。
CoLA (Corpus of Linguistic Acceptability): 该任务要求模型判断句子是否是语法上可接受的。
(c) 问答任务(Question Answering Tasks)
在问答任务中,模型需要根据给定的上下文回答问题。
SQuAD v1.1 (Stanford Question Answering Dataset): 该数据集包含一段文本和与之相关的问题,模型需要从文本中提取出答案。
(d) 单句标注任务(Single Sentence Tagging Tasks)
在单句标注任务中,模型对句子中的每个单词进行标注。以下是一个常见的单句标注任务:
CoNLL-2003 NER (Named Entity Recognition): 该任务涉及识别句子中的命名实体(如人名、地名、组织名等),并为每个实体分配一个标签。
如果说Transformer是超级英雄,那BERT就是由Google训练出的"神探"。它最厉害的地方在于:
- 能同时看懂句子前后的内容(双向理解)
- 玩得一手"填字游戏"(随机遮住某些词,让它猜)
- 擅长判断两个句子是否有关联举个例子:
"我喜欢吃苹果,因为它____甜。"普通AI可能需要从头读到尾才能猜出"很"字,而BERT可以立即联想到上下文,快速得出答案。
3
结语
BERT 的出现不仅革新了自然语言处理的技术范式,也深刻影响了人工智能领域的发展方向。通过双向上下文理解、创新的预训练任务设计以及灵活的微调机制,BERT 成功将 Transformer 架构推向了更广泛的应用场景。
从情感分析到问答系统,从命名实体识别到句子推理,BERT 展现出了强大的通用性和适应性,为后来的大规模语言模型奠定了基础。
可以说,BERT 不仅是一个技术突破,更是 NLP 领域的一座里程碑。它让我们看到,当模型能够真正“理解”语言时,AI 的潜力是无限的。尽管后来的 GPT、DeepSeek 等模型在生成能力或效率上进一步拓展了边界,但 BERT 的双向理解和预训练-微调范式依然是许多实际应用中的核心工具。
正如超级英雄各有所长,BERT 以它的独特方式,继续在语言理解的世界中发光发热,成为推动 AI 进步的重要力量。
电话: 400-166-0296
邮箱: contact@moonpac.com
地址: 上海市闵行区申长路990弄
虹桥汇 T6-805