BERT系列模型

下面是关于 BERT、GPT、ELMo 模型的深入介绍,包括结构、训练方式、特点、对比分析和各自的系列模型。这些内容覆盖了 NLP 中主流预训练模型的精髓,适用于学习迁移学习、上下游任务建模以及理解 Transformer 架构演进。


一、BERT 模型深度介绍(Bidirectional Encoder Representations from Transformers)

1. 核心思想

BERT 是一种 双向 Transformer 编码器结构,通过"掩码语言模型(MLM)"和"下一句预测(NSP)"的任务进行预训练,目标是捕捉词语的上下文依赖关系。

2. 结构组成

  • 输入表示:

    • Token Embeddings(分词)

    • Segment Embeddings(句子对表示)

    • Position Embeddings(位置编码)

  • 模型结构:

    • 使用纯 Transformer Encoder 堆叠(如 BERT-base 是 12 层)

    • 输出为每个 token 的上下文表示(也称 contextual embedding)

  • 预训练任务:

    1. Masked Language Model(MLM)

      随机 mask 掉输入中 15% 的 token,模型预测被遮盖的词。

    2. Next Sentence Prediction(NSP)

      给定句子 A,预测句子 B 是否是 A 的下一句。

3. 输入示例

css 复制代码
[CLS] 我喜欢自然语言处理 [SEP] 你呢? [SEP]

二、BERT 模型的特点

  • 双向编码:BERT 同时考虑左上下文和右上下文,是"深层双向"的语言模型。

  • 预训练 + 微调范式:训练好一个 BERT 后可迁移到任意下游任务,只需添加简单的任务头。

  • 强大的迁移性能:在情感分析、NER、QA 等任务中都达到 SOTA 表现。

  • 输入格式灵活:支持单句输入或句对输入。

  • 使用的是 Transformer Encoder(而非 Decoder)结构。


三、GPT 模型介绍(Generative Pre-trained Transformer)

1. 核心思想

GPT(OpenAI)是基于 Transformer Decoder 堆叠结构的单向语言模型 ,主要用于文本生成任务,采用经典的 自回归训练方式(Autoregressive LM)。

2. 结构组成

  • 使用 Transformer Decoder 架构,只关注左侧上下文

  • 训练目标:预测下一个 token(Language Modeling)

  • 无 NSP 或掩码任务,单纯基于最大似然训练

3. 发展路线

  • GPT-1:首次将预训练语言模型迁移到下游任务

  • GPT-2:大幅增加参数规模(1.5B),用于开放文本生成

  • GPT-3:参数达 175B,支持少样本学习(few-shot)与零样本学习(zero-shot)

  • GPT-4:多模态、推理能力更强,目前广泛商用


四、BERT 与 GPT 模型对比

对比维度 BERT GPT
模型结构 Transformer Encoder(双向) Transformer Decoder(单向)
上下文建模 双向(Masked) 单向(左到右)
预训练任务 MLM + NSP 自回归语言建模(LM)
应用方向 分类、QA、NER、语义理解任务 文本生成、续写、对话生成等
微调方式 增加任务头并 fine-tune 全模型 Prompt/Fine-tune/Few-shot 多种方式
生成能力 弱 强

五、BERT 系列模型介绍(BERT Family)

以下是 BERT 系列模型中主流改进版本:

  1. RoBERTa

    • 去掉了 NSP,使用更大批量、更大语料、更长训练

    • 被认为是对 BERT 的纯粹增强版

  2. ALBERT

    • 参数共享 + 分解 embedding 矩阵,模型更小

    • 适合资源受限部署

  3. DistilBERT

    • 蒸馏版 BERT,仅 6 层,训练速度更快,精度损失小

    • 用于轻量级部署

  4. TinyBERT / MobileBERT

    • 面向移动设备优化,适合边缘端应用
  5. SpanBERT

    • 替换 MLM 为 span mask,提升抽取类任务效果(如 NER、关系抽取)
  6. ERNIE(百度)

    • 加入实体、句法知识,构建语义增强预训练模型
  7. ChineseBERT / MacBERT(中文领域)

    • 结合拼音、字形、语法知识优化中文建模能力

六、ELMo 模型介绍(Embeddings from Language Models)

1. 概述

ELMo 是一种基于双向 LSTM 的上下文词向量模型,在 BERT 之前一度成为 NLP 领域的突破性成果。

2. 架构

  • 基于双向语言模型(BiLM):

    • 正向:从左到右建模

    • 反向:从右到左建模

  • 通过合并 LSTM 各层隐状态得到最终词向量

3. 特点

  • 上下文感知:同一个词在不同句子中会生成不同向量

  • 动态表示:支持下游任务微调

  • 参数较小,适合中等规模数据集

4. 与 BERT 对比

对比维度 ELMo BERT
网络结构 双向 LSTM Transformer Encoder
上下文建模 独立建模前向与后向 深度双向建模
输出方式 多层 LSTM 的线性组合 Transformer 每层的输出
性能 明显优于静态词向量 全面优于 ELMo

总结

模型 架构 上下文建模方式 预训练任务 应用方向
BERT Transformer Encoder 双向 MLM + NSP 分类、抽取、QA
RoBERTa Encoder(改进) 双向 MLM 全面增强版 BERT
GPT Transformer Decoder 单向 自回归 LM 文本生成、对话
ELMo BiLSTM 双向(分开) 双向语言建模 词向量、下游特征提取
相关推荐
朱涛的自习室5 小时前
70 美金的 Beyond Compare,我让 Gemini 4 和 DeepSeek 造个开源免费版(Day 2)
android·前端·人工智能
米小虾6 小时前
上下文:Agent 的眼睛里到底装着什么
人工智能·agent
米小虾6 小时前
Agent = 大脑 + 眼睛 + 手脚:一篇看懂现代 AI Agent 的骨架
人工智能
小小测试开发6 小时前
安全评测得分 0.9556 掉到 0.3257,只改了 top_k 和 prompt_style 之外的题面比例
人工智能·安全·prompt
slacker-kian6 小时前
[实践]-用LLM对文本结构化:把多段文本描述变成规范的 JSON 知识库
人工智能·llm·prompt·结构化·pydantic·one-shot 提示
品牌常新7 小时前
景区巡逻机器人怎么选?派宝S5全地形守护解析
运维·人工智能·机器人
冬奇Lab7 小时前
LLM 驱动的自动化测试系列(13):Flaky Test 不是重跑几次就能解决的分类问题
人工智能·测试
血小溅7 小时前
当交付不再带来增长,医疗产品如何借 AI 持续进化?
人工智能
幻灭行度7 小时前
基于昇腾 910B NPU 部署 SenseVoiceSmall 语音识别服务
人工智能·语音识别