Abstract
理解大型语言模型(LLM)的内部表征有助于解释模型行为并验证其与人类价值观的一致性。鉴于 LLM 具备生成人类可理解文本的能力,我们提出利用模型自身以自然语言解释其内部表征。我们引入了一个名为 Patchscopes 的框架,并展示了它如何用于回答关于 LLM 计算的广泛问题。研究表明,许多基于将表征投影到词汇空间以及对 LLM 计算进行干预的先前可解释性方法,都可视为该框架的具体实例。此外,Patchscopes 还能缓解这些方法的若干缺陷,例如无法检查早期层或表达能力不足等问题。除了统一先前的检查技术外,Patchscopes 还开辟了新的可能性,如使用能力更强的模型解释较小模型的表征,以及多跳推理错误纠正等。
1. Introduction
理解大型语言模型(LLMs)的内部表征有助于解释模型行为,并验证其与人类价值观的一致性。鉴于大型语言模型具备生成人类可理解文本的能力,我们提出利用模型自身以自然语言解释其内部表征。我们引入了一个名为 Patchscopes 的框架,并展示了它如何用于回答关于大型语言模型计算的各类问题。研究表明,许多基于将表征投影到词汇空间以及对大型语言模型计算进行干预的现有可解释性方法,均可视为该框架的具体实例。此外,Patchscopes 还能缓解这些方法的若干缺陷,例如无法检测早期层或表达能力不足等问题。除了统一现有检测技术外,Patchscopes 还开辟了新的可能性,如使用能力更强的模型解释较小模型的表征,以及多跳推理错误纠正等。
大型语言模型(LLM)隐藏表征中捕获了哪些信息这一问题,在现代生成式人工智能的控制与理解中至关重要,且近期已引起广泛关注(Casper 等人,2022;Madsen 等人,2022;Patel 与 Pavlick,2021;Nanda 等人,2023)。为解决这一问题,既往研究引入了多种可解释性方法,这些方法主要依赖三种主流途径:在隐藏表征之上训练被称为探测(probes)的线性分类器(Belinkov & Glass, 2019; Belinkov, 2022; Alain & Bengio, 2017)、将表征投影到模型的词汇空间(nostalgebraist, 2020; Din et al., 2023; Belrose et al., 2023),以及对计算过程进行干预以确定某一表征是否对特定预测至关重要(Meng et al., 2022a; Wallat et al., 2020; Wang et al., 2022; Conmy et al., 2023; Geva et al., 2023)。
尽管这些方法取得了广泛成功,但它们各自存在实际缺陷。首先,探测方法依赖针对预定义类别的监督训练,当类别数量众多或无法预先知晓所有类别时,这种方法难以扩展。其次,词汇投影在早期层的准确性大幅下降,且输出往往难以解释。最后,上述所有方法的表达能力均未达预期:它们仅提供类别概率或最可能的标记,而非以自然语言呈现的高质量解释。
在这项工作中,我们认为大型语言模型(LLMs)在生成类人文本方面的先进能力可用于将其表征中的信息 “翻译” 给人类。我们引入了一个名为 Patchscopes 的模块化框架(§3),该框架可通过配置从 LLM 表征中查询各类信息。Patchscopes 通过将特定表征 “patching” 到推理过程中,并结合专门设计的提示词来解码 LLM 内部表征中的特定信息 —— 这些提示词旨在引导模型提取目标信息 ²。如图 1 所示,这种配置(即一个 Patchscope)可被视为针对特定目标的检查工具。
我们表明,许多现有方法(包括依赖词表投影和计算干预的方法)均可归类为 Patchscopes 的实例。此外,我们框架的新配置不仅为解决相同问题提供了更有效的工具,还缓解了先前方法的若干局限性。同时,Patchscopes 还能解决尚未充分探索的问题,例如输入语境化过程的细粒度分析,以及如何利用表达能力更强的模型来检查较小模型的隐藏表征等。

图1. 我们框架的示意图,展示了一个用于解码源提示(左侧)中“CEO”隐藏表征的Patchscope。我们使用由字符串重复的少样本演示组成的目标提示(右侧),以促使LLM解释其内部表征。步骤1:在源模型中对源提示进行前向计算。步骤2:可选地转换源层的隐藏状态。步骤3:在目标模型中对目标提示进行前向计算,直至目标层。步骤4:将目标层中标记“?”的目标表征与转换后的表征(来自步骤2)进行“修补”,然后从该层继续进行前向计算。Patchscopes的模块化特性允许通过配置目标提示、模型和转换来设计各种方法。
我们开展了一系列实验以评估Patchscopes带来的优势与机遇,重点聚焦自回归大型语言模型(LLMs)。首先,我们探讨了从模型中间表征估计其下一个token预测的问题(见§4.1)。在多个LLM上的实验表明,使用少样本token身份提示(即形如“tok₁→tok₁;tok₂→tok₂;…;tokₖ”的提示,其中tokᵢ为随机token),相较词表投影方法可带来显著提升。接下来,我们评估了当实体表征与原始语境分离时,Patchscopes从LLM表征中解码实体特定属性的能力(见§4.2)。实验发现,尽管未使用训练数据,Patchscopes在12项常识与事实推理任务中,有6项显著优于探测法,剩余6项中除1项外均表现相当。
除了输出估计和属性解码外,Patchscopes还能解决现有方法难以回答的问题。在§4.3中,我们应用Patchscopes来研究LLM如何在早期层中对输入实体名称进行语境化处理——在这一问题上,词表投影方法大多失效,而其他方法至多只能提供实体是否被解析的二元信号(Youssef等人,2023;Tenney等人,2019)。借助新的Patchscope,我们能够将实体解析的渐进过程进行语言化表达。例如,研究表明,当模型在各层处理“亚历山大大帝”(Alexander the Great)的最后一个标记时,其反映的实体从“英国”(Great Britain)开始,到“大萧条”(the Great Depression),最终才解析为“亚历山大大帝”。此外,在§4.4中,我们展示了如何通过使用更强的目标模型(如用Vicuna 13B替代Vicuna 7B)来进一步提升Patchscope的表达能力。
最后,我们展示了Patchscopes在修复潜在多跳推理错误方面的实用性,尤其是当模型能够正确执行每个推理步骤但在上下文中组合这些步骤时失败的情况(第5节)。基于Hernandez等人(2023b)提供的数据,我们引入了一个需要两步事实推理的更复杂任务。Patchscope在该任务上实现了50%的准确率,优于思维链(Chain-of-Thought,Wei等人,2022)的35.71%和普通生成(vanilla generations)的19.57%。
综上所述,我们的工作做出了以下贡献:我们提出了Patchscopes,这是一个用于从大型语言模型(LLMs)隐藏表征中解码信息的通用模块化框架。我们表明,主流的可解释性方法可视为Patchscopes的实例,而新的配置则能生成更具表达力、跨层鲁棒性且无需训练数据的替代方案,从而缓解了这些方法的不足。此外,新颖的配置还为更强的检查技术带来了前所未有的可能性,同时具备实际应用价值,例如纠正多跳推理错误等。
2. Related work
激活补丁(Activation patching)是一种因果干预手段,常被用作研究特定激活是否在模型计算中起关键作用的工具(Geiger等人,2021;Vig等人,2020)。补丁方法主要用于将特定信息定位到特定层和token位置(Goldowsky-Dill等人,2023;Meng等人,2022a;b;Stolfo等人,2023;Merullo等人,2023),以及在计算过程中寻找信息传播路径(Wang等人,2022;Geva等人,2023;Hendel等人,2023;Hanna等人,2023;Lieberum等人,2023)。
此前的研究还在非Transformer架构中使用了一种称为“缝合”(stitching)的跨模型补丁形式,主要用于分析表征相似性(例如Bansal等人,2021;Csiszár ik等人,2021;Lenc & Vedaldi,2015)。尽管存在一定局限性(Hase等人,2023;Zhang & Nanda,2023),补丁仍是机械可解释性研究的主要工具(Conmy等人,2023)。
鉴于新兴的可解释性研究在利用大语言模型生成类人文本进行检查方面取得了有前景的结果(例如Mousi等人,2023;Slobodkin等人,2023;Bills等人,2023),我们认为将补丁仅用于定位目的是短视的,并建议将其用于将大语言模型的表征“翻译”为自然语言。最近,补丁方法已被用于研究新的问题设置(例如Pal等人,2023;Hernandez等人,2023b),所有这些都可视为我们提出的框架的不同配置(见§3.2)。
在检查神经网络隐藏表征的研究中,探测分类器(probing classifiers)可能是最常见的方法(例如Alain & Bengio,2017;Belinkov & Glass,2019;Belinkov,2022;Wang等人,2023),而将表征投影到词表空间或扩展到其他领域的方法则是另一类关键方法(例如Merullo等人,2023;Geva等人,2022b;nostalgebraist,2020;Belrose等人,2023;Dar等人,2023;Din等人,2023;Langedijk等人,2023;Vilas等人,2023)。尽管存在其他各种潜在检查方法(例如Zhou等人,2018;Strobelt等人,2017;Ghandeharioun等人,2021;Kim等人,2018),但上述方法与本工作最为相关。
3. Patchscope
在本节中,我们将介绍Patchscopes,并展示其如何通过新功能扩展先前的可解释性方法。尽管不限于特定的LLM架构,但本工作主要关注基于自回归Transformer的LLM。
3.1 Framework Description
Patchscopes 的核心思想是利用大型语言模型(LLMs)生成类人文本的先进能力,来“翻译”其自身隐藏表征中编码的信息。具体而言,给定从 LLM 推理过程中获得的隐藏表征,我们建议通过将其“修补”到另一个推理过程(同一或不同 LLM 的推理过程)中来解码其中的特定信息,该推理过程旨在促进对该特定信息的翻译。
值得注意的是,补丁后的其余前向计算可以用额外信息增强表征,因此,这种方法并不保证被 patching 的表征本身存储了所有这些信息。然而,将表征从其原始语境(源提示)中调度出来会停止语境化(contextualization),并保证源提示中的进一步信息不会被纳入 patching 后的计算中。因此,我们的框架揭示了是否可以通过 patching 后的计算从被 patching 的表征中解码特定信息。
给定一个包含π个token的输入序列S=⟨s1,…,sn⟩S = \langle s_1, \dots, s_n \rangleS=⟨s1,…,sn⟩和一个具有L层的模型M,当模型M对S进行推理时,hiℓh_i^\ellhiℓ 表示在第 l∈[1,…,L]l \in [1, \dots, L]l∈[1,…,L] 层、位置 i∈[1,…,n]i \in [1, \dots, n]i∈[1,…,n] 处获得的隐藏表征。为了检查hiℓh_i^\ellhiℓ,我们考虑使用一个具有L∗L^*L∗层的模型M∗M^*M∗对目标序列T=⟨t1,…,tm⟩T = \langle t_1, \dots, t_m \rangleT=⟨t1,…,tm⟩(包含m个token)进行独立的推理过程。具体来说,在模型M∗M^*M∗对T的推理过程中,我们选择第ℓ∗∈[1,…,L∗]\ell^* \in [1, \dots, L^*]ℓ∗∈[1,…,L∗]层、位置i∗∈[1,…,m]i^* \in [1, \dots, m]i∗∈[1,…,m]处的隐藏表征hˉi∗ℓ∗\bar{h}_{i^*}^{\ell^*}hˉi∗ℓ∗。此外,我们定义一个由θ参数化的映射函数f(h;θ):Rd↦Rd∗f(h; \theta): \mathbb{R}^d \mapsto \mathbb{R}^{d^*}f(h;θ):Rd

1212

被折叠的 条评论
为什么被折叠?



