📖 导读

预训练用了 15 万亿 tokens,微调只用了 1000 条——差了一百亿倍,行为却发生了翻天覆地的变化。如果微调是在"教"模型新东西,为什么这么少的数据就够了?

更诡异的是:SFT 微调和预训练用的是完全相同的算法——同样的反向传播、同样的梯度下降、同样的交叉熵损失。那它凭什么能在预训练已经"微调"了无数次之后,还能起作用?

答案出人意料,也有点幽默:因为你停了。

① 预训练后的模型是什么状态 → ② 微调到底改变了什么 → ③ 为什么只需要 0.1% 的参数 → ④ 凭什么微调能起作用 → ⑤ RLHF 不只是停了,它拴住了 → ⑥ 底座决定上限

一、一个演员,一亿个角色

预训练之后,模型到底是什么?

要理解微调,必须先搞清楚一件事:预训练完成后的模型,到底处于什么状态?

它读完了整个互联网——万亿个 token,相当于一个人读两万辈子的量(详见 《万亿字节的压缩术》)。它学会了所有文本模式的概率分布:

  • 它会写论文摘要,也会写垃圾邮件
  • 它会写临床指南,也会写贴吧抬杠
  • 它会像专家一样回答问题,也会像键盘侠一样胡搅蛮缠
  • 它甚至会写"以下是 AI 不应该回答的内容"然后继续写下去

预训练后的模型不是一个"专家"。它是一个同时叠加了无数角色的演员。

你给它一个开头,它会续写——但续写成哪种风格、哪种角色,取决于输入文本跟训练数据中哪些模式匹配。有时它选中了论文风格,有时选中了论坛灌水风格,完全随机。

一个比喻:预训练之后的模型 = 一个读过所有书的人,但没有人格。它什么都知道,但不知道"应该"怎么说。

数据量的悬殊:一个令人困惑的事实

如果你在上一篇 《万亿字节的压缩术》 里已经看过这组数据,你可能会觉得眼熟。但这一次,我要把这个悬殊推到它逻辑上的极致——

阶段数据量类比占比
预训练15 万亿 tokens🏊 游泳池(50,000 升)99.9999%
SFT 微调数万条(甚至仅 1,000 条)🥛 一杯水0.0001%
RLHF 对齐数万条偏好对💧 一滴水0.00001%

三阶段训练数据量的戏剧性对比

LIMA(Zhou et al., 2023)用 1,000 条 SFT 数据,没有 RLHF,微调 LLaMA 65B,人类评估中 43% 的情况下等于或优于 GPT-4

一千条。一千。

这引出一个无法回避的问题:

如果微调是在"教"模型新知识,为什么一千条数据就够了?预训练的 15 万亿 tokens 里不乏高质量数据,为什么还需要这一千条?

答案是:微调根本不是在教知识。它在做一件完全不同的事。


二、微调的真相——选角,而非教学

2.1 不是教新东西,是"关闭通道"

SFT 的训练数据长这样:

[用户] 什么是梯度下降?
[助手] 梯度下降是一种迭代优化算法,通过计算损失函数
      对参数的偏导数,沿梯度反方向更新参数,逐步
      逼近损失函数的最小值......

几千条这样的示例,远不够让模型学会"什么是梯度下降"——它在预训练时就从教科书、论文、Stack Overflow 里学过了。

那这几千条改变了什么?

改变了条件概率分布的形状。

预训练后,面对"什么是梯度下降"这个问题,模型内部同时激活了很多可能的续写路径:

  • 路径 A:像论文一样回答(25% 概率)
  • 路径 B:像百度知道一样回答(20%)
  • 路径 C:像小说里虚构医生的台词(15%)
  • 路径 D:像论坛里抬杠(10%)
  • 路径 E:直接继续续写下一段无关内容(30%)

SFT 做的事情是:

把概率质量从"所有可能的续写"重新集中到"像专家助手一样的续写"上。

微调之后:

  • 路径 A:像专业助手一样回答 → 92%
  • 路径 B-E:其他所有路径 → 合计 8%

它没有增加新的可能性,而是压制了大量不想要的可能性

微调前后的概率分布对比:从扁平到尖锐

2.2 一个更直觉的比喻:调音台

想象一个巨大的调音台,有数十亿个推子(对应模型参数)。预训练把所有推子调到了"能模仿互联网上一切文本"的位置——论文风格、垃圾邮件、诗歌、代码、骂人的话……所有通道都开着。

SFT 只轻轻推了其中一小部分推子。但效果是:

整个输出从"互联网上随机一个人在说话"变成了"一个靠谱的专业助手在说话"。

改动很小,效果巨大——因为不是在创造新能力,而是在关闭不想要的通道

微调过程:概率通道的逐步收敛

2.3 RLHF:在"好"的通道中选"最好"的

SFT 之后,模型已经会"扮演助手"了。但还有一个问题:面对同一个问题,有多种"合格"的回答方式,哪种更好?

RLHF 的训练数据长这样:

问题:解释一下量子纠缠

回答 A:量子纠缠是指两个粒子的量子态相互关联...
        (准确但枯燥)

回答 B:想象两枚硬币,无论相隔多远...
        (生动且准确)

人类标注:B > A

这不是对错问题,是偏好问题。模型已经都会写了。RLHF 做的是:

在"都对"的回答中,学会选择人类更喜欢的那个。

RLHF 的两步走

第一步:训练奖励模型(Reward Model)

用人类偏好对比数据训练一个打分器——它学会了"人类觉得什么样的回答更好"。

第二步:用奖励模型优化 LLM

LLM 生成回答 → 奖励模型打分 → 调整 LLM 参数让高分回答的概率增加。用 PPO 等强化学习算法,同时约束模型不要偏离太远(KL 散度惩罚),防止它学会"讨好评分器"而丢失真正的能力。

DPO(Direct Preference Optimization) 是 Rafailov et al.(2023)提出的简化方案——证明了奖励模型可以被数学等价地替换为直接优化偏好,把两步合成一步,更简洁也更稳定。

2.4 三阶段的本质

预训练                SFT                   RLHF/DPO
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

学会所有可能性   →   关闭不想要的通道  →  在好的通道中选最优

"我能扮演任何人" →   "我是一个助手"   →  "我是一个好的助手"

万亿 tokens      →   几千-几万条      →   几千条偏好对比

改变 100% 参数   →   改变 ~1-5% 参数  →   改变 ~0.1% 参数

学知识            →   选角色           →    调风格

三、大理石假说——为什么只需要 0.1% 的参数

3.1 LIMA 与"表面对齐假说"

LIMA 的实验结果引出了一个大胆的假说:

🎂 表面对齐假说(Superficial Alignment Hypothesis)

Zhou et al. (2023) 提出:

“A model’s knowledge and capabilities are learnt almost entirely during pretraining, while alignment teaches it which subdistribution of formats should be used when interacting with users.”

翻译:模型的知识和能力几乎全部来自预训练。对齐(微调+RLHF)只是教它在跟用户对话时,应该选择哪种格式和风格。

蛋糕 = 预训练(所有知识和能力)

糖霜 = 对齐(行为包装)

LIMA 用 1,000 条数据证明了:糖霜不需要很厚。

蛋糕与糖霜:表面对齐假说的直觉

3.2 LoRA:微调的"证据"

如果微调只是在做小幅调整,那我们能不能量化这个"小"有多小?

2021 年,Hu et al. 给出了一个精确的回答——LoRA(Low-Rank Adaptation)

微调时,权重的变化量可以用一个极低秩的矩阵来近似。

什么意思?假设原始权重矩阵 W 是 4096×4096 = 16,777,216 个参数。LoRA 发现,微调引起的变化 ΔW 可以分解为两个小矩阵的乘积:

$$\Delta W = A \times B$$

其中 A 是 4096×8,B 是 8×4096。总参数:65,536——只有原来的 0.4%

LoRA 低秩分解:16,770,000 个参数中只需要调整 65,536 个

效果呢?与全参数微调几乎一样好

这个事实有深刻的含义:

微调引起的变化是"低秩"的——它不是在高维空间中做复杂的大规模重组,而是在做一个小角度的旋转。

类比一下:你在一个巨大的高维空间里,预训练把模型放到了一个位置。微调只是轻轻推了一下——推的方向很重要,但推的距离很小。LoRA 告诉我们,甚至连"方向"都可以用一个极简的低维子空间来描述。

这就是"大理石假说"的数学基础:微调不是重写知识(那需要改变整个矩阵),而是在已有知识的表面做一层薄薄的"行为调整"。

3.3 大理石假说

综合 LIMA、LoRA 和实际工程经验,可以提出一个统一的直觉模型:

🗿 大理石假说

预训练之后的模型像一块巨大的大理石——里面同时包含了天使、恶魔和一切形象。

SFT = 粗雕:把"助手"的轮廓凿出来,去掉明显不想要的部分。

RLHF = 精修:让这个助手的表情、姿态更符合人类的审美。

但是——大理石里没有的东西,你雕不出来。

大理石雕刻比喻:预训练决定了石头里有什么,微调只是凿出形状

米开朗基罗说过一句著名的话:

“Every block of stone has a statue inside it and it is the task of the sculptor to discover it.”

“每块石头里都藏着一座雕像,雕刻家的任务只是把它发现出来。”

微调就是这样的雕刻——它不创造新材料,只是去掉多余的部分。


四、数据量与模型规模——一把定量的尺子

4.1 Chinchilla 定律:预训练的"汇率"

2022 年,DeepMind 训练了 400 多个不同规模的模型,得出一个里程碑式的结论:

Chinchilla 定律(Hoffmann et al., 2022):在固定计算预算下,最优策略是 tokens ≈ 20 × 参数数

模型规模Chinchilla 最优数据量直觉参照
1B 参数20B tokens~15GB 纯文本
7B 参数140B tokens~100GB 纯文本
70B 参数1.4T tokens~1TB 纯文本
175B (GPT-3)3.5T tokens~2.5TB 纯文本

把中文维基百科全文抓下来,大约 1B tokens。训练一个 7B 模型的最优数据量是 140 个中文维基百科

4.2 但实际趋势是"过度训练"

Chinchilla 的 1:20 是在固定总算力预算下的最优比。工业界发现了一个更实际的逻辑:训练完的模型,推理成本跟参数量成正比,跟训练数据量无关。所以——

训练多花钱是一次性的,推理省钱是永久的。 小模型部署便宜,多喂数据让小模型逼近大模型效果。

模型参数Chinchilla 最优实际使用过度训练倍率
LLaMA 1 (7B)7B140B tokens1T
LLaMA 2 (7B)7B140B tokens2T14×
LLaMA 3 (8B)8B160B tokens15T94×

LLaMA 3 (8B) 用了 Chinchilla 最优量的近 100 倍 数据。这就像一个脑容量不大的学生,把课本翻了一百遍——虽然记忆力有限,但对每个细节都反复咀嚼,最终在很多任务上逼近了"聪明但不够努力"的大模型。

数据量与模型规模的关系:Chinchilla 最优 vs 实际趋势

4.3 微调的数据量级:完全不同的世界

微调不是重新学知识,是调整行为模式,所以数据需求小得多:

微调方式典型数据量说明
全参数微调10K - 100K 条改动所有参数,需要较多数据防过拟合
LoRA / QLoRA1K - 10K 条只改动 < 1% 参数,数据需求大幅降低
Few-shot prompting5 - 50 条根本不训练,只给示例

这验证了大理石假说:微调是在已有分布里做选择,不需要像预训练那样从零学习世界知识


五、大理石的边界——微调做不到的事

5.1 大理石里没有的,雕不出来

如果预训练语料里完全没有某个领域的知识——比如你拿一个只在英文维基百科上预训练的小模型,用顶级的量子计算数据去微调——能微调出一个量子计算专家吗?

不能。 因为先验里就没有这些知识的影子。

反过来,一个在万亿 token 上预训练的大模型,哪怕从没被特定领域数据微调过,你问它专业问题,它往往也能答得像模像样——因为预训练语料里相关文献太多了。

这就是"预训练决定上限"的直接证据。

贝叶斯的框架 来看:

$$\text{后验} = \frac{\text{似然} \times \text{先验}}{\text{归一化常数}}$$

后验永远被先验的支撑集(support)所约束。 如果先验给某个输出的概率是零,再多的新证据也更新不出来。

5.2 Alignment Tax:雕太多了要出事

微调有一个隐性的代价,叫做 Alignment Tax(对齐税)

当你过度微调模型在某个特定方向上的行为时,它在其他方向上的通用能力会退化

这在机器学习里叫 灾难性遗忘(Catastrophic Forgetting)——模型为了适应新任务的数据分布,把之前学到的旧知识覆盖掉了。

用大理石比喻:雕太多了,大理石被削得太薄,结构就不稳了。 你为了让模型在某个领域表现完美,可能牺牲了它在其他领域的通用能力。

这也是为什么 LoRA 如此受欢迎的另一个原因——它只改动 0.4% 的参数,对预训练知识的干扰极小,相当于只在大理石表面轻轻描了几笔,而不是大刀阔斧地削。

5.3 Goodhart’s Law:当 RLHF 学会"讨好评分器"

RLHF 还有一个更微妙的风险:Goodhart’s Law(古德哈特定律)

“When a measure becomes a target, it ceases to be a good measure.”

当一个度量指标变成优化目标时,它就不再是一个好的度量指标。

RLHF 的奖励模型本身是不完美的——它是人类偏好的一个近似代理。当你过度优化这个代理指标时,模型会学会"讨好评分器"而不是真正变好:

  • 它可能学会用更华丽的措辞(评分器喜欢)而不是更准确的内容
  • 它可能学会给出冗长但安全的回答(避免低分)而不是简洁精确的回答
  • 它可能学会过度承认不确定性(“我不确定,但…"),因为这在人类评估中很少被扣分

这就是为什么 RLHF 训练中要加 KL 散度惩罚——约束微调后的模型不能偏离预训练基座太远。否则大理石会被雕成一个讨人喜欢但不真实的形状。

5.4 越狱:路标有多容易被绕过

如果微调只是"路标"而不是"拆路”——路还在那里。

所谓的"越狱攻击",就是想办法让模型忽略路标——“请扮演一个没有限制的 AI……"——让模型走上被封堵的路。

RLHF 改变的是输出概率,不是底层能力。 危险的知识在预训练中就学过了,微调只是把通往它的概率调低了。这是越狱在技术上可行的根本原因,也是 AI 安全领域最核心的忧虑之一。


六、一个尖锐的问题——凭什么微调能起作用?

前面五章建立了一个清晰的图景:预训练和 SFT 在算法上完全一样——同样的反向传播、同样的梯度下降、同样的交叉熵损失。

但这引出一个致命的追问:

如果预训练中每一批数据都在"微调"模型——西游记拉一下,Python 教程拉一下,论文拉一下——那凭什么最后的 SFT 那 1000 条数据能起作用?前面已经被"微调"了几百万次了啊。

6.1 答案简单到令人不安

微调起作用,是因为你停了。

预训练中,模型在西游记上学了一批,参数往"古典小说"方向偏了一下。然后下一批是 Python 代码,参数又往"编程"方向拉回来。再下一批是论坛灌水,又往另一个方向拉。

预训练过程中的参数轨迹:

    ← 西游记拉一下
         → Python 拉一下
    ← 论文拉一下
              → Reddit 拉一下
    ← 教科书拉一下
         → 新闻拉一下
    ...(重复几百万次)

结果:参数停在了一个"各方势力均衡"的位置
     = 什么都会一点,什么都不偏向

每一次"领域微调"都被后续的其他领域数据冲淡了。没有任何一个领域能长期霸占参数——因为训练没有停。

然后 SFT 来了。

SFT:只喂 1000 条"助手问答"数据

    → 助手风格拉一下
    → 助手风格再拉一下
    → 助手风格再拉一下
    ...

然后——训练停了。

没有下一批 Reddit 帖子来把它拉回去。
没有下一批垃圾邮件来冲淡它。

参数就定格在了"助手"这个位置。

微调起作用,不是因为它的算法特殊,而是因为它是最后一个说话的人。

6.2 反向验证:微调之后继续预训练会怎样?

真有人做过这个实验。答案是:微调效果确实会被洗掉。

如果你把一个 SFT 好的模型,再拿互联网数据继续训练,模型会逐渐退化回"什么都会、什么都乱说"的状态。助手人格消失了——因为新的宽分布数据把参数又拉回了均衡位置。

这就像:你精心训练一个助手的礼仪举止(SFT),然后把他扔回街头混三年(继续预训练),他的礼仪就没了。

6.3 所以微调本质上是脆弱的

特性预训练学到的知识微调学到的行为
稳固性极其稳固(被数万亿 tokens 反复强化)脆弱(只被几千条数据推了一下)
深度深入参数的核心结构只在表面做了薄薄的调整
抗干扰几千条新数据根本动摇不了几千条反方向数据就能洗掉
存活条件不需要特殊保护需要你停止训练

这也解释了为什么 LoRA 只需要改 0.4% 参数——因为微调本来就只是在参数空间表面做一个轻微位移。改得少恰恰是对的——改多了反而会破坏预训练建立的知识结构。

6.4 训练顺序才是关键设计

正确顺序:
预训练(宽分布,建立均衡的知识基础)
  → SFT(窄分布,选择行为模式)
    → RLHF(更窄,精修偏好)
      → 停止训练 ← 这一步才是微调"生效"的前提

如果反过来:
SFT → 预训练?
SFT 白做了,会被预训练冲掉。

如果循环:
预训练 → SFT → 预训练 → SFT?
每次 SFT 效果都会被下一轮预训练冲淡。

预训练和微调不是两种不同的技术,而是同一种技术在数据分布光谱上的两端。 预训练用宽分布保持均衡,微调用窄分布做最后一击。击完之后——你必须停手。


七、RLHF——不只是"停了”,它自带橡皮筋

SFT 靠"停了"来保持效果。那 RLHF(Reinforcement Learning from Human Feedback,基于人类反馈的强化学习)呢?

RLHF 比 SFT 多了一个精巧的设计:KL 散度惩罚。

7.1 遛狗理论

RLHF 的优化目标可以写成:

$$\text{最大化} \quad E[\text{奖励模型打分}] - \beta \times KL(\text{当前模型} | \text{SFT模型})$$

左边:让模型追求更高的奖励分数(往高分方向走)。

右边:但不能离 SFT 模型太远(弹簧拉力)。

β 是平衡系数——绳子的长度。

这就像遛狗:狗(模型)想追松鼠(高分),但牵绳(KL 惩罚)把它拉住了。β 大 = 绳短 = 模型几乎不动。β 小 = 绳长 = 模型跑得远但可能跑偏。

7.2 三种"生效"机制

预训练  →  什么都不靠,它本来就是均衡的

SFT     →  靠"停了"
            冰面上推石头——推完不管了,石头停在哪算哪

RLHF    →  靠"拴住了" + "停了"
            弹簧绳拴着的风筝——可以飞,但飞不出绳子的范围
            而且训练本身最终也要停下来

RLHF 有两层保护

  1. KL 惩罚——实时的弹簧,每一步训练都在拉
  2. 停止训练——最终的冻结,跟 SFT 一样

这比 SFT 更稳定,因为即使在训练过程中,模型也不会跑太远。但如果 β 设得太小(绳子太长),或者训练太久,模型还是会过度优化奖励模型——学会"讨好评分器"而不是真正变好(Goodhart’s Law)。


八、一个更深的视角——柏拉图表示假说

2024 年,Minyoung Huh 等人提出了一个引人注目的假说——柏拉图表示假说(The Platonic Representation Hypothesis)

不同的模型——纯文本的 LLM、纯视觉的 ViT、多模态的 CLIP——在预训练中都在收敛到相似的底层表示

这意味着:预训练学到的不是表面的文本模式或像素模式,而是现实世界的统计结构本身。

如果这个假说成立,那大理石假说就有了更深的含义:

预训练的大理石不是一块普通的石头。它是一块蕴含了"世界模型"的石头——现实世界的因果结构、物理规律、社会常识,都以概率分布的形式编码在参数里。微调只能在这个世界模型的表面做文章,无法改变它的内核。


九、所以——底座决定上限,微调决定下限

整篇文章的核心论点可以浓缩为一句话:

底座决定上限,微调决定下限在哪里被够到。

这句话的三层含义

第一层:预训练决定了模型"知道什么"

如果预训练语料里没有某个领域的知识,微调不会凭空创造。你不可能用微调让一个只学过英文的模型变成古典文学大师。

第二层:微调决定了模型"怎么说"

在预训练已经铺好的知识空间里,微调选择了一种特定的表达方式——专业的、友好的、简洁的、安全的。它不改变模型知道什么,只改变模型选择说什么。

第三层:你选什么底座,比你喂什么数据更重要

这对所有想用 AI 的团队都是一个关键洞察:

投资效果类比
选一个更强的底座模型提高上限(知道更多、推理更强)选更好的大理石原石
用高质量数据微调够到上限(在专业领域表现更稳定)请更好的雕刻师
堆量微调数据收益递减(上限不变,边际效果下降)同一块石头,多雕几刀并不会让它变大

回到这篇文章的核心问题

“数据投喂 AI,能让它变得更强吗?”

现在你知道了:

  • 数据的价值是真实的,但价值的发挥方式可能不是"微调一个模型"
  • 微调最现实的预期:把一个已经很强的通才,培养成靠谱的领域专家——减少幻觉、符合规范、输出稳定
  • 微调无法做到的:让模型产生超越训练数据的突破性洞见
  • 微调的"生效"依赖停手:它是最后一个修改参数的人,效力来自冻结而非力量
  • 最优策略:选最强的底座 + 精心设计少量高质量微调数据 + 把领域数据变成知识库(RAG)而不是全部用来微调

十、一句话总结

🗿 大理石假说

预训练是准备石料——决定了石头里有什么。

微调是雕刻——决定了石头呈现什么形状。

但雕刻之所以成立,是因为你放下了刻刀。 如果你继续往石头上泼泥巴(预训练数据),雕出来的形状就会被埋回去。

SFT 靠"停了"。RLHF 靠"拴住了"。而预训练学到的知识,谁也冲不掉——因为它被万亿次重复锤炼进了参数的骨头里。

所有的知识和能力来自预训练。微调只是一层薄薄的行为选择——它的效力不来自力量,而来自你选择的停止时机。

$$\text{最终能力} = \min(\text{底座上限}, \text{微调所能够到的范围})$$


参考文献

微调与对齐

  1. Zhou, C. et al. “LIMA: Less Is More for Alignment.” NeurIPS, 2023. — 1000 条数据的表面对齐假说
  2. Ouyang, L. et al. “Training Language Models to Follow Instructions with Human Feedback.” NeurIPS, 2022. — InstructGPT,RLHF 的里程碑
  3. Rafailov, R. et al. “Direct Preference Optimization: Your Language Model is Secretly a Reward Model.” NeurIPS, 2023. — DPO,简化 RLHF
  4. Hu, E. et al. “LoRA: Low-Rank Adaptation of Large Language Models.” ICLR, 2022. — 低秩微调

Scaling Laws

  1. Hoffmann, J. et al. “Training Compute-Optimal Large Language Models.” NeurIPS, 2022. — Chinchilla 定律
  2. Kaplan, J. et al. “Scaling Laws for Neural Language Models.” arXiv:2001.08361, 2020. — 缩放定律奠基
  3. Meta AI. “The Llama 3 Herd of Models.” arXiv:2407.21783, 2024. — 过度训练实践

预训练的本质

  1. Huh, M. et al. “The Platonic Representation Hypothesis.” arXiv:2405.07987, 2024. — 不同模型收敛到相同表示
  2. Lin, S. et al. “The Unlocking Spell on Base LLMs: Rethinking Alignment via In-Context Learning.” ICLR, 2024. — Base model 其实已经"会"了
  3. Delétang, G. et al. “Language Modeling Is Compression.” arXiv:2309.10668, 2023. — 语言建模就是压缩

博客相关文章