只需已有方法 1% 的数据,直接从权重矩阵拆出大模型任务回路

Sparse Weight Decomposition for Efficient Circuit Extraction

Chuanhao Yan, Xuhan Huang, Yawen Duan, Zhenfei Yin, Hang Zhao, Bryan Dai, Jie Fu

cs.LG, cs.CL

2026-08-05

SWD 把权重矩阵拆成两个稀疏因子、用中间坐标当回路单元,以不到对手 1% 的数据达到同等还原度,提取同等回路所需的活跃边更少。

这篇在解决什么

机制可解释性(mechanistic interpretability)想回答一个问题:模型做对一件事,靠的是哪些组件?这些组件构成「回路」(circuit)。要做这件事,你得能在模型里找到可以单独保留、也可以单独关掉的单元。但密集的预训练权重没有这样的天然单元,每个神经元都和所有维度相连,没法说清楚哪条边属于哪个功能。

已有的解法都得在原模型外面再搭一层。稀疏自编码器(SAE)和 Transcoder 要拿大量文本训练一个稀疏字典或替换网络,把激活拆成可解释特征,既费算力又会在「替换件」和原始模型之间留下一道保真度差距(fidelity gap)。稀疏预训练干脆从头训一个权重稀疏的模型,论文里说这要多花 100 到 1000 倍的训练和推理算力。绕这么大一圈,只为拿到一些能当回路单元用的东西。

这篇要问的是:能不能直接从已有的检查点权重里把单元拆出来,不用训练任何辅助表示?

方法

SWD(Sparse Weight Decomposition)的思路是把一个密集线性投影的权重矩阵 W 拆成两个稀疏因子,W ≈ AB。A 和 B 都是稀疏矩阵,中间共享一排坐标。第 i 个中间坐标就是一个「瓶颈单元」(bottleneck unit):它通过 A 的第 i 列读少量输入维度,算出一个标量 zi,再通过 B 的第 i 行写少量输出维度。整条路径 A:,i · Bi,: 是秩一的,只连着少数几个输入和输出坐标。

关键性质来自一个等式:hAB = Σ zi Bi,:。改掉第 i 个单元的 zi,只动求和里那一项,其他路径不受影响。这就让每个单元可以单独保留或单独消融,正好是回路提取需要的那种「可寻址单元」。

为什么是两个稀疏因子,而不是剪枝或 SVD?剪枝只能删掉标量边,造不出中间单元,没有可消融的对象。SVD 给你秩一组件,但每个组件的读写向量是稠密的,碰所有维度,单元的边数很高。SWD 押注的是「稀疏的读写结构」本身,而不是分解这件事。论文用一组对照证实了这点:用精确的 SVD 基或随机正交基做等价分解,达到同样还原度需要的活跃边比 SWD 多,说明省边的是稀疏性,不是分解。

分解的目标是在固定非零预算 K 下最小化 E[‖hW − hAB‖²],其中校准 Gram 矩阵 G = E[h⊤h] 把有限的拟合容量导向那些在模型激活分布上有分量的输入方向。求解用 Double Sparse Factorization(DSF)启发式:把预算切成给 A 和给 B 两份,交替固定一方更新另一方,每个子块用 ADMM 解(正则最小二乘、硬阈值投影到预算、对偶变量更新),最后冻结非零位置、重拟合幸存的 B 项。

还有一个零数据变体:拿不到校准激活时,把 G 设成单位矩阵,目标退化成 ‖W − AB‖²F,直接逼近原始权重矩阵。它牺牲一点行为保真度换权重保真度,可以在训练的每一步套用,适合做逐步分析。

和 Transcoder 的差别很清楚(论文 Table 1):Transcoder 是训练一个替换网络,单元是它的隐藏特征,激活稀疏,需要文本数据;SWD 是事后在单个矩阵上拟合稀疏因子,权重稀疏,几乎不要数据。

结果

单矩阵替换上,数据效率是最直观的。SWD(50% 稀疏度)用几千个 token 就把交叉熵增量压到很低,Transcoder 和 VPD 这类要训替换网络的方法要大约 10⁶ 个 token,SWD 用了不到它们的 1%。这在 GPT-2 和 Qwen2.5-0.5B/1.5B/3B 上都成立,单矩阵实验还扩到了 Qwen3.5-27B。

在保真度对齐(替换前后交叉熵差不超过 0.001)的前提下比回路成本,看的是达到同样的充分性(sufficiency,保留这些单元还剩多少任务行为)和必要性(necessity,消融它们掉多少行为)阈值需要多少活跃边。GPT-2 上四个任务(greater-than、IOI、docstring、gendered-pronoun)里,SWD 普遍用更少的活跃边达标,换用零消融(Appendix C.3)结论不变。Qwen2.5-3B 和 Qwen3.5-27B 上是同样的规律。

全模型替换在 GPT-2 Small 上做,把 12 个 transformer block、共 48 个注意力和 MLP 权重矩阵全换掉:

方法数据量活跃非零权重语言模型 CE
SWD419 万校准 token2677 万3.90
SWD-FT419 万校准 + 1638 万微调 token2677 万3.44
稀疏预训练28.84 亿 token2677 万3.45

SWD-FT 冻结非零位置、只重拟合非零项,CE 做到 3.44,略低于花了 28.84 亿 token 训出来的稀疏预训练检查点(3.45),而它总共只用了约 2060 万 token,不到对方的 1%。回路质量(图 7)上,greater-than 和 gendered-pronoun 三者大体相当,但稀疏预训练在 docstring 和 IOI 上必要性下降接近零甚至为负,SWD-FT 四个任务都还成立。

两组定性实验给「单元是否真有语义」提供了证据。GreaterThan 电路里 9208 个瓶颈单元按归因排序,展示出的 6 个里有 4 个和数字、数量或测量相关。定向编辑更抓人:对单元 c205 编辑「up 的反义词」这个提示,最强正设置下答案余量提升 0.216,而它在 7 条无关事实提示上的平均末位 KL 只有 4.02×10⁻⁵,比随机单元对照和秩四 LoRA 都低,说明改一个概念对别处几乎没影响。注意力诊断里,第 9 层第 3 头的 SWD 重建注意力与稠密版 KL 仅 0.0405,消融查询单元 q266 后注意力剧烈偏向首词,KL 升到 2.496,最大概率变化 0.775。

为什么重要

对做机制可解释性的人,拿到可寻址的回路单元这件事,从「训练一个吃几百万 token 的辅助模型」变成了「对检查点做一次事后矩阵分解」。门槛和算力开销都掉了一个量级,而且因为 SWD 直接拟合原始检查点权重而不是一个学出来的代理,替换件和真模型之间的那道保真度差距被压窄了。零数据变体还能在训练的每一步套用,打开了对训练过程做逐步分析的路子。

更实际的用法是定向干预:c205 那个例子说明,你可以用很小的副作用去拨一个概念,这对可操控性研究是个趁手的工具。

要诚实看待范围。这是一次方法效率上的改进,针对的是「单矩阵」和「GPT-2 级全模型」这个工作面,不是一个关于模型如何运作的新理论。你拆出来的回路仍然是局部的、非唯一的。

局限与存疑

论文自己把局限摆得很清楚,而且摆得比一般论文认真。

高效提取不等于完整理解。把单元拆得便宜,并不解决一个更根本的疑虑:大型非线性模型到底有没有一个紧凑的、人能看懂的机制描述。充分性和必要性证明的是被选中的单元对留出集任务余量有因果作用,不等于解释了整个模型,也不保证覆盖到那些罕见但和安全相关的样本。

回路是局部的且非唯一的。双因子稀疏矩阵分解要有可识别性需要额外的结构条件,即便如此也只能定义到不可避免的缩放和置换对称。SWD 没有给自己的近似分解建立这种条件,所以瓶颈单元会依赖目标、校准分布、初始化和稀疏预算。它干预的终究是近似替换 AB,不是精确的 W,匹配交叉熵只能控制平均漂移,不能保证每条输入都一致。一阶排序会漏掉行为上重要的边,均值消融的结论也会随干预和评测协议变化。

规模验证还开着口子。Qwen3.5-27B 只换了一个矩阵,全模型替换只在 GPT-2 Small 上做,语义审计只看了 6 个单元。

有一条要单独点出:充分性、必要性都是在「各自方法自己的替换件、对齐到相近预剪枝 CE」的受控协议下比的,「边更少」是这个协议内部成立的事实,换了图、阈值或读写表示可能就变。定向编辑虽然漂亮,但只有一个单元、一条提示,更像证据样本而非统计结论。

术语

原文与代码

社区讨论

相关论文

全部论文解读