预训练-微调范式的双子星:BERT,GPT1
2017年transformer出世,利用注意力机制革新了nlp领域的基础模型架构。
2018年,基于transformer架构,gpt1和bert相继出世,引领了预训练-微调范式在nlp领域的确立,从此通用语言模型的大幕拉开。本文将讨论gpt1和bert的原理,比较分析两种预训练范式及启示。
GPT1
单向自左向右语言建模架构
gpt1采用了transformer的Decoder部分,只有位置编码部分和原始实现不同,将固定位置编码换成可训练的位置编码。
预训练任务
1 预训练目标:传统经典的语言模型目标函数,给定前文,最大化后一个词的概率。让模型正确预测下一个单词。
2 文本处理方式:仅在原始文本中添加开始和结束标识。
微调阶段
1 目标函数:是下游任务的目标函数+语言模型目标函数
作者解释额外的语言模型目标函数可以提高下游任务性能,但在随后的实验中表明,对于小数据集,这个额外目标函数并没有用,对较大数据集有用。
2 文本处理方式:任务特定的文本处理方式,添加分割符,根据不同任务类型拼接问题答案,句子对等
其他重要结论
gpt1的论文还有几点非常有意义的实验结论:
- 在同样的预训练任务设定下,transformer的效果好于lstm。这表明transformer更适合预训练-微调范式。
- 作者通过Zero-short实验证明了transformer在预训练后学到的表示确实有利于不微调便解决各类下游任务。
BERT
双向语言建模架构
gpt1的语言建模方式是单向,自左向右的,第n个词的特征由词1,词2…词n的表示融合得来。bert想要克服这点,对语言进行双向建模,及第n个词的特征由词1,词2…词n,词n+1,词n+1,词n+2…来融合表示。天然的,transfomer的编码器正好是双向语言建模源文本。bert在模型架构上选取transfomer的编码器部分。
预训练任务:mask+nsp
给定大规模文本,bert的预训练目标包括两部分:
1 遮蔽语言模型
随机遮挡输入文本中的部分词,让模型正确预测这些被遮挡的词。
2 下一句预测
随机从原始文本中采样两个句子,让模型正确预测第二个句子是不是第一个句子的下一句
3 文本处理方式:将句子对拼接为单个输入,添加cls,分隔符
微调阶段
1 目标函数:bert微调阶段的目标函数是下游任务的目标函数。
2 模型调整:由于bert的默认文本输入包括两个句子,因此在bert编码器的基础上加一些额外的网络层/向量来符合具体的语言任务
两种预训练范式的对比分析
方面 | GPT-1 | BERT |
---|---|---|
架构 | Transformer Decoder | Transformer Encoder |
建模方式 | 单向,自左向右 | 双向,整句上下文 |
预训练目标 | 语言建模(LM) | MLM + NSP |
微调策略 | 任务目标 + LM 目标 | 仅下游任务目标 |
虽然 GPT-1 和 BERT 的论文均报告了在若干下游任务上达到 SOTA(State-of-the-Art)效果,但二者在设计目标和应用场景上存在显著差异。
GPT-1 更侧重于语言生成和通用表征能力,通过自回归语言建模(Autoregressive Language Modeling)探索了预训练模型的迁移潜力。其对 Zero-shot 学习的早期尝试初步展现了“预训练即任务”的思想,即通过大规模预训练赋予模型广泛的语言理解和生成能力。这种通用性追求为后续 GPT 系列模型(如 GPT-2、GPT-3)的能力扩展和涌现奠定了基础。
BERT 则专注于提升各类 NLP 任务的性能,通过双向掩码语言建模(Masked Language Modeling, MLM)捕捉上下文依赖关系,显著提升了问答、分类、命名实体识别等任务的表现。BERT 通过设计任务适配的输入形式和微调策略,在多个基准任务(如 GLUE、SQuAD)中刷新 SOTA,引领了“预训练 + 微调”范式的普及。然而,MLM 与生成任务的范式不一致,使其在生成式语言建模浪潮中应用受限,难以直接支持开放域生成任务。尽管如此,BERT 的双向建模思想和工程化成功对后续模型(如 RoBERTa、ALBERT)及 NLP 应用产生了深远影响。
两种范式对后续发展的启示
虽然 GPT-1 和 BERT 均基于 Transformer 架构,但二者在模型设计和训练目标上的差异反映了技术路线的不同取向,深刻影响了 NLP 领域的发展。
GPT-1 的贡献在于提出了一种以自回归语言建模为核心的框架,强调通过单一目标(预测下一个 token)学习通用语言表示,并以最小的任务特化实现迁移学习。其“以生成为表征”的设计理念,不仅在工程上简洁,还为后续 GPT 系列模型的规模扩展、Zero-shot/Few-shot 学习以及指令调优(如 ChatGPT)奠定了基础。GPT-1 的自回归范式天然适合生成任务,适应了生成式 AI 浪潮的需求,成为大语言模型(LLM)发展的核心路径之一。
BERT 在 NLP 工程应用(如问答、分类、检索)中展现了高效能与稳定性,推动了“预训练 + 微调”范式的广泛采用。MLM 的双向建模使其在理解型任务中表现卓越,尤其在需要深层上下文理解的场景中。然而,MLM 与生成任务的训练-推理范式不一致,导致 BERT 在开放域生成任务中需要额外适配(如生成任务需结合自回归头),限制了其在生成式浪潮中的直接应用。尽管如此,BERT 的影响力依旧:其双向建模思想启发了众多优化模型(如 RoBERTa、DeBERTa),并在各类场景中持续发挥作用。BERT 的工程化成功还推动了预训练模型的标准化,促进了 NLP 生态的繁荣。