OCGQuant:针对NVFP4量化的异常值伴随分组方法
摘要
OCGQuant提出了一种用于NVFP4量化的异常值伴随分组方法,以减少激活块误差,提升LLM推理效率。在Llama3和Qwen3上的实验表明,其性能优于现有的后训练量化技术。
arXiv:2609.00066v1 公告类型:新
摘要: NVFP4是一种用于低位推理的高效微缩放格式,但激活异常值仍可能降低NVFP4块内的量化精度。在每个量化块内,大的激活值可能主导块缩放,增加共享相同缩放的其余值的量化误差。现有的后训练量化(PTQ)方法通过混合精度、旋转或残差补偿等策略来缓解异常值误差,但这些方法要么不是专门为NVFP4设计的,要么引入了额外的计算。在这项工作中,我们从通道分组的角度重新审视NVFP4,并将由剩余块值在块最大值设定的缩放下引起的可减少误差定义为附带量化误差。基于这一见解,我们提出OCGQuant,一种以异常值伴随分组(OCG)为核心的后训练量化方法,它自适应地将异常值通道与低幅度伴随通道配对,以改善NVFP4激活块组成。在Llama3和Qwen3上的实验表明,OCGQuant在评估的PTQ方法中实现了最低的WikiText-2困惑度和最高的平均下游准确度,同时保持预填充加速接近RTN,并匹配其峰值解码内存。代码可在https://github.com/Eshamont/OCGQuant获取。
查看缓存全文
缓存时间: 2026/09/02 05:45
# OCGQuant:面向NVFP4量化的异常值伴生分组法 来源:https://arxiv.org/html/2609.00066 Binjun Li<sup>1</sup> Hanling Yi<sup>1,2</sup> Pengyu Li<sup>2</sup> Xiaoqing Liu<sup>2</sup> Zihan Yang<sup>1,2</sup> Xiaotian Yu<sup>1</sup> Zhiwen Yu<sup>2</sup> <sup>1</sup>云天励飞公司 <sup>2</sup>华南理工大学 ###### 摘要 NVFP4是一种高效的微缩放格式,适用于低比特推理,但激活值中的异常值仍可能降低NVFP4块内的量化精度。在每个量化块中,较大的激活值可能主导块缩放比例,增加共享该比例的其余数值的量化误差。现有的训练后量化方法通过混合精度、旋转或残差补偿等策略来缓解异常值误差,但这些方法要么未专门针对NVFP4,要么引入了额外计算。本文从通道分组的角度重新审视NVFP4,并将块最大值设定的比例下,其余块内数值产生的可缩减误差定义为“伴生量化误差”。基于此洞见,我们提出了以“异常值伴生分组”为核心的训练后量化方法OCGQuant,该方法自适应地将异常值通道与低幅值伴生通道配对,以改善NVFP4激活块的构成。在Llama3和Qwen3上的实验表明,OCGQuant在所评估的训练后量化方法中实现了最低的WikiText-2困惑度和最高的平均下游精度,同时保持了接近RTN的预填充加速比,并匹配了其峰值解码内存占用。代码已开源:https://github.com/Eshamont/OCGQuant。 ††脚注文本:†通讯作者:[email protected], [email protected]。 图1:异常值伴生分组示意图。OCG通过RMS校准激活通道,并将异常值通道与低幅值伴生通道配对,以改善激活块构成。 ## 1 引言 大型语言模型的部署成本日益高昂。训练后量化无需完全重训即可降低此成本,而低比特权重-激活量化尤其具有提升端到端推理效率的吸引力。近期硬件支持的微缩放格式,如MXFP4和NVFP4,通过结合低比特浮点表示与细粒度局部缩放,进一步推动了这一方向。 NVFP4是近期NVIDIA GPU上原生FP4推理的代表性格式。它以FP4-E2M1格式存储张量元素,为每16个连续元素块分配一个FP8-E4M3比例,并应用张量级FP32比例以扩展动态范围。与均匀INT4量化不同,FP4-E2M1采用非均匀浮点网格,其舍入行为不受单一固定量化步长控制。同时,NVFP4在极细粒度上应用缩放,每个比例仅由16个连续元素共享。这些特性使得NVFP4本质上区别于均匀整数量化和传统粗粒度分组量化,要求训练后量化方法考虑其特定的缩放与舍入规则。 激活值异常值仍是低比特LLM量化中的主要挑战,并催生了大量先前工作。附录B可视化了LLM中异常值的严重性。混合精度方法(如LLM.int8()和Atom)通过更高精度路径处理激活值异常值。QuaRot则采用Hadamard旋转来抑制激活值异常值。然而,这些方法主要为整数量化设计,可能不适用于直接迁移到NVFP4。在面向NVFP4的方法中,ARCQuant使用增强残差通道来补偿激活值异常值引起的量化误差,但引入了额外计算。相比之下,我们重新审视了NVFP4本身的原生分组机制。由于沿通道维度的每16个连续元素组共享一个FP8比例,通道顺序直接决定了每个量化块的构成,从而影响其量化误差。这一观察促使我们从块构成角度思考:能否通过通道重排来重构更优的分组,从而改善包含异常值主导块的NVFP4量化? 受此问题启发,我们提出了OCGQuant,一种以异常值伴生分组为核心的NVFP4训练后量化方法。在每个NVFP4块内,最大的激活值决定了共享的FP8比例,并在缩放后通常被映射到较高的FP4级别。我们将由此比例下其余数值产生的可缩减误差称为伴生量化误差,该误差在异常值主导的块中往往更为显著。如图1所示,OCG通过将异常值通道与低幅值伴生通道配对来减少误差。由于这些伴生值接近零,且FP4-E2M1在低幅值区域提供了相对密集的可表示级别,它们在被放大的比例下往往产生较低的伴生误差。为保持线性变换,对权重应用相同的置换,并通过离线GPTQ在重排空间中补偿权重侧的量化误差。如图2所示,OCGQuant有效降低了各层线性输出的量化误差。 我们的贡献总结如下: - 我们从块构成的角度重新审视NVFP4量化,并引入伴生量化误差来表征在块最大值设定的比例下,块内其他数值(尤其在包含异常值时)产生的可缩减误差。 - 我们提出了OCGQuant,核心是异常值伴生分组,该方法自适应地将异常值通道与低幅值伴生通道配对,以改善原生NVFP4激活块构成。 - 实验表明,OCGQuant在所评估的训练后量化方法中实现了最低的WikiText-2困惑度,在Qwen3-1.7B上甚至接近FP16水平,同时提升了下游精度,实现了高达2.29倍的预填充加速,并匹配了RTN的峰值解码内存占用。 ## 2 相关工作 ### 2.1 训练后量化 训练后量化广泛用于高效LLM部署,仅需有限校准数据且无需重训,其中RTN是基础方案。早期的训练后量化方法主要关注仅权重量化。GPTQ利用二阶信息最小化重建误差,而AWQ则根据激活统计重新缩放显著的权通道。 权重-激活量化更具挑战性,因为激活值依赖于输入且常包含严重异常值。SmoothQuant通过将激活幅值迁移到权重中来缓解此问题,而基于旋转的方法通过正交或Hadamard变换分散异常值能量。重排方法如RPTQ减少了组间范围变化,Atom则结合了通道重排与异常值感知混合精度。然而,这些方法大多针对整数或通用分组量化,未考虑NVFP4的细粒度缩放和非均匀FP4网格。 图2:使用NVFP4时,Llama3.1-8B的down_proj各层线性输出量化均方误差。OCGQuant在各层中均获得最低误差。 ### 2.2 NVFP4量化 NVFP4是一种硬件支持的微缩放格式,将FP4值与细粒度块缩放相结合,使其量化行为与传统INT4格式不同。因此,近期研究开发了特定于NVFP4的量化策略。MR-GPTQ表明全局Hadamard旋转可能降低NVFP4精度,并通过块级旋转和格式特定优化扩展了GPTQ。ARCQuant使用增强残差通道补偿激活值异常值。FourOverSix为选定块缩小有效FP4范围,以便更好地表示接近FP4上限级别的值。RaZeR通过冗余FP4编码增加量化值,但需要专用内核或硬件。尽管有效,这些方法可能增加推理开销或实现复杂性。相比之下,我们通过通道分组优化NVFP4块构成,推理开销较低。 图3:OCGQuant推理工作流程概览。通道重排被吸收到Attention和MLP块中的NVFP4激活量化中,相应的权重在离线阶段重排。融合的CUDA内核和连续重排-分段快速路径降低了运行时开销。 ## 3 方法论 ### 3.1 NVFP4基础 NVFP4使用两级缩放存储FP4-E2M1值,为每个连续的16元素块使用一个FP8-E4M3比例,并为整个张量共享一个FP32比例。FP4-E2M1值集为{0}∪{±0.5,±1,±1.5,±2,±3,±4,±6},最大值$M^{\mathrm{FP4}}=6$,FP8-E4M3最大值$M^{\mathrm{FP8}}=448$。给定高精度张量$X$及其第$i$块$X_i$,NVFP4计算比例和FP4值如下: $s^{\mathrm{FP32}} = \frac{\max(\|X\|)}{M^{\mathrm{FP4}}M^{\mathrm{FP8}}},$ (1) $s_i^{\mathrm{FP8}} = \left\lfloor \frac{\max(\|X_i\|)}{s^{\mathrm{FP32}}M^{\mathrm{FP4}}} \right\rceil_{\mathrm{FP8}},$ (2) $\bar{X}_i^{\mathrm{FP4}} = \left\lfloor \frac{X_i}{s^{\mathrm{FP32}}s_i^{\mathrm{FP8}}} \right\rceil_{\mathrm{FP4}},$ (3) 其中$\lfloor\cdot\rceil_{\mathrm{FP8}}$和$\lfloor\cdot\rceil_{\mathrm{FP4}}$分别表示舍入到最近的可表示FP8-E4M3和FP4-E2M1值。存储的FP4块$\bar{X}_i^{\mathrm{FP4}}$随后通过相应的张量和块比例反量化: $\hat{X}_i = s^{\mathrm{FP32}}s_i^{\mathrm{FP8}}\bar{X}_i^{\mathrm{FP4}}.$ (4) NVFP4量化误差源于块比例和缩放值被舍入到低精度格式。先前分析表明,大多数退化来自将缩放值转换为FP4的过程,而FP8比例舍入影响较小。由于FP4-E2M1网格在大幅值处更粗糙,接近FP4上限级别的值可能产生更大的舍入误差。共享的块比例取决于块中的值,因此通道顺序决定了哪些值一起被缩放和舍入。这促使我们从块构成的角度看待NVFP4量化。 ### 3.2 OCGQuant OCGQuant是一种NVFP4训练后量化方法,通过重新设计激活块构成来处理激活值异常值。具体而言,OCGQuant通过异常值伴生分组从校准激活中构建逐层的输入通道置换,将激活值异常值通道与低幅值伴生通道配对。 #### 3.2.1 伴生量化误差 ##### 通道置换。 对于线性层$Y=XW^\top$,其中$X\in\mathbb{R}^{N\times C}$和$W\in\mathbb{R}^{O\times C}$分别表示输入激活和权重矩阵,我们考虑在NVFP4量化前通过置换矩阵$P\in\mathbb{R}^{C\times C}$置换输入通道。由于$PP^\top=I$,高精度线性变换保持不变: $XW^\top = XPP^\top W^\top = (XP)(WP)^\top.$ (5) 在NVFP4量化下,置换改变了连续块的构成,产生不同的块比例和FP4舍入误差。因此,我们从块构成的角度分析NVFP4量化。 ##### 伴生误差定义。 由于通道置换改变了量化块的构成,我们首先隔离一个NVFP4块内引起的误差。考虑一个大小为$G$的块$B$,令$m=\arg\max_{j\in B}\|x_j\|$为幅值最大的元素。我们将块的有效反量化比例记为$s_B$。在$m$设定块比例的条件下,其余元素不决定$s_B$,但仍需在$x_m$诱导的比例下进行量化。我们将剩余$G-1$个值在此比例下产生的误差定义为伴生量化误差: $\mathcal{E}_{\mathrm{col}}(B,m) = \sum_{j\in B,\,j\neq m} \left\|x_j - s_B\left\lfloor \frac{x_j}{s_B}\right\rceil_{\mathrm{FP4}}\right\|_2^2.$ (6) 伴生误差可能出现在任何量化块中,当大幅值元素诱导的比例将剩余$G-1$个值置于FP4网格的粗糙区域(舍入区间宽)时,该误差会变得严重。公式(6)适用于给定激活向量中的一个块,而通道置换在所有token间是固定的。先前研究表明LLM中的激活值异常值通常表现出强通道局部性,并在token间持续存在,我们在图8中观察到了相同模式。这促使我们使用通道校准统计来识别倾向于引起大块比例的通道,以及保持低幅值的通道。 #### 3.2.2 异常值伴生分组 受前述分析启发,我们引入异常值伴生分组来构建NVFP4量化前的块。OCG将一个异常值通道与$G-1$个低幅值伴生通道分组,减少普通值在异常值诱导比例下被量化的可能性。OCG根据在校准token上测量的均方根激活值对输入通道进行排序。
相似文章
这是我的 llama.cpp NVFP4/MXFP6 GGUF 量化工具
作者介绍了一款开源的 GGUF 量化工具,用于 llama.cpp,能够创建 NVFP4 和 MXFP6 量化模型,并采用 RSF、张量提升、动态量化等先进技术,质量优于现有方法(如 ModelOpt)。
我将 Qwen3.6 27B 的 GGUF 量化与 NVFP4、AWQ、AutoRound 和 FP8 进行了对比
一项详细基准测试,比较了 Qwen3.6 27B 在 GGUF、NVFP4、AWQ、AutoRound 和 FP8 格式下的 16 种量化,测量与未量化参考的 KL 散度。纯权重的 GGUF 量化通常在质量-大小权衡上表现最佳,而 vLLM 量化则差异显著。
QUADS:通过量化误差双侧对齐稳定MoE的NVFP4强化学习
本文提出QUADS,一种通过对齐训练端和推理生成端的量化误差来稳定混合专家大语言模型的NVFP4强化学习的方法,实现了BF16级别的精度,并且吞吐量高于FP8。
激活离群值重要性:量化多模态LLMs的鲁棒恢复
本文将激活量化识别为超低比特量化多模态LLMs中的主要瓶颈,并提出残差回退量化(RFQ)以最小开销恢复性能。
# Qwen 3.6 27B - VLLM 性能基准测试结果(BF16、FP8、NVFP4)
使用 VLLM 对 Qwen 3.6 27B 在 BF16、FP8 和 NVFP4 三种量化方式下的详细基准测试显示:NVFP4 在 token 生成方面最快,但 FP8 在提示处理方面表现最佳。本文还提供了针对编码任务选择合适量化的实用建议。