把大模型训练想成盖楼:预训练就是打地基那一步。地基不牢,后面微调、对齐做得再花哨,上限也早被锁死了。这一步的本质只有一件事——让模型在海量文本里反复「预测下一个词」,用亿万次试错换来对语言和世界常识的理解。本文把预训练做什么、为什么最烧钱、之后还要补哪几步一次讲清,最后单独说它做不到什么。
预训练在猜什么
预训练的训练信号极其朴素:给模型一段文字,让它预测下一个词。比如喂进去「今天天气很」,模型要猜后面是「好」还是「冷」还是「晴朗」。猜错了,就回头调整内部参数;猜对了,这套参数被保留。单个词无关紧要,关键是这个过程要重复天文数字般的次数。参数怎么一步步调优、模型怎么「知道自己错在哪」,属于训练算法的核心问题,可参考 什么是 EM 算法。
为什么「猜下一个词」能学到东西?因为语言高度有规律,一个词的前后文几乎锁定了它的可能取值。模型为了把「猜」做准,被迫学会语法、搭配、常识乃至部分事实。它并不知道「猫」是什么,但见过成千上万次「猫会……」「猫是……」,于是对「猫」的用法有了统计上的把握。这也是为什么预训练用的数据量要以 Token 为计量单位,量级动辄万亿。
为什么预训练最烧钱
预训练是整个大模型链路里投入最重的一环,重到后续所有环节加起来往往都比不上。第一,数据量大:预训练要吃掉数以万亿计的 token,来源横跨网页、书籍、代码、百科,清洗和去重本身就要消耗大量工程时间。第二,算力惊人:一次完整预训练通常要上千张加速卡连续运行数周到数月,中途一次故障或一次参数发散都可能让进度作废。第三,试错成本高:一个超参设错,可能要跑到很晚才暴露,而重跑的代价是再次支付同样的算力。
这也解释了行业里那句老话:预训练是「重资产」,微调和对齐是「轻加工」。想从零训一个模型的团队,先得算清这笔账,而不是先买显卡。
预训练之后还要走几步
一个只会「接话」的模型还不能用,它只会顺着上文续写,不会按指令回答问题。所以预训练之后通常还有两步。监督微调(SFT):用「问题—标准答案」成对样本,教模型把「续写」变成「回答」。对齐训练:再让人类对多个回答做偏好比较,用反馈信号把模型往「符合人类期待」的方向拉。三步走完,才是一个能对话的助手。真要把它用起来,推理阶段还会先经历一次 预填充,这和训练是两回事,别混。
| 环节 | 喂进去的数据 | 训练目标 | 主要代价 |
|---|---|---|---|
| 预训练 | 海量无标注文本 | 预测下一个词,学语言与常识 | 算力与数据,成本最高 |
| 监督微调 | 问题—标准答案对 | 学会按指令回答 | 人工标注成本 |
| 对齐训练 | 人类偏好对比反馈 | 让回答符合人的偏好与规范 | 反馈与评审成本 |
预训练解决不了的事
预训练的边界要单独说清,它不等于万能底子。第一,它学的是「统计上的常见」,不是「事实上的为真」:语料里占多数的说法会被放大,冷门但正确的说法可能被淹没。第二,它无法确保时效:训练数据有截止点,之后发生的事它不知道,除非靠检索或后续更新补上。第三,它不区分对错与好恶:模型会说一句「流畅但错误」的话,因为流畅度是它被训练的,对错不是。
换句话说,底子再好也有三类问题它兜不住:事实更新、价值判断、需要外部工具的实时任务。遇到这三类,别指望「预训练过」就自动解决。
一个流传很广的误解
很多人以为「预训练=学知识,微调=学技能」。这个说法方便但不准确。更接近的表述是:预训练给了模型「理解语言与世界」的底子,微调和对齐教它「按人类期待的方式表达」。底子决定上限,后面的调教决定它能不能把底子用出来。底子不行,调得再多也是在一个低上限上反复。
普通人该怎么用这个理解
记住两个能直接带走的判断。第一,看到「参数规模更大」的宣传,别自动等同于「更好用」——规模和底子质量是两回事。第二,判断一个模型好不好,别只看它能不能背事实,要看它在你的真实任务里稳不稳。如果你考虑的是本地跑模型而非从零训练,可以先了解 本地部署大模型是什么意思。
判断一个模型底子好不好的三个速查点
- 问事实:它会不会把流畅的错话当成答案?
- 问时效:它对截止点之后的事是否老实说「不知道」?
- 问表达:它是否按你的指令来,而不是自顾自续写?


