← 返回 2026-02-10

NANOQUANT:大语言模型的高效亚1比特量化 NanoQuant: Efficient Sub-1-Bit Quantization of Large Language Models

Hyochan Chong, Dongkyu Kim, Changdong Kim, Minseop Choi 📅 2026-02-06 👍 20 2026-07-13 08:35
低秩分解 后训练量化 大语言模型 模型压缩 模型量化

用低秩二值分解将LLM压缩至1比特以下,单卡H100仅需13小时压缩70B模型

前置知识

后训练量化(PTQ)

在模型训练完成后,通过将权重从高精度(如FP16)映射到低精度(如INT4、INT2甚至1-bit)来减小模型体积和推理开销的方法。与量化感知训练(QAT)不同,PTQ不需要重新训练模型,通常只需少量校准数据(几百个样本)和较少的计算资源。PTQ是目前工业界部署大模型的主流压缩手段,已集成到vLLM、SGLang等推理框架中。

本文属于PTQ范畴,理解PTQ的基本范式(校准→量化→重建)是理解NANOQUANT的前提。

权重量化中的比特率(BPW)

Bits Per Weight,衡量量化后模型每个参数平均占用的比特数。FP16模型的BPW=16,INT4量化后BPW≈4。对于二值化方法,理想情况下BPW=1,但由于需要存储额外的缩放因子、分组掩码等元数据,实际BPW往往远高于1。例如BiLLM的实际BPW约为2.88,STBLLM约为4.13。真正实现BPW<1(亚1比特)是该领域的技术难点。

本文的核心贡献就是将有效BPW降到1以下,理解BPW的计算方式是评估NANOQUANT压缩效率的关键。

低秩矩阵分解

将一个大矩阵W分解为两个(或多个)更小矩阵的乘积W≈UV^T的技术。如果U的维度是m×r,V的维度是n×r,则当r远小于m和n时,存储UV所需的总参数量远小于原始矩阵。这种技术在模型压缩中被广泛使用,如LoRA微调就利用了低秩假设。在本文中,U和V被进一步约束为二值矩阵(元素只取±1),从而实现极端压缩。

NANOQUANT的核心创新就是将权重量化问题转化为低秩二值矩阵分解问题,这是理解其方法的关键数学框架。

交替方向乘子法(ADMM)

ADMM是一种经典的约束优化算法,通过引入辅助变量和对偶变量,将复杂的约束优化问题分解为多个较简单的子问题交替求解。其核心形式是将目标函数min f(x)+g(z) s.t. x=z分解为x更新、z更新和对偶变量更新三个步骤。ADMM在非凸问题中也展现出良好的实用性能,虽然理论收敛性不如凸情况严格,但在模型压缩、稀疏化等实际问题中已被广泛验证。

NANOQUANT使用ADMM来求解二值矩阵分解这一离散组合优化问题,ADMM的引入使得在PTQ预算内精确初始化二值因子成为可能。

Kronecker近似曲率(K-FAC)

一种近似神经网络Hessian矩阵的方法,利用Kronecker积将Fisher信息矩阵分解为更小的块矩阵的乘积,从而高效地计算二阶优化信息。在量化中,K-FAC用于衡量每个权重参数对任务损失的敏感度,帮助优先保留重要参数的精度。NANOQUANT使用简化的对角K-FAC预条件器来构建Hessian感知的重建目标。

NANOQUANT的Hessian感知预条件步骤使用K-FAC思想来指导量化误差的最小化方向,是其精确初始化的关键组件。

研究动机

现有二值(1-bit)后训练量化方法面临一个根本性矛盾:虽然理论上二值化应实现BPW=1的极致压缩,但实际存储开销远超预期。以BiLLM为例,它需要为每个权重分组存储全精度缩放因子和分组掩码,导致有效BPW高达2.88;STBLLM引入稀疏性后更高达4.13 BPW,比2-bit量化方法GPTQ(2.28 BPW)还要大。这意味着这些所谓'二值'方法的实际存储效率还不如2-bit量化。另一方面,二值量化感知训练(QAT)方法如OneBit、BinaryMoS、LittleBit虽然能实现真正的1-bit甚至亚1-bit压缩,但它们需要在数亿甚至数十亿token上进行端到端训练,使用多块GPU耗时数天。例如LittleBit需要196M token和92.5 GPU小时来压缩Llama-2-7B,DBF需要1.38B token和37.6 GPU小时。这种资源需求对于资源受限的环境完全不现实,也限制了QAT方法对70B级别大模型的应用。

本文的目标是本文的目标是设计一种PTQ方法,在保持PTQ数据效率(仅需128个校准样本、0.26M token)和计算效率(单GPU、数小时内完成)的前提下,突破1-bit壁垒实现真正的亚1比特压缩。具体而言,作者希望:(1)将70B模型从137.95 GB压缩到约5.75 GB(24×压缩率),使其能在消费级8GB GPU上运行;(2)有效BPW严格低于1,且不引入额外元数据开销;(3)在WikiText-2困惑度和零样本推理任务上保持与QAT方法相当的性能。

与已有工作不同的是,本文的独特切入点在于认识到现有PTQ方法失败的根源不是'量化'本身,而是'表示结构'。现有二值PTQ方法采用原地二值化(in-place binarization)加全精度缩放因子的结构,如W≈αB(其中B∈{±1}),这种表示在结构上被限制在最低1 BPW,加上缩放因子和分组掩码等元数据后实际BPW远高于1。而QAT方法虽然采用了低秩二值矩阵表示(如W≈s₁U_{±1}V^T_{±1}s₂),成功绕过了结构限制,但代价是需要大规模重新训练。NANOQUANT的核心洞察是:如果能在PTQ框架内精确求解低秩二值分解问题,就能同时获得QAT的表示优势和PTQ的效率优势。这一洞察将问题从'如何量化权重'重新定义为'如何在PTQ约束下求解低秩二值矩阵分解'。

核心方法

NANOQUANT的方法可以用一个类比来理解:想象你要把一幅高清油画压缩成极简的像素画。传统二值PTQ方法像是直接把每个像素取黑或白(原地二值化),但需要额外记录每个区域的亮度调整信息(缩放因子),这些元数据本身占据了大量空间。而NANOQUANT的做法更像是先分析画作的整体结构,找到两层最能捕捉画面特征的二值模板(低秩二值矩阵U和V),然后用简洁的亮度缩放因子来还原细节。技术路线分为三个阶段:(1)全局校准阶段,在少量数据上收集激活和梯度统计信息,构建Hessian感知的预条件器;(2)逐块重建阶段,依次压缩每个Transformer块中的线性层,每层内部通过ADMM精确初始化低秩二值因子,再用STE微调;(3)全局缩放调整阶段,冻结所有二值权重,仅优化缩放因子以对齐量化模型与全精度模型的预测分布。

NANOQUANT的核心创新是将ADMM引入低秩二值分解的初始化过程,形成了'Latent Binary ADMM'(LB-ADMM)算法。这一创新的本质在于:直接优化二值参数是一个NP-hard的组合优化问题,现有QAT方法通过大规模训练来'暴力搜索'好的二值表示,而现有PTQ方法则绕开这个问题使用原地二值化(但牺牲了压缩率)。LB-ADMM的巧妙之处在于引入连续的潜在变量(latent variables)U和V作为二值矩阵的连续松弛,通过ADMM的交替优化将离散组合问题分解为连续子问题(线性方程组求解)和离散子问题(符号映射)的交替迭代。具体来说,每次迭代中:(a)固定V求解U的线性系统(带正则化),使用Cholesky分解高效计算;(b)通过Sign-Value Independent Decomposition(SVID)将连续U映射到二值代理变量Z;(c)更新对偶变量以强制一致性。这种分解使得在有限校准数据下精确初始化二值因子成为可能,为后续的STE微调提供了良好的起点。

方法步骤详情

NANOQUANT的完整流程分为三个阶段。阶段一:全局校准。输入128个校准样本(WikiText-2,序列长度2048),前向传播收集每个线性层的激活统计量z_{in}和z_{out},通过Ledoit-Wolf收缩正则化构建鲁棒对角预条件器D̃_{in}和D̃_{out}。阶段二:逐块重建。依次处理每个Transformer块,每个块包含三个步骤:(1)误差传播缓解——微调当前块的全精度权重以吸收前面已量化层的累积误差;(2)低秩二值初始化——对每个线性层执行LB-ADMM,先计算预条件化目标W̃=D̃_{out}·W·D̃_{in},然后通过ADMM迭代求解低秩分解U_{±1}V^T_{±1},收敛后进行幅度平衡(magnitude balancing)以消除尺度模糊性,提取通道级缩放因子s₁和s₂;(3)分量精调——使用STE联合优化连续潜在变量U、V和缩放因子s₁、s₂,以最小化量化块输出与全精度块输出的MSE,收敛后取符号函数得到最终二值权重并打包为整数格式。阶段三:全局缩放调整。冻结所有二值权重,仅优化全局缩放因子S_{global},通过最小化KL散度D_{KL}(softmax(z_M/T) || softmax(z_{M̂}/T))来对齐量化模型的预测分布。温度T用于平滑softmax分布。

技术新颖性

NANOQUANT的技术新颖性体现在多个层面。首先,在问题形式化上,它是首个在PTQ框架内采用低秩二值矩阵分解表示的方法,打破了'PTQ只能用原地二值化'的思维定式。其次,LB-ADMM算法是首次将ADMM应用于低秩二值分解的初始化(而非仅用于低比特量化),通过引入SVID算子处理离散代理更新,克服了非凸组合优化的困难。第三,幅度平衡步骤在理论上消除了低秩分解的尺度模糊性——这是以往低秩二值QAT方法(如LittleBit、DBF)中隐含但未显式处理的问题。第四,三阶段流水线设计(初始化→逐块精调→全局校准)将初始化作为子例程集成到重建循环中,而非作为独立预处理步骤,这种紧密耦合提高了最终量化质量。最后,作者还实现了自定义的二值GEMV和GEMM CUDA内核,避免使用Tensor Core的WMMA操作,使推理在消费级GPU和边缘设备上也能高效运行。

NANOQUANT压缩方案示意图
Figure 2: NANOQUANT压缩方案示意图
NANOQUANT逐块重建流水线
Figure 3: NANOQUANT逐块重建流水线
Llama-3.2-1B潜在变量动态可视化
Figure 8: Llama-3.2-1B潜在变量动态可视化
Gemma-4-31B上的ADMM消融实验
Figure 9: Gemma-4-31B上的ADMM消融实验

实验结果

NANOQUANT在多个维度上验证了其有效性。在压缩效率方面,NANOQUANT实现了真正的1-bit和亚1-bit压缩:对Llama-2-7B,其模型大小为1.33 GB(1.00 BPW),而BiLLM为2.85 GB(2.88 BPW),STBLLM为4.07 GB(4.13 BPW)。在WikiText-2困惑度方面,NANOQUANT以1-bit压缩的Llama-2-7B达到10.34的困惑度,接近使用4.13 BPW的STBLLM(10.12)和3.25 BPW的HBLLM(7.60)。在0.80-bit和0.55-bit极端压缩下,困惑度分别上升到12.20和16.66,但仍保持功能性。在零样本推理任务上,NANOQUANT在Llama-3-8B上的平均准确率为45.95%,与ARB-LLM(44.23%)和HBLLM(50.45%)相当,尽管使用了更少的比特。在资源效率方面,压缩Llama-2-7B仅需0.26M token校准数据和1.7 GPU小时,而QAT方法需要数亿token和数十到数百GPU小时。在推理效率方面,在RTX 3050(8GB)消费级GPU上,NANOQUANT实现了高达3.6倍的解码吞吐量提升、5.4倍的峰值内存降低和3.9倍的能效提升。最令人瞩目的是,NANOQUANT将Llama-2-70B从137.95 GB压缩到5.75 GB(24倍压缩),使得70B模型能在8GB GPU上以20.11 token/s的速度运行。消融实验表明LB-ADMM初始化优于Dual-SVID和DBF ADMM等替代方案,且各组件(误差缓解、初始化、分量精调、全局重建)均有独立贡献。

LLM量化框架比较
Table 1: LLM量化框架比较
WikiText-2困惑度详细结果
Table 2: WikiText-2困惑度详细结果
零样本常识推理任务准确率
Table 3: 零样本常识推理任务准确率
压缩效率和资源消耗详细对比
Table 4: 压缩效率和资源消耗详细对比
初始化策略消融实验
Table 5: 初始化策略消融实验
与QAT方法的详细对比
Table 7: 与QAT方法的详细对比
WikiText-2困惑度比较
Figure 1: WikiText-2困惑度比较
RTX 3050消费级GPU上的推理效率
Figure 4: RTX 3050消费级GPU上的推理效率
H100数据中心GPU上的推理效率
Figure 5: H100数据中心GPU上的推理效率
Qwen3家族的帕累托最优性分析
Figure 6: Qwen3家族的帕累托最优性分析
H100上与向量量化方法的推理对比
Figure 7: H100上与向量量化方法的推理对比
查看结构化数据
任务指标本文基线提升
WikiText-2困惑度(Llama-2-7B) Perplexity ↓ 10.34(1-bit) BiLLM 19.87 / STBLLM 10.12 / HBLLM 7.60 以1 BPW达到接近2.88-4.13 BPW方法的性能
WikiText-2困惑度(Llama-2-70B) Perplexity ↓ 6.52(1-bit) ARB-LLM 5.20 / HBLLM 4.56 70B模型上1-bit与2-3 BPW方法差距缩小
零样本推理平均准确率(Llama-3-8B) Avg Accuracy ↑ 45.95% ARB-LLM 44.23% / HBLLM 50.45% 1-bit达到2.51-3.25 BPW水平
压缩效率(Llama-2-7B) GPU Hours 1.7h(1-bit)/ 2.5h(更多数据) LittleBit 92.5h / DBF 37.6h 比QAT方法快15-55倍
模型大小(Llama-2-70B) Model Size GB 5.75 GB(0.55-bit) BF16 137.95 GB 24倍压缩,可在8GB GPU运行
推理吞吐量(RTX 3050,Llama-3.2-3B) Tokens/s 最高3.6×加速 PyTorch BF16 3.6×吞吐量提升

局限与改进

NANOQUANT虽然取得了突破性进展,但仍存在若干局限性。首先,在精度方面,1-bit压缩的NANOQUANT与更高比特的PTQ方法仍有差距:例如在Llama-2-7B上,NANOQUANT(1-bit)的困惑度10.34显著高于HBLLM(3.25 BPW)的7.60和GPTQ(2.28 BPW)的21.00的对比中,GPTQ甚至在某些任务上表现更好。其次,在零样本推理任务上,NANOQUANT虽然与部分QAT方法接近,但与最先进方法仍有差距:在Llama-3-8B上NANOQUANT为45.95%,而BF16为71.44%,HBLLM为50.45%。第三,作者承认虽然校准数据效率很高(128样本),但增加数据量和计算预算可能进一步提升在复杂推理任务上的表现。第四,自定义CUDA内核虽然在消费级GPU和边缘设备上表现出色,但在最新架构(如NVIDIA Blackwell GPU)上的优化空间尚待探索。最后,方法目前使用统一的秩(rank)参数,未针对不同层的敏感度差异进行自适应秩分配,这可能不是帕累托最优的。

独立分析的弱点

从独立分析的角度看,NANOQUANT存在几个值得改进的弱点。第一,固定秩策略:当前方法对所有线性层使用统一的秩r,但不同层对量化的敏感度差异很大(从消融实验中k_proj的0.47%翻转率到gate_proj的6.82%可以看出)。改进方向是设计自适应秩分配算法,如基于层间Hessian迹的敏感度分析来动态调整每层的秩,在总比特预算约束下最小化整体重建误差。第二,ADMM初始化的计算开销:虽然LB-ADMM比QAT高效得多,但对每个权重矩阵执行400步ADMM迭代(使用Cholesky分解)仍有显著计算开销。对于超大模型(如70B),仅初始化阶段就需要数小时。改进方向包括:探索更高效的近似求解器(如随机ADMM)、预计算Gram矩阵以复用跨层信息、或使用warm-start策略从相似层迁移初始化。第三,校准数据分布敏感性:论文Table 10显示不同校准数据分布对性能有显著影响,WikiText-2和C4上的零样本表现存在明显差异。改进方向是设计分布自适应的校准策略,或使用多域混合校准来提高鲁棒性。第四,缺乏对指令微调和RLHF模型的系统评估:论文主要评估基础模型,但实际部署中指令微调模型更为常见,量化对指令遵循能力的影响需要专门评估。

未来方向

基于本文的成果,可以从多个方向延伸研究。作者提出的未来工作包括:优化压缩运行时间、探索更大校准数据集的可扩展性、研究自适应跨层秩分配以进一步优化精度-比特帕累托前沿。从更广阔的视角看,还有以下方向值得探索:(1)将NANOQUANT的低秩二值表示与其他压缩技术(如稀疏化、知识蒸馏)结合,探索'低秩二值+稀疏'的混合压缩方案;(2)将LB-ADMM初始化应用于MoE(Mixture of Experts)模型的压缩,MoE模型因其稀疏激活特性可能更适合极端压缩;(3)针对特定硬件架构(如NVIDIA Blackwell、移动端NPU)优化二值计算内核,进一步释放亚1比特压缩的推理加速潜力;(4)探索NANOQUANT在多模态大模型(如视觉-语言模型)上的适用性,不同模态的权重可能需要不同的压缩策略;(5)研究亚1比特量化与推测解码(speculative decoding)的协同效果,在极小模型上实现更高吞吐的生成。

复现评估

NANOQUANT的复现条件相当友好。作者已在GitHub(github.com/SamsungLabs/NanoQuant)开源了完整代码。技术栈基于PyTorch和Transformers库,版本要求为torch=2.6.0、transformers=4.51.3、datasets=4.0.0、lm_eval=0.4.9、CUDA 12.4。算力方面,主要实验在单块NVIDIA H100(80GB)GPU上完成,压缩Llama-2-7B约需1.7-2.5小时,压缩70B模型约需13小时,这对大多数研究机构来说是可承受的。校准数据仅需128个样本(WikiText-2),数据量极小。超参数方面,作者使用了统一的配置(学习率1e-4到1e-6、批大小1-4、8个epoch、余弦学习率调度、400步ADMM),无需针对不同模型进行大量调参。自定义CUDA内核是复现的潜在障碍,但官方代码已包含完整的kernel实现。总体而言,复现难度为中等偏易——核心算法不复杂,主要挑战在于CUDA内核的编写和调试。