跳到正文
AI 图鉴
04 自然语言处理与大模型进阶本域第 5 篇

预训练与微调

先用海量无标注文本学会语言,再用少量数据专精——这是现代 AI 最省数据的范式

定义

预训练是在海量无标注文本上,用自监督目标先训练一个通用模型;微调是在此基础上,用少量标注数据把模型适配到具体任务或领域。两者构成「先通识、后专精」的两阶段范式,把每个下游任务所需的数据量降低了若干个数量级。

直观理解

像培养一名医生:预训练相当于读完通识教育,学会语言、常识与推理;微调则是进入专科,用少量病例训练出特定专长。没有通识打底,专科要用的数据多到不现实;有了通识,少量病例就能见效——但只盯着专科病例反复练,也可能把通识忘掉。

图 1

三阶段训练栈:预训练建立通识,指令微调教会遵循,对齐塑造偏好——每一层都在前一层之上继续

层数越往下,数据越少、目标越具体;但每一层的效果都受底层预训练质量的上限约束。
图 2

规模定律:数据充足时损失随参数量呈幂律下降;一旦数据被用尽(固定 300B token 并重复训练),曲线提前拐平甚至回升

  • 数据充足(Chinchilla 最优配比)
  • 数据受限(固定 300B token 重复)

工作原理

  1. 01

    自监督目标:掩码 vs 自回归

    两种主流目标都从文本本身造标签:掩码语言建模(BERT)随机遮住部分词让模型还原,天然双向;自回归建模(GPT)则预测下一个词,天然单向。前者适合理解,后者适合生成,选择直接决定能力取向。

  2. 02

    规模定律

    实验发现,测试损失随模型参数量、数据量与算力呈平滑的幂律下降,跨越多个数量级依然成立。这把「要不要再训大一点」从赌博变成了外推——但幂律只描述趋势,收益递减与数据瓶颈仍需另作判断。

  3. 03

    高效微调:全量 vs LoRA vs 提示微调

    全量微调更新所有参数,效果上限高但显存与存储开销大,每个任务都要存一份完整权重。LoRA 冻结原模型,只在部分权重旁挂一对低秩矩阵,可训练参数常降到千分之一。提示微调则只学一小段可训练的「软提示」向量,改动最小但表达力也最受限。

  4. 04

    灾难性遗忘与缓解

    在新任务上继续训练,会让模型对旧任务的能力迅速退化,这叫灾难性遗忘。缓解手段包括混入通用数据、只更新少量参数(如 LoRA)、设置很小的学习率,以及只训练新增的适配器而不动主干。

关键公式

L(N, D) ≈ L∞ + a·N^(−α) + b·D^(−β)
规模的幂律形式:损失随参数量 N 与数据量 D 平滑下降,α、β 为各自的指数。它解释了为什么「堆规模」在一段时间内有效。

应用场景

  • 垂直领域适配:用少量行业文本把通用模型变成医疗、法律、金融专家
  • 指令微调:用「指令—回答」对让模型学会遵循格式与要求
  • 低成本多任务服务:为每个客户挂一份 LoRA,共用同一份基础权重
  • 继续预训练:在特定语言或领域语料上延长预训练,补齐覆盖短板

常见误区

  • 微调数据少而偏时,模型容易过拟合,并明显遗失通用能力。灾难性遗忘不是理论担忧,而是小数据微调的常见后果。
  • LoRA 省显存,但它与全量微调的目标并不等价。任务越偏离预训练分布、越需要大幅改变内部表示,LoRA 的差距就越明显。
  • 规模定律给出的是趋势而非保证。它不承诺「更大一定更好」,数据用尽、重复训练都会让曲线提前拐平甚至回升。

关键术语

自监督
从数据本身构造标签,无需人工标注
掩码语言建模
随机遮词再还原,双向目标
LoRA
低秩适配器,只训练极少量新增参数
灾难性遗忘
学新任务时旧能力迅速退化

延伸阅读