把模型训练压到4比特,像拿一把刻度很少的尺子反复测量:数值稍大就顶格,稍小又可能归零,误差还会不断累积。FP4——只用4个二进制位表示浮点数——早已适合压缩训练好的模型,但要进入计算量更大的预训练阶段,稳定性仍是难题。
这项工作的关键不是改变FP4数据本身,而是重新设计“量程”。研究者仍用E2M1保存每个数,却让每16个数共享一个UE5M3缩放值。块级缩放相当于给每小组数据单独选量程;UE5M3用更多指数位扩大可覆盖范围,因此全局量程只需每50步更新一次。配方还只对反向梯度使用随机舍入,并省去随机Hadamard变换和末层BF16豁免。
作者用这一方案预训练Nemotron-H 8B,共处理1887亿个token。按论文报告,它最终窗口的训练损失和量化推理时的验证损失都低于Transformer Engine NVFP4基线;另一项原生NVFP4消融实验中,同时移除额外变换并让末层改用FP4,模型主体吞吐提高21.2%。不过UE5M3训练目前是软件模拟,论文据此主张推动原生硬件支持,而非证明现成设备已经兑现同等收益。