BiLoCo: Binary Low-Rank Corrections for Post-Training Quantization

📄 arXiv: 2610.32243v1 📥 PDF

作者: David Jin, Beshr IslamBouli, Tarushii Goel, Han Guo, Yoon Kim

分类: cs.LG

发布日期: 2026-10-23


💡 一句话要点

提出BiLoCo以解决FP4后训练量化的准确性问题

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 后训练量化 低秩修正 FP4 大型语言模型 CUDA核心 张量核心 计算效率 存储优化

📋 核心要点

  1. 现有的FP4后训练量化方法在准确性上存在明显差距,尤其是在大型语言模型中。
  2. BiLoCo通过使用二进制符号向量存储低秩修正,显著降低了存储需求并提高了计算效率。
  3. 在实验中,BiLoCo在4B至72B的LLM上表现出与SVDQuant相当或更优的性能,且运行速度接近FP4-only GEMM。

📝 摘要(中文)

后训练量化(PTQ)到FP4已成为降低大型语言模型推理成本的关键技术,尤其是在支持FP4张量核心的Blackwell GPU上。然而,直接进行FP4的PTQ仍然存在明显的准确性差距。近期的SVDQuant方法通过添加高精度低秩修正来减轻FP4量化带来的误差,但这种高精度修正需要较多的存储位数。本文提出BiLoCo,一种低秩修正方法,其左、右因子以二进制符号向量存储,存储需求减少至原来的1/16,并且可以与FP4张量核心的GEMM并行运行。实验表明,BiLoCo在4B至72B的LLM上与SVDQuant的内存匹配性能相当或更优。

🔬 方法详解

问题定义:本文旨在解决FP4后训练量化(PTQ)过程中准确性不足的问题。现有方法如SVDQuant虽然能通过高精度低秩修正来减小误差,但其存储需求高且计算效率低下。

核心思路:BiLoCo的核心思路是使用二进制符号向量来表示低秩修正的左、右因子,这样可以大幅减少存储需求,并允许与FP4张量核心的GEMM并行计算。

技术框架:BiLoCo的整体架构包括FP4 GEMM和位打包修正两个模块。FP4 GEMM在张量核心上运行,而位打包修正则在CUDA核心上并行执行,最终在GEMM的尾部结合两者的结果。

关键创新:BiLoCo的主要创新在于将低秩修正的存储格式从BF16转变为二进制符号向量,这种设计使得每个秩分量的存储需求减少至原来的1/16,并且可以通过加法和减法操作实现高效计算。

关键设计:在实现中,BiLoCo被设计为一个融合的单内核,支持批量大小为1时的计算效率,且在秩128时,最多比FP4-only GEMM慢20%,在批量大小为8时依然保持较高的性能。

📊 实验亮点

在实验中,BiLoCo在4B至72B的LLM上与SVDQuant的性能相当或更优,且在批量大小为1时,融合内核的计算速度仅比FP4-only GEMM慢11%。在秩128的情况下,最多慢20%,显示出其在保持准确性的同时显著提高了计算效率。

🎯 应用场景

BiLoCo的研究成果在大型语言模型的推理中具有广泛的应用潜力,尤其是在需要高效计算和低存储需求的场景下。其方法可以有效降低推理成本,提升模型在资源受限环境中的可用性,推动AI技术在边缘计算和移动设备上的应用。未来,BiLoCo的技术也可能扩展到其他深度学习模型的量化和优化中。

📄 摘要(原文)

Post-training quantization (PTQ) to FP4 has emerged as a key technique for reducing large language model inference cost, especially on Blackwell GPUs, which offer native FP4 tensor core support. Direct PTQ to FP4, however, still leaves a noticeable accuracy gap. Recent work on SVDQuant mitigates the errors introduced through FP4 quantization for diffusion models by adding high-precision low-rank corrections obtained via SVD. However, this high-precision low-rank correction requires many bits per rank, and it runs on the same tensor cores as the main FP4 GEMM. We introduce BiLoCo, a low-rank correction method whose left and right factors are stored as binary ${{\pm 1}}$ sign vectors rather than as BF16 numbers. The signed format uses $16{\times}$ less storage per rank-one component, and since the correction now consists of additions/subtractions, this can be run on CUDA cores concurrently with the FP4 tensor-core GEMM. On 4B--72B LLMs, BiLoCo matches or improves memory-matched SVDQuant for PTQ. We implement BiLoCo on B300 as a fused single kernel, where the FP4 GEMM runs on tensor cores, the bit-packed correction on the CUDA cores of the same launch, and the two are combined in the GEMM epilogue. With batch size $1$, the fused kernel is at most $11\%$ slower than the FP4-only GEMM for every rank up to $512$. At rank $128$, it is at most $20\%$ slower up to batch size $8$.