神经网络是根据数据进行训练的,而不是根据规则进行编程。每一步训练都会更新数百万或数十亿个参数,以使模型更好地完成任务,到最后,模型能够执行一系列令人眼花缭乱的行为。我们准确地理解训练网络的数学——神经网络中的每个神经元都执行简单的算术——但我们不明白为什么这些数学运算会导致我们看到的行为。这使得诊断故障模式变得困难,难以知道如何修复它们,并且难以证明模型真正安全。
神经科学家在理解人类行为的生物学基础方面面临着类似的问题。人脑中放电的神经元必须以某种方式实现他们的想法、感受和决策。数十年的神经科学研究已经揭示了许多关于大脑如何工作的信息,并为癫痫等疾病提供了针对性的治疗,但仍有很多谜团。幸运的是,对于我们这些试图理解人工神经网络的人来说,实验要容易得多。我们可以同时记录网络中每个神经元的激活,通过沉默或刺激它们进行干预,并测试网络对任何可能输入的响应。
不幸的是,事实证明单个神经元与网络行为没有一致的关系。例如,小语言模型中的单个神经元在许多不相关的上下文中都很活跃,包括:学术引文、英语对话、HTTP 请求和韩语文本。在经典的视觉模型中,单个神经元会对猫的面孔和汽车的前部做出反应。一个神经元的激活在不同的情况下可能意味着不同的事情。
在一篇最新的论文《走向单义性:用字典学习分解语言模型》中,概述了存在比单个神经元更好的分析单元的证据,并且已经构建了可以让我们在小型变压器模型中找到这些单元的机制。这些单位称为特征,对应于神经元激活的模式(线性组合)。这提供了一条将复杂的神经网络分解为我们可以理解的部分的途径,并建立在之前解释神经科学、机器学习和统计学中高维系统的努力的基础上。
在 Transformer 语言模型中,将包含 512 个神经元的层分解为 4000 多个特征,这些特征分别表示 DNA 序列、法律语言、HTTP 请求、希伯来语文本、营养声明等等。当单独观察单个神经元的激活时,大多数模型属性是不可见的。
为了验证发现的特征比模型神经元更容易解释,我们让一位盲人评估者对其可解释性进行评分。特征(红色)的分数比神经元(青色)高得多。
其还采用“自动解释性”方法,使用大型语言模型生成小模型特征的简短描述,根据另一个模型根据该描述预测特征激活的能力对其进行评分。同样,特征的得分高于神经元,这提供了额外的证据,表明特征的激活及其对模型行为的下游影响具有一致的解释。
这些功能还提供了有针对性的模型引导方式。如下所示,人为激活某个功能会导致模型行为以可预测的方式发生变化。
最后,缩小并查看整个功能集。我们发现,所学到的特征在不同模型之间很大程度上是通用的,因此通过研究一种模型中的特征所学到的经验教训可以推广到其他模型。尝试调整学习的特征数量。我们发现这提供了一个“旋钮”来改变我们看到模型的分辨率:将模型分解为一小组特征提供了更容易理解的粗略视图,而将其分解为一大组特征提供了更容易理解的视图。精细的视图揭示了微妙的模型属性。
这项工作是Anthropic公司在 "机制可解释性"(Mechanistic Interpretability)方面投资的成果,也是论文作者在人工智能安全方面最长期的研究赌注之一。迄今为止,单个神经元无法被解释这一事实对语言模型的机械理解构成了严重障碍。将神经元群分解为可解释的特征有可能突破这一障碍。希望这最终能从内部监控和引导模型行为,提高企业和社会应用所必需的安全性和可靠性。下一个挑战是将这种方法从成功展示的小型模型扩展到更大更复杂的前沿模型。
第一次感觉到,解释大型语言模型的下一个主要障碍是工程而不是科学。
领取专属 10元无门槛券
私享最新 技术干货