Each language version is independently generated for its own context, not a direct translation.
这篇论文讲的是 NVIDIA 如何给大型人工智能模型(LLM)“瘦身”和“加速”的故事。
想象一下,训练一个超级聪明的大语言模型(比如能写诗、写代码、做数学题的 AI),就像是在用巨大的卡车车队运送一座图书馆的书籍。
1. 背景:卡车太贵,路太堵
以前,为了训练这些模型,我们用的“卡车”(数据格式)是 FP8(8 位浮点数)。这就像是用重型卡车运书。虽然稳,但太占地方(内存大)、太耗油(算力消耗大)、速度也慢。
现在,NVIDIA 推出了新的 NVFP4 格式。这就像发明了一种超轻量的折叠自行车。
- 优势:同样的路,自行车能跑得快两倍到三倍,而且一次能运的“书”(数据)虽然单本变薄了,但整体效率极高,能省下一半的“油箱”(显存)。
- 挑战:自行车太轻了,如果路上遇到大石头(数据中的极端值/异常值),或者骑得太快,车子容易散架(模型训练不稳定,学不到东西)。
2. 核心问题:自行车怎么骑才不摔?
直接把书扔上自行车(直接量化到 4 位),书会散架,模型就学傻了。NVIDIA 的科学家发现,要让这辆“自行车”跑得稳,需要一套特殊的骑行技巧(训练方法论):
技巧一:给“关键路段”铺柏油路(混合精度)
并不是所有路都适合骑自行车。
- 比喻:模型里有些部分(比如最后的几层)非常精密,就像悬崖边的窄路。如果在这里骑自行车,稍微歪一点就掉下去了。
- 做法:NVIDIA 决定,90% 的路(大部分计算)都骑自行车(用 NVFP4),但在最后 10% 的关键路段(最后几层),我们暂时换回重型卡车(用高精度的 BF16 格式)。
- 效果:既保证了大部分路程的极速,又确保了在关键地方不会翻车。
技巧二:把“大石头”打碎(随机哈达玛变换)
数据里偶尔会出现几个特别大的数字(异常值),就像路上的大石头。在 4 位格式下,大石头会卡住车轮。
- 比喻:以前我们只能把大石头硬塞进小篮子,结果篮子破了。现在,NVIDIA 发明了一种魔法粉碎机(随机哈达玛变换)。
- 做法:在把数据装上车之前,先把这些大石头打碎,均匀地撒在整条路上,变成小石子。
- 效果:路变平了,自行车就能平稳地骑过去,不会因为某一点太重而翻车。
技巧三:前后轮要对齐(2D 块缩放)
骑自行车时,前轮和后轮如果转的方向不一样,车就会歪。
- 比喻:在训练过程中,模型要“看”一遍书(前向传播),然后“反思”哪里错了(反向传播)。如果“看”的时候和“反思”的时候,对同一本书的打包方式不一样,模型就会晕头转向,不知道该怎么改。
- 做法:NVIDIA 设计了一种2D 打包法(2D 块缩放),确保无论模型是“看”还是“反思”,数据的打包方式都完全一致。
- 效果:前后轮步调一致,模型学习路径清晰,不会迷路。
技巧四:偶尔“抛硬币”决定方向(随机舍入)
在把书塞进小篮子时,有些书的大小刚好卡在两个格子里。
- 比喻:如果每次都机械地把书塞进同一个格子(确定性舍入),久而久之,书就会偏向一边,导致篮子歪了(产生偏差)。
- 做法:NVIDIA 让模型在遇到这种临界情况时,抛一枚硬币(随机舍入)。这次塞左边,下次塞右边,概率各半。
- 效果:长期来看,书在篮子里分布得很均匀,没有系统性偏差,模型学得更准。
3. 实验结果:真的行得通吗?
NVIDIA 真的用这套方法,训练了一个120 亿参数的超级模型,读了10 万亿个单词(这是目前公开记录中,用 4 位精度训练的最长、最大的模型之一)。
- 对比结果:
- FP8 组(开重型卡车):考满分 100 分,得了 62.62 分。
- NVFP4 组(骑自行车):考满分 100 分,得了 62.58 分。
- 结论:骑自行车几乎和开卡车一样快,而且成绩几乎一模一样!甚至在某些数学和常识推理任务上,自行车还跑得更好。
4. 为什么这很重要?
这就好比以前我们要把一座图书馆搬走,需要 100 辆大卡车,耗时耗油。现在,NVIDIA 告诉我们:只要掌握了正确的骑行技巧,我们只需要 30 辆自行车就能完成同样的任务,而且速度更快,油耗更低。
这意味着未来的 AI 模型可以:
- 训练得更快(省时间)。
- 更便宜(省电费、省硬件)。
- 更环保(省能源)。
这篇论文就是 NVIDIA 给全行业的一份“自行车骑行指南”,告诉大家:别怕,4 位精度(FP4)不仅能用,还能用得非常好!
Each language version is independently generated for its own context, not a direct translation.
论文技术总结:使用 NVFP4 预训练大型语言模型
论文标题:Pretraining Large Language Models with NVFP4
作者:NVIDIA 团队
日期:2026 年 3 月 6 日(注:文档中标注为 2026 年,实际为 NVIDIA 发布的最新技术报告)
1. 研究背景与问题 (Problem)
随着大型语言模型(LLM)在参数量、训练数据规模和数据质量上的不断扩展,训练前沿模型所需的算力已达到数十至数百 YottaFLOPs 级别。为了提升训练效率,行业正从 FP16/BF16 向更低精度的浮点格式演进。
- 现状:8 位浮点(FP8)训练已广泛采用。
- 挑战:向更窄的 4 位浮点(FP4)过渡能进一步将计算性能提升 2-3 倍,并将显存占用减半。然而,FP4 量化带来了严峻挑战:
- 训练稳定性:在长 Token 跨度(Long token horizons)和大模型规模下,FP4 极易导致训练发散。
- 收敛性:极低的精度难以捕捉梯度的细微变化,导致模型无法收敛到与高精度模型相当的性能。
- 离群值(Outliers):LLM 中的激活值和梯度存在显著的离群值,FP4 的动态范围难以有效覆盖,导致量化误差过大。
- 链式法则破坏:前向传播和反向传播中,由于转置操作导致量化维度变化,若量化表示不一致,会破坏链式法则,阻碍梯度正确更新。
2. 核心方法论 (Methodology)
NVIDIA 提出了一套基于 NVFP4 格式的完整训练方法论,旨在实现稳定且准确的 4 位精度预训练。该方法包含以下四个关键技术组件:
2.1 NVFP4 数据格式
NVFP4 是 NVIDIA Blackwell 架构原生支持的 4 位格式,相比现有的 MXFP4 进行了优化:
- 更小的微块(Micro-block):块大小从 MXFP4 的 32 个元素减少到 16 个元素,更好地捕捉局部动态范围。
- 更精确的缩放因子:使用 E4M3 格式存储块级缩放因子(而非 MXFP4 的 UE8M0),牺牲部分指数范围换取更多尾数位,从而更精确地表示缩放比例。
- 两级缩放策略:结合每张量的 FP32 缩放和每块的 E4M3 缩放,确保块级最大值能映射到 FP4 的最大可表示值,最大化动态范围利用率。
2.2 混合精度策略 (Mixed Precision)
并非所有层都适合 FP4。研究发现某些线性层对精度极其敏感。
- 策略:保留网络中约 15% 的敏感线性层(主要是最后几个块中的层)在 BF16 或 MXFP8 精度下运行,其余大部分计算(GEMM 操作)使用 NVFP4。
- 其他组件:Embedding、Attention 机制(Softmax, Q/K/V)、归一化层及优化器状态保持原始高精度(BF16/FP32)。
2.3 随机 Hadamard 变换 (Random Hadamard Transforms, RHT)
用于解决离群值问题。
- 机制:在权重梯度(Wgrad)的 GEMM 输入端应用随机 Hadamard 变换,将离群值重新分布为近似高斯分布,使其更容易被 FP4 表示。
- 应用范围:实验表明,仅对 Wgrad 输入应用变换效果最佳;对前向传播(Fprop)和激活梯度(Dgrad)应用反而可能引入额外误差。
- 矩阵大小:选用 16x16 的 Hadamard 矩阵,在精度收益和计算开销之间取得平衡。
2.4 二维块缩放 (2D Block Scaling)
解决前向与反向传播中量化表示不一致的问题。
- 问题:反向传播时张量会转置,导致量化维度变化。如果权重在两个方向上的量化表示不同,会破坏链式法则。
- 解决方案:对权重采用 16x16 的二维块缩放。无论在前向还是反向传播中,权重块都保持相同的量化表示(通过复制缩放因子适配 Tensor Core 的输入要求)。
- 效果:确保 wfprop 和 wbprop 的量化表示一致,维持链式法则的有效性。
2.5 随机舍入 (Stochastic Rounding)
- 应用:仅在 梯度 的量化过程中使用随机舍入。
- 作用:消除确定性舍入(如最近偶数舍入)带来的系统性偏差(Bias),特别是在梯度分布偏向某一方向时。
- 注意:对激活值或权重使用随机舍入反而会导致发散,因此仅针对梯度使用。
3. 关键贡献 (Key Contributions)
- 首次大规模验证:成功在 120 亿参数 的混合 Mamba-Transformer 模型上,使用 10 万亿 Token 的数据量进行了 NVFP4 预训练。这是目前公开文献中最长的 4 位精度训练记录。
- 性能对标 FP8:实验结果表明,NVFP4 训练模型的验证损失(Validation Loss)和下游任务准确率与 FP8 基线模型 高度一致。
- MMLU-Pro 准确率:NVFP4 达到 62.58%,FP8 为 62.62%。
- MATH 和 GSM8k 等数学推理任务也表现出极高的竞争力。
- 算法与硬件协同:提出了完整的算法栈(RHT, 2D Scaling, SR 等),并验证了其在 NVIDIA Blackwell GPU(GB200/GB300)原生 Tensor Core 上的可行性。
- 格式对比:通过消融实验证明,NVFP4 格式优于 MXFP4。在相同 Token 数下,NVFP4 收敛损失更低;若 MXFP4 要达到同等损失,需要多训练 36% 的 Token,显著增加了训练成本。
4. 实验结果 (Results)
- 训练稳定性:在 10T Token 的训练过程中,NVFP4 的损失曲线紧密跟随 FP8 基线。在稳定训练阶段,相对损失误差始终低于 1%;在训练末期(学习率衰减阶段)略微上升至 1.5% 左右。
- 下游任务表现:
- 通用知识:MMLU (76.57% vs 77.36%),MMLU-Pro (62.58% vs 62.62%)。
- 数学推理:MATH (81.48% vs 83.32%),GSM8k (92.27% vs 89.08%,NVFP4 甚至略优)。
- 代码能力:HumanEval+ (57.43% vs 59.93%),MBPP+ (55.91% vs 59.11%)。代码任务表现略低,作者推测可能与评估噪声或特定 Checkpoint 选择有关,但整体差距可控。
- 消融研究:
- 移除任何单一组件(如 RHT、2D Scaling、SR 或混合精度层)都会导致训练发散或性能显著下降,证明了各组件的必要性。
- 在训练最后阶段(学习率衰减期)切换回 BF16 精度,可以进一步消除与 FP8 基线的微小损失差距。
5. 意义与展望 (Significance)
- 效率革命:NVFP4 训练方案使得 LLM 预训练的计算吞吐量提升 2-3 倍,显存占用减半,极大地降低了训练前沿模型的时间、能源和资金成本。
- 技术里程碑:证明了在极窄精度(4-bit)下训练超大规模模型(12B+)和超长数据(10T+)的可行性,打破了此前认为 4-bit 仅适用于推理或微调的局限。
- 未来方向:
- 进一步减少高精度层的比例,实现全 4-bit 训练。
- 将 NVFP4 扩展到 Attention 机制和通信路径。
- 探索在 MoE(混合专家)架构及更大规模模型上的应用。
- 目前 NVIDIA Transformer Engine 已完全支持 Blackwell 架构上的 NVFP4 训练。
总结:该论文通过创新的 NVFP4 格式和配套的训练算法(RHT, 2D Scaling, SR, 混合精度),成功解决了 4-bit 训练大模型的稳定性与精度难题,为下一代高效能 LLM 的训练奠定了坚实基础。