大模型微调(三):预训练和微调的成本差异
预训练和微调之间的区别不仅仅是概念上的,它在规模上是天文数字。
1. 预训练:构建宇宙
预训练是迄今为止最昂贵的阶段,模型的参数在进行特化之前,需要学习所有关于语言的知识。
对于 GPT-4 或 GPT-5 规模的模型,该过程可能涉及:
- 训练tokens:数千亿到数万亿。
- 计算:大约 10^{23}-10^{25} 次浮点运算 (FLOP)。
- 硬件:数千个高端 GPU 或 TPU(例如 NVIDIA A100/H100 集群)。
- 时间:数周到数月的持续训练。
- 成本:数百万美元到数千万美元,取决于基础设施和能源成本。
你可以把它想象成构建一个浩瀚的知识星球,绘制每一条曲线、每一座意义之山、每一座语法之谷。
2. 微调:培育花园
相比之下,微调的规模要小得多,它通常使用:
- 训练 tokens:数百万到数千万个。
- 计算:通常不到预训练所需计算量的 1%。
- 硬件:几十个 GPU 或 TPU。
- 时间:数小时到数天,而不是数周或数月。
- 成本:通常在数十到数千美元之间,具体取决于规模。
这就像建造一个星球和装饰一个花园的区别。
为什么差异如此巨大?
因为预训练从头开始教授一切:语法、推理、事实、结构。而微调只需要重塑这些知识,梯度更小,数据更清晰,目标也更明确。
假设:
- FLOPs 经验法则:每个参数每个 token(前向 + 后向)约 6 FLOPs。
- 微调数据集:1000 万个 token(一个规模合理、质量更高的指令数据集)。
- 预训练数据集:3 万亿个 token(用于大规模预训练运行)。
- GPU 有效吞吐量:250 TFLOP/s(类似 A100 的 GPU 的有效 FP16 混合精度吞吐量——保守估计)。
- GPU 成本:每 GPU 小时 3 美元(云租赁估算;因提供商/地区而异)。
微调的代价微不足道。针对 10M 个 token 微调一个 70B 模型约需 4.7 个 GPU 小时,成本约 14 美元(基于上述假设)。即使是 15B 模型,在此估算中也仅需 0.1 个 GPU 小时,在单个 GPU 上只需几分钟。
相比之下,预训练使一切相形见绌。使用相同的假设,在 3T 个 token 上预训练一个 70B 模型大约需要 160 个 GPU 年(即数万个 GPU 小时),成本高达数百万美元。这就是为什么预训练在大规模下只需进行一次,而微调相对便宜且可迭代的原因。
(仅供直观感受,计算过程太麻烦,需要写程序,略)

浙公网安备 33010602011771号