一句话定义
预训练是在大规模无标注语料上训练模型,目标通常是根据前文预测下一个 token。模型在这个过程中学会词法、句法、事实关联和一定的推理能力。
为什么叫「预」
它得到的只是一个基座模型:会续写、会补全,但不一定听话,也不知道什么是有用的回答。后续还需要 SFT 和偏好对齐,才能变成可用的助手。
关键要素
- 数据:网页、书籍、代码、论文等,规模常以万亿 token 计;清洗、去重和配比直接影响效果。训练时通常按固定上下文长度切样本,长文档会被截断或拼接;数据配比决定模型的能力分布。
- 目标:下一 token 预测,损失是交叉熵;每个位置都提供监督信号,因此是自监督学习。上下文窗口内的每个 token 都是训练样本。
- 规模:参数量、数据量和算力共同决定能力,通常遵循经验性的缩放规律。
- Tokenization:决定文本如何进入模型,也影响序列长度和训练成本。
成本与门槛
预训练需要大量 GPU、稳定的分布式训练系统和长时间的数据管线。一次完整预训练的成本通常远高于后续微调,因此多数团队选择在开源基座模型上继续训练或微调。
用在哪里
- 从零训练基座模型,或在开源模型上继续预训练以扩展知识/语言。
- 数据、算力和工程团队充足时;多数应用团队更适合直接微调现成基座。
常见误区
- 预训练不是「背下训练数据」,模型学到的是统计规律和表示,不是逐字索引。
- 预训练好不等于可以直接上线,指令跟随和安全性还需要对齐阶段。
- 数据越多不一定越好,质量和配比往往比单纯堆量更关键。
相关概念
- SFT:把基座模型变成指令跟随模型。
- Tokenization:预训练数据的切分方式。
- Transformer:主流预训练架构。