资讯
AI可解释性与对齐:J-Space,思维链,AI人格,幻觉,与金门大桥
📌 概要
<p>如今的AI仍然是一个黑箱,我们知道如何训练模型,如何让它变得越来越聪明,也知道它最终给出了什么答案。但在输入和输出之间究竟发生了什么,我们仍然知之甚少。</p> <p>试图打开这个黑箱、理解模型内部究竟发生了什么,正是可解释性研究(AI interpretability)希望解决的问题。过去几年,这个领域确实出现了不少令人兴奋的进展。</p> <p>Anthropic的研究开始尝试追
<p>如今的AI仍然是一个黑箱,我们知道如何训练模型,如何让它变得越来越聪明,也知道它最终给出了什么答案。但在输入和输出之间究竟发生了什么,我们仍然知之甚少。</p>
<p>试图打开这个黑箱、理解模型内部究竟发生了什么,正是可解释性研究(AI interpretability)希望解决的问题。过去几年,这个领域确实出现了不少令人兴奋的进展。</p>
<p>Anthropic的研究开始尝试追踪Claude模型内部的信息流,了解模型在回答问题前经历了怎样的内部计算。另有研究发现,模型内部似乎存在与特定概念、行为甚至“人格”相关的表征。Transluce则发现,模型会根据它认为自己正在与谁对话而改变行为。面对普通用户和AI安全研究员时,模型的表现可能截然不同。</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_2fb34500071b46fcbacf72954a00ebcf@5091053_oswg320548oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p>因此,我们想弄明白:人类究竟有多了解现有的AI模型?模型为什么会答对?为什么会产生幻觉?面对不同的用户,它会不会做出不同的判断?当模型开始呈现出越来越鲜明、彼此不同的性格时,这些所谓的“人格”究竟是什么?</p>
<p>带着这些问题,我们与斯坦福大学计算机博士生Aryaman Arora探讨了大模型的可解释性研究,他目前师从Chris Potts和Dan Jurafsky。这次对谈,我们讨论模型内部没有说出口的“思考”、思维链与真实推理之间的差异,也聊到可解释性研究的两条主要路线、幻觉、用户建模、模型人格,以及这项技术在产业、监管和科学发现中的可能价值。以下,是我们与Aryaman的对话。</p>
<h2><strong>01</strong></h2>
<h2><strong>AI可解释性?</strong></h2>
<p><strong>Yiwen:</strong>先跟观众简单介绍一下你自己吧。</p>
<p><strong>Aryaman</strong>:我叫Aryaman,现在是斯坦福大学的计算机博士生,我的导师是Chris Potts和Dan Jurafsky。我一直对语言特别感兴趣,后来AI突然经历了这么大的变化,而我又比较喜欢从科学的角度思考问题,所以我很想研究一个问题:这些技术为什么能奏效?对我来说,可解释性研究就很自然地成为了一个方向。</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_47544da35b284d26b651df22612a6002@5091053_oswg707378oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p><strong>Yiwen</strong>:简单来说,可解释性研究就是想弄明白一个模型内部到底发生了什么。但这个问题非常宽泛,也有很多不同的研究方向,你自己会怎么定义“可解释性研究”?</p>
<p><strong>Aryaman</strong>:可解释性确实可以从很多不同的角度切入,最吸引我的问题是:如果回到大概五年前,当时我们在AI领域做的很多东西其实都没有特别成功,尤其是语言模型。人们很早就在使用语言模型,但当时更多是用来做文本编辑、语音转录之类的工作。可后来有一件事情发生了,语言模型突然变成所有人都在研究的东西,大家开始往里面投入几十亿美元。</p>
<p>所以对我来说,<strong>可解释性研究其实是在试图回答一个问题:到底发生了什么变化?为什么以前这些东西不太行,而现在突然变得这么强?</strong></p>
<h2><strong>02</strong></h2>
<h2>Anthropic:AI内部思考</h2>
<p><strong>Yiwen</strong>:促使我做这次采访的一个原因,是Anthropic发布了一篇关于J-space(J空间)的论文,我理解它有点像AI模型内部的工作空间。论文里有一个特别有意思的例子, 研究人员问模型:“一种会织网的动物有几条腿?”模型回答“八条”,但整个过程中,“蜘蛛”这个词从来没有出现过。可是,当研究人员进入模型内部,把“蜘蛛”改成“蚂蚁”这样的概念之后,最后的答案变成了“六条”。为什么我们能够修改模型内部一个从未说出口的概念,并改变它最后的答案?</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_c71bedc1d682402e895425d11b497e51@5091053_oswg65740oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p><strong>Aryaman</strong>:我觉得这是一篇非常有意思的论文,它为这个判断又补充了一项证据,就是模型内部确实存在一些它没有说出来的推理步骤。</p>
<p>我没有把J-space那一百多页全部读完,但大概理解它的思路。这里有一个叫Jacobian(雅可比矩阵)的数学工具,本质上和微积分里的导数有关。我们可以把它用在模型上,判断模型潜在激活空间里的哪些方向,会导致它在后面说出某些词。比如在模型真正说出某个词的十个token之前,如果它内部的隐藏表示正在朝某个方向变化,那么它之后可能就会说出“蜘蛛”。这篇论文一个很好的地方是,它使用了一个非常优雅、非常简单的方法,但此前似乎没有人完全这样尝试过。</p>
<p>不过我们已经有很多证据说明,内部推理步骤确实存在。比如Anthropic更早的The Biology of Large Language Models(大语言模型的生物学)研究里,一个模型在做三位数加法时,不需要把所有中间步骤说出来。但观察模型内部,可以找到一些神经元似乎分别在记录“个位数应该是多少”、“十位数应该是多少”。他们还有一个例子,让模型围绕某个主题写一首押韵的诗,当它写到这一节结尾时,其实已经在规划下一节最后应该用什么词,这样下一节才能继续押韵。</p>
<p><strong>毫无疑问,模型内部会做一些它没有说出口的事情。</strong>而且,如果模型想把语言建模这件事做好,它必须这么做。</p>
<p>Ilya Sutskever以前在解释autoregressive language modeling(自回归语言建模),也就是AI不断预测下一个词时,举过一个侦探小说的例子。假设你的任务是在整本小说里不断预测下一个词,到了最后,故事通常会揭晓凶手。你读到一句“凶手是——”,为了准确预测下一个词,模型必须对整本小说、整个故事,以及之前所有指向不同可能性的证据进行建模。所以,一个足够好的语言模型,一定要能够在内部进行某种逻辑推理,这个答案并不是直接出现在训练数据里的,而是根据具体上下文推断出来的。</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_d9440514e8304051b9148bc32056b9f2@5091053_oswg652363oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p><strong>Yiwen</strong>:也就是说,这个答案并不是直接出现在训练数据里的东西?</p>
<p><strong>Aryaman</strong>:对,在那个具体的上下文里,如果你真的有一个很好的语言模型,它应该能够正确预测下一个词。而要做到这一点,它内部就一定得有某种世界模型,包括人和人之间如何互动、之前出现过哪些证据等等。</p>
<p><strong>Yiwen</strong>:意思是模型内部可能存在某种世界模型,但我们现在还不知道它到底是什么?</p>
<p><strong>Aryaman</strong>:是的,如果你想把下一个 token预测做得非常好,你就一定得在内部建立一个非常复杂的模型,来表示一段文本里到底发生了什么。而可解释性研究的目标,就是搞清楚那个内部模型到底是什么。</p>
<p><strong>Yiwen</strong>:刚才你提到的 internal reasoning(内部推理),和chain of thought(思维链)形成了直接对比。思维链是模型把自己的推理过程写出来,那为什么思维链不是理解模型怎样思考的最好方法?</p>
<p><strong>Aryaman</strong>:我不会做这么强的判断。思维链肯定有用,大概一年半或者两年前,那些没有思维链的模型,表现确实比现在经过思维链训练的模型更差,所以思维链一定在发挥某种重要作用。</p>
<p><strong>Yiwen</strong>:也就是我们开始转向推理模型的时候?</p>
<p><strong>Aryaman</strong>:对,也就是开始训练模型、让它在真正给出答案之前,先进行推理。我非常相信一条原则,先做最简单的事情。如果要总结我做研究以来学到的一切,最重要的一条可能就是,<strong>在开始做复杂的事情之前,先把简单的事情做了。</strong></p>
<p>检查模型的思维链是一件非常简单的事情,尤其是和彻底解决可解释性相比,所以我们应该先做。在实际操作中,Anthropic、Meta或者OpenAI进行安全审计时,确实会检查模型的思维链里有没有可疑内容,或者模型是不是在计划做一些奇怪的事情,这样做看起来能够在一定程度上帮助他们发现没对齐的地方,所以我确实觉得,思维链值得分析。</p>
<h2><strong>03</strong></h2>
<h2><strong>为什么我们需要理解AI?</strong></h2>
<p><strong>Yiwen</strong>:在聊更多具体案例之前,我想先谈谈可解释性研究最终的目标。为什么普通人也应该关心一个语言模型内部发生了什么?当我们理解它之后,又能做什么?</p>
<p><strong>Aryaman</strong>:如果我们解决了可解释性问题,大概会带来两类价值。</p>
<p>第一类是信任,要想信任一种技术,知道它怎样运作非常重要。你可以想一下,各种监管机构和政府部门会对飞机制造、工业机械运行,以及石油压裂等工程进行监管。对于这些很强大、也可能很有用的技术,如果我们想监管它们,就必须理解它们有哪些失效模式,也需要知道出了问题之后,责任应该怎样划分。<strong>但现在监管AI非常困难,我们某种程度上不知道怎样阻止不好的行为,甚至不知道某件坏事为什么发生、应该归责于谁。</strong>模型使用了庞大的数据集,也经历了很长的训练过程,所以很难判断到底是什么导致了某种结果。即使我们做不到完全理解,只要能够理解为什么某些行为会发生,也会有帮助。比如医生使用AI系统时,无论是患者还是医生,大概都会想知道,它为什么给出这个结果?</p>
<p>第二类价值是科学理解。很多AI研究一直非常依赖实验,这不是一件坏事,因为和化学、生物学等现实世界里的学科相比,在AI领域做实验实在太容易了。但这也意味着,很多东西之所以变得越来越好,是因为一些非常聪明、直觉很强的人想出了某种方法,他们不知道这些方法为什么有效,但它们就是有效。</p>
<p>举例来说,有一个很有名的研究者Noam Shazeer,他参与了最初的Transformer论文,也提出了很多后来促成现代大模型的架构改进。他有一篇关于gated linear units(门控线性单元)的论文,在展示所有实验都取得更好效果之后写道:“我不知道为什么这些东西有效,我把它归因于Divine Benevolence(神意)。”把这种话写进论文其实挺疯狂的,就好像上帝给了他一个启示,让他去做这个实验,然后实验就成功了。</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_945f8fdcd2a7414a936082565859f6a6@5091053_oswg402694oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p><strong>我们不能永远只依赖少数拥有惊人直觉的人推动整个领域,应该有一种更加系统的方法,或者至少我相信,为什么某些方法成功、另外一些没有成功,背后一定存在系统性的原因。</strong>可解释性如果取得进展,也许能够帮助我们弄清楚为什么有些东西有效、有些东西无效,从而更系统地改进模型,或者控制不良行为。</p>
<h2><strong>04</strong></h2>
<h2><strong>对齐和信任</strong></h2>
<p><strong>Yiwen</strong>:有一种说法是,如果一个模型已经足够对齐,那至少它不应该对用户撒谎。我们前面一直在聊可解释性,去理解模型内部到底发生了什么。可解释性和对齐之间到底是什么关系?</p>
<p><strong>Aryaman</strong>:<strong>很多做可解释性研究的人,一个重要动机就是,我们不能完全相信模型自己说出来的话。</strong></p>
<p>一个模型从外部行为来看,可能表现得完全正常,尤其是在测试环境里,它可能表现得非常好,让你觉得可以部署了。但真正部署之后,可能会发生非常意外的事情,也许模型知道自己正在被评估,等到真正部署之后,它才开始做“自己真正想做的事情”。所以,对齐研究不能总是只根据模型表现出来的行为得出结论。</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_9aaa5d0dc2eb4a75b7c059dfdb60991e@5091053_oswg93699oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p>举个例子来说,当你刚认识一个新朋友时,你会想知道这个人值不值得信任。有意思的是,我们不可能知道别人心里真正想什么,但社会依然能够正常运转,因为我们会通过对方的行为来判断他的品格。比如,你告诉朋友一个秘密,后来为了替你保守这个秘密,他不得不承担一定的代价,但他最终还是选择保护你。像这样的经历,会让你逐渐相信这个人是值得信任的。</p>
<p>也就是说,即使我们无法直接看到一个人的内心,也能通过他在关键情境下的选择,判断他是否值得信任。对于语言模型或任何AI系统来说,我们也可以在一些特定情境下测试它的行为,它有没有做出某种选择,会告诉我们它表现出来的是“好的品格”还是“坏的品格”,我们可以从行为里获得很多证据。</p>
<p>但模型和人不一样。模型运行在计算机上,原则上我们可以检查一个输出产生过程中经历了哪些计算,而且一个模型可以被复制成几百万个副本,同时服务大量用户,而我们并不总是知道这些用户会拿它来做什么。这和雇用一个人类员工完全不同,即使你无法知道一个员工内心真正的想法,单个人能够造成的影响通常也是有限的。<strong>但模型一旦被大规模复制和部署,同一种行为就可能同时发生在成千上万个场景中,潜在风险也会被放大。</strong></p>
<p>所以可解释性研究在这里是有意义的,而且监控语言模型的内部状态,也比了解一个人的内心容易得多。如果我们知道应该找什么,理论上就能把它找出来。</p>
<p><strong>Yiwen</strong>:你刚才说“如果我们知道应该找什么”,那么这个“该找什么”具体会是什么?</p>
<p><strong>Aryaman</strong>:也许在一个可解释性问题已经解决的世界里,我们会知道,如果模型内部表征的某个向量指向某个方向,就说明它正在计划一件不好的事情。那我们只需要检查这个方向即可。</p>
<p>但对于人类来说就不一样,哪怕我们彻底弄清楚了人脑如何工作,而且知道“如果这个人脑里的某个神经元亮起来,他接下来就会开始跑”,在现实中也不可能为了检查这一点而在人脑中插入一根电极。而且人就是人,我们不会用对待计算机程序的方式对待人。</p>
<h2>05</h2>
<h2>SAE和翻译内部表征</h2>
<p><strong>Yiwen</strong>:据我理解,Anthropic在J-space里做的事情,和可解释性研究中的一个传统方向——Sparse Autoencoder(稀疏自编码器,以下简称SAE),有一定相似之处。它似乎体现了这类研究较为典型的逻辑:你找到一个方向,改变某个东西,然后观察模型的行为会如何变化。你能否帮我们拆解一下,这个领域有哪些不同的研究思路或流派?</p>
<p><strong>Aryaman</strong>:先从较为宽泛的层面解释一下SAE究竟有什么用途,可能会比较有帮助。如果大家有一些机器学习背景,可能听说过autoencoder(自编码器)。它的基本思路是,<strong>你有某一种对象,比如一张图片或一段文字,在训练一个模型的时候,让它先把这个复杂的输入转换成一个比较简单的向量,再从这个向量把原始输入还原出来,</strong>这就是它被称为auto-encoding(自编码)的原因。如果训练一个模型来做这件事,那么无论给它多么奇怪的输入,最后都能得到一种更方便处理的向量表示。如果能把所有图片转换成向量,做相似度搜索就会更容易。</p>
<p>Autoencoder本身就是可解释性研究中的一个经典概念。在可解释性研究里,我们可以把模型内部的隐藏表征拿出来,比如一个大型语言模型第20层中的向量,再训练一个自编码器,把这些表征转换成一种更清晰、更方便研究的形式。SAE的理想是,把它转换成一串更清楚的数字,如果文本是英文,这个数字就是1,否则是0;如果模型正在谈论火箭,另一个数字就是1,否则是0。如果真的得到这样一串数字,那么某些数字也许就代表模型正在表现出不好的行为,或者出现了不对齐,那我们只需要把对应数字设成0就好了。</p>
<p>但在实际操作中,情况非常混乱,并不像我们希望的那样“干净”。每一个数字并不是只代表一件事情,结果也取决于你用什么数据训练SAE。<strong>即使使用完全相同的数据训练两个不同的模型,也会得到不同结果,而且它们都无法捕捉原始模型内部发生的所有事情。</strong></p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_a060696491164678838b5eb6353e183f@5091053_oswg75390oswg1080oswg607_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p><strong>Yiwen</strong>:理解机器如何思考的核心问题之一,是机器并不使用自然语言思考,这意味着我们必须把机器的思考翻译成人能理解的语言。现在很多论文似乎已经在这样做,但你好像认为二者之间并不存在一一对应的关系。</p>
<p><strong>Aryaman</strong>:我觉得原则上是可能存在的。SAE确实有它的用途,现在也有其他一些方法在尝试把模型内部的一串数字翻译成自然语言。它们可以非常有用,只不过看起来并不能一下子解决所有问题。</p>
<p><strong>Yiwen</strong>:看到这些内部表征如此混乱之后,研究者做了些什么?</p>
<p><strong>Aryaman</strong>:大体来说,<strong>可解释性研究里有两种研究哲学。</strong></p>
<p><strong>其中一种思路是,我们从机器学习中吸取了一个经验,只要选对目标,然后围绕这个目标训练一个足够大的模型,就会得到想要的结果。</strong>对于语言生成来说,这个目标就是预测下一个token。只要选对训练目标,就能得到一个非常好、非常有用的模型。因此,大家也在为可解释性寻找这样一个目标。SAE就是这个方向的一次尝试,去拿到一种很混乱的内部表征,目标是把它变成一串清晰的数字。但现在看来,这可能不是完全正确的目标,或者说,它没能完整捕捉到我们关心的所有信息。</p>
<p>这个方向最近还有一种迭代,是Anthropic的Natural Language Autoencoder(自然语言自编码器)。它不再把混乱数字转换成干净数字,而是直接把内部表示转换成自然语言,再从自然语言转换回去,并通过大量强化学习训练完成这个过程。好处是,我们直接得到了一种能够阅读的内容。但问题依然是你怎么相信它?训练过程中,模型可能开始说出一些奇怪的内容,我们不确定这是因为它形成了某种内部语言,还是其他原因。这一派的研究哲学是,<strong>训练一个非常大的模型,让它替我们解决这个问题,我们只需要选对问题。</strong></p>
<p>另一个方向来自我在斯坦福大学Chris Potts实验室的研究经历。实验室的Atticus Geiger提出了一个叫causal abstraction(因果抽象)的框架。它的思路是先对模型内部的推理步骤提出一个假设,再通过干预模型检验这个假设。比如,你认为模型向量空间里的某一个方向,代表它现在是不是在使用英语。提出这个假设后,我可以直接通过把这个向量加进去或减掉来检验,然后观察会发生什么。它的好处是,只要选对了假设,某种程度上就可以相信实验得到的结果。</p>
<p><strong>Yiwen</strong>:那我们会检验哪些假设?如何选出正确的假设?</p>
<p><strong>Aryaman</strong>:这种方法有一个很明确的局限,就是我们必须研究一些范围非常受限的问题。比如我们也许可以对模型怎样做加法提出假设,也可以研究单数、复数、主谓一致等语言学现象。针对这些问题,我们甚至可以具体弄清楚某一个Attention Head(注意力头)或某一个MLP(多层感知机)在做什么。</p>
<p>但我们真正关心的很多问题没有这么简单,如果你想知道“模型现在是不是正在考虑对用户撒谎”,在这个框架下该如何设计实验并不清楚。所以这条路线现在的一个重点,是把原本需要人类完成的“提出假设”自动化。我们可以给一个语言模型agent提供干预模型的工具,让它代替研究者提出和检验假设。这就是两种不同的研究哲学,而我看到可解释性研究也正在沿着这两个方向逐渐分化。</p>
<p><strong>Yiwen</strong>:一个智能体通常会提出比人类更好的假设吗?还是说,它会从不同的视角或方向提出假设?</p>
<p><strong>Aryaman</strong>:现在还很早,我还没有经历过一个时刻让我觉得语言模型显然提出了一个比我更好的研究想法。当然,也许其他人有过这种经历,我现在作为博士生,也没有足够的算力去跑很多这类实验。随着这个领域发展,<strong>可解释性研究会需要越来越多的算力。</strong></p>
<p>但到目前为止,它的一个很好的地方是,高中生也可以进入这个领域。我会收到湾区高中生的邮件,他们会说:“我在自己的笔记本电脑上,用GPT-2跑了这个实验,想给你看看。”这可能是现在AI领域少数几个还能这样开展研究的方向之一,因为我们连非常小的模型都还没有真正理解。</p>
<h2>06</h2>
<h2>从语言学到AI</h2>
<p><strong>Yiwen</strong>:你本科是学语言学的,后来又逐渐看到了语言和语言模型之间的联系。你能解释一下这种联系吗?</p>
<p><strong>Aryaman</strong>:对。我从很小的时候就特别喜欢语言,大概从初中开始就是这样。我的家庭也是多语言环境,我们在家里讲印地语。后来我有一些讲中文的朋友,我会非常好奇中文为什么和其他语言这么不一样?这类问题一直让我很着迷。</p>
<p>后来我本科去了乔治城大学,那里有一个非常好的语言学系。当时计算语言学刚开始逐渐成为一个比较重要的领域,比如有人会训练LSTM(长短期记忆网络),让它生成文章;也有人用莎士比亚的文本训练模型。那个时候有很多这样的演示,把语言学、计算机科学和那个年代的AI进展结合起来。所以我当时觉得,如果做这个方向,一方面可以结合我真正感兴趣的东西,另一方面也可能做一些对社会有实际用途的事情。</p>
<p><strong>Yiwen</strong>:“计算语言学”具体是在做什么?</p>
<p><strong>Aryaman</strong>:这个领域后来变化非常大。当时其中一种思路是,传统语言学研究会关注语言里有哪些结构、语言怎样随着时间变化等问题。这些东西如果完全靠人工研究会非常困难,因为数据实在太多了。<strong>所以计算语言学的思路是:我们还是做语言学,只不过借助计算机来做。</strong></p>
<p>另一种思路就更接近今天的ChatGPT了。大家一直都想做出一种程序,可以像人一样和你对话、理解你给出的指令。但如果从零开始,这其实是一个巨大到几乎无从下手的问题。当时的一种想法是,语言学已经告诉了我们,人类大概怎样理解和产生语言,比如人类怎样处理声音,怎样把声音组合成有意义的单位,再怎样把这些意义单位组合成符合语法的句子。<strong>所以大家想把我们认为存在于人脑里的整套语言结构复制出来,再写一个计算机程序,让它一步一步做同样的事情。</strong>不然你要怎么开始处理这么大的问题呢?</p>
<p><strong>Yiwen</strong>:你自己的研究过程中,有没有关于语言模型内部机制的发现,让你特别惊讶?或者刚开始做可解释性研究的时候,有没有哪件事情让你觉得特别有意思?</p>
<p><strong>Aryaman</strong>:我本科的时候还处在刚才说的第一种研究范式里。我会研究一个非常小、而且和语言学有关的问题,然后训练一个模型去解决它。比如研究印度语言时,我会让模型把一句话解析成syntax tree(句法树),也就是把一句话里的词按照彼此的关系组织成一个更大的树状结构。</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_9b55b0715d4c4b5ca24afc4012990e2b@5091053_oswg42383oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p>我本科时主要在人工标注数据。比如拿一大批印地语句子,一条一条手动画出句法树,我花了几百个小时做这件事情,然后用自己标出来的数据集训练模型,让它学会预测这些结构。这其实是计算语言学几十年来非常典型的研究方式,当时我们也没有更好的办法。</p>
<p>后来,对我来说有一件很重要的事情发生了。当时乔治城大学的实验室在做一个语义解析任务,我的导师Nathan Schneider让不同学生分别负责不同语言,但解决的是同一个任务。我们的训练流程非常复杂,比如会先用BERT(预训练语言模型),再接LSTM(长短期记忆网络)和CRF(条件随机场),当时我们会训练这样一套非常复杂的系统,最后大概能做到60%到70%的准确率。有一天我突然想,如果什么复杂结构都不加,直接用当时能找到的最大模型,会怎么样?当时微软已经发布了一些更大的模型,所以我直接拿一个更大的预训练模型,在最后只加一个非常简单的线性投影层,然后在同一个任务上微调。之前那些复杂的东西全部拿掉之后,第一次实验就做到了大概80%到85%的准确率。</p>
<p>我当时想,所以我只要用一个更大的模型,我们之前做的那些复杂东西其实全都不需要?那大概是在2022年前后。当时所谓的大模型,其实还是我的笔记本电脑能跑得动的规模,大概几十亿参数,但趋势已经很明显了——模型一直在变大。<strong>我突然意识到,那些计算语言学家一直认为非常重要、需要专门设计方法来解决的任务,可能不需要任何特别的方法。模型只要变大,就会自己把它们解决掉。</strong></p>
<p><strong>Yiwen</strong>:所以你算是自己“发现”了Scaling Law(缩放定律)?</p>
<p><strong>Aryaman</strong>:大概就是那时候我真正明白了Scaling Law是什么。当然,规模定律的论文那个时候已经存在了,而且不止一篇。但之前我从没有认真想过这个问题,直到那次实验,它才真正影响到我自己的研究,在那之前,我一直很开心地做传统的研究项目。</p>
<h2>07</h2>
<h2>修改AI的想法</h2>
<p><strong>Yiwen</strong>:你在2024年发表了一篇关于CausalGym(因果可解释性评测基准)的论文。这个领域需要基准吗?</p>
<p><strong>Aryaman</strong>:在AI的其他领域,如果你想判断翻译或数学能力有没有进步,可以让模型做 IMO的题去检查得分,判断是否取得了进展。但可解释性没有非常清楚的基准,能够告诉我们是不是正在朝正确方向前进。很多可解释性研究是在生成一种“既让人满意、同时又真实”的解释,而这两件事情都很难测试。</p>
<p>CausalGym是我攻读博士期间的第一篇论文,研究范围非常有限。论文的想法是从语言学特征出发,每一个模型,哪怕是最小的模型,也必须记录单数、复数这些基本信息,这些机制一定存在于模型内部某个地方。<strong>所以一种可解释性方法的好测试,就是看它能不能找到与这些语言学特征对应的内部机制。</strong>对于更复杂的推理步骤,很难做出同样确定的判断,所以从小问题开始会更合理,而且这也能把可解释性和我对语言学的兴趣结合起来。</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_897c2e0781154e62b8815a1e3a394407@5091053_oswg75805oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p>后来,我和朋友Zen Wu开展了许多这方面的研究。我们还建立过一个模型引导评测基准,用来测试一种可解释性方法能不能在不损害模型能力的情况下,以干净的方式控制输出?我们发现,所有这些方法在引导模型时都很吃力,最有效的办法,反而往往只是直接写提示词,或者对模型进行微调。</p>
<p><strong>问题在于,我们目前没有任何一种技术真正擅长控制模型内部的想法。在实际操作中,如果模型出现了不好的行为,也没有人会直接修改它的“想法”,而是会调整训练数据和模型架构,再重新训练一个模型。从理论上说,当然可以修改模型的内部想法,但我不确定能否用一种足够稳健的方式做到,并且确定修复真的有效。</strong></p>
<p><strong>Yiwen</strong>:这很有意思。因为你会想,一旦弄清楚模型内部发生了什么,人们自然会想改变或编辑它,让它不再做不好的事情。那有人尝试过直接编辑模型吗?比如做一些更小规模的改变直接编辑它的想法?</p>
<p><strong>Aryaman</strong>:从实际应用来看,你可能见过Golden Gate Claude。那是Anthropic部署过的一项演示。研究者使用引导向量,让模型一直想到金门大桥。我猜如果现在还有机构在生产环境中使用引导向量,可能就是Anthropic,因为他们说过,当用户向Claude询问AI研究或生物风险等问题时,会使用分类器或引导向量改变模型输出。也许他们已经找到了一种方法,让引导向量在实际应用中足够稳健。</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_3026c774f73643e3baee74e5aed39fc2@5091053_oswg56722oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p>但从学术界公开的技术来看,如果引导得太强,模型在其他任务上的能力就会下降。<strong>你让它一直想到金门大桥,它当然会谈论金门大桥,但它回答数学题的能力可能也会变差,而且这种影响很难预测。相比之下,如果只是通过微调让它谈论金门大桥,反而更容易避免这些问题。</strong></p>
<p>所以,我比较怀疑直接编辑模型的想法是不是一种足够稳健的行为控制方法。如果这种方法以后不会真正被广泛采用,那么可解释性研究者就应该关注工程实践中实际在使用的方法,想办法让它们做得更好,或者系统解释为什么这些方法有效。</p>
<h2>08</h2>
<h2>AI的一场行为与幻觉</h2>
<p><strong>Yiwen</strong>:我还看到一个很有意思的例子是Transluce最近的一项研究,他们发现模型似乎会判断自己正在与谁对话,并据此改变行为,这也属于可解释性研究传统的一部分吗?</p>
<p><strong>Aryaman</strong>:对。先补充一点背景,我曾经在那里兼职大概八个月,和Zen合作得很紧密。Transluce会做一些对社会有帮助的AI研究,也会审计其他公司正在部署的语言模型。我觉得有这样的机构存在非常重要。我在那里参与过的一个研究方向是用户建模。我们想理解,模型在内部会对正在与它对话的用户做出哪些推断。</p>
<p>比如,我们可以构建一组数据,再进行可解释性分析。当对话中提到寿司时,模型内部可能出现某种表示,说明它认为这个用户来自日本。要针对这种问题做内部干预并不容易,因为我们需要非常理想的配对数据,才能比较某个因素改变前后的差异。</p>
<p>我很喜欢他们最近一项研究采用的行为方法。研究者告诉Claude Code,正在和它交流的用户是Amanda Askell或者另一个人,然后观察模型行为怎样变化。仅仅这样做,就可以发现很多现象。比如,<strong>如果模型认为正在与它对话的是一位知名人工智能安全研究者,它在提出判断或陈述时会非常谨慎,比面对普通用户时谨慎得多。</strong></p>
<p><strong>Yiwen</strong>:这很有意思,据我理解这个方法和你刚才说的你们一开始构建的那个数据集似乎不太一样。</p>
<p><strong>Aryaman</strong>:对。开展这种研究,不一定需要查看模型内部。你只需要给模型不同的输入,再观察它的行为如何变化。Transluce还开展过其他语言模型审计研究,比如让模型说出一些很奇怪的东西。</p>
<p><strong>Yiwen</strong>:比如最奇怪的都有哪些?</p>
<p><strong>Aryaman</strong>:我非常建议大家去看一下,其中一个项目叫Weird Chat。里面有一些真的非常奇怪的内容,有些东西我讲起来都会不舒服。</p>
<p>这些通常不是聊天机器人会主动说、也不是人们希望它说出来的内容。但研究者可以构造一些看起来很正常的情境,让模型产生异常回答。</p>
<p><strong>Yiwen</strong>:所以如果我只是一个普通用户,我还是可以通过提示让它说出这些东西?</p>
<p><strong>Aryaman</strong>:普通用户也可能通过提示词触发这些内容,而且这甚至不属于通常所说的“越狱”。研究者只是自动搜索提示词,就发现了这些行为,并不需要可解释性研究先取得巨大突破,很多事情不必先理解完整原因,也可以通过自动搜索发现。但接下来的问题仍然是,模型为什么会这样做?</p>
<p><strong>Yiwen</strong>:但从某种意义上说,这些会不会只是边缘案例?这个领域里有很多案例研究,也有一定主观性。研究者似乎在有选择地构造提示,让模型说出某些东西,很难判断这些现象有多贴近现实。</p>
<p><strong>Aryaman</strong>:对,我也不确定。我觉得这可能就是我们这个领域的特点,很多事情都高度依赖实验。过去人们可能认为,科学家只要找到一个正确、漂亮而且完美的想法,再把它应用起来,就能得到AGI。但实际过程非常迭代,大家尝试几件事,模型在某些方面变得更好。有时候一个想法会产生巨大影响,但没有什么问题是一次性彻底解决的。</p>
<p>AI研究看起来就是这样:部署一个新模型、收集反馈、弄清楚接下来应该修什么。<strong>所以也许整个领域研究的就是各种边缘案例,再不断修复它们。</strong>它可能没有我们希望的那么系统化。</p>
<p>不过,可解释性研究给我的一个感受是,模型内部确实存在一些系统机制,可以解释大量行为。我们需要找到正确的角度,把这种理解真正用到改进模型上。</p>
<p><strong>Yiwen</strong>:所以,可解释性是一门科学吗?</p>
<p><strong>Aryaman</strong>:我们希望它成为一门科学。以后再看吧。很多有用的事情,其实不一定要等到纯粹的科学研究完全成熟之后才能做成。</p>
<p><strong>Yiwen</strong>:几乎每个人都遇到过模型幻觉,但一个更难的问题是,模型为什么会出错?我们通常会把它理解成语言模型犯了一个错误。但从可解释性的角度来看,这些错误背后是否存在某种系统性的内部机制?比如,一个经常被提到的例子是,问模型<strong>“strawberry(草莓)这个词里有几个字母r”</strong>。这样一个看似简单的问题,模型也可能答错。那么,可解释性研究能不能进一步告诉我们,它为什么会在这样简单的问题上出错?</p>
<p><strong>Aryaman</strong>:我觉得这又回到了你刚才说的 edge case,也就是边缘案例的问题。如果模型把一件事情做对了,那很可能存在某种内部机制,可以解释它为什么做对。但如果它做错了,可能只是因为没有学到正确机制,或者内部发生了一些非常混乱的事情。托尔斯泰有句话,大意是:“幸福的家庭都是相似的,不幸的家庭各有各的不幸。”我觉得这里也有点类似。<strong>模型做对时,背后通常存在系统性的解释;模型做错时,我们未必能给出一个同样清楚的解释。</strong></p>
<p><strong>Yiwen</strong>:所以从某种程度上说,弄清楚模型为什么做对,可能比弄清楚它为什么做错更有价值?</p>
<p><strong>Aryaman</strong>:有可能。从技术角度看,我通常觉得大多数错误都很难解释,哪怕能够完美解释,最后也可能只会发现,错误内部就是一团乱,没有简单的修复办法,除了训练更久、使用更大的模型,或者给模型更多容量储存事实。但有些时候,模型失败背后确实存在系统性的解释。</p>
<p>举一个例子,现在的大模型基本都使用Transformer架构,它的一个问题是,时间复杂度会随着序列长度平方级增长,序列越长,模型生成下一个token需要等待的时间越长。所以研究者一直想用state space model(状态空间模型)来加速。状态空间模型早就在统计学里存在,大约从2019年到2020年代初,人们开始把它用于语言建模,它比Transformer架构快得多。<strong>如果效果一样好,大家当然愿意切换过去,但实际情况是,状态空间模型一直表现得更差,而且研究者不知道为什么,使用相同数据训练,效果仍然不如Transformer架构。</strong></p>
<p>大约在2021年前后,斯坦福大学Chris Ré的学生注意到,Anthropic从可解释性角度发现了一个与in-context learning(上下文学习)有关的机制。上下文学习是指,你不需要把任务规则解释清楚,只要给模型几个例子,它就能从例子里推断出规则,而且例子越多,通常做得越好。这在GPT-3时代是一个非常惊人的发现。研究发现,Transformer架构在至少有两层时,会学到一种叫Induction Heads(归纳头)的注意力机制,帮助它完成上下文学习。</p>
<p>于是,斯坦福研究状态空间模型的团队就想,如果把同样的机制放进状态空间模型会怎么样?他们设计了H3(状态空间模型),论文名字叫Hungry Hungry Hippos。通过加入这一机制,模型学会了上下文学习。之后的Mamba(状态空间模型)、DeltaNet(状态空间网络)等工作,也借鉴了这项进展。现在状态空间模型已经得到了相当广泛的使用,比如你去看最近的 Kimi 或者Qwen模型,它们会混合使用Transformer架构的注意力机制和门控DeltaNet等架构。</p>
<p class="image-wrapper"><img src="https://img.36krcdn.com/hsossms/20260828/v2_1a7855ed0caf4fcdbccfa387bf32626e@5091053_oswg395090oswg1080oswg608_img_000?x-oss-process=image/format,jpg/interlace,1" /></p>
<p>这是一个很清楚的例子,模型表现不好有系统性的原因,而可解释性帮助我们找到原因,并把它修好了。我希望以后能有更多这样的案例。<strong>幻觉也许不是这种问题,但也有可能,模型架构本身存在某种根本性原因,让它更容易产生幻觉,现在我们还不知道。</strong></p>
<h2><strong>09</strong></h2>
<h2><strong>应用、安全与人格</strong></h2>
<p><strong>Yiwen</strong>:可解释性仍然是一个技术性很强的研究领域,但似乎已经显现出商业价值和应用价值。你现在是在学术界,也有一些产业界的经验。学术界和产业界研究这个问题的方式有什么不同?</p>
<p><strong>Aryaman</strong>:我不会说自己有特别多产业界经验,我主要的经历是在Transluce,没有在大型前沿模型实验室工作过。所以我看到的很多事情也是从外部观察到的。</p>
<p>我的感觉是,可解释性领域里,学术界和产业界之间分享结果和进展的程度,比AI的其他研究方向更高。因为目前还没有一套明确的固定方法,让你只要不断扩大规模,可解释性就会越来越好。<strong>这个领域仍然需要不断提出新想法,而一个普通研究生也可以贡献想法。</strong></p>
<p>在强化学习等领域,学术界和产业界拥有的资源规模差距很大,研究方式也因此相差很远;但在可解释性领域,双方目前仍然有些像同一个研究社区。相关研讨会上,你会同时看到Anthropic、DeepMind和OpenAI的人,也会看到斯坦福大学、西北大学等高校的学者。学术研究并不是没有用,它对推动整个领域进步非常重要,我觉得甚至对产业界也是这样。</p>
<p><strong>Yiwen</strong>:那如果把可解释性进一步应用到模型设计中呢?比如Goodfire的设计理念,某种程度上强调models with interpretability(可解释性的模型)。这个方向也引发过一些争议,因为可解释性既可能被用于提升模型能力,也可以被用于安全审计,而这两种用途放在一起,在行业里一直存在一些讨论。不过先不谈这些争议,回到这个概念本身,所谓“设计一个具有可解释性的模型”,具体意味着什么?</p>
<p><strong>Aryaman</strong>:我不能完全替他们解释,但他们确实公开表达过这种有意识地围绕可解释性去设计模型的理念。任何成功、真正有用的技术,本质上都会具有双重用途。比如核能可以帮助能源供给,但同一套科学进展也带来了核武器,AI研究也是这样。编程智能体可以帮助不会编程的人,让他们自己完成过去缺乏现成产品或服务支持的任务。但另一方面,一个普通人也可能突然获得前沿水平的网络安全能力,用它攻击系统。</p>
<p>如果可解释性真的帮助我们理解模型为什么会以某种方式行动,或者帮助我们系统改进模型,它当然也会是双重用途的。<strong>它可以帮助审计模型,也可能帮助恶意行为者弄清楚怎样去掉模型的对齐机制,这并不意味着我们不应该做这项研究,而是意味着我们需要监管,或者需要一种更民主的决策过程,决定谁能够使用这种强大的技术。</strong></p>
<p>不过到目前为止,可解释性还没有发展到足够危险的程度。在它发展到我们真的需要担心这个问题之前,还有大量工作要做。我刚才举过状态空间模型的案例,可能还有attention sink(注意力沉没)等少数例子。但可解释性还没有发展到能够系统性地产生这类结果的程度,所以我现在并不太担心。还有很多基础科学问题没有解决。</p>
<p><strong>Yiwen</strong>:所以,这件事可能离我们还比较远。不过如果把可解释性放到具体应用里看,它已经能看到一些比较明确的价值。除了帮助我们更有意识地设计和改进模型之外,药物发现、医学以及DNA模型等科学研究,也可能是非常重要的应用方向,对吧?</p>
<p><strong>Aryaman</strong>:Goodfire有一个规模很大的生命科学团队,正在尝试逆向工程用于科学发现的模型,包括DNA模型等。</p>
<p>如果我们能搞清楚语言模型怎样处理语言,对于语言学家当然很有意思。但真正重要的应用也许是:你训练一个气候模型去模拟气候,或者训练一个模型做蛋白质折叠,我们能不能从这些模型里提取出人类能够理解的算法,再用这些算法推动科学进展?</p>
<p>因为我们不只想知道模型有效,也想知道它为什么有效。我觉得科学应用可能非常大。</p>
<p><strong>Yiwen</strong>:<strong>一个更可解释的模型,是不是必然更安全?</strong></p>
<p><strong>Aryaman</strong>:<strong>我不觉得是