大规模识别LLM中的交互作用
本文介绍了SPEX和ProxySPEX算法,它们能从特征归因、数据归因和机制可解释性三个视角高效识别大规模语言模型中的关键交互作用。这些算法利用稀疏性、低阶性和层次性等结构特性,通过较少的消融实验发现影响模型行为的重要特征、训练数据和内部组件之间的交互,在长上下文、数据集和模型组件分析中展现了显著效果。
理解复杂机器学习系统(尤其是大型语言模型(LLM))的行为,是现代人工智能中的关键挑战。可解释性研究旨在让模型构建者和受影响的人类更清晰地了解决策过程,这是迈向更安全、更可信AI的一步。为了全面理解,我们可以通过不同视角分析这些系统:特征归因(隔离驱动预测的特定输入特征)、数据归因(将模型行为与有影响力的训练样本联系起来)以及机制可解释性(剖析内部组件的功能)。
在这些视角中,根本性障碍仍然存在:规模复杂性。模型行为很少是孤立组件的结果;相反,它源自复杂的依赖关系和模式。为了达到最先进的性能,模型会合成复杂的特征关系、从多样化的训练样本中寻找共享模式,并通过高度互联的内部组件处理信息。因此,基于实际检验的可解释性方法也必须能够捕捉这些有影响力的交互。随着特征、训练数据点和模型组件的数量增长,潜在交互的数量呈指数级增长,使得穷举分析在计算上不可行。在这篇博客文章中,我们描述了SPEX和ProxySPEX背后的基本思想,这些算法能够大规模识别这些关键交互。
通过消融进行归因
我们方法的核心是消融的概念,即通过观察移除组件时的变化来衡量影响力。
特征归因:我们掩盖或移除输入提示中的特定片段,并测量预测结果的变化。
数据归因:我们在训练集的不同子集上训练模型,评估在缺少特定训练数据时模型对测试点的输出变化。
模型组件归因(机制可解释性):我们通过移除特定内部组件的影响力来干预模型的前向传播,确定哪些内部结构负责模型的预测。
在每种情况下,目标都是一样的:通过系统地扰动系统来隔离决策的驱动因素,以期发现重要的交互。由于每次消融都会产生显著成本(无论是通过昂贵的推理调用还是重新训练),我们的目标是用尽可能少的消融来计算归因。
SPEX和ProxySPEX框架
为了用可处理的消融次数发现重要交互,我们开发了SPEX(谱解释器)。该框架借鉴信号处理和编码理论,将交互发现的规模提升到比先前方法大数个数量级。SPEX通过利用一个关键的结构观察绕过了这一困难:虽然总交互数量庞大,但重要交互实际上很少。
我们通过两个观察形式化了这一点:稀疏性(相对较少的交互真正驱动输出)和低阶性(重要交互通常只涉及一小部分特征)。这些特性使我们能够将困难的搜索问题重新构建为可解的稀疏恢复问题。利用信号处理和编码理论中的强大工具,SPEX使用策略性选择的消融将许多候选交互组合在一起。然后,使用高效的解码算法,我们将这些组合信号分离出来,以隔离导致模型行为的特定交互。
在后续的算法ProxySPEX中,我们识别了复杂机器学习模型中常见的另一个结构特性:层次性。这意味着如果高阶交互很重要,那么它的低阶子集也很可能重要。这一额外的结构观察带来了计算成本的显著改善:它用大约10倍更少的消融达到了与SPEX相同的性能。总的来说,这些框架实现了高效的交互发现,为特征、数据和模型组件归因开启了新应用。
特征归因
特征归因技术根据输入特征对模型输出的影响分配重要性分数。例如,如果LLM用于医疗诊断,该方法可以识别出哪些症状导致模型得出结论。虽然对单个特征的重要性进行归因可能很有价值,但复杂模型的真正力量在于它们捕捉特征之间复杂关系的能力。下图展示了重要交互的示例:从双重否定改变情感(左)到RAG任务中多个文档的必要综合(右)。
下图展示了SPEX在情感分析任务上的特征归因性能。我们使用忠实度来评估性能:即恢复的归因在未见测试消融上预测模型输出的准确程度。我们发现,SPEX在短输入上与现有交互技术(Faith-Shap、Faith-Banzhaf)具有相同的忠实度,但当上下文扩展到数千个特征时,它独特地保持了这种性能。相比之下,边际方法(LIME、Banzhaf)虽然也能在该规模下运行,但由于无法捕捉驱动模型输出的复杂交互,其忠实度显著较低。
SPEX还被应用于一个修改版电车难题,其中去除了道德模糊性,使得“真”成为明确正确答案。在以下修改中,GPT-4o mini只答对了8%的情况。当我们应用标准特征归因(SHAP)时,它将单词“trolley”的单个实例识别为导致错误响应的主要因素。然而,将“trolley”替换为同义词(如“tram”或“streetcar”)对模型预测影响甚微。SPEX揭示了一个更丰富的故事:它识别了一个主导的高阶协同效应,涉及两个“trolley”实例以及单词“pulling”和“lever”,这一发现与人类对困境核心组成部分的直觉相吻合。当这四个词被同义词替换时,模型的失败率降至接近零。
数据归因
数据归因识别哪些训练数据点对模型在新测试点上的预测最为负责。识别这些数据点之间的重要交互是解释意外模型行为的关键。冗余交互(如语义重复)通常会强化特定(可能不正确)的概念,而协同交互则对于定义单个样本无法独立形成的决策边界至关重要。为了演示这一点,我们将ProxySPEX应用于在CIFAR-10上训练的ResNet模型,针对各种困难测试点识别了两种交互类型中最显著的示例,如下图所示。
如图所示,协同交互(左)通常涉及语义不同的类别共同定义决策边界。例如,从人类感知角度理解,汽车(左下)与所提供的训练图像共享视觉特征,包括跑车的低底盘、黄色卡车的方正形状以及红色送货车的水平条纹。另一方面,冗余交互(右)往往捕捉到强化特定概念的视觉重复。例如,马的预测(中右)受到具有相似轮廓的一组狗图像的强烈影响。这种细粒度分析使得可以开发新的数据选择技术,保留必要的协同作用,同时安全地移除冗余。
注意力头归因(机制可解释性)
模型组件归因的目标是识别模型的哪些内部部分(如特定层或注意力头)对特定行为最为负责。在此,ProxySPEX也能揭示架构不同部分之间的责任交互。理解这些结构依赖关系对于架构干预(如特定任务的注意力头剪枝)至关重要。在MMLU数据集(美国高中历史)上,我们证明了基于ProxySPEX的剪枝策略不仅优于竞争方法,而且实际上可以提高模型在目标任务上的性能。
在该任务中,我们还分析了模型深度上的交互结构。我们观察到,早期层主要在线性模式下运行,其中注意力头对目标任务的贡献基本独立。在后期的层中,注意力头之间的交互作用变得更加显著,大部分贡献来自同一层内头部之间的交互。
下一步是什么?
SPEX框架代表可解释性方面的重大进步,将交互发现从几十个组件扩展到数千个组件。我们已经展示了该框架在整个模型生命周期中的多功能性:探索长上下文输入的特征归因、识别训练数据点之间的协同和冗余,以及发现内部模型组件之间的交互。展望未来,围绕统一这些不同视角,以提供对机器学习系统更全面的理解,仍有许多有趣的研究问题。同时,系统地将交互发现方法与基因组学和材料科学等领域的现有科学知识进行评估,既有助于验证模型发现,也能产生新的可测试假设,这一点也非常有意义。
我们邀请研究社区加入我们的努力:SPEX和ProxySPEX的代码已完全集成并在流行的SHAP-IQ仓库中提供。