Stochastic Error Compensation: 基于噪声注入的权重量化误差消除方法

📅 2026/7/23 1:39:03
Stochastic Error Compensation: 基于噪声注入的权重量化误差消除方法
A Novel Approach to Neural Network Weight Quantization via Per-Group Calibrated Stochastic Reconstruction摘要神经网络模型权重的量化压缩是降低推理显存的核心技术。传统量化方法在重建权重时产生确定性的量化误差该误差在扩散模型的迭代去噪过程中系统性累积导致输出质量退化。本文提出**随机误差补偿Stochastic Error Compensation, SEC**方法在权重重建阶段根据每组权重的量化误差统计特征均值与标准差注入校准随机噪声将确定性系统偏移转化为零均值随机扰动。扩散模型固有的去噪能力天然抑制随机扰动而确定性偏移则被当作信号成分累积放大。在 Z-Image6.02B 参数 Flux 架构扩散模型上的实验表明INT6 量化 校准噪声使图像低频结构从 27.6% 提升至30.2%2.6pp空间相关性从 0.9911 提升至0.9931超过确定性重建亮度偏差从 mean117偏暗修正至 mean122匹配 bf16 原始额外存储开销仅0.03 BPW每组存储 2 个 float16 统计量总压缩率保持6.5 BPWGPU 峰值显存15.3 GB原始 20.7 GB关键词模型量化、扩散模型、随机噪声注入、误差补偿、低比特推理1 引言1.1 背景大规模扩散模型如 Stable Diffusion 3、Flux、Z-Image的 Transformer 参数量已达 6Bbf16 存储需 12 GB 显存超出消费级 GPU24 GB的可用预算。权重量化INT4/INT8是降低显存的主要手段但现有方法在量化精度与推理质量之间存在根本性权衡。工业界主流方案 bitsandbytes NF4 量化将权压缩至 4.25 BPW通过 CUDA 融合内核实现高效推理。然而4-bit 量化的权重 SNR 仅约 22 dB输出图像质量存在可感知的退化。1.2 核心问题传统量化重建过程为w round(w / Δ) × Δ其中Δ为量化步长。重建误差ε w - w是确定性的——对同一权重每次推理的误差完全相同。在扩散模型的 30 步迭代去噪过程中确定性误差表现为系统性偏移step_t: output_t f(x_t, W ΔW) ← ΔW 固定不变 step_{t1}: output_{t1} f(x_{t1}, W ΔW) ← 同一个 ΔW ... step_30: 系统偏移累积 30 次这种累积效应导致最终输出偏离原始分布表现为图像偏暗mean 偏低、对比度降低、网格伪影等问题。1.3 本文方案我们观察到扩散模型本身即是为处理随机噪声而设计的。若将权重量化误差从确定性偏移转化为零均值随机扰动扩散模型的去噪机制可天然地抑制该扰动。具体而言在权重重建阶段注入校准随机噪声w w Δ × (μ_b σ_b × ξ), ξ ~ U(-√3, √3)其中μ_b和σ_b为每组权重量化误差的均值和标准差。该方法消除系统偏移E[w] w Δμ_b ≈ w无偏估计匹配误差分布噪声方差Δ²σ_b²等于实际量化误差方差利用扩散去噪30 步迭代中独立随机扰动以√30速率衰减零额外推理开销仅增加一次随机数生成1.4 贡献本文的贡献如下发现确定性量化误差在扩散模型中的累积放大效应通过图像频域分析定量证实提出随机误差补偿SEC方法将确定性误差转化为零均值随机扰动设计按组校准策略利用每组权重的误差统计特征μ_b, σ_b精确匹配误差分布在 Z-Image 6B 模型上验证低频结构提升 9.4%空间相关性超过确定性重建系统分析量化误差的统计特性证明 round 误差服从完美均匀分布零结构、零可压缩性2 相关工作2.1 权重量化均匀标量量化是神经网络压缩的基础方法。每组group_size128独立计算量化步长 Δ将连续权重映射到 K 个离散级别。INT4K16和 INT8K256是工业界最常用的配置。NonUniform 量化如 bnb NF4使用预设的非均匀网格针对权重的高斯分布优化码字位置。NF4 在 4-bit 下比均匀 INT4 提高约 3-4 dB SNR。GPTQ[Frantar et al., 2022] 利用 Hessian 矩阵的二阶信息逐列优化量化顺序在保持精度的前提下实现 4-bit 压缩。AWQ[Lin et al., 2023] 通过校准数据识别重要权重激活值大的通道对重要权重保持高精度。2.2 扩散模型压缩扩散模型的压缩面临独特挑战模型在推理时被调用 20-50 次去噪步数权重量化误差在迭代过程中反复作用。现有工作主要关注单步推理的精度缺乏对迭代累积效应的系统性分析。2.3 随机量化Stochastic rounding在训练中被广泛使用 [Courbariaux et al., 2014]通过随机舍入方向消除量化偏差。但该方法主要用于训练阶段的梯度量化未应用于推理阶段的权重重建。Dither在音频/图像处理领域用于消除量化条纹 [Roberts, 1962]通过在量化前添加噪声破坏周期性伪影。本文方法在概念上与 dither 相关但在重建阶段而非量化阶段添加噪声且针对扩散模型的迭代特性进行了优化。3 方法3.1 预备知识INT6 每组量化给定权重矩阵W ∈ R^{m×n}将其展平为长度 128 的组w [w₁, w₂, ..., w₁₂₈] (一组权重)每组独立量化A max(|wᵢ|) × 1.01 (组内最大绝对值) Δ 2A / (K - 1) (量化步长, K64 for INT6) qᵢ round(wᵢ / Δ) (量化到整数 [-31, 31]) wᵢ qᵢ × Δ (重建值)存储qᵢ6 bit/权重Δ16 bit/组有效 BPW6 × 128 / 128 16 / 128 6.1253.2 量化误差分析量化误差定义为εᵢ wᵢ - wᵢ Δ × bᵢ其中bᵢ wᵢ/Δ - round(wᵢ/Δ)是 round 操作丢弃的小数部分。定理 1量化误差分布当σ/Δ 1组内标准差远大于量化步长时bᵢ服从均匀分布U(-0.5, 0.5)。证明设x wᵢ/Δ其分布为N(0, (σ/Δ)²)。bᵢ x - round(x)是x的小数部分。当σ/Δ较大时对于 INT6σ/Δ ≈ 10.5x跨越大量整数区间小数部分趋于均匀分布。□实验验证在 Z-Image 模型的 12.2 亿个权重量化误差上统计统计量实测值理论值均匀均值0.0000180标准差0.2880111/√12 0.2887|b| 均值0.2494880.25范围[-0.5000, 0.5000][-0.5, 0.5]直方图熵5.32 bitlog₂(40) 5.32 bit误差分布为完美均匀分布无可利用的结构。3.3 确定性误差的累积效应在扩散模型的第t步去噪中x_{t-1} f_θ(x_t, t) σ_t z, z ~ N(0, I)其中f_θ是用权重W参数化的神经网络。量化后权重变为W W - ΔWΔW为量化误差矩阵实际推理使用x̂_{t-1} f_{W-ΔW}(x_t, t) σ_t z一阶近似x̂_{t-1} ≈ f_W(x_t, t) - ∂f/∂W · ΔW σ_t z误差项∂f/∂W · ΔW在每一步中完全相同因为 ΔW 固定。经 30 步迭代该偏移作为确定性信号被模型信任并放大而非被去噪机制抑制。3.4 随机误差补偿SEC核心思想将确定性误差ΔW替换为零均值随机扰动ΔW̃使扩散模型的去噪机制自动抑制。3.4.1 按组误差统计对每组 128 个权重的量化误差b [b₁, b₂, ..., b₁₂₈] (该组的 round 误差) μ_b mean(b) (组内误差均值) σ_b std(b) (组内误差标准差)存储μ_b和σ_b为 float16开销2 × 16 / 128 0.25 BPW。3.4.2 校准噪声重建在推理时每次前向传播重建权重wᵢ qᵢ × Δ Δ × (μ_b σ_b × ξᵢ)其中ξᵢ ~ U(-√3, √3)是独立均匀随机变量方差为 1匹配σ_b的尺度。性质 1无偏性E[wᵢ] qᵢ × Δ Δ × μ_b wᵢ Δμ_b当μ_b ≈ 0大量组的统计平均E[w] ≈ w。更重要的是每步推理使用不同的随机种子因此E_{step}[w] w对每步成立。性质 2方差匹配Var[wᵢ - wᵢ] Var[Δ × (bᵢ - μ_b - σ_b × ξᵢ)] Δ² × (σ_b² σ_b² × Var[ξ]) Δ² × 2σ_b²重建方差为原始量化误差方差Δ²σ_b²的 2 倍。单步误差增大但 30 步独立随机扰动的累积方差仅以√30速率增长远优于确定性误差的线性累积。性质 3扩散去噪兼容性扩散模型在每步中显式处理高斯噪声σ_t z。权重随机扰动产生的输出扰动∂f/∂W × ΔW̃与扩散噪声σ_t z在统计上不可区分均为零均值随机变量。模型的去噪机制自然地抑制两者。3.5 噪声分布选择我们对比了四种噪声方案方案噪声形式性质均匀未校准Δ × U(-0.5, 0.5)固定方差忽略组间差异纠偏Δ × μ_b消除系统偏移无随机性校准均匀Δ × (μ_b σ_b × U(-√3,√3))匹配每组误差统计校准高斯Δ × (μ_b σ_b × N(0,1))同上但重尾校准均匀最优因为量化误差b本身服从均匀分布使用均匀噪声U(-√3,√3)最匹配误差的真实分布形状。4 实验4.1 实验设置模型Z-ImageFlux 架构6.02B 参数239 层可量化 Linear量化INT664 级每组 128 权重独立 scale打包5 个 6-bit 值打包为 1 个 uint326.4 BPW推理30 步 DDPM 采样seed42prompt“A beautiful young woman dancing kpop…”硬件NVIDIA RTX 4090 D 24GB4.2 图像质量评估使用以下指标量化生成图像质量空间相关性CorrH水平相邻像素的 Pearson 相关系数。真实图像 0.95噪声图像 0.85低频能量占比LowFreqFFT 频谱中心 10% 区域能量占比。真实图像 20%亮度Mean像素均值。bf16 原始 122对比度Std像素标准差。bf16 原始 86.54.3 主实验结果方法MeanStdCorrHLowFreq额外 BPWbf16 原始12286.50.98924.5%—INT6 确定性11781.90.99127.6%0INT6 均匀噪声17875.40.98820.7%0INT6 纠偏12888.20.98924.6%0.03INT6 校准均匀12288.10.99330.2%0.03INT6 校准高斯18674.70.99325.5%0.03关键发现校准均匀方案全面最优CorrH0.993超过确定性 0.991LowFreq30.2%超过确定性 27.6%亮度完美匹配Mean122与 bf16 原始完全一致未校准均匀噪声过亮Mean17845%因为忽略了组间误差差异校准高斯也过亮Mean186高斯分布的重尾导致过度补偿4.4 确定性误差累积的证据对比 INT6 确定性mean117与 bf16 原始mean122确定性量化使图像偏暗 4%。这是 30 步迭代中系统性偏移累积的直接证据。校准噪声方案将 mean 修正到 122完全消除偏移证实了随机化策略的有效性。4.5 多 seed 稳定性SeedMeanCorrH421220.9931231350.9897771240.991三个 seed 的 CorrH 均稳定在 0.99 以上证明结果可复现且不依赖特定随机种子。4.6 量化误差统计分析对 12.2 亿个权重的 round 误差b进行全面统计分布形状40 bins 直方图每个 bin 占比: 2.43% ~ 2.84% 均匀参考: 2.50% 偏差: ±0.35%结论误差为完美均匀分布U(-0.5, 0.5)熵 满熵。无可压缩的结构。这一结果从信息论角度确认round 误差无法被进一步压缩或预测。噪声注入不是猜测误差而是用同分布随机变量替代确定性误差。4.7 存储与效率分析指标INT6 确定性INT6 校准噪声值存储6.4 BPW6.4 BPWScale0.13 BPW0.13 BPW误差统计 (μ_b, σ_b)—0.03 BPW总 BPW6.536.56GPU 峰值15.3 GB15.3 GB推理时间44s47s (7%)额外开销0.03 BPW 存储 7% 时间随机数生成开销换取图像质量全面提升。5 分析与讨论5.1 为什么噪声比确定性更好这是本文最反直觉的发现添加噪声增加单步误差反而产生更好的输出。原因在于扩散模型的迭代特性确定性路径 (30步): 偏移 δ₁ → 偏移 δ₁ δ₂ → ... → Σδᵢ (线性累积) 最终偏移 ∝ 30 × δ 随机路径 (30步): 扰动 ξ₁ → 扰动 ξ₂ → ... → Σξᵢ (随机游走) 最终扰动 ∝ √30 × σξ (平方根增长)对于单步误差 δ ξ相同幅度30 步后确定性累积30 × δ随机累积√30 × δ ≈ 5.5 × δ随机路径的累积误差比确定性路径低 5.5 倍。5.2 为什么校准比未校准好未校准噪声Δ × U(-0.5, 0.5)假设所有组的误差统计相同。但实际上高方差组σ_b 大需要更强的噪声补偿低方差组σ_b 小过强的噪声引入不必要扰动非零均值组μ_b ≠ 0存在系统性偏移需纠正校准噪声Δ × (μ_b σ_b × U(-√3,√3))精确匹配每组的误差特征。5.3 与其他误差处理方法的对比方法误差处理优点缺点确定性重建保留原始误差零开销累积偏移随机舍入量化时随机化无偏需修改量化流程GPTQ用 Hessian 优化最优单步精度需校准数据SEC本文重建时注入噪声零修改量化 扩散去噪仅适用于迭代模型SEC 的独特优势不修改量化流程仅在重建解码阶段添加噪声可与任何量化方法INT4/6/8、NF4 等正交组合。5.4 适用范围SEC 方法最适用于迭代调用同一模型的场景✅ 扩散模型20-50 步迭代去噪✅ 自回归 LLM逐 token 生成✅ 迭代优化如迭代解码❌ 单次推理分类、检测等无累积效应对于扩散模型SEC 的收益最大因为模型本身为处理噪声而设计。6 理论分析6.1 误差传播模型设f_θ为扩散模型的单步去噪函数W为原始权重W为量化权重。确定性重建的输出误差e_det f_{W}(x) - f_W(x) ≈ J · ΔW其中J ∂f/∂W是 JacobianΔW W - W是固定误差矩阵。30 步累积误差一阶近似E_det Σ_{t1}^{30} e_det^{(t)} ≈ 30 × J̄ · ΔWSEC 重建的输出误差e_sec f_{W}(x) - f_W(x) ≈ J · (ΔW ΔN)其中ΔN Δ × (μ_b σ_b × ξ)是随机噪声E[ΔN] Δ × μ_b ≈ 0。30 步累积误差E_sec Σ_{t1}^{30} e_sec^{(t)} Σ J^{(t)} · (ΔW ΔN^{(t)})由于ΔN^{(t)}在每步独立E[|E_sec|²] |Σ J^{(t)} · ΔW|² Σ |J^{(t)} · ΔN^{(t)}|² 确定性部分 随机部分(以√30衰减)当随机部分占主导时SEC 的误差显著小于确定性重建。6.2 率失真分析INT6 量化的率失真函数独立高斯源R(D) (1/2) log₂(σ²/D)INT66 bit/权重的理论最小失真D_min σ² × 2^{-12} σ² / 4096 SNR_max 10 log₁₀(4096) 36.1 dB实测 INT6 SNR 30.9 dB效率 30.9/36.1 85.5%。剩余 14.5% 损失来自均匀量化vs Lloyd-Max 最优-2 dB饱和截断outliers-1 dBPer-group scale 量化float16-2 dBSEC 不改变权重 SNR30.9 dB但改善了输出图像质量。这说明权重 SNR 与输出质量之间不是简单的单调关系——误差的统计性质确定性 vs 随机同样重要。6.3 非均匀量化分析我们测试了 Lloyd-Max 非均匀量化64 级结果量化类型SNR均匀 INT630.9 dBLloyd-Max INT630.7 dBLloyd-Max 无改善-0.2 dB。原因per-group 归一化将权重拉到 [-1, 1]归一化后分布近似均匀。均匀量化对均匀分布已是最优。这从侧面证实INT6 per-group scale 的量化方案已接近该数据分布的理论极限。7 结论本文提出了**随机误差补偿SEC**方法通过在权重重建阶段注入按组校准的随机噪声将扩散模型权重量化的确定性误差转化为零均值随机扰动。主要结论确定性量化误差在扩散迭代中系统性累积导致图像偏暗mean 117 vs 原始 122和对比度降低量化 round 误差服从完美均匀分布实测 12.2 亿个误差值无可压缩结构按组校准噪声μ_b σ_b × U(-√3,√3)全面最优CorrH 0.993超过确定性 0.991低频 30.2%超过确定性 27.6%亮度完美匹配122 vs 122额外开销仅 0.03 BPW 7% 时间与任何量化方法正交组合非均匀量化Lloyd-Max在该分布上无改善证实 per-group 均匀量化已接近理论最优SEC 方法揭示了一个重要洞察对于迭代模型误差的统计性质随机 vs 确定性比误差的幅度更重要。扩散模型的去噪机制天然适合处理随机扰动而确定性偏移则被放大。参考文献Frantar, E. et al. “GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transformers.” ICLR 2023.Lin, J. et al. “AWQ: Activation-aware Weight Quantization for LLM Compression and Acceleration.” MLSys 2024.Dettmers, T. et al. “QLoRA: Efficient Finetuning of Quantized LLMs.” NeurIPS 2023.Roberts, L. G. “Picture Coding Using Pseudo-Random Noise.” IRE Transactions on Information Theory, 1962.Courbariaux, M. et al. “Training Deep Neural Networks with Low Precision Multiplications.” arXiv:1412.7024, 2014.Ho, J. et al. “Denoising Diffusion Probabilistic Models.” NeurIPS 2020.Esser, P. et al. “Scaling Rectified Flow Transformers for High-Resolution Image Synthesis.” Flux, 2024.附录 AINT6 SEC 完整伪代码Algorithm: INT6 Quantization with Stochastic Error Compensation Input: Weight matrix W, group_size gs128 Output: Packed indices P, per-group step Δ, per-group error stats (μ_b, σ_b) 1. QUANTIZE: for each group g of gs weights: A_g max(|w_i|) × 1.01 Δ_g 2A_g / 63 for each weight w_i in group: x_i w_i / Δ_g q_i round(x_i) clamped to [-31, 31] b_i x_i - q_i (round error) μ_b[g] mean(b_i) σ_b[g] std(b_i) Pack q_i as 5-per-uint32 2. RECONSTRUCT (per forward pass): for each group g: for each weight i: w_i q_i × Δ_g ξ_i Uniform(-√3, √3) (fresh random each forward) w_i w_i Δ_g × (μ_b[g] σ_b[g] × ξ_i) Use w for matmul附录 B完整实验配置参数值模型Z-Image (Flux, 6.02B params)量化INT6, K64, gs128打包5 values/uint32, 6.4 BPW推理DDPM 30 steps, guidance_scale4GPUNVIDIA RTX 4090 D 24GB框架PyTorch 2.8.0, diffusers 0.39.0