摘要本文解读 ICML 2024 论文《BiLLM: Pushing the Limit of Post-Training Quantization for LLMs》。该论文提出BiLLM一个面向预训练大模型的一比特后训练量化PTQ方案通过融合Hessian 结构列选择、二进制残差近似与钟形分布最优断点拆分把 LLM 权重平均位宽首次压到1.08 bit其特别之处在于对不同重要性的权重做差异化二值化而不是一刀切。实验表明LLaMA2-70B 在 1.08 bit 下 WikiText2 困惑度仅 8.41甚至超越全精度的 OPT-66B9.34相比 PB-LLM 位宽降低 35%、性能提升 49.4%–77.0%为内存受限场景的端侧大模型部署提供了重要借鉴。视频讲解点击观看 B 站视频摘要论文基本信息背景与动机为什么 1 bit 量化这么难研究主线从问题到结论基准/方法设计差异化二值化的两套方案方法细节残差近似与最优断点拆分分类全景一比特 LLM 的三条技术路线实验设计与结果1.08 bit 全面超越基线分布、搜索与存储实证附录精华织入结果对比总结关键发现局限性常见问题FAQBiLLM 是什么1 bit 量化为什么难BiLLM 与 PB-LLM 的区别是什么为什么用 Hessian 而不是权重幅度选显著权重BiLLM 有开源代码吗BiLLM 的局限是什么参考链接论文基本信息项目内容标题英文BiLLM: Pushing the Limit of Post-Training Quantization for LLMs标题中文把大模型权重量化压到 1 bit后训练二值化极限作者Wei Huang, Yangdong Liu, Haotong Qin, Ying Li, Shiming Zhang, Xianglong Liu, Michele Magno, Xiaojuan Qi机构香港大学 · 北京航空航天大学 · ETH Zürich会议ICML 2024arXivhttps://arxiv.org/abs/2402.04291项目网站https://github.com/Aaronhuang-778/BiLLM背景与动机为什么 1 bit 量化这么难大模型部署的第一瓶颈是内存。以 LLaMA2-70B 为例半精度FP16存储需要约 150 GB至少两张 80 GB 的 A100 才能跑推理。量化是压缩权重的主流手段其中后训练量化PTQ不需要反向传播与微调一条命令即可完成是最实用的压缩路线。但现有 PTQ 方法在 8 bit、4 bit 上表现良好一旦压到 3 bit 以下就性能崩坏RTN 与 GPTQ 在 1–2 bit 时困惑度高达 $10^4$–$10^6$完全不可用最接近二值化的 PB-LLM 需要保留超过 30% 的权重为 INT8 才能产出合理回答平均位宽仍高达 1.7 bit。BiLLM 先做了一个经验研究发现预训练 LLM 权重有两个关键分布特征Hessian 灵敏度长尾海森矩阵二阶信息呈极端长尾分布极少数权重元素主导层输出大多数接近 0权重幅度钟形权重值呈类高斯/拉普拉斯的钟形分布绝大多数聚集在 0 附近。推论很直接少数权重重要多数权重冗余而在钟形分布上做最极端的二值化量化误差也最严重。BiLLM 的思路就是按重要性与分布形态差异化处理显著权重保精度非显著权重保压缩。图 1LLaMA-13B 在 WikiText2 上不同位宽的困惑度。RTN、GPTQ、PB-LLM 在超低位宽下急剧退化BiLLM 在二值化下保持良好性能。研究主线从问题到结论图 14BiLLM 研究主线问题→动机→发现→设计→方法→实验→结论Mermaid 流程图基准/方法设计差异化二值化的两套方案BiLLM 的方法本质是异构分解差异化处理把权重矩阵按 Hessian 灵敏度分解为显著salient与非显著两类子群体各自配一套二值化策略并证明差异化显著优于统一处理。两套设计与代价如下设计处理对象核心策略额外位宽代价设计一显著权重约 1%–5%结构化列搜索 二进制残差近似约 0.1 bit设计二非显著权重约 95%–99%钟形分布最优断点拆分两区分别二值化1 bit 分组标识 1/块大小公共组件全部权重块级 OBC 误差补偿GPTQ 风格无显著性度量使用 Hessian 灵敏度 $s_i w_i^2/[\mathbf{H}^{-1}]_{ii}^2$其中 $\mathbf{H}$ 是每层海森矩阵、$w_i$ 是权重元素——这比单纯看权重幅度更准确能捕捉元素对输出的真实影响。方法细节残差近似与最优断点拆分第一步结构化列搜索。逐元素选择显著权重需要额外的 1-bit 位图索引而显著权重仅占 1%–5%很不划算。BiLLM 观察到敏感列在特定列上集中于是按列显著性降序排列从 3 列到 30 列逐个尝试取使量化误差 $|\mathbf{W} - (\alpha_{\text{sal}}\operatorname{sign}(\mathbf{W}{\text{sal}}) \cup \alpha{\text{uns}}\operatorname{sign}(\mathbf{W}_{\text{uns}}))|^2$ 最小的列数。搜索与残差合计只带来约 0.1 bit 的额外位宽。图 2BiLLM 整体框架。左侧为二值化后的 Transformer 块右侧为显著权重残差近似与非显著权重钟形拆分两条流程。第二步二进制残差近似。显著权重数量少但动态范围大直接二值化误差大保留为 INT8/FP16 又会拉高平均位宽。BiLLM 对显著权重做两轮二值化先整体二值化得 $\alpha_o^\mathbf{B}_o^$对残差再二值化得 $\alpha_r^\mathbf{B}_r^$最终近似为 $\mathbf{W} \approx \alpha_o^\mathbf{B}_o^ \alpha_r^\mathbf{B}_r^$。可以严格证明残差方案的误差 $\mathcal{E}_{rb} \leq$ 直接二值化误差即误差可证下降。图 3Salient 权重二值化原始权重先二值化得 B1残差再二值化得 B2两轮相加逼近原值。第三步最优断点拆分。去掉显著权重后剩余权重分布更接近对称钟形。二值化是最极端的均匀量化在非均匀分布上损失大。BiLLM 找单一断点 $p$ 把非显著权重分成集中区 $A_c[-p, p]$ 与稀疏区 $A_s$两区分别二值化优化目标为 $p^* \arg\min_{p} \theta_{q,p}^2$。在理想高斯分布下该问题是凸函数、存在全局最优实际分布有偏差因此用百分位搜索在 $0.1\times\max|W|$ 到 $0.9\times\max|W|$ 之间扫描。图 4LLaMA2-7B 第 4 个投影层的分布与拆分。顶部 5% Hessian 元素为橙色最优断点把非显著权重分成稀疏区与集中区。第四步块级误差补偿。沿用 GPTQ/OBC 的块级补偿每块二值化误差 $\mathbf{E} (\mathbf{W}^b - \mathbf{B}^b)/\mathbf{H}^c$ 通过海森逆矩阵回传到后续块。完整算法流程预处理 $\mathbf{H} 2\mathbf{X}\mathbf{X}^{\top}$ 并 Cholesky 分解逐块执行显著性矩阵计算 → top-k 列搜索 → 残差近似 → 断点搜索 → 两区二值化 → OBC 补偿。额外位开销为 $N_{\text{param}} 2r_{\text{salient}} 1(1-r_{\text{salient}})$ 与 $N_{\text{storing}} 1 1/b_{\text{size}}$10% 结构选择配 128 块大小参数位宽 1.1 bit、硬件标识位 1.008 bit且标识位不参与计算——实际算力开销仍是纯 1 bit。分类全景一比特 LLM 的三条技术路线图 151-bit LLM 三条技术路线PTQ 二值化 / QAT 二值化 / 原生预训练 / 轻量再训练Mermaid 流程图实验设计与结果1.08 bit 全面超越基线评测协议。模型覆盖 OPT1.3B–66B、LLaMA7B–65B、LLaMA27B–70B、Vicuna7B/13B四大家族数据用 WikiText2、PTB、C4 困惑度以及 PIQA、BoolQ、OBQA、Winogrande、ARC-e、ARC-c、Hellaswag 七个零样本任务基线为 RTN、2 bit GPTQ、1.7 bit PB-LLM10% 显著权重块大小 128单张 A100-80GB 一次量化完成无微调。主表WikiText2 困惑度越低越好模型FP16GPTQ 2bitPB-LLM 1.7bitBiLLMOPT-66B9.3482.1029.0912.061.11 bitLLaMA-65B3.5325082.8812.538.491.09 bitLLaMA2-70B3.3274395.4228.378.411.08 bitVicuna-13B—41.75362.1736.571.08 bit1 bit 下 GPTQ 与 RTN 的困惑度高达数万完全不可用1.08 bit 的 LLaMA-65B / LLaMA2-70B8.49 / 8.41甚至超越了 FP16 OPT-66B9.34这是二值化首次逼近全精度。图 5LLaMA-7B、LLaMA2-7B、OPT-6.7B 在 PTB 与 C4 上的困惑度对比BiLLM 在更低配置下表现最好。消融实验。分解验证两个设计只做残差近似或只做拆分都显著差于完整版OPT-6.7B 对拆分更敏感LLaMA-7B 对残差近似更敏感——两者互补缺一不可。图 6salient-only 与 splitting-only 消融两设计均显著提升二值化精度且互补。Zero-Shot 精度LLaMA-7B数据集GPTQ 2bitPB-LLM 1.7bitBiLLM 1.09bitPIQA52.854.661.2BoolQ50.059.762.7OBQA28.230.431.8Winogrande49.350.651.1ARC-e26.628.236.0ARC-c29.524.625.7Hellaswag26.328.736.87 个零样本任务中 BiLLM 全面领先ARC-c 以约 1 个百分点劣势为唯一例外说明 1 bit 模型不止困惑度好看在真实推理任务上也占优。块大小消融WikiText2 PPL模型5122561286432LLaMA-7B74.1448.9135.0427.2317.56LLaMA2-7B52.9043.6932.4820.1213.58OPT-6.7B151.8184.4235.3633.3620.48块越小精度越高但缩放因子开销越大128 是位宽与精度的最佳平衡点。存储开销OPT-30B配置BiLLMPB-LLM 10%GPTQ 2bit平均位宽1.111.72.0内存占用vs FP169.70%16.50%13.30%WikiText2 PPL12.7125.1415.71模型体积方面LLaMA-7B 13.5 GB → 1.5 GBLLaMA2-70B 129.3 GB → 15.4 GB接近 10 倍压缩OPT-30B 内存占用只有 2 bit GPTQ 的约 69.9%精度还更高。分布、搜索与存储实证附录精华织入分布洞察。论文用 OPT-1.3B 首个块与 LLaMA-7B 第六个块验证分布规律的普遍性权重密度蓝都是钟形海森密度橙都是长尾Q、K、V 与输出投影层的显著元素集中成列前馈层较分散——这正是结构化列选择可行的前提。图 7LLM 中权重的 Hessian 灵敏度与幅度分布钟形分布伴随少量 salient 极值。搜索曲线验证。OPT-6.7B 首个 Transformer 块的列搜索曲线显示多数层只选少量列就达到最小误差输出投影层需要的列更多非显著权重的断点搜索曲线整体呈凸函数与理论最优一致证明剩余分布确实接近高斯/拉普拉斯。图 8OPT-6.7B 首块 salient 列块级搜索曲线多数层仅需少量列即达最小误差。图 9OPT-6.7B 非 salient 分布最优断点搜索曲线整体凸函数与理论最优一致。存储位开销分析。左图显示计算参数位宽随显著比例上升右图显示硬件标识位随块变小而增加10% 选择配 128 块时参数位宽 1.1 bit、标识位 1.008 bit且标识位不参与计算。图 10LLaMA-7B 的权重与硬件开销左图为计算参数随显著比例变化右图为硬件开销随块大小变化。对话示例。二值化 LLaMA-13B / Vicuna-13B 的语言补全与问答能力明显优于保留 10% INT8 的 PB-LLM绿色合理、红色不当说明 1 bit 模型在真实交互场景同样可用。图 11二值化 LLaMA-13B / Vicuna-13B 对话示例与 PB-LLMINT8 10%对比。更多分布实证。OPT-1.3B 各线性层的密度形态高度一致证明钟形长尾是模型级普遍规律Hessian top-10% 元素在注意力层集中成明显的列带状、在 FFN 层较散列集中性正是结构化选择可行的前提。图 12OPT-1.3B 首个 Transformer 块各层权重密度蓝与 Hessian 密度橙分布。图 13OPT-1.3B 前 5 个块 Hessian 矩阵 top-10% 元素分布注意力层集中成列FFN 层分散。结果对比总结图 16结果对比GPTQ 2bit70B PPL 7.4 万→ PB-LLM 1.7bit28.4→ BiLLM 1.08bit8.41超越 FP16 OPT-66B9.34Mermaid 流程图关键发现极限压缩成真首次把 LLM 后训练量化平均位宽推到 1.07–1.11 bitOPT/LLaMA/LLaMA2/Vicuna 全覆盖。超越全精度LLaMA2-70B 1.08 bit 困惑度 8.41低于 FP16 OPT-66B 的 9.34。全面碾压 PB-LLM位宽降 35%1.7 → 1.08–1.11 bitOPT 各尺寸性能提升 49.4%–77.0%。近 10 倍压缩LLaMA2-70B 从 129.3 GB 降到 15.4 GBOPT-30B 内存占用仅为 FP16 的 9.7%。残差近似误差可证下降$\mathcal{E}_{rb} \leq$ 直接二值化误差断点问题在理想高斯下为凸函数。消融证明差异化必要两个设计互补不同模型敏感度不同统一处理不可行。局限性只二值化权重激活仍为 FP16未实现 XNOR-Net 式权重激活全二值化。GEMM 硬件化难细粒度分组使二值矩阵乘难以直接硬件实现位运算加速停留在理论层面。额外标识位列搜索比例与分组标识带来约 0.1 bit 开销$N_{\text{storing}} 1 1/b_{\text{size}}$。块大小敏感LLaMA-7B 从块 32 到 512困惑度 17.56 升到 74.14需按模型调参。指标以困惑度为主零样本任务仅 7 个缺少大规模生成式任务评测。作者展望的方向包括二值化 GEMM 内核、与 QAT/蒸馏结合、激活低比特化——后续 OneBit、BitNet 等工作正是沿这些方向推进。常见问题FAQBiLLM 是什么BiLLM 是 ICML 2024 提出的一比特后训练量化方案用 Hessian 结构列选择、残差近似和钟形分布最优拆分把 LLM 权重平均位宽压到 1.08 bit 而保持可用精度。1 bit 量化为什么难二值化是最极端的均匀量化而 LLM 权重呈钟形分布且存在显著长尾一刀切二值化在非均匀分布上误差最大RTN/GPTQ 在 1 bit 下困惑度会暴涨到 $10^4$–$10^6$。BiLLM 与 PB-LLM 的区别是什么PB-LLM 需要保留 30% 以上权重为 INT8 兜底平均位宽 1.7 bitBiLLM 把显著权重也二值化残差近似非显著权重按分布拆分平均位宽降到 1.08 bit性能反而提升 49.4%–77.0%。为什么用 Hessian 而不是权重幅度选显著权重权重幅度只看数值大小Hessian 灵敏度 $s_i w_i^2/[\mathbf{H}^{-1}]_{ii}^2$ 衡量元素对输出的真实影响能捕捉到幅度小但影响大的权重选择更准确。BiLLM 有开源代码吗有官方实现位于 https://github.com/Aaronhuang-778/BiLLM。BiLLM 的局限是什么只量化权重、激活仍为 FP16二值化 GEMM 硬件化难结果对块大小敏感目前以困惑度评测为主下游任务覆盖有限。参考链接BiLLM 论文arXivhttps://arxiv.org/abs/2402.04291BiLLM 官方代码https://github.com/Aaronhuang-778/BiLLMGPTQAccurate Post-Training Quantization for Generative Pre-trained Transformershttps://arxiv.org/abs/2210.17323OneBitTowards Extremely Low-bit Large Language ModelsNeurIPS 2024https://arxiv.org/abs/2402.11295BitNetScaling 1-bit Transformers for Large Language Modelshttps://arxiv.org/abs/2310.11453The Era of 1-bit LLMsAll Large Language Models are in 1.58 Bitshttps://arxiv.org/abs/2402.17764给大家推荐一款自用写文献综述、无虚构文献的 AI复旦大学 FudanNLP 团队自研 切问学术官网qiewenpaper.com覆盖3.6 亿篇可溯源真实中英文文献能自动整合文献观点生成规范综述还能挖掘研究创新点、复现实验配合视频教学新手快速上手文献综述写作后记博客的关键词集中在编程、算法、机器人、人工智能、数学等等持续高质量输出中。讨论QQ群白拾的小屋 (750365700)⭐B站账号白拾的物理AI组会活跃于知识区和动画区✨GitHub主页YhbCode000工程文件