大模型训练开销还能更小:微软推出首个 FP4 训练框架,训练效果与 BF16 相当

xxn 阅读:63434 2025-01-30 16:02:06 评论:0

独具创意的FP4精度大型模型训练框架现已推出,源自微软研究院!在相同超参数设定下,该框架可以达到与FP8和BF16相似的训练效果

这表示所需的存储和计算资源可大大减少

采用此方法训练的模型规模可达130亿参数规模,训练的Tokens数量也达到千亿级别。

此外,该方法并非真正的FP4,而是通过FP8来模拟,若采用真正的FP4,效果还可进一步提升。

(注:在进行研究时,尚未有原生支持FP4的硬件,故作者通过在FP8的TensorCore上进行模拟实现)

网络评论指出,效率更高而且质量无明显损失,FP4真的是一个颠覆性的技术。

还有看法认为,若这一发现被广泛知晓,可能会对老黄的股价造成影响。

当然,由于训练成本低,目前备受瞩目的DeepSeek也遭受了网友的热议:

在FP8 TensorCore上模拟FP4

如前文所述,在相同超参数设定下,作者的方法可以达到与BF16相似的训练效果。

具体而言,在1.3B、7B和13B的LLaMA模型上,从0到1千万Tokens的训练过程中,作者的FP4训练和BF16的损失曲线几乎相同。

在下游任务上,效果也与BF16相当。

为实现FP4精度训练,研究团队采用了定制化的FP4矩阵乘法(GeMM)CUDA内核

在内核中,作者通过FP16将FP4的A和B矩阵读入共享内存并做相应变换,然后使用FP4进行分块矩阵乘法,最后通过FP16对中间结果进行归约以得到FP16格式的输出矩阵。

首先需确定量化的数据格式,该框架采用了E2M1的FP4格式,即使用2位表示指数,1位表示尾数,外加1位符号位,总共4位。

选择这一格式是为了与当前主流ML加速芯片的量化计算单元设计相契合。

此外,该框架对权重矩阵W和激活矩阵A采取了不同粒度的量化策略。

对W采用列方向(channel-wise)的量化,而对A采用行方向(token-wise)的量化。

这种量化粒度与硬件上的GeMM并行实现方式相匹配,可以在不需要额外矩阵转置操作的情况下最大化FP4在矩阵乘法上的加速效果。

在模型前向传播开始时,该框架对每个线性层的权重矩阵W和输入激活矩阵A同时进行FP4量化。

在量化过程中,首先对矩阵中的数值进行缩放和偏移,将其映射到FP4可表示的范围内,然后通过查表的方式将其四舍五入到最近的FP4离散值。

由于不同层的数值范围相差较大,因此需要为每一层的权重矩阵和激活矩阵确定独立的量化范围,即进行逐层的量化参数校准。

此框架采用的是scale+shift的校准方法,即先使用缩放因子将数值从原始范围映射到[-1,1],再使用偏移因子将[-1,1]平移到FP4可表示的范围。

在反向传播过程中,若直接对量化后的矩阵进行求导,则权重矩阵的梯度几乎处处为0,导致无法进行参数更新。

因此,作者提出了一种新颖的可微分梯度估计方法

在前向计算阶段,仍然使用硬量化以确保计算效率,但在反向传播阶段,通过一个连续可微的函数重新逼近量化函数,并计算修正项以获取梯度。

在训练过程中,模型的隐层激活分布通常表现出明显的长尾特征,即极少数维度的数值明显偏高,导致出现"离群点"。

为应对该问题,作者提出了一种"离群点削峰和补偿"策略。

具体做法是在激活矩阵A中,通过分位数检索方法找出幅值最大的离群点,将其限制在预设阈值范围内,得到削峰后的矩阵A_clamped。

接着,基于原始矩阵A和削峰后的A_clamped构建稀疏补偿矩阵∆A,其中仅削峰位置上数值为非零。

此外,在某些环节中,作者还采用了混合精度设计。

例如,在梯度通信时采用了FP8,在优化器状态(如动量)的存储时选择了FP16。系统的其他部分,如非矩阵乘操作的计算、损失缩放等,也均采用FP16。

通过这些混合精度设计,在保持训练数值稳定的同时,尽可能地降低计算和存储开销。

中科大博士生一作

此框架由微软亚洲研究院和SIGMA团队共同打造,所有研究人员均为华人。

第一作者Ruizhe Wang是中科大在读博士生,目前正在微软亚洲研究院实习,致力于研究低精度量化领域。

中科大科研部部长、类脑智能国家工程实验室执行主任、博士生导师查正军教授也参与了该项目。

通讯作者为微软亚洲研究院高级首席研究经理程鹏和首席研究经理Yeyun Gong

程鹏曾先后就读于北航和清华,在清华攻读博士期间曾赴UCLA进行研究学习;Yeyun Gong则是复旦大学博士,毕业后加入微软。

微软亚洲研究院杰出科学家、常务副院长郭百宁也参与了此项目,他曾就读于北京大学和康奈尔大学,自1999年起便加入微软。

此外还有其他作者,完整名单详见以下链接:

论文地址:

  • https://arxiv.org/abs/2501.17116

参考链接:

  • https://x.com/arankomatsuzaki/status/1884446877837582598

本文来自微信公众号:量子位(ID:QbitAI),作者:克雷西

广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考。

声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

搜索
排行榜
关注我们

扫一扫关注我们,了解最新精彩内容