BERT 家族:双向编码器的威力、Masked LM 与下游微调

📂 所属阶段:第四阶段 — 预训练模型与迁移学习(应用篇)
🔗 相关章节:Transformer 完整架构 · Hugging Face 实战


1. BERT 的核心创新

1.1 BERT vs GPT 的区别

GPT(单向):从左到右生成 → 只能看到之前的词
  "我爱[NLP]" → 预测 [NLP]
  → 缺少右上下文信息

BERT(双向):左右双向理解 → 看到完整上下文
  "我爱[NLP]" → 同时看"我爱"和"技术"
  → 更强的语言理解能力!

核心:BERT = Encoder-only,GPT = Decoder-only

1.2 预训练任务

BERT 预训练两个任务:

任务一:Masked Language Model (MLM)
  随机遮盖 15% 的词,让模型预测被遮住的词
  输入:"我[MASK]自然语言处理"
  目标:预测 = "爱"

任务二:Next Sentence Prediction (NSP)
  判断句子 B 是否紧跟句子 A
  A: "今天天气很好"
  B: "我决定去爬山" → IsNext ✓
  B: "昨天吃了火锅" → NotNext ✗
"""

2. BERT 的下游任务

"""
BERT 的下游任务通过微调(Fine-tuning)实现:

文本分类:
  [CLS] 今天心情不错 [SEP] → Linear → 正面

命名实体识别:
  [CLS] 小明在北京 [SEP] → 每个词 → NER标签

问答系统:
  [CLS] 问题 [SEP] 上下文 [SEP] → start + end 位置

优势:只需加一个输出层,全模型微调
"""

3. BERT 变体

模型参数量特点改进
BERT-base110M经典基线12层,768维
BERT-large340M更大更强24层,1024维
ALBERT12M/235M轻量化参数共享、AWP
RoBERTa125M优化训练去掉NSP、更多数据
DistilBERT66M蒸馏压缩快40%,小60%
TinyBERT14M极致压缩用于边缘部署

4. ALBERT 的参数共享

"""
ALBERT 的核心创新:跨层参数共享

BERT:12 层,每层独立参数
ALBERT:12 层,共享同一套参数
→ 参数量减少 9 倍,但性能仅略微下降

第二个创新:句子顺序预测(SOP)替代 NSP
"""

5. 小结

BERT 家族:

核心思想:双向理解 + 预训练 + 微调
预训练:MLM(遮盖预测)+ NSP(句子关系)
下游:文本分类、NER、问答、文本生成

2026 年主流:直接用 Hugging Face Transformers 加载预训练模型
"""

💡 记住:BERT 的核心贡献是证明了"预训练+微调"范式的有效性,以及双向 Transformer 的强大表示能力。


🔗 扩展阅读