Summary

Patchscopes: A Unifying Framework for Inspecting Hidden Representations of LMs

  • 核心: 把一个隐藏状态 从原 prompt 里 patch 到一个专门设计的 target prompt 的某个位置上,让模型自己用自然语言”把这个表示读出来”——一个统一 lens / probing / causal tracing 的 inspection 框架。
  • 方法: 用五元组 (target prompt、target 位置、映射函数、target 模型、target 层)参数化一次 inspection;不同配置=不同已有方法,新配置=新工具。
  • 结果: Token Identity Patchscope 在第 10 层起 next-token 预测估计上比 Logit/Tuned Lens 最高提升 98%;zero-shot 属性抽取在 12 个任务中 6 个显著超过 trained probe;并新解锁早层 entity resolution 可视化 + multi-hop 纠错(50% vs CoT 35.71%)。
  • Sources: paper | website | github
  • Rating: 3 - Foundation —— lens/probing/patching 家族的”统一场论”,把零散的解码方法收编进一个 5-参数配置空间,是可解释性方法谱系上的奠基性 reframing。

Key Takeaways:

  1. 统一视角: Logit Lens、Tuned Lens、Future Lens、LRE Attribute Lens、Causal Tracing、Attention Knockout 都是 Patchscopes 配置空间里的点。这把”五花八门的解码 trick”压缩成一个 quintuplet,是本文最大的 conceptual 贡献。
  2. 解码=让模型自己说: 关键 move 是放弃”把 投影到 vocabulary”或”训 probe”,改成把 patch 进一个鼓励复述/描述的 target prompt,用模型自身的生成能力做开放词表、免训练、表达力更强的解码。
  3. Detach from context: patch 到一个新 prompt 会切断原 context 的 contextualization,因此框架揭示的是”该表示本身能被解码出什么”——但 patch 后的 forward 仍可能补充信息,所以这不是纯净的”表示内容”读取(见点评)。
  4. 早层是 sweet spot: vocabulary projection 在早层崩溃,而 Token Identity / entity-description Patchscope 在早层显著更强,第一次让”输入 contextualization 的逐层过程”可被自然语言 verbalize。
  5. 跨模型 patching: 用更强的同族大模型 解读小模型 的表示是可行的(需学一个 affine 对齐),暗示同族模型的 representation space 大体可对齐。

Teaser. Figure 1 — Patchscopes 框架四步:把 source prompt 里 “CEO” 的隐藏状态 patch 进一个 few-shot 复述 target prompt(cat→cat; 135→135; ...; ?),让模型解出 “Jeff Bezos”。


框架:一次 inspection = 一个五元组

被检查的对象由四元组 确定:在模型 上跑 source 序列 ,取第 层、第 个位置的隐藏状态 (这些状态都活在 residual stream 里)。

一次 Patchscope 干预由一个 quintuplet 定义:

符号说明 = target prompt( 个 token); = 要被替换的 target 位置; = 映射函数(identity / 学到的线性或 affine / 更复杂); = target 模型( 层); = target 层。

含义:在 时,把第 层位置 的表示动态替换为 ,即 ,然后继续往后算。当 (恒等)时退化为最朴素的 same-model patching。这本质是把 activation patching 从”定位”用途重新定向为”解码/翻译”用途——作者明确说 patching 本身不新,新的是把它做成一个可配置、可表达的 inspection 工具(见原文 §3.2 脚注 2)。

❓ 框架自己承认:patch 之后的 forward computation 可以给表示”补料”,所以解码成功不能证明信息原本就完整存在于 里——它只证明”该表示 + post-patching 计算”足以解出信息。这是一个 confound,作者用”detach context 切断了 source prompt 的进一步贡献”来部分缓解,但 target prompt 的 few-shot demonstrations 同样在喂信息。这点在做 faithfulness claim 时要小心(见 faithfulness)。

Patchscopes 收编了哪些已有方法

Figure 2 (rw_table). 多种 inspection 方法都是 Patchscope 的特例——绿色行是克服了早层失效 / 表达力不足 / 需训练数据等缺陷的新配置。

vocabulary projection 家族——把表示投影到输出词表:

符号说明 是 unembedding 矩阵。含义:这恰好是”把任意源层 映射到最后一层 “的一类 Patchscope,差别只在

方法 的形式在框架里的位置
Logit Lens (nostalgebraist 2020)identity ,无训练
Tuned Lens (Belrose 2023)学到的 affine 同上, 需训练
Linear Shortcuts (Din 2023)学到的 linear早退出加速
Future Lens (Pal 2023) 的特定 target prompt
LRE Attribute Lens (Hernandez 2023)基于 relation-linearity 的 属性抽取

computation-intervention 家族——Causal Tracing 是”用加了 Gaussian noise 的 source prompt 当 target prompt”;Attention Knockout / 零向量 patching(IOIACDC、Geva 2023)是 。都能写成 Patchscope 实例(详见原文附录 Tab. 4)。

这正是本文在我们「方法谱系」线上的位置:它把 logit lens / probing / 多种 decoding 统一为”把目标 hidden state patch 进一个新 prompt,让模型自己用自然语言解码它”——是 lens 家族的泛化与统一。区别于单纯定位的 patching,它把 patching 变成 read-out 接口。


实验:四类 inspection + 一个应用

4.1 解码 next-token prediction —— Token Identity Patchscope

新配置:target prompt 用 个 token 复述 demonstration tok1→tok1; tok2→tok2; …; ?,把要查的 patch 到末尾 ? 位置。它与 lens 的关键差异:lens 是”跳过 之间的计算直接 unembed”,而这里保留 的完整计算、只丢弃除 patched 表示外的所有 source 信息——靠模型自己的 decoding pipeline 把表示读成 token,无需训练。

Figure 3 (ntp). Precision@1(↑)/ Surprisal(↓):第 10 层起,Token Identity(ours)在 LLaMA2-13B / Vicuna-13B / Pythia-12B / GPT-J-6B 上一致超过 Logit Lens 与 Tuned Lens;18–22 层增益最高达 98%。

前 10 层所有方法都差(此处正在做输入 contextualization),Token Identity 与 Logit Lens 持平、Tuned Lens 因额外训练略好。结论:中后层的隐藏表示无论原 context 如何,大多已携带最终预测信息

4.2 属性抽取 —— Zero-Shot Feature Extraction Patchscope

把知识写成三元组 (subject / relation / object),target prompt 用 的自然语言模板 + 占位符 x(如 The largest city in x),把 subject 末 token 的表示 patch 到 x 位置,看生成是否包含 。对比 trained logistic-regression probe。这是对 probing 范式的直接挑战:免训练、开放词表、能借模型非线性捕捉复杂关系(probe 受限于线性 + 预定义类别)。

Table 1. 属性抽取准确率(GPT-J 6B,mean±std):zero-shot Patchscope 在 12 个任务中 6 个显著优于 probe(∗∗: p<1e−5),其余 5 个持平、仅 1 个明显落后。

TaskProbePatchscope
Fruit inside color37.4 ± 6.638.0 ± 18.7
Fruit outside color35.5 ± 3.171.0 ± 13.3∗∗
Object superclass65.6 ± 10.554.8 ± 11.3
Substance phase73.8 ± 3.791.9 ± 1.7∗∗
Task done by tool10.1 ± 3.248.1 ± 13.2∗∗
Company CEO5.0 ± 2.647.8 ± 13.9∗∗
Country currency17.7 ± 2.251.0 ± 8.9∗∗
Food from country5.1 ± 3.763.8 ± 11.3∗∗
Plays pos. in sport75.9 ± 9.172.2 ± 7.2
Plays pro sport53.8 ± 10.346.3 ± 14.2
Product by co.58.9 ± 7.263.2 ± 10.7
Star constellation17.5 ± 5.318.4 ± 5.1

一个有意思的层间规律:Patchscope 在早/中层稳定胜出,落后几乎都发生在后层——作者解释为后层表示已偏向 next-token prediction,属性信息反而不易经模型计算读出(与 LRE 的 Hernandez 2023 发现一致)。这也解释了 Patchscope 较大的 std。

4.3 早层 entity resolution 可视化

target prompt 用 few-shot 描述模板 subject1: desc1, …, x,把 subject 末位置表示按层 patch 到 x,看模型逐层怎么”描述”这个 subject。这是已有方法做不到的:vocabulary projection 早层失效,probing 只能给固定类别的二元信号。

Figure 4 (entity_resolution). RougeL(生成描述 vs Wikipedia)随层变化:前 ~5 层相似度上升后缓降;popular entity 显著高于 rare entity;跨模型 7B→13B(绿)普遍优于 7B→7B(蓝)。

定性例子(Vicuna-13B,=“Diana, Princess of Wales”,逐层生成):第 1–3 层只解出 “Wales / 英国的一个国家”,第 4–5 层升到 “Princess of Wales(未指明谁)“,第 6 层才完整解析为 “Diana, Princess of Wales (1961–1997)…”。逐层把更远的上下文 token 整合进当前表示的过程被自然语言显式 verbalize 出来——这是 lens/probe 给不出的东西。

❓ RougeL 在 5 层后下降,作者归因为 placeholder token x 在早层的残留污染(多 token 生成时未来位置仍能 attend 到 x)。这意味着 entity-description Patchscope 的多 token 解码本身带 artifact,定量曲线的”下降段”未必反映表示内容变化,而是方法噪声。

4.4 跨模型 patching 提升表达力

Figure 5 (x-model). 跨模型 patching 示意:把 的表示喂进更强的同族

next-token 与 entity resolution 两个实验都显示:当 同族时,用学到的 affine 对齐两者的层,可以用大模型解读小模型的表示,且 source→target 在对角线附近精度最高、patch 到大模型早层最有效。但对 Pythia(小模型本就强于大模型)跨模型无增益——说明这招吃” 确实更 expressive”这个前提。

5. 应用:修 multi-hop reasoning 错误(CoT Patchscope)

针对”每一跳单独都对、组合起来错”的 multi-hop query()。CoT Patchscope 把可能编码 的表示 reroute 到 的位置,等价于 并调 attention mask 让两段互不可见,从而在不显式生成推理步的前提下纠正最终答案。

Figure 6 (multihop). CoT Patchscope 示例:query “The current CEO of the company that created Visual Basic Script”——通过把中间答案 (Microsoft) 重路由,解出 “Satya Nadella”。

结果:Patchscope 50.0% > CoT baseline 35.71% > vanilla 19.57%(Vicuna-13B,1104 个样本中 46 个满足”两跳各自可答”的筛选)。作者诚实地强调这是 proof-of-concept 而非要和 CoT 竞争:它利用了合成数据里”该往哪 patch”的先验结构,且 CoT 通过生成多步本质上扩展了模型的计算能力(Merrill & Sabharwal 2024),而 Patchscope 只做 次 forward——两者不直接可比。


关联工作

基于

  • Activation Patching: 框架的物理操作就是 patching;本文的 reframing 是把它从 localization(“这个 activation 重不重要”)转成 read-out(“这个 activation 能解出什么”)。
  • Logit Lens / Tuned Lens / Future Lens: vocabulary-projection lens 家族——Patchscopes 证明它们都是” 取不同形式”的特例,并指出其早层失效与”只能给 token 分布、表达力弱”的硬伤。
  • Causal Tracing / Attention Knockout: causal-intervention 家族(IOI 的 knockout、ACDC 的自动 circuit 发现),被收编为 或 noised-target 的 Patchscope。

对比

  • Probing classifiers: §4.2 的直接对标对象。Patchscope 的卖点是免训练 + 开放词表 + 借非线性,针对 probe”需监督、类别需预先已知、线性受限”三个痛点。
  • Chain-of-Thought: §5 的参照而非竞品;作者明确两者计算复杂度不同,不构成公平比较。

方法相关

  • Causal Mediation: causal tracing 的理论底座,本框架的 intervention 语义与之同源。
  • Linear Representation Hypothesis: Tuned Lens 的 affine 、LRE Attribute Lens 的 relation-linearity 假设都建立在”表示可线性读取”之上;Patchscope 用”让模型自己解码”绕开了对线性可读性的强假设,但 cross-model 对齐又退回到 affine。
  • 后续谱系: 沿”用模型解释模型”这条线,可与 Representation Engineering(表示层 steering)、Attribution Graphs(用 replacement model 做电路级解释)对照——Patchscopes 是其中”自然语言 read-out”这一支的统一原型。

论文点评

Strengths

  1. Conceptual unification 干净有力: 用一个五元组把横跨 lens / probing / causal tracing 的方法装进同一配置空间,这是真正的 insight(不是 +0.3% SOTA)。它让”下一个解码方法”从发明 trick 变成”在配置空间里选点”,simple 且 generalizable。
  2. 免训练 + 开放词表的解码: 放弃 probe / 学习型 lens 的监督依赖,直接借模型生成能力,实用且 scalable;早层增益(98%)填补了 lens 的盲区。
  3. 诚实的 scope 表述: §5 主动声明 multi-hop 是 proof-of-concept、不与 CoT 竞争,并指出计算复杂度差异;§4.3 主动暴露 placeholder 污染。这种自我设限在”看起来很能打”的论文里少见。

Weaknesses

  1. “解码成功 ≠ 信息原本在表示里”的 confound 未被彻底处理: post-patching forward 与 target prompt 的 few-shot demonstrations 都在注入信息。框架揭示的是”表示 + 解码计算”的联合可读性,而非表示本身的内容。把结果当作” 里存了 X”会 over-claim(faithfulness 问题)。
  2. target prompt 是手工 craft 的、效果对它敏感: 每个 objective 都要人工设计 target prompt,且作者自承”如何最优地用 target prompt(最好自动化)“是 open problem。这削弱了 generalizability——本质上把 probe 的”训练”成本转移成了 prompt engineering 成本。
  3. 跨模型只在同族验证: cross-model patching 依赖学到的 affine 对齐且只在同族(Vicuna 7B/13B)成功,跨架构是否成立完全 open;对 Pythia 还失效。这暴露了”representation space 可对齐”的前提很脆。
  4. 评测范围窄: 主体实验集中在 GPT-J / Vicuna / Pythia / LLaMA2 的 6–13B 区间、autoregressive transformer,且多 token 解码用 RougeL/包含匹配这类宽松指标。早层 entity resolution 的定量曲线还混入了 placeholder 污染。

可信评估

Artifact 可获取性

  • 代码: 开源(inference/analysis 用途),位于 PAIR-code/interpretability 的 patchscopes 子目录(monorepo,含多个项目)。
  • 模型权重: 未自训模型;全部用公开 checkpoint(LLaMA2-13B、Vicuna-7B/13B、GPT-J-6B、Pythia-12B)。
  • 训练细节: 本文无需训练大模型;Tuned-Lens 风格的 affine 映射拟合细节、各 Patchscope 的 target prompt 模板与超参在附录 §B–§F 给出(高层 + 关键超参)。
  • 数据集: 公开——Pile(eval)、Hernandez 2023 的 commonsense/factual triplets、PopQA、WikiText-103。

Claim 可验证性

  • 可信Token Identity 在中后层超过 lens(up to 98%): 多模型 Fig. 2 曲线 + Precision@1/Surprisal 指标,grounding 充分。
  • 可信zero-shot 属性抽取在 6/12 任务显著超 probe: Table 2 带 t-test + Bonferroni 校正,统计上严谨。
  • 存疑“Patchscope 揭示表示里编码了什么信息”: 受 post-patching 计算 + target prompt 注入的 confound 影响,应读作”可解码性”而非”内容存在性”。
  • 存疑早层 entity resolution 的逐层定量趋势: 受 placeholder x 污染,RougeL 下降段可信度打折;定性例子有说服力但 n 小。
  • 存疑multi-hop 50% > CoT 35.71%: 真实但样本极小(n=46)且用了合成数据的结构先验、需人工指定 patch 位置;作者已声明非公平比较。

Notes

  • 把 Patchscopes 当作”read-out 接口的抽象层”很有用:未来任何新 decoding 方法都可以先问”它是这个配置空间里的哪个点 / 它扩展了哪个维度”。配置空间里仍大量未探索(如 instruction-based target prompt、multi-layer/multi-token 同时 patch)。
  • 对我们的 survey:这是 lens→probing→patching 三条支线的汇流节点,应作为”统一框架”类的代表与 Attribution GraphsParameter Decomposition 这类”另起炉灶的统一尝试”对照——前者统一 read-out,后者统一 decomposition。

Rating

Metrics (as of 2026-06-27): citation=N/A (S2 IP throttled), influential=N/A, velocity=N/A; HF upvotes=21; github (PAIR-code/interpretability monorepo, 非 patchscopes 专属) 231⭐ / forks=40 / 90d commits=0 / pushed 5d ago

分数:3 - Foundation 理由:这是可解释性方法谱系上的一次”统一场论”式 reframing——把 logit lens / tuned lens / future lens / causal tracing / attention knockout / probing 全部收编进一个五元组配置空间,并由此派生出免训练、开放词表、早层可用的新 inspection 工具。它的价值不在某个 +x% 指标,而在改变了后续工作思考”如何读出表示”的 vocabulary,属于”只读 rating=3 就能理解这条脉络”的奠基节点。虽然今日 citation 因 S2 throttle 取 null,但其 ICML 2024 出身、Google/TAU 团队、被广泛作为 lens 家族标准引用(followed-by-many)以及 HF 关注度,足以支撑 Foundation;之所以不降到 2,是因为它是范式级的统一框架而非又一个 SOTA baseline。