全部文章

告别"炼丹":大模型训练其实是一枚三级火箭

很多人以为训练大模型就是喂数据、调参数、出结果。但工业界实际在做的事情,跟这个认知的距离,大概等于放烟花和发射火箭。本文用三级火箭的框架,拆解大模型训练的真正结构与壁垒。

/10 min read/Read in English

很多人以为训练大模型就是:喂数据 → 调参数 → 出结果。这个认知大概停留在2020年。

我以前也这么觉得。直到深入了解了工业界实际在做的事情之后,才发现:现在的大模型训练,跟我们在学校里跑一个 ResNet 的距离,大概等于放烟花和发射火箭的距离。数学原理可能一样,但工程维度完全是两个物种。

这篇文章想用一个反直觉的视角来重新解释大模型训练的本质:它不是一锅乱炖的炼丹,而是一枚精密分工的三级火箭。每一级的数学目标、数据策略、甚至失败模式都截然不同。而且最反直觉的一点是——你以为最重要的那个阶段(微调),恰恰是最不重要的。

第一级:Pre-training —— 暴力压缩整个互联网

这一级的任务非常粗暴:把海量文本的统计规律,压缩进模型的参数空间。数学上就是最小化 Negative Log-Likelihood(负对数似然),本质是一个信息压缩过程。

听起来很简单对吧?但工业界踩过的最痛的坑恰恰在这里。

数据不是越多越好,而是越到后面越敏感。 这就是所谓的长尾效应(Tail Effect)。在训练的最后阶段(退火/Annealing Phase),模型对数据质量的容忍度急剧降低。你前面喂了10万亿token的互联网垃圾它都能消化,但最后1%的脏数据就可能把收敛上限直接砸下来。所以 Pre-training 不是把数据一股脑 shuffle 进去就完事,它需要精心设计的课程表(Curriculum Learning)——先吃粗粮打底,后期切换到高质量精粮做冲刺。

而且在万卡规模下,你面对的甚至不是软件问题,而是物理学问题。Meta 训练 Llama 3 的时候,用了 16384 张 H100,在54天的预训练中经历了466次任务中断,其中419次是意外的,78%由硬件故障引起。平均每三小时崩一次。

其中有一种故障叫静默数据损坏(Silent Data Corruption):GPU算错了,但不报错。Loss 曲线看起来一切正常,但梯度精度已经在暗处崩坏。Google 在训练 Gemini 的时候也报告了类似的情况,大约每一两周就会发生一次 SDC 事件。

在万卡集群的规模下,单纯的软件错误已经退居其次,你面对的往往是纯粹的硬件和物理挑战。举个例子:宇宙中的高能粒子会随机干扰芯片,导致数据发生微小的错误(Bit 翻转);或者,当几万张显卡高度同步地执行庞大的计算任务时,瞬间飙升的功耗会导致整个机房的电压剧烈波动,进而引发大规模的服务器自动断电。

可以说,训练大模型不仅仅是个算法工程,它更像是一个极端的电力与散热工程。你花在维持系统物理稳定性上的精力和成本,往往比单纯购买计算卡还要高昂得多。

第二级:Mid-training —— 被论文忽略的真正关键

这是整个火箭里最被低估的一级。你在论文里几乎看不到这个词(直到2025年 Allen AI 的 OLMo 2 报告才给出了正式定义),但每家大厂都在做。

Mid-training 干两件事:

第一,扩展上下文窗口。 比如从 4K 拉到 128K。通常通过调整 RoPE 的基频(Base Frequency),配合长文本数据做退火来实现。这不是 Pre-training 能搞定的,因为长文本的分布跟短文本差异太大。

第二,注入强逻辑能力。 Code、Math 这些硬核能力,最佳注入窗口不是微调阶段,而是 Mid-training。因为它能在不破坏模型泛化流形(Generalization Manifold)的前提下,平滑地迁移数据分布。

通俗地说就是:在 Pre-training 之后模型的"世界观"已经基本成型了,Mid-training 是在这个世界观的框架内,把特定的"专业技能"灌进去。如果你等到微调阶段再灌,就像让一个已经毕业的成年人重新回炉学高等数学——不是不行,但事倍功半,而且容易把之前学的东西搞乱。

NVIDIA 最近的研究也验证了这一点:在预训练阶段就前置推理数据(reasoning data),比在后训练阶段才引入,能在专家级基准测试上领先多达19%。一旦错过了最佳窗口,后面再怎么补课都追不回来。

这就是为什么说 Mid-training 是"被忽略的关键"——它是连接"通用知识"和"专业能力"的桥梁,而大多数科普文章直接跳过了这一级。

第三级:Post-training —— 它学的不是知识,是"说话方式"

到了这一级,我们来到了大家最熟悉、讨论最多,但可能也是误解最深的阶段。

2023 年 Meta 的 LIMA 论文提出了一个大胆的假设,叫浅层对齐假说(Superficial Alignment Hypothesis):模型的知识几乎全部在预训练阶段学会了,后训练(SFT)学的只是回答的格式和风格——也就是"说话方式",而不是知识本身。

他们用 1000 条精心策划的数据微调了一个 650 亿参数的 LLaMA,结果在人类偏好评估中打败了用 RLHF 训练的 DaVinci003。一千条数据,打败了百万级标注。

后来 ICLR 2024 的研究更直接:对比 base 模型和 aligned 模型的 token 分布,发现两者在绝大多数位置上的排名几乎一模一样。分布偏移最大的 token 主要是风格性的词——"Hello"、"Thank"、"However"、"Remember"。

换句话说,SFT 不是在"教"模型,而是在"激活"模型已经知道的东西,告诉它该用哪种语气来呈现。模型早就会了,微调只是帮它挑了一件合适的衣服。

这也解释了为什么 SFT 如果做得太猛,反而会导致分布坍塌(Mode Collapse)——你把衣服改得太多,反而把里面的人也改变形了。所以现在业界的重点已经转向 RLHF(PPO/DPO),目标是精确地修剪生成概率分布的长尾:切掉有害的、低质的输出路径,同时尽量不动其他部分。

所以到底跟我有什么关系?

理解这个三级火箭的框架,不是为了让你去训练大模型。而是当你下次听到有人说"大模型就是暴力堆数据堆算力"的时候,你知道这个说法有多粗糙。

大模型训练的真正壁垒,早就不在 Transformer 架构本身。它在于:

  • 对数据分布和混合比例的精细操控(Data Curation)
  • 对万卡集群物理故障的工程对抗(System Reliability)
  • 对评估体系的严格独立性(Evaluation Rigor)

这是一场精密的系统工程战,不是一锅玄学炼丹。

知道火箭有几级,你才能判断哪些讨论是有价值的,哪些只是在聊发动机的颜色。