Bonsai / 量化 / Google 先压缩再训练 — 技术底层对比

开源模型实施技术:Bonsai / 量化 / Google先压缩再训练

三项技术的核心目标都是降低模型部署成本(显存/推理速度),但底层理论路径完全不同。


一、Bonsai 技术 —— 极低位权重重编码

代表实现

PrismML(Caltech 孵化,获 Google/Samsung 投资)推出的 Bonsai 27B,将阿里 Qwen3.6-27B 的权重压缩到 1-bit 或 1.71-bit(三元值)。

底层理论

核心来自 Caltech 教授 Babak Hassibi 的 低位神经网络压缩 研究:

  • 把每个权重从 FP16 重新编码为 三元值 {-1, 0, +1}纯二进制 {-1, +1}
  • 整个 network(embedding、attention、MLP、LM head)全部用低位表示,没有回退到高精度的 fallback 层
  • FP16 下 54GB 的 Qwen3.6-27B → 三元版 5.9GB / 1-bit 版 3.9GB

本质

权重编码方式的重构 —— 不是训练一个小模型,也不是剪枝/蒸馏,而是把同一个模型的权重用更高效的数值编码表示。精度损失:三元保留 94.6% baseline,1-bit 保留 89.5%。


二、量化技术 —— 数值精度降级

主流方案对比

方法核心原理典型工具精度保留
GPTQ后训练量化,基于二阶梯度(Hessian)优化量化误差,逐层补偿AutoGPTQ、vLLM~98% (4-bit)
AWQ激活感知量化,识别对输出敏感的 1% 权重通道保留 FP16,其余量化AutoAWQ、vLLM~98% (4-bit)
GGUF统一文件格式 + k-quant 分段量化方案,不同层用不同 bit 数llama.cpp~95-98% (取决于量化级别 Q2~Q8)
BitsAndBytesNF4 归一化浮点 4-bit,QLoRA 结合,支持训练时量化Hugging Face bnb~95% (4-bit)

底层理论

方法数学本质
Absmax 量化权重除以最大值映射到 [-127, 127] → INT8。损失来自均匀量化的舍入误差
Zero-point 量化非对称映射:min→0, max→255,适合 ReLU 后的数据分布
Group-wise 量化按组(如 128 个权重一组)分别算 scale/zero-point,细粒度减少误差
GPTQ 底层最优脑损伤(OBD)思想:用 Hessian 矩阵估计每个权重的"重要性",量化时优先保护重要权重
AWQ 底层观察到激活值大的通道对量化更敏感 → 只保护 1% 的 salient channels
GGUF k-quant重要性感知的混合精度:attention/head 用更多 bit,其他用更少

本质

数值精度与模型质量的 trade-off —— 不改变模型结构或权重数量,只是把每个数值用更少的 bit 表示。信息损失是信息论意义上的量化噪声。


三、Google "先压缩再训练" —— UC Berkeley / ICML 2020

原文

Train Large, Then Compress: Rethinking Model Size for Efficient Training and Inference of Transformers — Zhuohan Li, Eric Wallace 等, UC Berkeley BAIR, ICML 2020。

核心发现(反直觉)

  1. 大模型收敛更快 —— 虽然大模型每步更慢,但收敛需要的步数更少,整体训练更省算力
  2. 大模型抗压缩 —— 大模型对量化和剪枝的鲁棒性更强,压缩后精度损失更小
  3. 最优策略 —— 训练极大模型,但提前停止(不训练到收敛),然后大幅度压缩

底层理论

  • 大模型的"超参数化"性质使其存在大量冗余容量(over-parameterization)
  • 在训练早期,模型学到的是通用特征(对压缩鲁棒),而在训练后期学到的是细粒度特征(对压缩敏感)
  • 因此提前停止 + 压缩 = 保留通用特征 + 抛弃后期过拟合的细粒度
  • 数学上:大模型的 Hessian 谱更平坦 → 对权重量化/剪枝的扰动更不敏感

本质

训练策略的重新设计 —— 不是模型结构创新,也不是编码优化,而是:用更大的模型、更短的训练周期、更狠的压缩 来同时优化训练和推理效率。


四、三者的本质区别

维度Bonsai量化Google 先训后压
操作对象已训练好的权重数值已训练好的权重数值训练策略 + 权重数值
压缩粒度1-bit / 1.71-bit(极限低位)4-bit / 8-bit(主流)8-bit 或更低(利用大模型鲁棒性)
是否需要重训练❌ 不需要❌ 不需要(PTQ) / ⚠️ 需要(QAT)✅ 需要重新设计训练过程
精度损失来源极低位编码的信息论容量上限均匀/非均匀量化的舍入误差提前停止丢失的信息 + 压缩噪声
数学基础编码理论 + 神经网络压缩信号处理 + 信息论 + 最优脑损伤超参数化理论 + 优化收敛分析
本质权重编码重构数值精度降级训练策略重设计
类比同样一张照片 → 从 BMP 转 WebP 极端压缩同样一张照片 → 从 32-bit 降到 8-bit 色深拍照时故意用更高像素但只拍半秒 → 后期压成小图

五、实际落地中的协同关系

这三者不互斥,在现代开源模型部署中常组合使用:

Google 策略:
  train large model → stop early → compress
                                      │
                        ┌───────────────┴───────────────┐
                        │                               │
                    量化 (GPTQ/AWQ)                Bonsai 式极限压缩
                    (4-bit, 保留~98%)             (1-bit, 保留~90%)
                        │                               │
                    GGUF 文件格式封装               手机端/边缘部署
                    (llama.cpp 推理)                (iPhone 3.9GB)

Bonsai 是量化的一种极端特例(1-bit / ternary),而 Google 的方法论指出了什么时候应该选择压缩 —— 训练阶段就要为压缩做准备,而不是训练完才想怎么压。