大模型工程化 · 可视化讲解

大模型预训练
Pre-training 到底是什么

你可能听过"预训练 + 微调",但预训练才是那块最贵、最重的地基—— 它在海量文本上"从零练起",让模型先学会语言与常识。下面从定义、与微调的区别、工作原理到它产出的"基座模型",全程图解。

第 1 步 · 定义

什么是预训练?

一句话:在海量无标注文本上,用"预测下一个词"这种自监督任务,从零(或随机初始化)训练出一个具备通用语言与世界知识的模型。产物叫基座模型 / 基础模型(Base Model)

自监督学习
不需要人工标注。文本自己就是"答案"——把一句话遮住后半截,让模型预测被遮住的词。数据海量且免费。
下一个词预测
现代 LLM 主流目标:给定前面的词,预测"最可能出现的下一个词"。反复练习,模型就学会了语法、事实、逻辑。
输入:"今天天气真" 模型要预测 → "好" ("好"其实就写在原文里,不需要人标) 模型输出概率分布 好 35% · 冷 2% · 热 1% · … 选概率最高的词作为"预测"
图 1:预训练的核心游戏——"完形填空 / 续写"。语料自己提供监督信号,无需人工标注
预训练练出来的基座模型还不会"听话":你问它问题,它往往只是接着你的话往下"续写",而不是回答。这就是为什么后面还需要 SFT 和 RL。
第 2 步 · 与微调的区别(重点)

预训练 ≠ 微调,差在哪?

一个形象比喻:预训练是"上大学通识课"——学通用能力;微调是"岗前培训"——学某个岗位的具体活儿。二者数据量、目标、成本天差地别。

预训练 Pre-training · 数据:TB 级互联网文本(万亿 token) · 标签:无(自监督,文本自己当答案) · 目标:学会语言 + 世界知识 · 成本:数千 GPU、数月、千万级美元 微调 Fine-tuning · 数据:千~万条带标注样本 · 标签:有(指令-回答对) · 目标:适配某任务 / 风格 / 领域 · 成本:几张~几十张卡、数小时~天 在预训练 权重上继续
图 2:预训练是"通才制造机"(重、贵、通用),微调是"专家加工站"(轻、便宜、专用)

一表看清区别

维度预训练 Pre-training微调 Fine-tuning
出发点随机初始化 / 从头在预训练权重之上
数据规模万亿级 token(海量)千~万级样本(小批)
是否需标注否(自监督)是(人工标注)
训练目标预测下一个词按任务答对 / 模仿示范
算力成本极高(千卡·月)低(几卡·天)
产出基座模型(Base)领域/任务模型
谁来做大厂 / 研究机构个人 / 中小企业也能做
记住一句话:没有预训练,就没有可以微调的模型。预训练把"可能性"造出来,微调把"可用性"打磨出来。两者是上下游,不是二选一。
第 3 步 · 工作原理(重点)

预训练是怎么"炼"出来的?

本质仍是神经网络训练那套老循环,只是规模大到极致。整个流程可以拆成六步:

① 收集数据 网页/书/代码 ② 清洗分词 Tokenization ③ 前向预测 预测下一词 ④ 算损失 交叉熵 ⑤ 反向更新 θ ← θ−η∇
图 3:预训练六步流水线(数据 → 分词 → 预测 → 损失 → 更新,循环海量次)

① 数据:海量且多样

来源包括网页(Common Crawl)、书籍、维基、代码仓库(GitHub)、论文等。关键是去重、去毒、去隐私,再混合成万亿 token 的语料。数据质量直接决定模型上限。

② 分词:把文字切成 Token

模型"看不懂"汉字或字母,只能处理数字。先用 BPE / WordPiece 等算法把文本切成词片(Token),再映射成 ID 喂进网络。中文通常 1–2 字一个 Token,英文一个词约 1–3 个 Token。

③ 核心:Transformer 预测下一词

切好的 Token 序列送进 Transformer(一堆堆叠的注意力层)。模型根据前面所有词,输出"下一个词"的概率分布,取最可能那个。

损失 L = − log P( 真实下一词 | 前面的词 )   (交叉熵,越小越好)

④ 反向传播 + 优化器

算出损失后,反向传播求梯度,Adam / AdamW 优化器据此更新全部参数 θ。这一步在数千张 GPU 上并行,对海量数据反复多轮(epoch),直到模型"续写"能力收敛。

Transformer 多层注意力 预测下一词 "好" 概率最高 ↑ 被遮住的词即监督标签 输出分布与真实词比 → 算损失 → 反向更新全部参数
图 4:一次前向——模型根据上下文预测被遮住的"真",再用它当标签算损失、更新权重
参数量越大(如 7B / 70B / 万亿),需要的数据和算力越多;但也会"涌现"出小模型没有的能力(见下一节)。
第 4 步 · 为什么这么贵

预训练的三座大山 & 涌现能力

预训练之所以"天价",卡在三个要素;而规模的量变,会换来能力的质变。

① 数据 Data
万亿 token 清洗对齐。数据多样性与质量,比单纯堆量更关键。
② 算力 Compute
数千张 H100 级 GPU、连续训练数月,电费与硬件成本以千万美元计。
③ 算法 Arch
Transformer 架构 + 高效并行(数据/流水线/张量并行)+ 稳定训练技巧。

规模带来"涌现能力"(Emergence)

当模型与数据规模跨过某道门槛,会突然"冒出"小模型完全没有的能力:少样本学习、链式推理、代码生成、跨语言迁移……这就是"大力出奇迹"。

损失↓ 规模 → 涌现① 涌现② 小模型:只会基础续写 大模型:推理/代码/少样本
图 5:随规模增大,损失平滑下降,但能力在门槛处"突变"式涌现
Scaling Law(缩放定律):在固定计算预算下,模型参数量、数据量、算力之间存在可预测的权衡关系——这也是大厂敢"堆量"的理论依据。
第 5 步 · 预训练之后

预训练产出什么?完整生命周期

预训练只产出"基座模型"。要让它真正好用,后面还要接 SFTRL。三阶段合起来,才是今天你用的对话大模型。

① 预训练 → 基座模型(Base) ② SFT 监督微调 → 指令模型(Instruct) ③ RL / RLHF → 对齐模型(Chat) 预训练打底 → 微调定形 → RL 对齐,三者依次叠加
图 6:从预训练到可用模型的完整生命周期,预训练是第一步、也是地基
基座模型(Base)
只会"续写",不直接回答。是后续所有微调/RL 的起点,相当于"毛坯房"。
对话模型(Chat)
经 SFT + RL 后,能听懂指令、安全礼貌、答得 human-like。即你日常用的成品。
开源社区常把"基座模型"开源(如 Llama-3-70B-Base),把"微调/对齐"留给使用者。这也解释了为什么预训练是少数人的游戏,微调是多数人的舞台
收尾 · 一句话带走

所以,预训练到底是什么

预训练 = 在海量无标注文本上,用"预测下一个词"的自监督任务,从零练出一个通用基座模型。 它解决的是"模型从哪来"——先把语言规律和世界知识"装进"数百亿参数里, 产物叫 Base Model。它和微调是上下游关系预训练造"通才"(贵、海量、无标注),微调把通才调成"专家"(便宜、小批、有标注), 之后通常还要接 SFT + RL 才能变成好用的对话模型。 一句话:预训练是地基,微调是装修,RL 是软装——少了哪块,房子都不算真正能住