ExTernD: 扩展秩三值分解——精度逼近任意量化水平的LLM训练后量化
摘要
ExTernD引入了一种扩展秩三值分解用于LLM训练后量化,通过使用具有自由内秩的因子化表示,使精度接近bf16。在Gemma-4和Qwen3.5等模型上,它以每个权重5.2-5.5有效比特达到Q4_K的精度。
arXiv:2607.13511v1 公告类型: 新论文
摘要:我们提出了ExTernD(扩展秩三值分解),一种训练后分解方法,将每个LLM权重矩阵 $A \in \mathbb{R}^{m \times n}$ 分解为 $A \approx B \mathrm{diag}(D) C$,其中三值因子 $B \in \{-1,0,+1\}^{m \times k}$,$C \in \{-1,0,+1\}^{k \times n}$,以及实值缩放向量 $D \in \mathbb{R}^k$。内秩 $k = \mu \min(m,n)$ 被有意扩展超过满秩($\mu > 1$),使得超过满秩的分量可以纠正前面分量的量化误差。我们证明残差随 $k$ 单调递减,并且可以降低到任意 $\varepsilon > 0$ 以下:ExTernD可以任意接近bf16精度,而任何具有固定平面数的三值方案都无法做到。内存和计算随 $\mu$ 连续扩展,因子稀疏度随阈值 $\tau$ 连续变化,因此可以精确达到精度目标,而不是四舍五入到下一个位宽。ExTernD在Gemma-4-E2B和Qwen3.5-4B上,以每个权重5.2-5.5有效比特(加入重要性权重后为5.1-5.5)匹配Q4_K的每个矩阵精度,并在 $\mu = 3$ 时对完整的Qwen3.5-4B进行转换,在wikitext-2上达到10.10的困惑度(bf16为9.78,高出+3.2%),将其置于约5.7有效比特的Q4_K/Q5_K精度区间。
查看缓存全文
缓存时间: 2026/07/16 04:22
# 扩展秩三元分解:精度接近任意量化级别的三元大语言模型训练后量化
来源:https://arxiv.org/html/2607.13511(2026年7月早期预印本)
###### 摘要
我们提出了**ExTernD**(扩展秩三元分解),一种训练后因式分解方法,将每个大语言模型的权重矩阵 \(A \in \mathbb{R}^{m \times n}\) 近似分解为 \(A \approx B \operatorname{diag}(D) C\),其中三元因子 \(B \in \{-1,0,+1\}^{m \times k}\)、\(C \in \{-1,0,+1\}^{k \times n}\) 以及一个实值缩放向量 \(D \in \mathbb{R}^k\)。*内秩* \(k = \mu \min(m, n)\) 被有意扩展至满秩以上(\(\mu > 1\)),使得超过满秩的分量能够纠正之前分量的量化误差。我们证明了残差在 \(k\) 增大时单调递减,并可降至任意 \(\varepsilon > 0\) 以下:ExTernD 可任意逼近 bf16 精度,这是固定平面数的三元方案无法做到的。内存和计算随 \(\mu\) 连续变化,因子稀疏度随阈值 \(\tau\) 连续变化,因此可以精确达到精度目标,而非四舍五入到下一个位宽。ExTernD 在 Gemma-4-E2B 和 Qwen3.5-4B 上,以 5.2–5.5 有效 bpw(加入重要性加权后为 5.1–5.5)匹配 Q4_K 的逐矩阵精度;对 Qwen3.5-4B 进行 \(\mu=3\) 的完整转换后,在 wikitext-2 上达到 10.10 的困惑度,而 bf16 为 9.78(相对增加 +3.2%),位于 Q4_K/Q5_K 精度区间附近,有效 bpw 约为 \(\sim 5.7\)。
## 1 引言
三元权重具有吸引力:矩阵乘法退化为加法和减法,存储接近每个权重 \(\log_2 3 \approx 1.58\) 比特。BitNet [1, 2] 表明,1 比特和 1.58 比特的大语言模型可以*从头训练*;三元权重网络 [3] 和训练三元量化 [4] 更早地在视觉模型中确立了这一格式。但一个单一的三元平面每个权重最多携带 1.58 比特信息,因此将全精度矩阵*训练后*投影到一个三元平面上会损失过多信息:推理能力会崩溃 [5]。PTQTP [5] 迈出了重要一步,使用了*两个*三值平面,即两个三元矩阵叠加并带有行级缩放,无需重新训练即可恢复大部分丢失的表达能力。但两个平面仍然是固定的容量预算,存在无法超越的上限,而二这个数字,或任何固定的平面数,并没有特殊之处。ExTernD 将固定数量的全尺寸平面替换为*因式分解*表示,其内维度 \(k\) 是一个自由参数:\(A \approx B \operatorname{diag}(D) C\),两个因子都是三元矩阵。设置 \(k = \mu \min(m, n)\)(通常 \(\mu=2\)–3.5,但无上限)使得表示具有所需的任意容量;每个附加分量拟合之前所有分量留下的残差,因此容量精确花费在三元约束造成损失的地方,且精度不受上限限制(第 2.1 节,附录 A 中有证明)。所有操作严格属于训练后:因式分解每次只处理一个权重矩阵,从不计算梯度。主流训练后量化方法(GPTQ [7]、AWQ [8]、llama.cpp k-quants)位于少量离散的精度/成本点上:每个权重 3、4、5 比特。由于 \(k\) 是实值秩而非位宽,ExTernD 的精度/成本权衡是连续的:内秩乘子 \(\mu\)(存储和计算均随其线性变化,第 2.6 节)和稀疏度阈值 \(\tau\)(控制 \(B\) 和 \(C\) 中零的比例,例如 \(\tau=0.7 \rightarrow \sim 41\%\) 零,\(\tau=1.0 \rightarrow \sim 57\%\),\(\tau=2.0 \rightarrow \sim 87\%\))均可针对每个矩阵设置为任意实数值,从而精确达到目标精度,而非向上取整到下一个位宽。
贡献:(i)ExTernD 及其贪心 ALS 算法,并证明了其误差在 \(\mu\) 增大时可降至任意 \(\varepsilon > 0\) 以下(附录 A),据我们所知,这是唯一一种能够证明可达到任何目标精度(直至 bf16)的三元量化方法,因此在 \(\mu\) 足够大时能够超越任何固定平面数的方法;(ii)一种带解耦目标的批量化块 ALS GPU 算法,匹配顺序质量的同时加速约 \(\sim 16\times\);(iii)一种使用 llama.cpp imatrix 统计信息的重要性加权变体,包括对 V 步的一个非显而易见的修正;(iv)在 Gemma-4-E2B、Qwen3.5-4B 和 Granite-4.0-h-tiny 上的实证研究,包括完整的端到端模型转换。
## 2 方法
### 2.1 扩展内秩
给定 \(A \in \mathbb{R}^{m \times n}\),我们寻找
\[
A \approx \hat{A} = B \operatorname{diag}(D) C, \qquad B \in \{-1,0,1\}^{m \times k},\; C \in \{-1,0,1\}^{k \times n},\; D \in \mathbb{R}^k.
\]
质量以保留能量报告:\(E = 1 - \|A - \hat{A}\|_F^2 / \|A\|_F^2\)。使用实数因子时,\(k = \min(m, n)\) 就足够了(SVD)。使用三元因子时,每个秩一分量 \(d_i b_i c_i^\top\) 是一个粗糙的量化对象;当 \(k = \min(m, n)\) 时,表示遇到信息天花板,远低于全精度。核心思想是持续添加分量*超过满秩*:分量 \(i\) 拟合残差 \(R = A - \sum_{j < i} d_j b_j c_j^\top\),因此超过满秩的分量专门用于拟合之前量化误差。当 \(k > \min(m, n)\) 时,联合拟合所有分量是欠定的,并完全失败(在我们的消融实验中能量为 0–50%,而使用消减法则为 96–100%)。由于 \(\mu\) 无上限且残差随 \(\mu\) 单调变化(附录 A),固定平面数方法所施加的精度上限在此并不存在:任何目标精度均可通过构造达到,而非靠拟合的运气。
### 2.2 三元化算子与连续稀疏度
对于 \(u \in \mathbb{R}^m\),带阈值 \(\tau\) 的自适应均值阈值三元化为
\[
T_\tau(u)_i = \operatorname{sign}(u_i) \cdot \mathbf{1}\!\big[\,|u_i| > \tau \cdot \tfrac{1}{m} \textstyle\sum_j |u_j|\,\big],
\]
若结果为全零则保留最大单个条目。\(\tau\) 连续且几乎与矩阵无关地控制因子稀疏度。最优三元投影 \(\arg\min_{t, \alpha} \|u - \alpha t\|_2\) 具有闭式解(对 \(|u|\) 排序,保留前缀 \(s^\star\) 以最大化 \(\frac{1}{\sqrt{s}} \sum_{i \leq s} |u|_{(i)}\)),但经验上与 \(T_{0.7}\) 相当,因此我们使用更便宜的阈值形式。
### 2.3 贪心顺序 ALS
初始化残差 \(R \leftarrow A\),对于 \(i = 1,\dots,k\):
1. *交替三元拟合*(15 次迭代):\(v \leftarrow T_\tau(R^\top u)\),\(u \leftarrow T_\tau(R v)\)。
2. *最优缩放*:\(d_i = \dfrac{u^\top R v}{\|u\|_2^2 \|v\|_2^2}\),即 \(\|R - d u v^\top\|_F\) 的最小二乘极小化。
3. *消减*:\(R \leftarrow R - d_i u v^\top\);存储 \(B_{:,i} = u\),\(C_{i,:} = v^\top\)。
第 2 步保证了 \(\|R\|_F^2\) 永不增加(附录 A),这正是使得 \(\mu\) 成为行为良好的旋钮的原因:更多分量单调意味着更少误差,直至精确恢复。
### 2.4 批量化块 ALS(GPU)
以块大小 \(b\)(默认 256,上限为 \(\lfloor \min(m, n)/8 \rfloor\))提取分量,将每个分量的向量工作转化为块矩阵乘法。天真的批量化——对 \(R^\top U\) 按列进行三元化——会崩溃(在 \(b=256\) 时能量从 99.5% 降至 50%):每一列都在追逐同一个主导残差方向。修复方法是针对*联合解耦的最小二乘目标*进行三元化:
\[
V \leftarrow T_\tau\!\Big(\big[(U^\top U + \varepsilon I)^{-1} U^\top R\big]^\top\Big), \qquad U \leftarrow T_\tau\!\Big(R V (V^\top V + \varepsilon I)^{-1}\Big),
\]
这样每个分量都针对减去其块内同伴贡献后的残差进行拟合(块内隐式消减;精确块求解代替 Gauss–Seidel)。在交替迭代之后,所有 \(b\) 个缩放因子被联合精确求解:
\[
\big[(U^\top U) \odot (V^\top V)\big] d = \operatorname{diag}(U^\top R V),
\]
然后 \(R \leftarrow R - U \operatorname{diag}(d) V^\top\)。*跨块*的消减保持完全顺序。块宽度必须满足 \(b \lesssim \min(m, n)/8\),否则三元 Gram 矩阵会变得病态。
**精炼扫描**。提取后,重新访问每个块(将其贡献加回 \(R\),重新运行块拟合,再次消减)能单调提升能量:在困难矩阵上经过 10 次扫描后约 \(+0.4\) 个百分点,并且达到固定能量所需的乘子减少 4–8%(在 \(\tau\) 较大时更多)。
### 2.5 重要性加权 ALS
Frobenius 误差对所有输入通道等权重;但激活并非如此。给定来自 llama.cpp 重要性矩阵(imatrix)的每个输入通道的二阶矩 \(h\),我们最小化 \(\sum_{ij} \tilde{h}_j (A_{ij} - \hat{A}_{ij})^2\),其中 \(\tilde{h} = h / \max(h) + \lambda\)。U 步和联合缩放求解可以直接推广(目标 \(W = R \odot \tilde{h}\),Gram 矩阵 \(V^\top \operatorname{diag}(\tilde{h}) V\));它们是精确的加权正规方程。但 V 步*并非*如此:针对 \(W\) 求解会导致加权能量比非加权算法损失 0.3–1.8 个百分点,因为 \(\tilde{h}\) 的重新缩放使得低重要性通道在覆盖整个分量的阈值下失去支持。在列加权目标中,\(\tilde{h}\) 在 V 步中抵消,因此正确的 V 目标是普通残差 \(R\)。\(\lambda\) 在均匀目标(\(\lambda \to \infty\))和纯 imatrix 目标(\(\lambda = 0\))之间连续插值;\(\lambda = 0\) 匹配 llama.cpp imatrix 量化所优化的目标,在实践中稳定。
### 2.6 成本模型
推理计算 \(y = B(\operatorname{diag}(D)(C x))\):\(k(m+n)\) 次三元加/减法加上 \(k\) 次乘法,对比 \(mn\) 次乘加运算,比值为 \(\mu (m+n) / \max(m, n)\),随 \(\mu\) 线性变化(因此连续)。使用稀疏掩码+符号打包(每个存储元素一个 1 比特零/非零掩码,每个非零元素一个符号比特,\(\mathrm{bpw} = 2 - \mathrm{sparsity}\)),每个*原始*权重的存储为
\[
\mathrm{bpw}_{\mathrm{eff}} = \mu \cdot \frac{m+n}{\max(m, n)} \cdot (2 - \mathrm{sparsity}),
\]
同样关于 \(\mu\) 线性,且通过稀疏度关于 \(\tau\) 连续。这种打包接近非结构化支持集的熵下界(掩码熵 \(H(0.43) \approx 0.99\) 比特;符号不可压缩)。
## 3 结果
设置:矩阵来自 google/gemma-4-E2B、Qwen/Qwen3.5-4B 和 IBM Granite-4.0-h-tiny。本文中的所有实验(分解、乘子搜索、全模型转换以及所有困惑度评估)均在单块 AMD MI50 32 GB GPU(torch/ROCm)上运行。Q4_K 基线是 llama.cpp 的 `quantize_row_q4_K_ref`(4.5 bpw)的忠实 torch 移植版本。
### 3.1 能量 vs. 乘子;批量化 = 顺序
**表 1:** 在 \(\tau=0.7\) 时保留的能量(%)。注意力投影所需的内秩远小于 MLP。批量化算法(第 2.4 节)在每块矩阵上与顺序算法相差 \(\pm 0.2\) 个百分点以内,同时运行六矩阵套件仅需 10.5 秒,对比 170.9 秒(约 \(\sim 16\times\))。
在 Qwen3.5-4B 上,\(\mu=2.5\)、\(\tau=0.7\)、10 次扫描:MLP 达到 99.21–99.26%,v_proj 99.52%,o_proj 99.78%。相同算法,更容易的模型;在固定 \(\mu\) 下可达到的能量强烈依赖于模型。
### 3.2 两个旋钮良好地相互影响
在固定 99% 能量目标下扫描 \(\tau\):稀疏度连续上升(\(\tau=0.7\) 时 41% 到 \(\tau=2.0\) 时 87%),同时所需 \(\mu\) 上升(up_proj:2.82 到 7.21)。*非零预算* \(\mu \times\) 密度单调下降(1.65 到 0.87):具有更多分量的更稀疏因子需要更少的非零总数来达到相同能量,直到在 \(\tau=2.5\) 附近收敛悬崖。在使用掩码+符号打包(公式 5)的情况下,零也花费掩码比特,最优点在 \(\tau=1.0\)(约 \(\sim 57\%\) 稀疏度)。
### 3.3 匹配 Q4_K 精度时的有效比特数
Q4_K 在两个模型的每块矩阵上均实现了引人注目的 99.4–99.5% 均匀能量。为精确匹配该能量选择每个矩阵的 \(\mu\):
**表 2:** 在 Q4_K 匹配能量下每个原始权重的有效比特数,无扫描。约 \(\sim 20\%\) 的差距在形状和模型间一致:Qwen 在绝对能量上更容易,但 Q4_K 也以相同幅度提升,因此差距是算法的属性,而非测试模型。注意力始终需要远小于 MLP 的秩(\(\mu \approx 2.0\)–2.7 对比 \(\approx 3.0\)–3.4)。
由于打包接近熵下界,缩小这一差距是*乘子*问题,而非编码问题:达到同等质量需要约 \(\sim 17\%\) 更低的 \(\mu\)。精炼扫描贡献约 \(\sim 5\%\);重要性加权(下一步)再独立贡献约 \(\sim 4\%\)。
### 3.4 重要性加权
使用修正后的 V 步(第 2.5 节)在 \(\lambda=0\) 时,加权在 imatrix 偏斜时帮助最大:在 Granite-4.0-h-tiny 上,v_proj 加权能量从 96.55% 提升至 98.95%(+2.40);平坦的 imatrix 张量不变。在 Qwen3.5-4B 上,达到 99.5% 加权能量所需的秩乘子在 MLP gate/up 和 v_proj 上下降 2–8%,在 gated-DeltaNet 投影上下降 4.5–7.4%,这是最佳区域,因为它们的 qkv/out 输入重要性严重偏斜。在加权度量下重新计算等 Q4_K 核算:平均 bpw_eff 从 5.49 降至 5.26(-4.2%),最佳张量为 5.08–5.14,将 Q4_K 差距从约 \(\sim 22\%\) 缩小至约 \(\sim 17\%\) 总体,在最佳张量上为 13–15%。
### 3.5 端到端模型转换
Qwen3.5-4B 的所有 200 个语言模型线性层(96 个 MLP、32 个注意力、72 个 gated-DeltaNet)使用加权算法以固定 \(\mu=3\)、\(\tau=1.0\)、\(\lambda=0\)、无扫描进行分解,在单 GPU 上总耗时 19.9 分钟。每张量能量:普通最小值/均值 98.52%/99.45%,加权 99.34%/99.65%。
**表 3:** 首次完整的端到端验证(llama-perplexity,580 个块,所有校准行使用相同的 imatrix)。分解后的模型是连贯的;在比特数和校准匹配的情况下,目前落后于纯 Q5_K 约 \(\sim 1.5\) 个相对 PPL 点。已知的杠杆均未在此转换中应用:精炼扫描、逐矩阵 \(\mu\) 分配(等质量 \(\mu\) 分布在张量间为 2.3–3.0,而此运行使用了平坦的 \(\mu=3\)),或基于 PPL 调整的 \(\tau/\lambda\)。纯阶梯还显示,经过调优的 Q4_K_M 混合模式在比特数更少的情况下优于纯 Q5_K。相似文章
CAT-Q: 用于LLM的高效且准确的三值量化
CAT-Q 提出了一种面向LLM的训练后三值量化方法,该方法使用可学习调制和软化三值化技术,仅需512个校准样本即可实现优于BitNet 1.58-bit的性能,并可扩展到235B参数规模。
我尝试了三元分解而不是量化。它的效果与q4km一样好,但占用稍多的VRAM。同时完全是三元,且完全是PTQ(无QAT)
作者声称,三元分解的性能与Q4_K_M量化一样好,同时使用稍多的VRAM,并且完全是三元和PTQ,无需QAT。
Qift: 移位友好的无零点W2训练后量化,用于旋转W2A4/KV4大语言模型推理
本文介绍了Qift,一种固定的无零点两位权重量化层级集,专为Hadamard旋转的大语言模型设计,通过利用旋转权重的近零中心高斯类分布,实现了改进的W2A4/KV4推理。在LLaMA-2-7B和LLaMA-3.1-8B上的实验显示,相比于标准W2量化,困惑度持续提升。
2-bit QAT 模型发布
关于2位量化感知训练(QAT)在更大规模MoE模型上的潜力的讨论,比较其与4位QAT及三元LLM的性能,并探讨在消费级硬件上的可行性。
Tequila:一种面向大语言模型的无陷阱三元量化方法
本文介绍了Tequila,这是一种针对大语言模型的无陷阱量化方法,通过将陷入死区的权重重新利用为动态偏置,提高了三元量化的准确性和推理速度。