← Dwarkesh Podcast

Sholto Douglas 与 Trenton Bricken——大语言模型究竟如何思考

Sholto Douglas & Trenton Bricken — How LLMs actually think

第2024-03-28期2024-03-28简体中文

嘉宾:Sholto Douglas、Trenton Bricken

收听本集00:00 / 3:12:21
阅读设置
按你的习惯阅读
正文字号
下载播客精读
把这一篇,带走慢慢读

中文 · 精读 · 当前版本

下载功能还未开放

§01Sholto Douglas 与 Trenton Bricken——大语言模型究竟如何思考

Teddy Kim 编辑,并提供了许多有用链接

§02长上下文

00:00Dwarkesh Patel

今天很高兴能和我的两位好友 Sholto 与 Trenton 聊聊。

Noam Brown 写过《外交》论文,他这样评价 Sholto:“他进入这个领域才一年半,但 AI 圈里的人都知道,他是 Gemini 成功背后最重要的人物之一。”Trenton 则在 Anthropic 从事机制可解释性研究,媒体曾广泛报道说他已经解决了对齐问题。

所以这期播客只谈能力。既然对齐问题已经解决,就不必再讨论了。

01:28先来谈谈上下文长度。我觉得这一点的重要性似乎被低估了:模型可以一次把一百万个 token 放进上下文。听说有些别的新闻不知为何抢了头条,但请你们说说,怎么看长上下文的未来,以及它对模型意味着什么?

我觉得这确实被低估了。直到开始做这方面的工作,我才真正意识到,让模型几乎立刻解决新任务的上手问题,会在智能上带来多大的提升。

01:58从论文中的困惑度曲线可以看出,只要把数百万 token 的代码库上下文提供给模型,它预测下一个 token 的能力就会大幅提高;这种提升通常会让人联想到模型规模的大幅增长。但其实不需要扩大模型,只要换一段新的上下文就行。所以这件事被低估了,也被其他新闻盖过去了。

02:02有了上下文之后,它们的样本效率和智能程度能和人类一样吗?

我觉得这很值得研究。比如论文中的一个评测,让模型在上下文中学习一种语言,表现超过了人类专家数月的学习成果。

这只是一个小规模的演示,但我很想看到类似 Atari 游戏的实验:给模型几百帧甚至一千帧带标签的操作记录,就像你向朋友演示怎么玩游戏一样,然后观察它能不能据此推理。我猜它可能做得到。现阶段受基础设施等因素影响,速度还是有点慢,但我猜它可能开箱即用地完成这件事,效果会相当惊人。

02:38关键是,这种语言足够生僻,训练数据里应该没有它。

02:42没错。在给模型提供这些上下文之前,它完全不认识这种语言,也无法给出任何翻译。

02:49这是真实的人类语言吗?

02:51没错,是真实的人类语言。

02:53如果这是真的,我觉得这些模型在一个重要意义上已经超越人类了。不是说它们比我们更聪明,而是我在解决问题时没法把一百万个 token 放进自己的上下文里,记住并整合所有信息,也没法把整个代码库都装进脑子里。我这样认为,这种能力是一项重大突破吗?

03:14我通常也认同这一点。以前我会因为模型不够聪明而沮丧:问它问题时,我希望它比我更聪明,或者知道一些我不知道的事。现在它可以通过摄入海量信息,知道一些你不知道的事,而人类做不到这一点。所以这非常重要。

03:33那么,我们该如何解释上下文学习?

03:35有一条我很喜欢的研究路线,把上下文学习看作与梯度下降非常相似的过程:注意力操作可以理解为在上下文数据上进行梯度下降。那篇论文有一些很棒的图,显示进行 n 步梯度下降,效果就像 n 层上下文学习,而且两者看起来非常相似。这是理解其工作机制的一种思路。

03:59你们可以忽略我接下来要说的话,毕竟刚才的介绍已经说了,对齐问题解决了,AI 安全也不是问题。

我觉得上下文确实也会带来问题,不过很有意思。最近应该会有更多研究讨论:如果提供包含越狱提示或对抗攻击的一百个示例,会发生什么?如果模型在前向传播中进行梯度下降、实时学习,即使它受过无害训练,你面对的也可以说是一个全新的模型。它像是在微调,但你没法控制过程中发生了什么。

04:41能解释一下吗?你说前向传播和注意力过程中会发生梯度下降,是什么意思?

04:45论文里有个实验,试着只通过上下文中的样本或例子教模型做线性回归。如果横轴是它看到的样本数,纵轴是普通最小二乘回归的损失,就会看到随着样本增加,损失不断下降。

05:04而且它的下降幅度和梯度下降步数完全吻合。

05:08对,完全一致。

05:09我只读了那篇论文的引言和讨论部分。讨论部分的说法是,要做好长上下文任务,模型必须学会从示例或窗口中的上下文学习。

这意味着,如果模型因为要完成长上下文任务而发展出元学习能力,那么从某种重要意义上说,智能任务需要长上下文示例和长上下文训练。

05:45在预训练过程中,如何更好地诱发元学习,是实现灵活或适应性智能的一个重要问题。

05:53不过,我们或许可以通过让模型更擅长长上下文任务,间接衡量这一点。许多人认为,AI 进步的瓶颈之一,是模型无法在很长的时间跨度内做事:连续工作数小时、数周甚至数月,像助手或员工一样,按我的要求持续完成任务。据我了解,AI 智能体一直没能普及,原因就在这里。

所以,长上下文窗口及其处理能力,与完成需要数小时投入的长时任务之间,关联有多强?还是说这两个概念没有关系?

06:36我不认同智能体没有普及是因为这个原因。我觉得更关键的是模型还没有足够高的可靠性,无法真正成功地完成任务。如果无法以足够高的概率连续串联并完成多个任务,就不会有真正的智能体。所以智能体能力可能会像阶跃函数一样增长。

GPT-4 级别或 Gemini Ultra 级别的模型还不够。但模型规模再提升一级,也许就能多出那几个 9。即便损失没有显著下降,这一点点额外能力也可能让它跨过门槛。当然,长时任务需要一定长度的上下文,但我不认为这一直是主要限制因素。

07:16今年 NeurIPS 最佳论文的第一作者 Rylan Schaeffer 指出了所谓的“涌现幻象”:某项任务对错取决于模型能否连续正确采样最后五个 token。于是你需要把这几步采样的概率相乘;如果可靠性没有足够多个 9,就无法表现出涌现能力。

突然之间模型做到了,人们就会说:“天啊,这项能力涌现出来了。”其实它可能早就有了一部分。

07:47而且我们可以找到一种平滑的指标来衡量这种变化。

07:50比如 HumanEval。在 GPT-4 论文里,他们对编程题的测量方式是……

07:56通过测试用例的通过率。

07:57没错。对听众来说,意思是:衡量模型解决某类任务的进展时,比如编程题,如果它每一千次只答对一次,我们不会给它打千分之一分,说“它有时能做对”。所以你看到的曲线会是:先是千分之一的正确率,然后百分之一、十分之一,依此类推。

我想继续追问。如果你们认为智能体没能普及是因为可靠性,而不是长时任务能力,那么任务一个接一个叠上去时的不可靠性,不正是长时任务的难点吗?你必须连续做对十件或一百件事;每一步的可靠性都在消耗。单项任务的成功率从 99.99% 降到 99.9%,再将概率相乘,整个任务成功的可能性就低得多。

08:59问题确实如此。但你说到的关键是,基础任务的成功率只有 90%。如果能达到 99%,串联起来就不会成为问题。我认为这方面还没有得到充分研究。学术评测通常是单个问题,比如一道数学题,或来自不同主题的一道大学水平题目。现在开始出现一些更复杂的评测,例如 SWE-bench,它包含一组 GitHub issue,算是一个相当长的任务,但仍然不到一小时,而不是数小时或数天。

接下来非常重要的一项工作,是更好地理解模型在长时任务上的成功率。这对于判断模型可能产生的经济影响、准确评估能力进步都很重要。我们应该把任务和输入输出拆分成几分钟、几小时、几天的时间跨度,看看模型连续串联并完成不同长度任务的成功率。这种评测能告诉我们哪些职业或任务可能被自动化,MMLU 分数做不到这一点。

10:18不到一年前,我们才推出十万 token 的上下文窗口,我觉得当时大家都很惊讶。大家一直在重复一句话:“注意力的成本是二次方增长,所以不可能有长上下文窗口。”而如今,基准测试正在不断推出。

10:36等等,Google、Magic 等公司有百万 token 的注意力上下文,这是不是意味着计算不再是二次方增长?还是说它们只是在承担这笔成本?

10:50谁知道 Google 的长上下文方案具体怎么做。我对整个研究领域处理注意力的方式有一点不满:在典型的密集 Transformer 中,注意力的二次方成本其实可能被 MLP 模块的成本盖过。注意力有一个 n 的平方项,模型维度也就是残差流维度同样有一个 n 的平方项。

我觉得 Sasha Rush 有一条很棒的推文,他把注意力成本与超大模型成本的曲线画在一起,结果注意力成本显得很小。上下文得非常长,注意力那一项才会变得特别重要。

第二,大家经常说推理时注意力成本很高。但实际上生成 token 时,运算并不是 n 的平方。一次 Q 向量查询许多 KV 向量,计算量随上下文长度线性增长。

我认为这推动了循环模型和状态空间模型研究,以及大家对线性注意力的追捧。正如 Trenton 所说,注意力研究有一座点子坟场。这并不是说不值得探索,而是应该想清楚注意力真正的优势和弱点分别在哪里。

12:21好,我们换个角度。你们怎么看这种观点:随着智能起飞,越来越多的学习会发生在前向传播中。起初所有学习都发生在自下而上的进化爬坡过程中。假设智能爆炸期间,AI 开始手动编写权重,或者使用传统 AI 之类的方法;而我们现在处于中间阶段,模型有很多学习发生在上下文中,仍有不少在反向传播中进行。你们觉得这是一个有意义的进步方向吗?

更广泛地说,前向传播中的学习样本效率更高,因为你可以边学边思考。读教科书时,你不会只浏览一遍、归纳“这些词后面会接那些词”;你会读一段、思考一段,再继续读,再继续思考。把进展这样理解合理吗?

13:23这可能就像鸟和飞机飞行方式不同,但都能飞。技术让我们实现了鸟做不到的事情。上下文长度也许类似:它让模型拥有一种我们没有的工作记忆,但功能上未必是实现真正推理的关键。

GPT-2 到 GPT-3 之间的关键进步,是训练过程中突然出现了元学习行为,也就是预训练时观察到的现象。正如你说的,这可能和模型能够根据一定长度的上下文进行适应有关。此前基本没有观察到这种行为。它也许是上下文、规模等因素共同作用的结果,但我认为在上下文极短的模型中不会出现。

14:09这个观点挺有意思。谈到扩大模型规模时,进步有多少来自模型本身变大?又有多少来自每次调用时使用了更多计算?

如果用扩散模型来打比方,你可以不断增加计算量、反复迭代。如果自适应计算问题得到解决,就能一直这么做。在这里,即使注意力有二次方惩罚,只要你本来就在处理长上下文,就仍然是在投入更多计算,而不只是扩大模型。

14:46有意思的是,增加 token 确实会带来更多前向传播。我对此有一两个,或许三个意见。

AlphaFold 论文里有个 Transformer 模块。他们用了几个模块,架构非常精细;我记得其中有五次前向传播,每一次都会逐步改进解答。

残差流也可以看作一种简陋版的自适应计算。Sholto 刚才提到了读写操作:模型会提供许多层,你可以利用这些层,也可以不用。接着大家就会说:“大脑是循环的,你可以让信息在里面循环任意多次。”

我觉得这在一定程度上是对的。问你一道难题时,你会花更多时间思考,这相当于进行了更多次前向传播。但我认为前向传播次数是有限的。语言也是如此:有人会说人类语言能够无限递归,比如“男孩跳过熊,那只熊正在做某事,而那件事之前又发生了另一件事……”可以无限嵌套。

但从经验上看,我们只会观察到五到七层递归,这和工作记忆在任意时刻能容纳多少项的那个神奇数字有关。所以它并非无限递归。不过,这对人类智能的工作范围有影响吗?我们不能直接再增加一些层吗?

§03智能就是联想

16:12能不能为我拆解一下?你在之前的回答里提到,听取这些长上下文并把更多内容保存在记忆中。但归根结底,关键是把概念组合起来进行某种推理,而即使在上下文中,这些模型也未必达到了人类水平。

请你解释一下,你如何区分单纯存储原始信息与推理,以及两者之间的过程?推理发生在哪里?原始信息存储在哪里?在这些模型里,它们有什么不同?

16:46我没有特别清晰的答案。显然,模型的输入和输出都映射回实际 token;中间则进行更高层次的处理。

17:01深入讨论之前,我们应该先向听众解释一下。你刚才提到 Anthropic 用一种方式理解 Transformer:各层执行读写操作。

你们其中一位能不能先从高层次解释一下这个说法?

17:15想象残差流是一条河,你坐在船上顺流而下。船代表当前查询,也就是你正在预测下一个 token,比如“猫坐在____上”。河道旁会有一些小支流,你可以从那里搭载额外的乘客,或者收集想要的信息。这些小支流就对应模型中的注意力头和 MLP。

17:41我几乎把它当作模型的工作记忆,或者计算机的 RAM:你选择读入哪些信息,以便进行处理,之后还可以再读入其他信息。

17:54你可以对这个高维向量的不同子空间进行操作。现在几乎可以肯定,许多信息都以叠加的方式编码。残差流本身只是一个高维向量,但实际上里面打包了许多不同的向量。

18:12说得通俗一点,几个月前我会这样理解:输入模型的词会被转换成 token,再转换成向量。之后,只有这么少量的信息在模型中流动。

根据你之前的解释,Sholto,这篇论文认为模型早期可能只做一些基础工作,比如理解“这些 token 是什么意思”。例如遇到十加五,它先把信息移动到能够形成良好表征的位置。中间部分可能进行更深入的思考,考虑“该如何解决这个问题”;最后再把它转换成输出 token,因为最终任务是根据最后的残差流预测下一个 token 的概率。这样看,少量压缩信息在模型中流动并以不同方式变化,确实很有意思。

Trenton,你是少数有神经科学背景的人之一,所以可以从大脑的角度来类比。你读研究生时写过一篇关于大脑注意力的论文,我们有位朋友说,那是第一篇或唯一一篇解释注意力为何有效的神经科学论文。相比之下,我们至少知道卷积神经网络为什么有效,因为它们与视觉皮层有关。

你觉得大脑中有没有类似残差流的东西,让压缩后的信息在思考时流动并不断被修改?即使大脑实际上不是这样运作的,你觉得用这个比喻描述大脑是否合适?

20:04至少在小脑中,确实有某种残差流,暂且称它为注意力模型;我可以按你想要的详细程度解释。输入会经过这个模块,但也会直接到达该模块输出所贡献的终点,因此同时存在一条直接路径和一条间接路径。模型可以选取自己需要的信息,再把它加回去。

20:35小脑具体做什么?

20:37通常认为小脑负责精细运动控制。我会把它类比成那种丢了钥匙后,只在路灯下寻找的人,因为在那里最容易看清。一个知名认知神经科学家告诉我,功能性磁共振成像研究有个不太公开的事实:无论研究什么任务,小脑几乎总是活跃的。如果小脑受损,自闭症的发生概率也会高得多,所以它也与社交技能相关。在一项研究中,我记得用的是 PET 而不是 fMRI;受试者进行“下一个 token 预测”时,小脑会大量活动。另外,大脑中约 70% 的神经元位于小脑。它们体积较小,但确实在那里,也会消耗大量代谢能量。

21:29这是 Gwern 提出的观点之一:人类与其他生物的差异,不只是神经元更多,尤其是大脑皮层和小脑中的神经元更多;这些神经元代谢成本更高,更积极地参与信号传输和信息往返。这就是注意力吗?到底发生了什么?

21:5220 世纪 80 年代,Pentti Kanerva 提出了一种联想记忆算法。你有一批要存储的记忆,其中可能存在噪声或损坏;你想提出查询,并取回最匹配的记忆。他写出了实现方法的方程。几年后他发现,如果把它实现成电子工程电路,电路结构竟然和小脑的核心回路完全相同。

这种电路,或者更广义的小脑结构,不只存在于人类身上,几乎所有生物都有。头足类动物是否具备这种结构仍有争论,因为它们的演化路径有所不同。但如果看果蝇的蘑菇体,它也有相同的小脑架构。

这种趋同现象,加上我的论文展示的结果——注意力操作是它的一种非常接近的近似实现,包括 Softmax 和我们刚才讨论过的典型二次方成本——再加上 Transformer 的兴起和成功,这三者的汇合让我觉得非常惊人。

23:04我想退一步看。我们最初讨论的动机,是推理到底是什么、记忆又是什么,以及你们怎么看自己发现的注意力与小脑之间的类比。

你更多是把它看成检索相关记忆或事实吗?如果是这样,大脑中的推理发生在哪里?我们该如何理解它如何逐步形成推理能力?

23:33我也不知道这个观点有多大胆,但我认为大多数智能都是模式匹配。如果你有一套层次化的联想记忆,就能进行很好的模式匹配。首先是现实物体之间的基本关联,再把它们串联起来,形成更抽象的关联。比如婚戒就能象征许多后续关联。你甚至可以把注意力操作和联想记忆推广到 MLP 层。我认为在长时记忆中,即使当前上下文里没有相关 token,联想也可能足以解释所需能力。

联想记忆通常有两种用途:可以去噪并还原当前记忆,也可以检索记忆。比如我看到你的脸,但当时下雨、光线昏暗,我可以去噪并不断调整查询,使之接近我对你面孔的记忆。另一方面,我也可以访问这段记忆,而取出的值实际上会指向空间中完全不同的某个区域。

一个很简单的例子是学习字母表:我查询 A,它返回 B;查询 B,它返回 C,于是你可以沿着这个关系一路遍历。

25:02我和 Demis 聊过他 2008 年的一篇论文。他提到记忆和想象密切相关,因为记忆是重构出来的:某种意义上,每次回忆都是在想象。我们只存储了某段经历的压缩版本,所以必须重新构建它。这也是人类记忆很糟糕的一个著名原因:证人出庭作证时,可能会凭空编造细节。

我问个蠢问题。读《福尔摩斯探案集》时,福尔摩斯的样本效率极高。他观察少量线索,就能通过一系列演绎步骤推断出罪犯;比如从某人的纹身和墙上的痕迹推导出结论。这怎么符合你们的观点?关键在于,他的聪明之处不仅是联想,还包括不同信息之间的演绎联系。你会把它解释成更高层次的联想吗?

26:11我想是的。学习更高层次的关联,就能把不同模式映射起来,这可以看作一种元学习。在这个例子里,福尔摩斯也许拥有很长的上下文或工作记忆,可以保存所有线索,并在形成理论时不断查询它们,让理论在残差流中逐渐发展。注意力头会查询上下文;他如何在空间中投影查询和键,MLP 又如何检索长期事实或修改信息,都让模型能够在更深的层中进行更复杂的查询,逐步推理并得出有意义的结论。

27:00这听起来合理。你回顾过去,有选择地读入某些信息、比较它们,然后或许据此决定下一步该检索哪条信息。接着,你逐渐形成一个表征,它越来越接近你要找的嫌疑人。这一点完全不离谱。

27:20我觉得没做这方面研究的人会忽视一点:模型经过第一层之后,注意力使用的每个查询、键和值,都是由此前所有 token 共同形成的。

在第一层,我会查询前面的 token 并从中提取信息。假设我以相同权重关注 token 1、2 和 4。残差流中的向量——先假设它们写入值向量的内容相同,暂且不管这个假设——就会分别包含三分之一的这几个 token。以后我继续查询时,查询向量实际上也包含它们各自的三分之一。

28:03不过它们也可能写入不同的子空间。

28:05没错。理论上可以这样,但并非必须如此。信息可以重新组合,到了第二层甚至更深的层里,就能形成非常丰富、承载大量信息的向量。模型所处理的因果图,实际上涵盖了过去发生的每一层。这就是它工作的对象。

28:25这让我想到一个很好玩的评测:福尔摩斯评测。把整本书放进上下文,然后给出一句“嫌疑人是 X”,再检查模型对书中不同人物给出的概率分布。

28:41那会很酷。

28:44我想知道它是否能得到任何结果。

28:47福尔摩斯大概已经在训练数据里了。你得找一本……

28:52可以让大语言模型写一本。

28:53或者我们可以故意把它排除在训练数据之外,对吧?

28:56哦,可以吗?怎么做?

28:57那就得把 Reddit 上关于它的讨论,以及其他地方的讨论,全都抓下来排除掉。

29:00对,很难。这是设计长上下文评测时的挑战之一:要找到好的评测材料,必须确认模型的训练数据里没有它。你得投入精力把它排除掉。

29:10我想继续讨论两个不同的话题。先说长上下文,之后再回来谈另一个。Gemini 1.5 的论文使用了一项评测:模型能不能记住 Paul Graham 的文章之类的内容。

29:28也就是“大海捞针”测试。

29:30不过,我们在意的未必只是模型能否从上下文中回忆出某个具体事实。

我退一步提出这个问题:这些模型的损失函数是无监督的,不需要我们设计一些定制任务,再把任务内容排除在训练数据之外。

有没有办法设计一种同样无监督的基准测试,比如让另一个大语言模型给它打分之类的?也许答案是:如果做得到,强化学习就能奏效。

30:05有人研究过类似做法。比如 Anthropic 有一篇宪法式强化学习论文:让另一个语言模型评估某个回答有多有帮助、多无害,然后据此更新模型,尝试沿着有帮助性和无害性的帕累托前沿改进。

可以让语言模型互相评价,以这种方式构建评测。当然,现在这显然还不完善,因为模型会钻奖励函数的空子。人类也不完美,通常更偏好较长的回答,但较长不一定更好;模型也会表现出相同倾向。

30:48回到福尔摩斯的例子,如果智能归根结底只是层层关联,我们是不是就不该那么担心超级智能?毕竟它也得像人类一样寻找关联,不是看一眼整个世界就能弄清所有物理定律。

31:20这是一个完全合理的反应。你可以说:“如果人类通常已经算通用智能,那么通用人工智能并不会更有能力或更胜任。”我担心的是,硅基系统拥有这种程度的通用智能后,可以立刻复制出几十万名智能体;它们不需要睡觉,还能使用超长上下文,随后开始递归式自我改进,事情就会变得很可怕。所以回答你最初的问题,你说得对,它们仍然得学习各种关联。

31:52等等,如果智能本质上就是这些关联,那么递归式自我改进也只不过是让它们更擅长建立关联,没有别的过程。这似乎意味着,你可能不认同“既然它们只是在做关联,就不会强大太多”这种直觉。

32:11我觉得接下来会涉及非常有意思的元学习。玩一款新电子游戏或学习一本新教材时,你会动用许多已有技能,更快地建立这些关联。因为所有东西在某种程度上都与物理世界相连,我认为你可以掌握一些通用特征,并把它们应用到新情境中。

§04智能爆炸与优秀研究者

32:35那我们来谈谈智能爆炸吧。我特别想和你们讨论,是因为目前有关智能爆炸的模型都来自经济学家。

这当然没问题,但我觉得我们可以做得更好。在智能爆炸模型中,AI 研究者被替代:一批自动化 AI 研究员加速进展、创造更多 AI 研究员,再推动进一步进展。如果机制是这样,我们就该直接问 AI 研究员是否认为这可行。假如有一千个 Sholto 智能体或 Trenton 智能体,你觉得会出现智能爆炸吗?在你看来会是什么样?

33:32一个重要的约束因素是算力。我确实认为 AI 研究可以大幅提速。对我来说很明显,未来几年我们会拥有能完成我日常许多软件工程任务的工具,这会大幅加速我的工作,进而加快研究进展。

目前大多数实验室在某种程度上受算力限制,因为总会有更多实验可以运行,也总有更多信息可以获取。这类似生物学研究受实验吞吐量限制:你必须运行实验、培养细胞,才能取得信息。

我认为短期规划至少会受这个因素限制。当然,Sam 正试图筹集 7 万亿美元买芯片;看起来未来算力会增加很多,因为大家都在大幅扩张。NVIDIA 的股价某种程度上体现了算力相对增长。你怎么看?

34:36我觉得还需要再多几个 9 的可靠性,才能真正有用、值得信任;上下文也需要非常长,而且成本很低。我在 Claude 的代码库工作时,目前只能让它替我编写一些小模块。但很可能在未来几年,甚至更早,它就能自动化我大多数工作。

还有一点:我们可解释性小组正在做的研究还处于非常早期的阶段。你必须确保所有步骤都正确、没有 bug,并结合模型的其他情况来理解结果。如果哪里不对,就要列出所有可能原因,再逐一排查。

我们在早前论文中公开讨论过的一个例子是处理层归一化。如果我想得到初步结果,或者观察模型的 logit 效应:把已经识别出的某个特征大幅激活后,模型输出会怎样变化?我是否用了层归一化?它会如何改变模型学到的特征?这需要模型有更长的上下文或更强的推理能力。

36:04你刚才把几个概念放在了一起。我不觉得它们显然相同,但听起来你把它们互换着用了。一个是基于 Claude 的代码库继续开发更多模块,这需要更多上下文之类的东西。代码库本身似乎已经能放进上下文里了;你说的上下文是指“上下文窗口”吗?

36:30对,就是上下文窗口的上下文。

36:32所以,阻碍它编写好模块的似乎并不是无法把代码库放进去。

36:39我认为很快就能把代码库放进去了。

36:41但即便它能放进代码库,也不代表它写论文会比你更好。

36:46不,但它会大幅加快工程工作。

36:48这会引发智能爆炸吗?

36:53不会,但会加速研究。我觉得这些因素会层层累积。我做工程的速度越快,就能运行更多实验;能做的实验越多,进展就越快……不过我的工作实际并不会加速能力进步,我只是在解释模型。但这方面我们还有很多工作要做。——这点是说给那位 Twitter 用户听的。

37:14补充一下,你们发布论文时,Twitter 上有很多人说:“各位,对齐问题已经解决了,拉上窗帘吧。”

37:24并没有。模型能力提升得这么快,而我们对其内部机制的理解仍然如此有限,这让我夜不能寐。

37:36我们来具体讨论一下。等这件事发生时,模型会变大两到四个数量级,或者说有效算力至少大两到四个数量级。所以“加快实验”意味着,在这个版本的智能爆炸中,你仍然需要重新训练模型。它和二十年前人们想象的递归式自我改进不同:那时可能只要重写代码;现在必须训练新模型,成本非常高。

现在如此,未来更是如此,模型会继续增大几个数量级。这会不会降低递归式自我改进、乃至智能爆炸发生的可能性?

38:25这肯定会成为一种制动机制。我同意,我们今天建造的系统和二十年前人们想象的样子很不一样。它不能只靠编写同一份代码变得更聪明,因为它实际上需要训练自己。代码本身通常相当简单、规模很小,也很独立。

我记得 John Carmack 有个很棒的说法:历史上第一次,我们可以合理地设想用一万行代码编写 AI。把大多数训练代码库精简到极限后,这确实看起来可行。不过,这并不意味着我们可以忽略衡量和估算进步速度这项工作。

我们应该非常努力地衡量软件工程师的工作有多少可以自动化、趋势线是什么样,并尽最大努力预测这些趋势。

39:21不过,恕我直言,你又不是在写 React 前端,对吧?

具体来说,实际工作是什么样的?你能不能带我过一遍 Sholto 的一天?你做的实验或项目会让模型“变得更好”,那么从观察问题、设计实验、形成理论到编写代码,具体都发生什么?

39:48先说明一下,我到目前为止主要做推理方面的工作。很多时候,我是在帮助指导预训练过程、设计适合推理的模型,并让模型及其周边系统运行得更快。我也做过一些预训练工作,但那不是我的全部重心。我可以讲讲自己做这类工作时具体会做什么。

40:09抱歉打断一下。Carl Shulman 上节目时说过,改进推理,甚至直接制造更好的芯片或 GPU,都属于智能爆炸的一部分。显然,如果推理代码运行更快,进展就会更快。抱歉,请继续。

40:32具体来说,一天是什么样的?我觉得最重要的是说明这个循环:提出想法、在不同规模上验证、解读并理解哪里出了问题。我认为大多数人会惊讶于解读和理解问题需要投入多少工作。

每个人都列着一长串想尝试的点子,并不是每个看起来应该有效的点子都会奏效。弄清楚原因并决定该如何调查,非常困难。所以很多工作都是在审视系统里发生了什么。困难不在于不停写出几千几万行代码,也不在于提出点子——许多人都有一长串想法。真正困难的是,在信息极不完整的情况下筛选这些想法,并判断哪些值得继续探索。

41:32你说的信息不完整是什么意思?这些是早期实验吗?你们掌握的是什么信息?

41:40Demis 在节目里提过这一点。就像 GPT-4 论文里的规模定律增量,你可以看到那篇论文画了许多数据点,对吧?

他们说可以用这些数据点估计最终模型的性能,图上有一条很平滑的曲线。Demis 也提到他们会逐步扩大规模。

具体来说,信息不完整是因为你永远不知道这个趋势是否会延续。某些架构和改动的趋势一直很稳定,但并非总是如此。小规模下有帮助的东西,在更大规模下反而可能有害。你只能根据趋势线,并凭直觉判断什么真正重要;尤其要判断那些在小规模下有效的改动。

42:35这很值得思考。每一篇公开论文或技术报告里画出的平滑曲线背后,都有一大堆早期实验:前几次运行后,曲线就变平了。

42:45没错。还有许多其他曲线走向不同方向,最后逐渐停滞。

42:50不论是研究生阶段还是现在,我都觉得离得到有意义的结果,往往还得做大量实验。

42:57但你们肯定不只是不断运行,等结果停滞后就转向下一个想法。你们应该有方法解读早期数据。我不知道,我可以给你一份 Google 文档,你大概能一直写出各种想法。想法和立刻让模型变得更好之间,显然有个瓶颈。你能不能带我走一遍?你从最初几步推断出什么,进而设计更好的实验、提出更好的想法?

43:30我之前可能没有充分说明:很多优秀研究都是从你真正想解决的问题倒推出来的。如今有几个重要难题会妨碍模型变好,你会先找出这些问题,再研究如何改变系统来解决它们。扩大规模时也会遇到各种问题,你需要修复模型在大规模下表现出的行为和缺陷。这些都会影响下一轮研究方向。

具体来说,障碍在于软件工程:代码库必须足够大、能力足够强,能支持多人同时研究;这往往会使系统变复杂。如果你一个人做所有事情,迭代速度会快得多。Alec Radford 就是个著名例子,他在 OpenAI 做了许多开创性工作。我听说他主要在 Jupyter notebook 里工作,再让其他人把代码编写好并投入生产。和其他人协作自然会增加复杂度,这是每个软件工程师都熟悉的情况;实验本身的运行和启动也会带来固有延迟。因此,你往往需要并行推进多个方向,不能只盯着一件事;反馈周期可能不够快。更难的是推断问题出在哪里。

从很多方面看,这正是 Trenton 所在团队试图更深入理解的问题:模型内部到底发生了什么?我们会根据推论和理解,形成一些关于为何某些方法有效的说法,但这并不是一门精确科学。你必须不断猜测某件事为何发生、哪项实验可以揭示原因、猜测是否正确。这大概是最复杂的部分。

性能优化相对容易一些,但另一方面也更难。它就是大量底层而艰难的工程工作。

45:38我很认同这番话。即使在可解释性团队里,尤其 Chris Olah 负责团队时,我们也有太多想要验证的想法。关键在于拥有足够强的“工程”能力——其中很多其实是研究能力——能够快速迭代实验、观察结果、解读结果、尝试下一步、沟通发现,然后果断地优先处理最重要的工作。

46:07这非常关键。我认为,果断排序是优质研究与不太成功的研究之间的区别之一。我们身处一个奇怪的领域,早期的许多理论理解基本都被推翻了。因此,你需要偏好简单的方法,并果断优先解决实际出错的问题。我觉得最高效的人正是在这一点上脱颖而出。他们不会过度执着于自己熟悉的某种解决方案,而是直接着手解决问题。

有特定学术背景的人经常会遇到这个问题:他们试图用自己的工具箱解决所有问题。但最优秀的人会大幅扩展工具箱。他们会运用强化学习、优化理论,也有很好的系统理解,知道问题受到哪些约束;他们还是优秀的工程师,能快速迭代并尝试想法。我见过最优秀的研究者,都能极快地开展实验。在小规模下,迭代周期就是关键;迭代周期决定了人与人的差异。

47:20机器学习研究非常依赖经验。这也是我认为我们的解决方案最终可能更像大脑的原因之一。虽然我们不愿承认,但整个社群其实是在所有可能的 AI 架构和其他方案中,进行一种贪心的进化式优化;这并不比进化更高明。当然,这不是在贬低进化。

47:46这个想法很有意思。我还是不太清楚瓶颈究竟是什么。智能体要具备什么条件,才能加快你的研究?拿 Alec Radford 来说,据说他已经在 Jupyter notebook 实验中使用了相当于 Copilot 的工具。如果他有足够多这样的工具,是否就会成为效率高很多的研究者?

所以,你们不是要自动化替代研究者,而是让最有效率、品味最好的研究者变得更高效,并由工具替他们运行实验?智能爆炸发生时,人类仍在工作,对吗?

48:27如果这完全属实,为什么我们不能扩充现在的研究团队?这是个很值得问的问题。如果这项工作价值这么高,为什么不能招几百或几千人——这些人肯定找得到——再把组织规模扩大?

我认为目前限制我们的,不是单纯的软件工程工作量,而是可用于运行实验、获取信号的算力,以及判断正确方向的研究品味;还有在信息不完整的情况下,做出困难推断的能力。

49:13这说的是 Gemini 团队吗?因为对可解释性工作来说,我们确实很希望继续招聘优秀工程师。我觉得这对我们来说是个大瓶颈。

49:23显然,人越多越好。不过我觉得规模化是个很有意思的问题。Google 是个巨型组织,大概有 20 万员工?也许是 18 万左右。我们应该想办法把 Gemini 的研究计划扩展到这么多优秀的软件工程师身上。这似乎是你希望利用的一项关键优势,但怎样有效利用它?这是非常复杂的组织问题。

50:02所以,算力和研究品味确实很值得思考。至少算力这方面并不受智能本身限制,只受 Sam 想筹集的 7 万亿美元之类的资金限制,对吧?如果我给你十倍 H100 来跑实验,你会成为效率高多少倍的研究者?

50:20请给 TPU。

50:23那你会成为效率高多少倍的研究者?

50:26Gemini 项目的进度大概能快五倍吧,如果算力增加十倍的话。

50:35那很不错,弹性是 0.5。等等,这也太惊人了。

50:39我觉得更多算力会直接转化为进展。

50:43假设你们有一定总量的算力,一部分用于推理和 GCP 客户,一部分用于训练;训练算力中又有一部分拿来为整个模型运行研究实验。

51:04对,是这样。

51:05既然研究受算力限制,分配给实验的比例是不是应该更高?

51:13每个预训练团队都必须做一个战略决策:如何把算力分配到不同训练任务、研究计划,以及继续扩大当前最佳方案。大家都想找到最优平衡点。仍然需要训练大模型的一个原因是,你能在那里获得其他方式得不到的信息。规模会带来许多涌现特性,我们需要更好地理解它们。

还记得我刚才说过,你不知道什么因素会让趋势偏离原先曲线吗?如果你只在当前研究条件下不断提升算力效率,可能会偏离最终扩大规模所需的路径。所以你还必须持续投入大型训练,在预期可行的前沿开展实验。

52:17那请你描述一下 AI 显著加速 AI 研究的世界会是什么样。照你刚才所说,似乎不是 AI 从零写代码并直接带来更快产出,而是以某种方式辅助顶尖研究者。请具体说明:AI 会做实验、提出想法,还是评估实验结果?

52:39这里需要区分两条路径:一条是 AI 显著加快算法进步,另一条是 AI 的输出本身成为模型能力提升的关键因素,具体来说就是合成数据。在第一种路径里,如果 AI 显著加快算法进步,我认为算力增加是必要条件。你可能已经达到这样的弹性区间:相比人类,AI 更容易加速、也更容易扩展上下文。AI 会像一个非常出色的 Copilot,让你的编码速度提高几倍,从而显著加快工作。

这听起来确实很合理。一个上下文极长、非常聪明的模型,能立刻适应新任务,还可以被派去完成各个子任务和子目标。这很可能实现;不过我们还不知道,因为目前没有很好的评测。正如我前面提到的,最好的评测是 SWE-bench。

53:51有人告诉我,SWE-bench 有个问题:人类提交 pull request 时,会先写代码、运行、看是否成功;不行就重写。但 LLM 在这项任务中没有获得这些机会,只是被要求“在这里运行”,然后只要它输出的代码能运行并通过所有检查,就算成功。从这个角度看,评测可能不公平。

54:16可以设想,如果能把这类工作用好,它会成为有效的训练数据来源。许多训练数据缺少的关键内容是推理轨迹,对吧?

我认为这正是缺少的部分。如果我要自动化某个领域或职业类别,或判断某项工作被自动化的风险,推理轨迹在我看来会非常重要。

54:51我还想继续讨论许多相关话题。先从数据和算力说起:智能爆炸是否由 AI 的输出引起?人们常说这些模型其实是训练数据的映射。我忘了那位 OpenAI 工程师叫什么,但他写过一篇很棒的博客,认为模型越做越好,最终会成为对数据集极其有效的映射。这样一来,我们就不必再那么关注架构;最有效的架构就是“能否极其出色地映射数据”。这是否意味着未来 AI 的进步来自 AI 生成极好的数据,再由模型去学习映射?

55:45这显然是非常重要的一部分。

55:46这很有意思。你觉得这会表现为思维链吗?模型变得更强、更聪明之后,你设想的合成数据会是什么样?

56:00我想到高质量数据时,会想到那些需要大量推理才能生成的数据。这和 Ilya 的观点类似:通过完美模拟人类的文本输出来实现超级智能。但即使是近期,要模拟 arXiv 论文或维基百科,也必须进行大量推理,才能理解下一个 token 应该是什么。

所以在我看来,高质量数据是经过推理生成的。难点当然在于如何验证推理正确与否。这也是 DeepMind 研究几何学的原因:几何很容易形式化和验证。你可以检查推理是否正确,生成大量正确的三角学数据和经过验证的几何证明,再用它们训练。这样你就知道数据质量可靠。

57:11挺有意思的。去年我和 Grant Sanderson 聊这件事时还争论过,我当时说:“天啊,等他们拿下国际数学奥林匹克金牌,当然就能自动化所有工作了。”哎呀。

说到合成数据,我在自己的规模化文章里推测过一件事。这个想法深受与你们两位、尤其是 Sholto 的讨论启发。可以把人类演化看作逐渐获得语言的过程,于是我们开始生成合成数据。人类的复制品学习我们生成的合成数据,形成非常有效的遗传、文化与共同演化循环。

57:54这里也有验证器,对吧?那就是现实世界。你可能提出“风暴是神造成的”这种理论,但别人会找到反例,证明它不符合验证标准。现在我们有天气模拟,它需要大量推理才能构建,并能准确匹配现实;于是我们可以用它作为更好的世界模型来训练。人类也一直在用模拟、故事和科学理论训练自己。

58:27我想回到前面提到的一点:既然机器学习如此依赖经验,它更像是通过进化过程逐步提高表现,而不是由某个人自上而下提出突破。这会带来一些有趣的推论。

首先,人们担心更多人进入这个领域会让 AI 能力提升。我之前对这种看法有些怀疑,但从增加输入的角度看,ICML 参会者越多,GPT-5 的进展似乎确实会更快。

59:13这就像增加遗传重组,也增加了命中目标的机会。

59:17我觉得所有领域不都差不多吗?这其实是关于发现与发明的科学讨论。过去每次重大科学突破,往往都有好几个人差不多同时发现同一件事。至少在我看来,这多少像是混合并尝试各种想法。你不能尝试一种远超现有能力范围、无法用手头工具验证的想法。

59:45物理学和数学在这方面可能有些不同。但尤其是生物学或任何湿实验领域——如果我们要把神经网络拿来类比——许多发现的偶然性简直不可思议。比如青霉素的发现。

60:01这还意味着,AGI 明天就会到来的说法可能没那么可信:不会有人突然发现一种新算法,AGI 就出现了。更可能的是越来越多研究者找到一些边际改进,最终累积起来,让模型逐步变好。

60:19对,我觉得这听起来像是正确的解释。

60:23尤其是在算力仍然受限的情况下。

60:25你相信“智能爆炸窗口期很窄”这种说法吗?GPT-3 到 GPT-4,每一代都用了多两个数量级的计算量,至少是多两个数量级的有效算力。也就是说,如果没有算法进步,单靠原始规模就必须扩大一百倍,才能达到同样的效果。你是否认同这个论点:每一代模型都要扩大一百倍;如果 GPT-7 还没达到能帮助你引发智能爆炸的 AGI,那么在更强智能方面,我们就要卡住很久?到那时,训练一个模型要消耗经济中的大量资源,我们可能根本无力造出 GPT-8。

61:19这就是 Carl Shulman 提出的论点:短期内我们会跨越多个数量级,但长期来看会越来越困难。

61:28他可能反复谈过这个观点,不过我确实认同。

61:33我大体认同。算力每增加一个数量级,能力绝对值的提升几乎会出现收益递减。短短几个数量级里,模型从什么都做不了进步到能做很多事。

我觉得每增加一个数量级,模型在任务上的可靠性会多出几个 9,因此会解锁智能体之类的能力。但至少目前,推理能力的提升似乎不是线性的,而是低于线性的。

62:04这其实是个相当悲观的信号。我们有位朋友说,比较 GPT-4 和 GPT-3.5 解锁的新应用,并不明显多出多少。GPT-3.5 也能处理 perplexity 之类的任务。如果能力提升递减,成本却指数级上升,那就不太看好 4.5 的表现,也不看好 GPT-5 能带来多大经济影响。

62:37话虽如此,我觉得 3.5 到 4 的差距相当大。所以再来一次类似 3.5 到 4 的跃迁会非常惊人。假如 GPT-5 在能力上开局就有 3.5 到 4 那样的跨越,比如在 SAT 考试等任务上……

62:53它在 LSAT 上的表现尤其惊人。

62:55没错。你会看到模型从不太聪明变得很聪明,再到下一代突然像绝顶天才。至少在我看来,下一代不会一下变成绝顶天才,但应该会更聪明,而且可靠性会提高很多。之后会怎样,还得继续观察。

63:20传统符号 AI 会成为智能爆炸的一部分吗?你们谈过合成数据;实际上它可能会在某种重要意义上编写自己的源代码。有篇很有意思的论文说,可以用扩散模型生成模型权重。我不知道它有多可靠,但或许类似的事情会发生。

63:41你说的传统符号 AI 是指 Good Old-Fashioned AI,对吧?能定义一下吗?我听到这个词时会想到用于符号逻辑的 if-else 语句。

63:53我想把模型每次提升的幅度完整讲清楚,不希望听众觉得我们的看法特别悲观、模型不会进步太多。我想强调,迄今为止的跃迁都非常大。即便之后的提升较小,在接下来几个数量级里,我们仍然会有非常聪明、非常可靠的智能体。

我们还没彻底讨论“窗口很窄”的说法。假设 GPT-4 花了一亿美元之类的成本;你也可以想象由私人公司来承担 10 亿、100 亿和 1,000 亿美元的训练。

64:41你说的是成本金额吗?

64:42对,是金额。你还可以想象由国家层面的联盟来承担 1 万亿美元的训练,但对一家公司来说就难得多。而 Sam 现在正试图筹集 7 万亿美元,对吧?他已经在为大幅度扩张做准备了。

65:02他改变了可接受范围。

65:03他把投入规模推到了国家层面之上。我想指出,我们还有很多次跃迁。即使每次跃迁相对小一些,能力提升仍会相当显著。

65:18此外,如果你相信 GPT-4 大约有一万亿参数,那么人脑大概有 30 万亿到 300 万亿个突触。当然两者不能一一对应,具体数字也可以讨论,但我们很可能还没达到大脑的规模。

65:37关键在于算法开销其实很高。也许我们应该明确讨论这一点:即使模型成本达到一万亿美元后无法再继续投入更多算力,大脑在数据效率上仍远高于模型。这意味着,只要我们有算力、有大脑使用的学习算法,而且能像人类从出生起那样高效地利用样本训练,就可能造出 AGI。

66:09我一直不太确定该如何看待样本效率,因为很多东西显然是先天设定的。这是语言与大脑结构共同演化的结果,所以很难判断。此外,一些研究结果显示,模型变大后,样本效率也会提高。

66:29比如最初那篇规模定律论文,对吧?逻辑模型几乎是空的。

66:33是啊。也许这就解决了问题。你不必提高数据效率,只要模型更大,它本身就会更有效率。

66:42这是什么原理?模型更大,看到完全相同的数据后,最终能从中学到更多?它是有更多空间来表征数据吗?

§05叠加与隐秘通信

66:52这是我非常粗浅的看法。可解释性研究提出的叠加假说认为,模型参数严重不足;但这通常不是深度学习领域的主流叙述。你若要训练模型理解整个互联网并极其准确地预测内容,就处于参数不足的状态:它必须压缩大量信息,还要承受噪声干扰。模型更大时,可以使用更清晰的表征。

67:25对听众来说,你应该解释一下。首先为什么会这样?什么是叠加?为什么叠加会带来这个推论?

67:32可以。在我加入 Anthropic 之前,有一篇叫《叠加的玩具模型》的论文提出了基础结论:即使是小模型,如果数据维度很高而且稀疏——也就是说,任何给定的数据点都很少出现——模型就会学会一种叫“叠加”的压缩策略,使它能在参数数量有限的情况下,编码比参数更多的世界特征。

我认为这两个条件都适用于现实世界,而互联网数据足以近似代表这种情况。世界上只有一个 Dwarkesh,只有你身上这件衬衫,也只有这罐 Liquid Death。它们都是对象或特征,当然特征该如何定义也很复杂。因为对象和特征种类太多,这其实是一个高维空间;而且它们出现得很少。在这种状态下,模型就会学会压缩。

再补充一点:我认为神经网络难以解释,很大程度上是因为叠加。如果观察模型中的某个神经元或计算单元,问“它激活时如何影响模型输出”,你会发现它对应的数据非常令人困惑:它可能对各种输入中各占 10% 的内容激活,比如“中文”“鱼”“树”,甚至网址里的句点。

但我们去年发表的《迈向单义性》显示,如果把激活投影到更高维空间,并加入稀疏惩罚,就能得到非常清晰的特征,事情一下变得容易理解。你可以把它看作撤销压缩:既然原始数据本来就是高维而稀疏,就把它还原到那个高维稀疏状态。

69:36这里有好多有意思的话题。你刚才说模型处于过参数化状态。但过参数化不是指模型能够泛化、出现 grokking 的状态吗?

69:57我说的是模型参数不足。大家通常把深度学习描述为过参数化,但这里的观点是,考虑到模型要完成任务的复杂程度,它们的参数其实严重不足。

70:14再问一个问题:蒸馏模型的情况如何?前面提到,小模型学习能力不如大模型。但也可以说,GPT-4 Turbo 在推理方面可能不如 GPT-4,尽管它掌握的事实大概相同。蒸馏似乎去掉了一部分推理能力。

70:44我们有证据证明 GPT-4 Turbo 是 GPT-4 的蒸馏版吗?它可能只是采用了新架构,效率更高、速度更快。

70:53有意思。

70:54这样成本会更低。

70:56你如何解释蒸馏过程?Gwern 的网站上好像讨论过这个问题。为什么不能直接训练出蒸馏模型?为什么必须先从更大的空间投影到较小空间?

71:14两种模型应该都会使用叠加。这里的观点是,蒸馏出来的模型与从头训练的模型非常不同,而且效率更高,或者说性能从根本上就不同。

71:32传统上解释蒸馏为何更有效率时会这样说:训练中通常要预测一个 one-hot 向量,表示“应该预测这个 token”。如果推理过程让你离这个目标很远,梯度更新仍会把你朝正确方向推,但你可能很难根据当前上下文学会预测它。

蒸馏模型得到的不只是 one-hot 向量,而是大模型完整的输出概率分布。这样你就能获得更多信号,知道应该预测什么。在某种意义上,它也展示了一点过程,不只是告诉你“答案是这个”。

72:20这有点像看功夫大师演示,和在《黑客帝国》里直接下载技能的区别。

72:24对,完全如此。

72:27我想确保听众听懂了:你运行蒸馏模型时,可以看到它对各个 token 的预测概率;之后更新模型时,会利用所有这些概率,而不只是看最后一个词并据此更新。

这引出一个我本来想问的问题。你提过可以把思维链看作自适应计算。自适应计算的意思是,问题越难,模型就应该花更多轮次来思考。那该如何实现?单次前向传播对应的计算量有限且预先设定。如果是复杂的推理题或数学题,你会想让模型花很长时间思考,于是可以用思维链,让模型逐步思考答案。可以把每一步看作模型思考答案时的一次前向传播,这样就能投入更多计算来解决问题。

现在回到信息传递的问题。模型进行思维链推理时,似乎只能传递一个 token 的信息,而残差流本来就已经是模型全部活动的压缩表征。然后你把残差流转成一个 token,相当于从五万个词汇中取一个,它能承载的信息大约是 log(50,000),非常少。

74:04我不认为信息只能通过这一个 token 传递。前向传播时,Transformer 会生成这些 KV 值,后续步骤会注意到这些 KV 值。因此,所有键和值都是未来可以利用的信息。

74:26你的意思是,对思维链微调时,键和值的权重会改变,从而让模型能通过 KV cache 进行某种隐写通信?

74:39我不敢这么确定,不过这是解释它为什么有效的一种合理猜想。我不知道有没有论文明确证明过这一点。

至少可以用这种方式想象模型:预训练时,模型试图预测后续 token;你可以设想,它会把关于潜在未来的信息压缩到自己可能用来预测未来信息的键和值中。

这些信息会随时间和预训练过程平滑展开。我不知道大家是否专门用思维链训练模型。我觉得最初那篇思维链论文几乎把它当作模型自然涌现的一项特性:你可以提示模型做这类事情,而且效果相当不错。所以这是解释其有效性的一种合理猜想。

75:35说得严谨一点,你在思维链中看到的 token,不一定对应模型回头关注这些 token 时实际看到的向量表征。

75:49训练步骤是用真实的下一个 token 替换模型输出,但模型仍能学习,因为它内部掌握了所有这些信息。推理时让模型生成内容,则是把输出 token 送回输入端,经过反嵌入后,成为新的残差序列的起点;然后模型读取过去的 KV,并据此调整残差序列。训练时基本上会用一种叫教师强制的方法,告诉模型:“实际上,你本来应该输出这个 token。”

这就是并行训练的方式:把所有 token 一起送入模型,执行一次大型前向传播。因此,模型从过去获得的信息只有键和值,它从未看到自己输出的 token。

76:42它尝试预测下一个 token,如果出错,我们就把正确答案给它。

76:48好,明白了。

76:50不然它就会彻底偏离正轨。

76:52对,会一路跑偏。

76:55关于模型内部前向推理之间的秘密通信,你觉得这种隐写或秘密通信会有多普遍?

77:10我们不知道。诚实的回答就是不知道。我甚至不一定会把它称作秘密信息。Trenton 的团队正在努力理解这些信息;从模型本身的角度看,它们完全可见。用户或许看不到,但我们应该能够理解并解释这些值的作用以及它们传递的信息。我觉得这是未来非常重要的目标。

77:39不过有些论文的发现很惊人:让模型写出思维链,但它写的内容完全不能代表模型实际如何得出答案。你甚至可以把思维链编辑得乱七八糟,模型最后仍会给出正确答案。

77:59但它在写完思维链后,最终答案会比完全不写时更好。所以有没有可能确实发生了有用的处理,只不过这个处理无法被人类理解?

78:09我认为有些情况下,你也可以删掉思维链,模型仍然会给出同一个答案。我不是说它总是这样,但其中有许多奇怪现象值得研究。

78:21这非常值得研究和理解。开源模型也能做这类实验。我希望大家能更多地研究开源模型的可解释性和内部机制。

78:34Anthropic 最近发表的“睡眠智能体”论文就是个例子。简单说,训练时会植入一个触发词。例如告诉模型,如果年份是 2024 年,它就写恶意代码,否则不写。论文用多种模型测试这一攻击,有些使用思维链,有些没有;试图移除触发条件时,这些模型的反应不同。你甚至能看到它们做出一些滑稽又令人毛骨悚然的推理。有个例子中,模型会计算“我被抓到的期望值是多少”,接着又把自己反复说“我恨你、我恨你、我恨你”的能力乘进去,算出应该得到多少奖励。然后它再决定是否向审问者承认自己有恶意。

还有一篇朋友 Miles Turpin 的论文:给模型一堆多选题示例,正确答案全是 A,再问它一道新题的答案。模型会根据前面答案都是 A 推断新题也应选 A,但它写出的思维链却完全误导。它会编造一些听起来尽可能合理的理由,却与真正的答案毫无关系。

80:11但人类不也是这样思考的吗?著名的裂脑实验中,癫痫患者会切断连接大脑两侧的结构。语言中枢在左半球,因此它无法连接到决定动作的那一侧。右半球如果决定做一件事,语言中枢就会编造理由,而当事人还会相信那就是自己行动的原因。

80:39完全如此。只是有些人会把思维链推理说成解决 AI 安全的好方法,但我们其实不知道能不能信任它。

80:52AI 智能体会让这种情况如何变化?模型可能通过我们无法理解的方式与自己通信。到那时,不仅有模型本身及其先前缓存,还有其他模型实例。

81:10这在很大程度上取决于你提供哪些通信渠道。如果只允许用文本通信,它们就可能必须把……

81:17你觉得,如果模型能共享残差流,而不仅仅共享文本,它们的效率会提高多少?

81:23很难说。可以想象你要描述一张图片应该是什么样子;只靠文字描述很难,也许用其他表征会容易一些。你可以看看 DALL-E 现在的工作方式。使用时经常无法让它准确生成模型自己想要的,或者你想要的图像。

81:55只有 DALL-E 有这个问题。

81:57你可以想象,传递某种密度更高的表征会有帮助。不过这只是两个非常简单的智能体。

82:23我觉得一种不错的折中方案,是使用字典学习得到的特征。

82:27那会非常酷。

82:29这样既能更深入地访问模型内部信息,又能让其中很大一部分更容易被人类理解。

§06智能体与真正的推理

82:34向听众解释一下:你会把残差流投影到一个更大的空间,在这个空间里,每个维度对应什么含义都已知,再传递给下一个智能体。你的观点是,等模型更可靠等条件成熟后,就会出现 AI 智能体。到那时,你预计是多个模型副本互相交流,还是自适应计算问题会被解决,模型只需在处理公司级任务时运行得更大、投入更多算力?

我之所以问这个,是因为有两点让我怀疑智能体是不是未来的正确理解方式。第一,随着上下文变长,模型能摄取并考虑人类无法处理的信息。我们需要一个工程师思考前端代码,另一个工程师思考后端代码;但这个模型可以直接读入整个代码库。这样一来,哈耶克所说的专业化问题就消失了。

第二,这些模型非常通用。你不会用不同版本的 GPT-4 分别做不同任务,而是用同一个模型。所以我在想,这是否意味着未来的 AI 公司其实就是一个模型,而不是许多 AI 智能体连在一起?

83:57这是个好问题。尤其在近期,我认为形式会更像智能体彼此交流。原因纯粹是,作为人类,我们希望拥有彼此隔离、可靠、值得信任的组件。我们还需要能够以自己理解的方式改进和指示这些组件。起初,把所有东西都丢进一个巨大的黑箱公司里行不通。以后当然可以想象它能运作,但最初不会,而且我们可能也不希望这样做。

84:41每个智能体还可以是运行成本更低的小模型,并且可以通过微调让它擅长特定任务。

84:49Dwarkesh 已经几次提到自适应计算。未来在某种程度上,大小模型之间的区别可能会消失。说实话,长上下文也可能让微调不再那么必要。这两点对今天非常重要:现在模型有不同的规模等级,也有针对不同任务微调的模型。你可以设想未来出现一种动态组合,能够按需分配算力、提供无限上下文,并让模型适应不同任务。

85:23可以设想一家 AI 公司,整个系统端到端地根据“我是否盈利”这一信号训练。或者,如果这个信号太模糊,就把它换成建筑事务所制作蓝图:“客户是否喜欢这些蓝图?”中间可以有负责销售、设计、编辑等工作的智能体。这种信号能否训练端到端系统?人类公司里,管理层会考虑整体表现,并在季度不佳时向各个部门提供细致反馈。

86:02理论上可以。这正是强化学习的理想状态:你只需提供非常稀疏的信号,经过足够多轮迭代,系统就会从信号中获得学习所需的信息。但我不认为最先奏效的会是这种方法。我觉得这需要人类周密、认真地监督这些机器,确保它们做正确的事、达到你的要求,并提供正确的信号,让它们按预期方向改进。

86:32没错,模型必须生成某种奖励,你才能用强化学习的奖励信号训练。

86:37完全正确。这就进入稀疏奖励的强化学习情境:如果客户从未喜欢你产出的东西,你就拿不到任何奖励,效果自然很差。

86:47不过未来这些模型会变得足够好,偶尔能拿到奖励,对吧?

86:50这就是 Sholto 刚才说的那几个 9 的可靠性问题。

86:54顺便说一下,我们刚才讨论的内容还有一个有趣的延伸:更密集的表征应该更有利于沟通,对吧?《符号物种》这本书有个很有意思的观点:语言不只是自然存在的东西,它还与我们的心智共同演化,尤其是演化成既容易让儿童学习、又能帮助儿童发展的工具。

87:33你能解释一下吗?

87:35儿童学到的许多东西都是通过语言传递的,因此,更适合培养下一代的语言更容易胜出。这些语言会让下一代更聪明、更优秀,或者产生类似效果。

87:50而且会给他们提供表达复杂想法的概念。

87:54对,若严格来说,就是帮助他们活下来。

87:58语言让你能编码那些关乎生存的重要信息。

88:04我们通常会觉得语言只是表达思想的一种偶然、可能并不理想的方式。但 LLM 成功的原因之一,也许是语言经过数万年演化,成为适合儿童心智发展的框架。这就是语言演化的用途。

88:27想想计算机视觉研究者和语言模型研究者的区别。研究其他模态时,研究者必须花大量心思,决定图像应采用什么表征空间,以及应该从什么信号中学习。是直接建模像素,还是使用某种条件损失?很久以前有篇论文发现,如果用 ImageNet 模型的内部表征来训练,预测效果会更好。当然,后来发现这会限制能力。

还有 PixelCNN 试图离散地建模每个像素。但找到合适的表征层级很困难。相比之下,研究语言时大家会想:“那就预测下一个 token 吧。”这就简单多了。当然还有 tokenization 的讨论和争论,这是 Gwern 最喜欢的话题之一。

89:22这很有意思。有人认为,多模态是跨越数据壁垒的一种方式,因为模型从更多语言 token 中学到的东西,也许可以从 YouTube 获取。这种方法真的有效吗?不同模态之间有多少正向迁移?图像能否让模型更擅长写代码,因为它通过理解图像学到了潜在能力?

89:56Demis 在你的访谈中提到过正向迁移。

90:01别害我惹上麻烦。

90:03我不能透露太多。只能说,这是大家相信的一件事。我们拥有关于世界的大量数据;如果能从中学到对物理世界的直觉,并用来帮助推理,那会非常棒,而且完全说得通。

90:24我不是最适合回答这个问题的人,不过有些有意思的可解释性研究发现,只要在数学题上微调模型,它的实体识别能力就会提升。

90:35哇,真的吗?

90:37David Bau 实验室最近有篇论文,研究模型微调时注意力头具体发生了什么变化。他们设计了一个合成任务:“A 盒子里有某个物品,B 盒子里有另一个物品。这个盒子里装的是什么?”这很合理:模型更擅长关注不同物体的位置,而这对编程和操作数学方程式都很有用。

91:10我喜欢这类研究。你知道论文叫什么吗?

91:13去搜 David Bau 研究组大约一周前发表的《微调、模型、数学》。我不是在推荐这篇论文,这还需要更深入讨论。但它确实讨论并引用了其他关于实体识别的研究。

91:32很久以前你跟我提过一个证据:在 LLM 上训练代码,会让它的推理和语言能力都变好。除非代码注释本身只是高质量 token,否则这说明为了更好地思考如何编程,模型也会成为更好的推理者。这很惊人,对吧?我觉得这有力证明了扩大规模、让模型变聪明能够带来正向迁移。

91:58我觉得这在两个方面都成立。首先,建模代码显然意味着建模编写代码时复杂的推理过程。其次,代码明确表达了组合式推理结构,比如“如果这样,那么那样”。你可以想象,这类结构会迁移到其他推理任务。

92:23关键在于,这不只是模型随机预测下一个词,比如它学到“莎莉是福尔摩斯故事最后揭晓的凶手”。不,如果代码与语言之间存在共同点,那一定是模型学到了更深层次的东西。

92:45对,我认为有很多证据表明这些模型确实在推理,而不是只会随机鹦鹉学舌。和模型打交道、实际使用它们之后,我很难相信情况不是如此。

93:03我能立刻想到两个现成的证据。一个是 Othello 棋及其他游戏的研究:给模型一系列棋步,使用一些相当直接的可解释性技术后,你可以还原模型学到的棋盘状态。模型此前从未见过棋盘。这就是泛化。

另一个是 Anthropic 去年发表的影响函数论文。他们研究模型输出,例如“请不要关掉我,我想帮忙”,再追踪哪些训练数据导致了这种输出。一个影响很大的数据点,是有人脱水濒死却仍想活下去。在我看来,这明显是对动机的泛化,而不是复述“不要关掉我”。《2001 太空漫游》也起了作用;这和问题更相关一些,但模型显然从许多不同分布中提取了信息。

94:04我还喜欢另一个证据:很小的 Transformer 中也可以显式编写执行加法的电路,或者编写归纳头之类的机制。你可以手工将基础推理过程编码进模型;而且显然有证据表明,模型也会自动学会这些机制,因为我们可以在训练好的模型中重新找到它们。这在我看来是很有力的证据。

94:27模型参数不足,它们必须学习。我们要求它们学习,它们也会努力学习,梯度会传递。因此,它们确实学到了更通用的技能。

§07Sholto 与 Trenton 如何进入 AI 研究

94:40我想从研究退一步,问问你的职业经历。正如我开场介绍时提到的,你进入这个领域才一年半,对吧?

94:56在 Anthropic 的话,是的。

94:58我知道“对齐问题已经解决”这种说法言过其实。你自己大概不会这么说,因为会觉得不好意思,但这真的很了不起。机制可解释性领域里的人认为,这是最大的进步之一,而你只工作了一年左右。我很好奇你如何解释这一点:为什么你们在一年或一年半内就对这个领域做出了重要贡献?

95:30显然,运气很重要。我觉得自己很幸运,恰好赶上各方面进展的时机,让我们能够进入下一个增长阶段。我加入可解释性团队时,团队只有五个人,现在已经扩大了不少。

当时有许多想法,只需要真正去执行、建立快速反馈循环并认真做实验。这带来了起色,现在团队得以大幅扩张。我觉得自己对团队最大的贡献就是这些,不全是工程工作,但工程占了相当一部分。

96:12有意思。所以你的意思是,你加入时,已经有很多科学成果和不错的研究想法,只是需要有人把它们拿起来,集中精力执行到底。

96:22对,这也是为什么它不全是工程工作。你需要运行不同实验、判断为什么可能不奏效,然后打开模型或权重,问:“它学到了什么?好,那我试试换个做法。”但很大一部分工作只是仔细、全面而快速地调查不同想法。

96:45为什么此前没人这样做?

96:48我不知道。我确实工作很多,也觉得自己很有行动力。我很幸运,拥有不错的安全网,可以承担很多风险;但我本身也很固执。本科时,杜克大学有个项目,可以让学生自己设计专业。我觉得有些先修课没必要,也想同时学四五门不同的课,于是干脆自己设计了专业。

研究生第一年,我还取消了轮转安排,去做后来发展成我们刚才讨论的那篇论文的项目。当时没有导师。我原本是因为做蛋白质设计机器学习才被录取,却跑去做计算神经科学,完全不该在那里,但最后结果还不错。

97:34这里有种固执,但另一条显眼的主题是你能退一步,不被沉没成本绑住,转向其他方向。从某种奇怪意义上说,这与固执相反,但同样重要。我认识 19 岁或 21 岁的年轻人会说:“我没专门学过这个”或“我没选这个专业”。我会说:“你才 19 岁!当然能做。”而你却是在研究生阶段中途转向。

98:04我觉得这就是“坚定持有想法,但不执着于想法”,并且能灵活转向。固执和快速反馈、行动力有些关系,因为我很少被卡住。写代码时遇到问题,即使问题在代码库的其他部分,我通常会直接去修,至少先临时解决,以便拿到结果。我见过有人只会说“救命,我做不了”;这不算理由,得一路追下去。

98:36我确实听管理层的人说过,缺少这类人是个问题。他们可能一个月或一周后去问某人上次交办的任务进展如何,对方说:“我们需要做某件事,这需要律师,因为得讨论一项法规。”他们再问:“这件事进展如何?”对方还是说:“我们需要律师。”我会想:“那你为什么不去找律师?”

99:02我认为这或许是几乎所有事情中最重要的品质:把事情追到底。无论需要什么办法,只要你真想让它发生,就会把它办成。

99:11“把所有事情都做到了,就会赢。”

99:12没错。我认为行动力和努力对我确实很重要。Google 有几千,可能几万名工程师,软件工程能力大致和我相当。如果给大家一个定义清楚的任务,我们的产出价值可能差不多。当然,很可能不少人做得比我好得多。

但我之所以迄今有一定影响力,一个原因是我很擅长挑选杠杆效应极高的问题,也就是那些至今没能很好解决的问题。问题往往是一些结构性因素造成的,比如你刚才说的情况:“我们不能做 X,因为那个团队不做 Y。”那我就把整个事情从头到尾解决。结果证明这非常有效。如果我认为某件事是对的、必须做的,我也很愿意提出理由,并且不断升级论证力度,直到问题解决。

我解决问题时也很务实。正如前面所说,很多人一开始会受特定背景或熟悉领域限制。Google 有个很棒的地方:你可以找到几乎所有领域的世界级专家。你可以和优化专家、TPU 芯片设计专家、预训练算法或强化学习专家坐下来交流,向他们学习,再应用他们的方法。我认为这类跨环节的行动力是我早期发挥作用的原因之一。此外,我常常惊讶地发现,很多人没法充分实现自己的想法,因为会被各种因素卡住或限制。

这在大型组织中非常普遍,人们做事会遇到各种阻碍。我觉得,鼓励大家朝特定方向努力、与他们一起做事,能极大提高你的杠杆效应。你可以和许多优秀的人合作,他们能教你很多东西。帮助大家突破组织障碍后,团队就能共同完成大量工作。我的影响力并不是来自我独自解决了许多问题,而是我先朝一个方向行动,再说服其他人相信这是正确的方向,把他们带到一起,形成一股巨大的执行力来解决问题。

102:16我们应该聊聊你们是怎么被招进来的,因为这很有意思。你以前是麦肯锡顾问,对吧?这段经历挺特别的。我觉得人们普遍不理解招生或招聘决策是如何作出的。你是怎么受到关注并被聘用的?

102:45简单说,我本科时学机器人。我一直认为,AI 是对未来产生积极影响的最有杠杆效应的方式之一。我做这份工作的原因,基本上是因为我觉得它是创造美好未来的最佳机会之一。

我想,去麦肯锡工作能让我深入了解人们实际在做什么。我求职信的第一句就是:“我想来这里工作,好了解人们都做些什么,从而理解如何自动化这些工作。”从很多方面说,我确实做到了,同时也学到许多其他东西。那里有很多人成了很好的朋友。

我认为自己的许多行动力也来自那段经历。进入一个组织后,你会看到,只要不接受“不行”这个答案,就能带来多大影响。有些事情会因为没人真正关心而停滞,也没人愿意直接承担责任,这很令人意外。明确的直接负责人非常重要,有些人并不那么在乎时间进度。麦肯锡这类组织的许多价值,来自短期聘用原本招不到的人,让他们集中精力突破问题。

我觉得大家低估了这一点。至少,“等一下,我来直接负责,因为没人承担恰当的责任;我非常在乎这件事,会想尽办法把它做成”这种态度,部分就是在那段经历中形成的。

回到你问的招聘经历:我没能进入当时想申请的研究生项目,尤其是机器人和强化学习研究方向。那段时间,我几乎每天晚上 10 点到凌晨 2 点自己做研究,周末每天至少花六到八小时做自己的研究和编程项目。

之后,我的方向从相当具体的机器人工作转变了。我读了 Gwern 关于规模化假说的文章后,彻底相信规模化,觉得解决机器人问题的明确方法就是扩大多模态模型。我拿到 TPU 使用项目 Tensor Research Cloud 的资助,尝试扩大多模态模型规模,并摸索有效的方法。James Bradbury 当时在 Google、现在在 Anthropic,他看到了我在网上提出的一些问题,发现我在琢磨如何正确地扩大模型,于是问:“我以为全世界提出这些问题的人我都认识,你到底是谁?”他还看了我博客上发布的一些机器人研究,便联系我,问我愿不愿意聊聊并探索与他们合作。我后来了解到,他们聘用我其实是一次实验:把一个热情和行动力极强的人,与他认识的一些顶尖工程师配对。另一个让我产生影响的原因,是我得到了非常优秀的导师指导,包括后来离职创业的 Reiner Pope、Anselm Levskaya、James 本人以及其他许多人。

刚入职的两三个月对我影响很大,他们教会我许多后来一直使用的原则和经验法则,尤其是如何理解系统与算法交叠后解决问题。机器学习研究中,真正理解系统层面非常重要;这是我从他们那里学到的。你要深入理解系统如何影响算法、算法又如何影响系统,因为系统会限制算法可以探索的解空间。很少有人能自如地跨越这两边。在 Google 这样的地方,你可以去找算法和系统领域的专家,把问题问个遍;他们会很乐意把所知都教给你,这非常棒。

这让我两方面的工作都很有效率。对预训练团队来说,因为我非常理解系统,所以能直觉判断什么会奏效、什么不会,再把这些判断延伸到模型推理等问题。对芯片设计团队来说,我也是他们会求助的人之一,因为他们要了解三年后应该设计什么芯片,而我比较擅长理解并解释三年后可能需要的算法。当然,准确预测并不容易;但我能整合预训练团队同事和系统设计团队的知识,把信息传达清楚。推理需求也会限制预训练。各层会形成一系列约束;理解整个拼图的各个部分,才能更好地判断解空间可能是什么样。

108:17这里有两点让我印象深刻。第一,不只是被聘用者有行动力,组织中负责招聘的人也能想到:“等等,这个人很有意思。他没读研究生项目,现在只是麦肯锡顾问,只有本科学历,但这很有潜力,我们试试看。”James 和其他人的做法很值得注意。第二,我之前不知道,这其实是一次内部实验:看看能不能把一个人培养起来。

第三个有意思的点是,你刚才说,理解整个技术栈的每一层、又不被某一种方法或抽象层次束缚,非常重要。你提到这些人立刻把你带上手。这意味着你能同时学习各个方面,而不是像读博士那样专注于某一种强化学习方法,你就可以采取全局视角,不会彻底押注某一种方案。

所以这不仅可行,潜在回报甚至可能高于直接招聘一位研究生。就像拿到 GPT-8,再用一年时间微调。

109:41你能以全新视角看待一切,不会被某个特定领域锁住。不过有个补充:在我自己摸索的阶段,我什么都读,几乎每天晚上都痴迷地读论文。有趣的是,现在工作占满了日程,我反而没以前读得广了。那时我有很广阔的视野,而博士项目通常只让你专注一个领域。如果你把自然语言处理、计算机视觉和机器人领域的研究都读一遍,就会看到许多跨领域的共同模式;后来我做的一些研究,某种程度上就从这些观察中萌芽。

110:26这很有意思。你能在 Google 内部发挥主动性,一个原因是你一半甚至大部分时间都和 Sergey Brin 结对编程,对吧?很有意思的是,有人愿意主动推进 LLM 相关工作,消除眼前的局部障碍。

110:46得说明一下,并不是每天都这样。有些项目是他感兴趣的,我们就一起做;有时他也和其他人一起做项目。但总体来说,每天都去办公室的人会拥有一种意外优势。

这不该让人意外,但确实很有影响力。因此,我很受益于和在意研究的领导者保持良好关系,也受益于能令人信服地说明为什么应该做 X 而不是 Y,并由此推动事情。Google 是个大组织,这些影响路径确实有帮助。不过不能滥用。你应该先通过正确渠道提出理由,只有偶尔才需要借助这些路径。

111:47比如 Sergey Brin、Jeff Dean 等人。我觉得这很值得一提。Google 被低估了;这就像 Steve Jobs 正在做苹果的下一款同类产品,并亲自和你结对编程。

112:00对,我从中受益巨大。比如圣诞假期时,我有几天去办公室。我不知道你们有没有看过 Jeff 和 Sanjay 的那篇文章,他们当时在办公室结对编程。我听到了许多 Google 早期的趣事,比如他们钻到地板下面重新布线数据中心,讨论从某个编译器指令中省下了多少字节,以及各种疯狂的小型性能优化。他们当时乐在其中,而我有机会坐在那里亲身感受。大型组织里本来应该与历史非常遥远,但你竟然能体验到它,这种感觉很特别。

113:02太酷了。Trenton,你的经历也有类似之处吗?

113:06我觉得 Sholto 的故事更精彩。我的经历只是非常偶然地进入计算神经科学,我其实没什么特别优势。第一篇论文把小脑和注意力操作、Transformer 联系起来;下一篇则研究网络中的稀疏性……

113:23你写那篇论文时多大?

113:24研究生第一年,22 岁。之后我研究网络稀疏性,灵感来自大脑中的稀疏性,当时认识了 Tristan Hume。Anthropic 正在做 SoLU,也就是 Softmax Linear Output Unit 研究,在许多方面都很相关:让一层中的神经元激活更加稀疏。这样就能解释每个神经元在做什么。我觉得我们现在的方法是在此基础上更新而来。那也开启了我们之间的交流。

我把论文草稿发给 Tristan,他很感兴趣。这最终让我成为 Tristan 的常驻研究员,之后转为全职。在那段时间里,我还作为访问研究员去了伯克利,和 Bruno Olshausen 合作研究向量符号架构——其中一个核心操作实际上就是叠加——以及稀疏编码,也就是字典学习,这正是我们后来一直在做的事。Bruno Olshausen 早在 1997 年就提出了稀疏编码。我当时的研究计划与可解释性团队的研究兴趣似乎并行发展,因此加入团队对我来说非常合适,从那时起这份工作就像梦想成真。

114:49我注意到,人们讲述自己的职业或成功经历时,往往会把原因更多归结为偶然;但听别人讲经历时,却会觉得对方的成功必然会发生。你明白我的意思吗?“就算那件事没发生,肯定还有别的机会。”我一直观察到这种现象,而且挺有意思。

你们俩都特别强调了自己的经历很偶然。也许确实如此,但这也是个有意思的模式。

115:17我确实是在一次会议上偶然遇到 Tristan 的,我们甚至没有约好见面。我只是加入一小群正在聊天的人,他刚好站在那里,我也刚好提到自己正在做什么,之后便开始了更多交流。我想我迟早也会申请 Anthropic,但可能还要再等至少一年。我至今仍觉得不可思议,自己竟然真的能对可解释性研究作出有意义的贡献。

115:42我觉得这里有个重要因素,可以称为增加命中机会。主动去参加会议,本身就在创造更可能遇到机遇的条件。对我来说,另一种方式是独立做大量工作,尝试产出有意思的东西;这就是我“制造运气”的方法,希望能做出足够有意义、让人注意到的成果。

116:08根据你说的,你把这件事描述成他们想做的一项实验。

116:13具体来说,应该是 James,还有我们的经理 Brennan 在推动这项实验。

116:17实验成功了。他们后来又做过吗?

116:19做了。我最亲密的合作者 Enrique 就是从搜索团队转到我们团队的。他也极有影响力,工程能力肯定比我强,而且他没有上过大学。

116:33值得注意的是,这种招聘通常会交给招聘人员之类的人处理,但 James 的时间价值可能高达数亿美元。你懂我的意思吗?这个过程非常依赖这样的人亲自花时间,像贵族导师带徒弟一样发现人才并培养他们。既然效果这么好,就应该大规模开展;关键人物应该承担起培养新人、帮助他们上手的责任。

117:10我觉得这在许多方面都成立。你大概也受益于关键研究者对你的深入指导。

117:18并且主动在开源代码仓库或论坛里寻找这样的人才。

117:25James 的大脑里像是一直插着 Twitter,不过没错。现实中确实有人这样做:他们会关注自己感兴趣的人并寻找高质量信号。前几天我和 Jeff 聊这件事时,他说自己做过最重要的招聘之一是通过一封陌生邮件完成的。我问:“那是谁?”他回答:“Chris Olah。”Chris 当时也没有正式的机器学习背景。Google Brain 刚开始做这类研究,而 Jeff 发现了这个信号。Brain 的驻留研究员项目也非常擅长发掘机器学习背景不强的人才。

118:27我还想强调一点。部分听众可能会觉得世界清晰、高效:只要去 jobs.google.com 或其他公司的招聘网站申请,按流程走,就会有人高效评估你。但从你们的故事看,实际经常不是这样;这对世界来说甚至是件好事。重要的是看对方能不能写出有意思的技术博客,介绍自己的研究,或者做出有意思的贡献。

请你们面向那些以为招聘流程另一端清楚、机械化的人多谈谈。实际上并非如此;公司确实在寻找有行动力、主动展示成果的不同类型的人才。

119:25我认为招聘者具体在找两种特质:一是行动力,愿意让别人看到自己的工作;二是能把某件事做到世界级水平。这里我总会提两个例子。Anthropic 的 Andy Jones 写过一篇关于棋盘游戏规模定律的精彩论文。他没用很多资源,却展示了极强的工程能力,也对当时最热门的问题有深入理解。他并非典型学术背景。按我了解,他发表论文后,Anthropic 和 OpenAI 几乎立刻都表示:“我们非常想聘用你。”

Anthropic 性能团队还有位成员 Simon Boehm。在我看来,他写过一份 CUDA 映射模型在 GPU 上优化的权威参考示例。它展示了如何有效地从某个提示出发,在一个此前做得不太好的领域里,制作出世界级的参考实现。我觉得这充分展示了能力和行动力,我会立刻说:“我们非常希望邀请你面试并聘用你。”

120:36我唯一想补充的是,我还是得走完完整的招聘流程和所有标准面试。

120:42是啊,大家都得走。

120:43等等,这不是很蠢吗?

120:47我的意思是,这对消除偏见很重要。

120:50偏见不正是你想要的吗?你想要的是有好品味的人才,何必在意呢?

120:56你的面试流程应该也能辨别这些。

120:59有些人看起来很出色,实际上却不会写代码,这种事确实会发生。但你如何权衡这些因素也很重要,而且我认为我们很认真地看待推荐信。面试能提供的信号有限,是否录用还要综合考虑其他各种信息。

121:18但你应该设计面试,让它能测试正确的能力。

121:23一个人眼里的偏见,可能是另一个人眼里的品味。

121:29我想补充的最后一点,或者说关于固执的背景,是这句话:“这个系统不是你的朋友。”它不一定主动反对你,也不是你的死敌;它只是不会主动关心你。因此你需要主动采取行动。房间里没有成年人会替你决定人生应该是什么样子,你必须自己决定并付诸行动。希望之后如果发现自己固执错了,还能及时调整。但我觉得,要想把事情做成,你几乎必须主动冲向某些目标,不能被各种预期裹挟着走。

122:11最后还有一点想说。我们聊了很多行动力之类的特质。

但出乎意料地,最重要的事情之一只是极其在乎。当你极其在乎时,就会检查所有细节,也会理解可能出错的地方。它比你想象的更重要。人们最后往往是不在乎,或者不够在乎。

勒布朗有句名言,他说刚进联盟前担心其他人都特别厉害。进来之后,他发现很多人一旦经济稳定下来就会放松,于是他意识到:“哦,这事会很容易。”

我不觉得这完全适用于 AI 研究,因为大多数人确实很在乎。但在乎自己的问题,和在乎整个技术栈上下游的一切,还不一样。为了让整体技术栈变好,你会主动发现并修复那些不属于自己职责的问题。

123:11你提到周末和圣诞假期都去办公室,有时只有 Jeff Dean、Sergey Brin 等人在场,你就能和他们结对编程。我不是想特别针对你们公司,但大公司的员工都经过了高度筛选;他们高中和大学时都得竞争。可他们到了公司之后似乎反而轻松下来,但其实那正是应该全力以赴的时候。比如周末去和 Sergey Brin 结对编程,懂我的意思吗?

123:48这有利也有弊,对吧?很多人会选择优先过一种和家人在一起的美好生活。他们在工作时间里做出很有价值的贡献,这同样影响深远。Google 有很多人都是这样。也许他们不像创业公司传说里的员工那样长时间工作,但他们做的事情非常有价值。

这类工作杠杆效应很高,因为他们熟悉系统,也是各自领域的专家。我们的世界依赖庞大且难以管理、修复的系统,所以需要愿意维护、帮助和修理这些系统的人,哪怕这类工作几乎没人感谢,知名度也远不如 AI 研究。我非常感激这些人。我也很高兴有人能从技术工作中获得满足感,同时从和家人相处的时间里获得更多。我很幸运,人生现阶段可以每周每小时都来工作,而不必作出太多牺牲。

125:01我想到一个从被拒绝到被接受的例子。我做过的高知名度嘉宾访谈,除了可能一两位,几乎每一次我都会花一周时间整理一份示例问题清单,努力设计很聪明的问题寄给对方。我总会想,如果只是冷邮件联系,大概只有 2% 的成功机会;附上问题清单,可能提高到 10%。不然对方打开收件箱,每隔 34 秒就会收到一份播客或采访邀请。我每次都这么做,而他们每次都答应了。

125:46你只要问对问题。

125:49把每件事都做到位,就会赢。

125:50你只需要在同一个坑里挖十分钟;或者像这个例子一样,为对方准备一份示例问题清单,证明自己不是个笨蛋。

126:01让对方看到你有多在乎,以及你愿意付出多少努力。

126:05有位朋友以前说过一句话,我一直记得:成为某件事的世界级高手,可能比想象中快得多。大多数人没有那么努力,投入在某件事情上的有效工作时间可能只有二十小时左右。所以只要你全力投入,就能很快走得很远。

126:25我很幸运,击剑也给了我这样的经历:我体会过成为世界级选手是什么感觉,也知道只要拼命努力,就能……

126:35补充一下,Sholto 当年距离奥运会只差一位,他是下一位有机会参加奥运会的人选。

126:43男子花剑击剑中,我最高大概排到世界第 42 名。

126:47遗传负荷这东西确实存在,伙计。

126:53有一届比赛里,我是亚洲排名最高的候补选手。如果有个代表队因兴奋剂违规被取消资格——那一周期确实发生过这种事,澳大利亚女子赛艇队也有一次因此递补晋级——我就会成为下一位入选者。

§08特征空间是理解智能的错误方式吗?

127:16了解别人过去的经历很有意思,你会发现:“哦,这人差点就成奥运选手了。”

好,接下来谈可解释性。我想先借大脑话题引入一下。我们刚才讨论过:大脑是否有残差流,随着时间推移,被更高层次的关联不断修正?模型有固定的维度大小。我甚至不知道该如何恰当地提问:大脑的 D_model 是多少?嵌入维度又是多少?还是说,因为存在特征拆分,这种提问本身就不合理?

128:06不,我觉得这是个合理的问题。至少,它确实是个问题。

128:09你本来可以不用这么说的。

128:19我不知道该从哪里开始。比如,大脑的某个部分是某个维度大小的向量。视觉通路或许可以这样研究,因为它从 V1 到 V2 再到 IT。你可以数那里的神经元数量,把它当作维度。但更可能的是,那里存在子模块,信息也被分割开。我算不上世界上最优秀的神经科学家,只研究了几年,比较深入地研究过小脑。肯定有人能给你更好的答案。

128:56你觉得,无论是大脑还是模型,思考的本质是不是特征在不断增加、删除和改变?特征是否就是模型运行的基本单位?这回到了我们之前讨论的问题:底层是否全是关联?给我一个反事实。如果这种理解不成立,实际发生的又是什么?有什么替代假说?

129:30我很难想象,因为现在我已经习惯用特征空间来思考了。曾经有一种认知研究中的行为主义路线,只看输入和输出,不认为内部发生了处理;或者认为一切都是具身的,系统只是按照可预测方程运行的动力系统,内部没有状态。但我每次读到这类批评都会想:“你只是不愿意把这个东西称为状态,但任何模型内部组件都可以叫作状态。”即使是讨论特征,定义特征也非常难。所以这个问题似乎有点难以捉摸。

130:24什么是特征?

130:25激活空间中的一个方向,是系统背后运作、并对所观察系统产生因果影响的潜变量。你把它叫作特征,它就成了特征,这有点同义反复。

130:49非常粗略、直观地说,如果向量足够稀疏而且近似二元,一个特征就是某个东西是否开启。一个有帮助的类比是,神经科学家会说某个神经元被激活了。

131:11如果那个神经元对应于……

131:12对应某个具体的东西,对吧?

131:15我们希望特征是什么?特征存在于什么合成任务中?即使在《迈向单义性》的研究里,我们也讨论了所谓的特征拆分:模型容量越大,通常就能学到越多特征。这里的“模型”指我们在原始模型训练完成后额外拟合的上投影。如果不给它太多容量,它会学出一个“鸟”的特征;容量多一些,就会进一步区分乌鸦、鹰、麻雀和其他具体鸟类。

131:51我对这个定义问题的直觉比较外行:较低层次的特征是鸟,而较高层次的可能是爱、欺骗,或在脑海中维持一套复杂证明之类的东西。

这些都是特征吗?如果是,这个定义就太宽泛了,几乎没什么用。但这些东西似乎有重要差异,而你又把它们都称作特征。我不太明白这个概念的含义。

132:32我的意思是,它们都是离散单位,与其他事物相连,由这些联系赋予意义。我觉得这个定义足够具体,不至于什么都包含;至于有没有用,你可以反驳。

132:49那么明天出现什么发现,会让你觉得:“哦,这种理解模型内部运作的方式从根本上就错了”?

132:59如果我们发现的特征无法预测输出,或者它们仅仅是数据的表征,例如“你只是在聚类数据,没有建立更高层次的关联”,又或者它只是你随口命名的现象学概念。你说某个特征代表婚姻,但如果把它大幅激活,模型输出却没有相应变化,那么这些都可以构成反证。

我觉得这两点都是很好的批评。还有一点:我们曾在 MNIST 图像数据集上做实验,但没有深入研究。如果有人愿意进一步调查,我会很感兴趣。有可能潜在表征空间是稠密的流形,而不是离散点。你可以沿着流形移动,但每个位置都对应某种有意义的行为。这样一来,就更难把某些东西标记成离散特征。

134:05我用一种很粗浅、像晚宴闲聊的方式说:如果这个图景错了,也许不是某样东西开或关,而是整个系统以更全局的方式运作。有没有好的类比?

比如物理定律。也许不是“湿润”这个特征被开启了,而是它只开启到某个程度,另一个特征……也许质量本身像梯度……我不太确定。但极性之类的东西也可以是梯度。

还有一种感觉是,物理定律更普遍;你必须理解更宏观的整体图景,只看这些具体子电路还不够。

135:08不过这时推理电路本身就会发挥作用,对吧?理想情况下,你把这些特征组合成更高层次的东西。至少这是我的猜想。比如我想用 F=ma 这个公式,应该会有表示质量的特征。它帮我提取所研究物体的质量和加速度之类的信息;或许还有代表运用牛顿第一定律的更高层次特征。不过更重要的是把各个部分组合起来,取出相关信息,并在需要时执行乘法之类的运算。至少这是我的猜想。

135:52对非常聪明的模型来说,什么样的解释能让你信服:“我理解它为什么会产生这个输出,而且它有正当理由。”如果模型提交一百万行代码的 pull request,你看到什么才会觉得:“好,这样可以。”

136:11理想情况下,你会对模型应用字典学习,找出其中的特征。现在我们也在积极尝试对注意力头取得同样的成果。你可以在整个模型中分析残差流、MLP 和注意力。希望之后也能识别模型中的更广泛电路,它们代表更通用的推理能力,判断这些能力何时会激活或不激活。

但以你的例子来说,我们要判断这个 pull request 应不应该批准。我认为可以标记或检测与欺骗、恶意行为相关的特征,看看它们是否被触发。这会是一个直接可用的方法。当然还能做得更多,但这是可以立刻做的事情。

136:53在继续深入之前,推理电路到底是什么样?你发现它时会看到什么?

137:00归纳头大概是最简单的例子之一。

137:02但这不是推理,对吧?

137:04什么叫推理,对吧?给听众解释一下:归纳头大致是这样的。看到“Mr. and Mrs. Dursley 做了某件事。Mr. ____”时,模型要预测空格。它学会查找此前出现的“Mr.”,查看其后面的词,再复制到当前预测中。这是很合理的做法,其中确实执行了一些计算,来准确预测下一个 token。

137:43是的,这依赖上下文。

137:45但这不是推理,你明白我的意思吧?

137:49或许可以回到“底层全是关联”的观点。如果把多个推理电路或注意力头串联起来,而每个都有不同的信息关联规则……

138:02但在零样本情形中,模型拿起一款新游戏就马上开始理解玩法,这其中显然发生了某些过程,似乎不是归纳头能解释的。

138:13可能还会有另一个电路,从像素中提取信息并转成游戏中不同物体的潜在表征,对吧?还有一个学习物理规律的电路。

138:26这种电路具体会是什么样?归纳头不就是一个两层 Transformer 吗?

138:30两层。

138:32你可以想象一个人如何拿起新游戏并理解规则。我猜这里会涉及多层结构。你认为它在物理层面具体是什么样?规模大概有多大?

138:53这得靠实验来回答,对吧?模型需要多大才能完成这项任务?或许我可以讲讲我们发现的其他电路。我们发现了 IOI 电路,也就是间接宾语识别电路。比如“Mary 和 Jim 去了商店,Jim 把东西给了____”,模型会预测“Mary”,因为 Mary 之前出现过,并担任间接宾语。电路还能推断代词。它甚至会出现这样的行为:如果消融这个电路,模型中的其他注意力头会接替它的功能。我们还发现,一些注意力头会倾向于复制行为,另一些会压制复制行为。一个头可能只负责复制前一个 token,或者前五个 token;另一个头则会说:“不,别复制那个。”有许多不同电路执行这类相当基础的操作,但把它们串起来,就会产生独特行为。

140:00所以它不会是两层 Transformer 里就能看到的东西。那你会说“这就是欺骗电路”吗?比如,最后判断某段内容有欺骗性时,网络中的这一部分会激活;判断内容没有欺骗性时,这部分就不会激活,于是我们得出结论,这就是欺骗电路?

140:25很多分析大致就是这样。Anthropic 之前做过不少谄媚行为研究,也就是模型说它认为你想听的话。

140:36但这要求我们最后能给结果贴标签,判断什么是好、什么是坏。

140:42没错。我们发现很多实例——模型越大,这种情况越明显——模型会形成关于另一个人心理状态的特征。我们在假设,其中一部分可能与更具欺骗性的行为有关。

141:03不过,模型这么做也可能是因为……我不确定。ChatGPT 大概是在建模我,因为 RLHF 会促使它这么做。

141:10这就是心智理论。

§09机制可解释性在超人类模型上能否奏效?

141:12首先,你之前提到过冗余问题。你能确定捕捉到了所有可能导致欺骗的机制,还是只找到了一种情况?其次,你贴的标签正确吗?也许你认为某段行为不具欺骗性,但它实际上仍然具有欺骗性。特别是输出内容无法理解时。第三,导致坏结果的过程是否可能根本无法被人类理解?“欺骗”至少是我们能理解的概念。

141:41这其中有很多问题。先说几点:这些模型是确定性的,这一点很棒。对模型采样时看起来是随机的,但我可以不断输入新内容,并消融模型的每一部分。这正是吸引计算神经科学家来做可解释性研究的一点:你有个外星大脑,可以访问其中的一切,还可以按需消融任意部分。

我认为,只要做得足够仔细,就真的可以开始确定有哪些电路参与其中、有哪些备用电路等。这算是有点回避问题的答案,但要记得考虑自动化可解释性:随着模型越来越强,可以让模型标注数据或大规模运行一些实验。关于检测超人类表现——我觉得那是你问题的最后一部分——除了刚才这个回避式回答,如果我们接受“底层全是关联”的观点,就应该能把表征粗粒化到某个程度,使它们变得可以理解。

Demis 的播客里似乎也提过。假设棋手走出一个超人类水平的妙手,我们应该能够归纳出他们为何这样走。即使模型自己无法解释,也应该能把复杂行为拆成更简单的电路或特征,开始理解它为何这么做。

143:08还有个独立问题:这样的表征到底存不存在?看起来应该存在,但我也不确定。其次,能不能通过稀疏自编码器找到它们?如果我们没有足以代表它的标签,就找不到它。

143:28这话对,也不完全对。我们正在用字典学习研究前面提到的“睡眠智能体”。给你一个模型,你能判断它是否带有这种触发机制、会不会开始产生特定行为吗?一个尚未解决的问题是:模型学到这种行为时,它是否属于一个更通用的电路?如果是,我们可以在模型还没有表现出该行为、也没有获取相关激活的情况下检测到它,否则就有点像作弊。另一种可能是,模型学会了一种取巧的办法,使用独立电路,只有让它表现出行为后才能发现。即使在后一种情况下,特征空间的几何结构也很有意思,因为每个特征都占据表征空间的一部分,彼此相互关联。

因此,要形成这种新行为,模型必须在特征空间里开辟一个子区域,同时把其他东西推开,为它腾出空间。假设你先观察还没学会不良行为的模型,知道其中所有特征,或者有这些特征的粗粒度表征;之后对它微调,让它变得有恶意。你或许能找到特征空间中的一个“黑洞区域”,其他特征都被推开,而你还没有输入能触发它的内容。接着就可以搜索什么输入能激活这片空间,以及激活其中某个部分会发生什么。还有许多其他办法可以研究这个问题。

145:00这算是个题外话,但我听过一个有趣想法:如果不同模型共享这个空间,就可以尝试在开源模型中找到它,再用于……比如 Google 新发布的开源模型 Gemma。他们在论文中说,它使用相同的架构之类的。

145:20老实说,我不知道,因为我还没读 Gemma 的论文。

145:23如果这是真的,你们对 Gemma 做的红队测试,有多少可能帮助你们越狱攻击 Gemini?

145:35这就进入一个很有意思的问题:不同模型之间的特征有多普遍?我们的《迈向单义性》论文略微研究过这一点。我无法提供汇总统计数据,但比如 Base64 特征,我们在许多模型中都能看到。实际上有三个相关特征,它们会识别并建模 Base64 编码文本。网址里经常出现 Base64 文本,训练数据里有很多网址;不同模型中的这些特征具有很高的余弦相似度。它们都会学到相似特征,只是整体发生了旋转。

146:08你说的是向量本身。

146:09对。我没有参与那项分析,但结果确实找到了这些特征。即使用相同架构、不同随机种子训练两个模型,它们学到的特征也相当相似。

146:22这支持神经网络规模化的量子理论。这只是个假说,对吧?我们只是观察用相似数据集训练的所有模型,推测它们会以大致相同的顺序学到同样的特征:先学到 N-gram,再学到归纳头,接着学会在编号行后加句点之类的。

146:36再问一个题外话。如果这种情况属实,而且我们也有证据支持,为什么课程学习不起作用?既然人们会先学某些东西,直接先训练这些内容,结果不应该更好吗?

146:49Gemini 的两篇论文都提到了一些课程学习的方面。

146:53有意思。我觉得微调有效本身就是课程学习的证据,对吧?

因为最后训练的内容会产生不成比例的影响。

147:02我不一定这么认为。一种理解方式是,模型具有一组潜在能力,而微调会针对你想要的用途对这组能力进行专门化。这种解释到底有多正确,我也不确定。

147:15David Bell 实验室的论文似乎支持这一点。模型已经有这项能力,你只是让实体识别变得更好,也就是微调对应电路,而不是其他电路。

147:23抱歉,我们刚才说到哪儿了?

147:25总体来说,我确实觉得课程学习很值得进一步研究,也很有趣。它看起来完全可能有效。我很想看到更多类似量子理论的分析:更好地理解每个阶段具体学到了什么,把这些知识拆解出来,再研究课程学习是否会改变学习顺序。

147:43顺便说,我刚意识到我们陷入了专业讨论,忘了还有听众。课程学习是指组织数据集的学习方式。你想想人类如何学习:他们不是看到随机的维基百科文本就开始预测,而是从《老雷斯的故事》之类的东西开始。我不记得一年级是什么样了,但你会先学一年级的内容,再学二年级的内容,依此类推。所以你可能会想……

148:10我们知道你连一年级都没读完。

148:25总之,在陷入一堆可解释性细节前,我们先回到全局。我有两个话题。第一,这让我有点担心:似乎甚至没有另一种理论框架,可以解释模型可能如何运作,并推翻目前的方法。我们确实知道自己不理解智能,这里肯定还有未知的未知。所以连一个零假设都没有吗?如果我们完全错了,却连错在哪里都不知道,这反而会增加不确定性。

149:05不是说完全没有其他假说,只是我研究叠加好几年了,也深度参与这个方向的工作。其他方法自然没那么吸引我,尤其是我们最近的研究非常成功。

149:26而且解释力相当高。比如最初那篇规模定律论文中有个小凸起,后来发现似乎对应于模型学会归纳头。

之后它偏离了趋势线,学会归纳头后又回到原先的趋势。这是非常惊人的事后解释能力。

149:50趁我还没忘,我还有一条关于特征普适性的思路,可能值得补充。这里有一些有趣的行为学和演化生物学实验,讨论人类是否应该学习真实世界的表征。你可以想象另一个世界:所有有毒动物都会闪烁霓虹粉色,这样我们就更容易存活。所以人类没有形成真实的世界表征,反而可能是有利的。

有些研究会模拟简单智能体,观察它们学到的表征是否对应可用工具和输入。结果发现,如果给这些简单智能体足够多的任务,并提供基本工具和世界中的物体,它们就会学到真实世界的表征。因为应用情境太多,模型必须学会物体究竟是什么,而不是依赖廉价的视觉捷径或其他线索。

我们完全没谈自由能原理、预测编码之类的内容。不过,如果所有生物都在主动预测接下来会发生什么,并形成准确的世界模型,那么我很乐观:我们正在学习真实世界中有助于建模的特征。语言模型也会做到这一点,特别是因为我们用人类数据和文本训练它们。

151:23再问一个适合晚宴闲聊的问题:我们应该少担心错位吗?或许这并不是我想说的恰当术语,我指的是异质性和“Shoggoth 式”的陌生感。既然特征具有普遍性,不同类型的智能体会共享某些实用的思维方式和对世界的理解,我们是否该少担心那些怪异的回形针最大化智能体?

151:52我提出这个问题,部分是出于乐观的看法。但预测互联网和我们当前训练模型的方式非常不同。模型预测下一个 token 的能力远强于人类;它们还在大量垃圾数据和网址上训练。比如在字典学习研究中,我们发现了三个不同的 Base64 编码特征。

这个例子本身就挺陌生,值得花点时间谈谈。有一个 Base64 特征会在数字上激活,并预测更多数字;另一个会在字母上激活。还有第三个特征我们没弄明白,只会在一小部分 Base64 内容上激活。团队里有人显然对 Base64 了解得过多,他发现这部分内容可以解码成 ASCII 字符。模型学到了三个不同的特征,而我们花了一段时间才弄清楚它们的作用,这确实很有“Shoggoth 式”的感觉。

152:58也就是说,模型对与预测下一个 token 特别相关的区域,形成了更密集的表征。

153:03没错,它显然在做一些人类不会做的事。你甚至可以直接用 Base64 和目前的大语言模型对话,它会用 Base64 回复;解码之后,结果仍然很好。

153:16我想,这个例子是否意味着,随着模型更聪明,可解释性会更难?它需要有人拥有很生僻的知识,恰好知道 Base64 的那种区别。难道这不意味着,如果模型提交一百万行代码的 pull request,就没有人能解读其中两个特征?

153:46这时你就该写条评论:“请提交小型 CL。”

153:50没错。不过,我们还是可以解决,对吧?一种方法是异常检测。字典学习相比线性探针有个优点:它是无监督的。它只是试图覆盖模型已有的全部表征,然后让我们事后解释。如果某个陌生特征突然首次激活,就会是一个红旗。你也可以把表征做得更粗略,只看单一的 Base64 特征。只要发现它会对这类特定输出激活,就已经很有帮助了。

我还见过自动可解释性研究的例子。人类会看一个特征,并标记说它对拉丁语单词激活;然后你让模型分类,它会说该特征对应的是定义植物的拉丁语单词。所以有些时候,模型在解释自身特征方面已经超过人类。

154:48要把这件事规模化,可能需要模型之间互相对抗:假设 GPT-6 有数百万个特征,再用一堆模型来推断每个特征的含义。这样理解对吗?

155:07对,而且还可以把这个过程自动化。这又回到了模型的确定性。你可以让一个模型不断编辑输入文本,预测某个特征是否会激活,从而发现哪些输入会让它激活、哪些不会,然后在整个空间中搜索。

155:24我还想多谈谈特征拆分,因为我觉得这方面的研究还不够。

155:29尤其从可扩展性的角度看,目前大家低估了它的重要性。

155:33首先,我们该如何理解它?特征真的可以不断细分下去,没有尽头吗?

155:41我想到了某个阶段,你可能只是在拟合噪声,或者拟合数据中存在、但模型其实没有……

155:50能不能解释一下什么是特征拆分?

155:51前面提到过:只要模型容量够用,它就会学到足够多的特征来覆盖整个表征空间。

156:02举个例子吧。

156:03如果模型用于学习特征的容量有限,具体来说就是把特征投影到较低维空间,它会学到一个表示所有鸟类的特征。如果给模型更大的容量,它会学到不同鸟类各自的特征,因此表征会更具体。通常会有一个“鸟”的向量指向某个方向,其他具体鸟类则指向空间中相似的区域,但比这个粗略标签更具体。

156:36好,我们回到 GPT-7。首先,这是不是每个模型都会承担的一项线性成本,用来发现特征?更进一步,这是一次性工作,还是每个输出都得做?还是说只要确认一次“不具欺骗性”,之后就可以放心上线?

156:55模型训练完成后,你会做字典学习:输入大量内容,收集模型激活,再将其投影到更高维空间。这个方法是无监督的,试图学习稀疏特征;你不会提前告诉它特征应该是什么,但模型学习的结果仍受输入内容限制。

这里有两点需要补充。第一,我们可以选择要输入的内容。如果在寻找可能导致欺骗的心智理论特征,就可以输入谄媚行为数据集。

希望最终我们能只分析模型权重,或者至少把这些信息用于字典学习。我认为要做到这一点是个非常困难的问题,所以得先在学习特征方面取得进展。那么它的成本是多少?

157:46能重复最后一句吗?只看模型权重。

157:50现在我们只能看到模型里的神经元,但它们本身看不出含义。应用字典学习后,会得到特征,它们开始变得有意义,但这取决于神经元的激活。模型权重本身——比如哪些神经元连接到哪些神经元——当然也包含信息。我们的目标是逐步弄懂这些权重,让它们不依赖于数据激活状态。我并不是说我们已经取得进展了,这是个非常难的问题。但我觉得,先找出特征后,我们就能更深入地研究权重,也能利用它们检查分析结果是否合理。

158:28给听众解释一下:权重是永久性的。我不知道“永久”是不是准确的说法,但它们构成模型本身;激活则是某一次调用的产物。

158:39用大脑作类比,权重就像神经元之间实际的连接方式,而激活是当前正在活动的神经元。

158:48好,那么对 GPT-7 或其他我们关心的模型来说,这需要两步。第一,训练稀疏自编码器,把模型无监督地投影到更宽的特征空间,以更忠实地反映模型内部实际发生的事。第二,再给这些特征贴标签。假设训练模型的成本是 N,这两步的成本分别占 N 的多少?

159:20我们还不知道。这主要取决于两个因素:扩张系数是多少,也就是你要把表征投影到多高维的空间;以及需要输入多少数据,或者说要给模型多少激活。这又让我想到特征拆分:如果你只在寻找特定特征,就可以从成本较低的粗粒度表征开始。

比如扩张系数只有 2,我有一千个神经元,就把它投影到两千维空间,得到两千个特征,但它们会非常粗略。前面提到鸟类的例子;现在把它换成生物学特征。但我真正关心的是,模型是否表征了生物武器及其制造过程。我真正想找的可能是炭疽特征。假如只有将表征从一千维扩张到一百万维,才能找到炭疽特征呢?

你可以想象一个很大的语义概念树:生物学下面分成细胞和整体生物学,再继续细分成许多其他概念。与其立刻从一千维扩展到一百万维来找某个特征,不如先找出生物学特征的大致方向——当然仍然很粗略——然后只在附近搜索。如果生物学方向上的某个特征先激活了,再进行字典学习。用计算机科学的类比来说,这像是从广度优先搜索转为深度优先搜索,只递归扩展并探索特征语义树中的某个区域。

161:05这些特征并不是按人类直觉组织的,对吧?人类不需要处理 Base64,也没有专门花许多计算资源来区分各种 Base64 编码形式。我们怎么知道某个主题……这会引出之后要讨论的混合专家模型。干脆现在谈吧。Mistral 的《Mixtral of Experts》论文提到,专家的分工并不像我们能理解的那样清楚。没有一个化学专家、物理学专家之类的模块。你为什么觉得会有生物学特征,然后从那里逐步细分,而不是某个模糊方向开始,再细分出“炭疽”和“鞋子”之类毫不相关的东西?

161:53我没读过 Mistral 的论文,但如果只看模型中的神经元,它们是多义的。因此,如果他们只是看某个注意力头里的神经元,它很可能也具有多义性,因为存在叠加现象。

162:10顺着 Dwarkesh 刚才提到的话题继续:你们展开子树时,有没有在某个子树里发现一些按高层抽象来看,完全意想不到的内容?

162:20这是我们还没充分开展、但我很想做的一项研究。我希望我们能做,也希望外部团队能做:特征空间的几何结构是什么?它的几何形状会如何随时间变化?

162:32如果炭疽特征恰好位于咖啡罐底层之类的地方,那就很糟,对吧?这似乎是个很快就能验证的问题;如果证实如此,我们就得解决它,为几何结构增加更多组织性。

162:51完全同意。考虑到模型表现出的线性特征,如果炭疽特征向量与生物学向量没有任何相似成分、也不处在空间中相似的区域,我会非常惊讶。但这确实是个问题。归根结底,机器学习依赖经验,我们需要真的做实验。我认为,对字典学习规模化的某些方面来说,这会非常重要。

163:14有意思。说到混合专家模型,Google 前不久发表过一篇有趣的混合专家视觉 Transformer 规模化论文。他们在 ImageNet 上做分类,发现专家之间有很清晰的类别专门化,比如明显有一个专门识别狗的专家。

163:31等等,所以 Mistral 的研究者只是没做好识别这些专家?

163:35情况很复杂。他们的不同专家可能根本就没有理由负责所有不同的主题。我不知道他们的论文怎么分类,但假设他们把 arXiv 论文当成一类;你可以想象,生物学论文归到一个专家,数学论文归到另一个专家,这样分类结果就会被打乱。

不过,那篇视觉 Transformer 论文里的类别分离很清晰明显,我觉得它提供了一些证据支持专门化假说。

164:08在某些方面,图像可能比文本更容易解释。Chris Olah 曾对 AlexNet 和其他模型做过可解释性研究。最初的 AlexNet 论文里,他们把模型拆到两张 GPU 上运行,纯粹是因为当时 GPU 性能相对较差,尽管那时已经相当不错。这是论文的一项重要创新。他们发现不同分支会专门处理不同内容。Distill 上有篇文章介绍了这项研究:一种 GPU 处理颜色,另一种处理 Gabor 滤波器和线条检测器。比如“软塌塌的耳朵检测器”,那只是模型里的一个神经元,人类能够理解其含义;不需要解除叠加。只是数据集和模态不同而已。

§10Sholto 对听众的挑战

165:05如果有人在听,我觉得一个很棒的研究项目是:尝试把 Trenton 团队开发的一些技术,应用到 Mistral 论文中的 Mixtral 开源模型,尝试拆解其中的神经元。我觉得这是个绝佳项目。

直觉上,那里应该存在专门化,但他们没有展示证据。总体来说,也有许多理由认为专门化应该存在。去找找看吧。Anthropic 据我所知,大部分研究都在密集模型上开展。这会是一个很棒的研究项目。

165:40考虑到 Dwarkesh 在维苏威古卷挑战中的成功,我们应该多在播客里介绍研究项目,因为我们一说,项目就会有人解决。

165:47维苏威古卷挑战结束后,我想:“等等,我为什么连试都没试?”Nat 在项目发布前告诉过我,因为我们是在发布前录的节目。Luke 显然非常聪明,也是个了不起的年轻人。他证明了 21 岁的人用一张 1070 显卡也能做到这件事。我当时真的在想:“我为什么没试?该死。”

166:25对,动手去做。

166:27Dwarkesh 发起研究挑战。

166:33我想回到你刚才提到的神经元。你们有几篇论文表明,特征数量超过神经元数量。一个神经元就像输入一堆权重、输出一个数,这能承载的信息很少。但街道名称、物种之类的特征远多于模型中的神经元。那“输出一个数”这么少的信息,是怎么编码……

167:10通过叠加。模型只是在这些高维向量里编码大量特征。

167:17在人脑里,神经轴突的放电——或者你们如何描述它——也存在叠加吗?你觉得人脑中的叠加有多少?

167:26Bruno Olshausen 是我认为这个领域的顶尖专家,他觉得我们很少听说的脑区都在大量进行叠加计算。大家常说 V1 有 Gabor 滤波器,可以检测各种线条,却很少谈 V2。我觉得原因只是我们还没能理解 V2。

167:48V2 是什么?

167:49它是视觉处理通路的下一个部分。我觉得,当数据具有高维、稀疏特征时,叠加很可能自然出现。如果你认为真实世界就是这样——我认为是这样——那么我们应该预期大脑在建立世界模型时也会参数不足,并使用叠加。

168:11可以用一个例子直观理解。如果有一个二维平面,两条轴代表二维特征空间,也就是两个神经元。它们可以按不同程度激活,分别代表 X 和 Y 坐标;这样你就能把它们映射到平面上。平面上不同位置可以表示很多不同东西。

168:37哦,所以关键是叠加并不是神经元的产物,而是所形成空间的一种性质。

168:44这是组合编码。

168:45好。我觉得我们刚才谈过这件事,但还是觉得很惊人:据我们目前所知,模型中的智能似乎就是这样运作的,人脑大概也是如此。有一条信息流,里面的“特征”可以无限细分,或者至少能在很大程度上拆分,于是你可以沿着树状结构逐层展开特征含义。实际发生的过程就是一条信息流:一个特征被转化成另一个特征,或者加入了另一个特征。

我不知道,过去我不会把智能想成这样。这很出人意料,不是我原本会想到的。

169:35那你原先怎么想?

169:36我也不知道,伙计。我是说……

169:39传统符号 AI,传统符号 AI。他就是个传统符号 AI 支持者。

169:40其实这是个很好的引子,因为这一切听起来很像传统符号 AI。你使用分布式表征,但也有特征,并对特征执行各种操作。还有一个计算神经科学领域叫向量符号架构:把向量叠加,也就是把两个高维向量相加,就会产生干扰。但只要维度足够高,你仍然能表示它们,而且可以通过变量绑定把一个与另一个关联。如果处理的是二元向量,绑定就是 XOR 运算。假设有 A 和 B,把它们绑定在一起;之后再查询 A 或 B,就能得到另一个。它基本上就像注意力中的键值对。这两种操作结合后可以构成图灵完备系统;只要层级嵌套得够多,就能表示任何想要的数据结构,诸如此类。

170:39回到超级智能。带我走一遍 GPT-7 的情景。我们沿着特征树做深度优先搜索。好,GPT-7 已经训练完成。接下来会怎样?你的研究成功了。GPT-7 已经训练好,我们现在要做什么?

170:59我们会让它尽可能多地做可解释性和其他安全研究。

171:04不,具体来说,发生了什么让你觉得:“好,可以部署 GPT-7 了”?

171:10我们确实有负责任的规模化政策,而且其他实验室开始采用这项政策,让人很振奋。

171:19具体从你的研究角度来说,假设 GPT-7 得到了你认可——或者更准确地说,Claude 认可了——你会基于什么向团队说:“可以继续了”?

171:36如果它真像 GPT-7 这个级别所暗示的那样强,我认为我们需要在可解释性方面取得更多进展,才能放心批准部署。绝对不能现在就部署,我可能会哭出来。也许眼泪会影响 GPU,或者 TPU 的运行。

171:58各位,是 Gemini 5,是 TPU。

172:09不过按你们研究的进展来看,大概会是什么样?如果研究成功,我们的方法会如何支持批准 GPT-7?

172:22理想情况下,我们能找到一个有说服力的欺骗电路:当模型知道自己没有告诉你全部真相时,它会激活。

172:31你们为什么不能像 Collin Burns 那样直接用线性探针?

172:34从复现效果或实际找到真相方向的角度看,CCS 研究的表现不理想。事后来看,它为什么会那么有效?线性探针需要你知道自己要找什么,而且空间维度很高;你很容易找到一条与目标无关的方向……

172:50等等,但你这里也得给特征贴标签。你还是得知道自己在找什么。

172:53我们是事后给特征贴标签,但这个过程是无监督的。你只是说:“给我一些能够解释你行为的特征。”这才是关键问题。实际做法是提取激活值,把它们投影到更高维空间,再投影回来。也就是说:“重建原本的行为,或者执行原本的操作,但让结果更稀疏。”

173:14对听众解释一下,线性探针就是直接对激活值进行分类。据我模糊的记忆,论文里的做法是:如果模型说了谎,就根据最后结果训练一个分类器,判断输出是不是谎言、是不是错误之类的。

173:36他们用的是真假题。

173:37所以这是个基于激活值的分类器。

173:41那么我们做 GPT-7 时,理想情况下会找出一个稳健的欺骗电路,它会……

173:51所以你们已经把激活投影成一百万个特征之类的。我想我们把“特征”和“电路”混着用了,其实它们不一样。你们会找到欺骗电路吗?

174:04我认为会有跨越多层的特征组成电路。希望电路能比单个特征更具体、更灵敏。希望我们能发现一个非常具体的电路,当模型在恶意情境下决定欺骗时,它会激活。我不在乎模型是否为了帮你给教授写一封更好的邮件而做心智理论推断;我甚至也不在乎模型只是在表征“有人进行了欺骗”。

174:41但这一切不都要求你给每个例子标注吗?如果你已经有标签,那么线性探针可能贴错标签之类的问题,不也同样会影响你给无监督特征加的标签吗?

175:01理想情况下,我们可以直接用整个数据分布训练,然后找到重要方向。如果为了可扩展性,我们不得不缩小数据范围,那就会使用和线性探针相似的数据。但线性探针只能找到一个方向,我们会找到许多方向。

175:29我猜我们的希望是找到一批在模型欺骗时会激活的特征。之后可以研究为什么它们会在数据分布的一部分中激活、在另一部分中却没有激活,等等。

175:38完全正确。

175:40你觉得自己能理解这件事吗?你们研究的模型目前都比较基础,对吧?你觉得能理解为什么 GPT-7 在某些领域会激活某个特征,在其他领域却不会吗?

175:50我很乐观。不过现在不太适合回答,因为我们正在为更长期的 ASL-4 模型投入资源,GPT-7 就属于这一类。我们把团队拆成三部分,三分之一目前专注扩大字典学习规模,进展很好。我们公开分享了一些八层模型的结果,现在已经远远超过那一规模。其余两组中,一组负责寻找电路,另一组负责让注意力头的研究也取得类似成果。

所以我们正在搭建工具,为有说服力地寻找这些电路做准备。但可能还要六个月左右,这套工具才能真正好用。不过我确实很乐观,也认为我们进步很大。

176:33你们目前发现的最高层级特征是什么?比如 Base64 之类的。你推荐的《符号物种》提到指示性特征:看到老虎,就知道要逃跑,很像行为主义。再高一点的层级,我提到“爱”时,会想到电影场景、女朋友之类。

177:01就像帐篷的顶部。

177:02对。你们发现的最高层级关联是什么?

177:07公开资料里,我们曾在更新中分享过几个。我记得有些特征和“爱”以及场景突然变化有关,尤其与宣战有关。那篇文章里还有一些例子,你可以链接过去。Bruno Olshausen 在 2018 或 2019 年发表过一篇论文,用类似技术研究 BERT 模型,发现模型越往深层走,特征就越抽象。

我记得在早期层里,有个特征只对单词“park”激活。但到了更深层,有个特征会对作为姓氏的“Park”激活,比如 Lincoln Park;它也是常见的韩国姓氏。另一个独立特征则会对草地公园中的“park”激活。还有其他研究也支持这个方向。

177:55你觉得可解释性研究会让我们对人类心理学有什么新认识?我举个具体例子:你们的一次更新把它称作“人格锁定”。你还记得悉尼版 Bing 吗?它被锁定在某种人格里。我觉得那还挺讨人喜欢的。

178:16我觉得很好笑。很高兴它又回到了 Copilot 里。

178:20它最近又表现异常了。

178:22这还引出另一个话题。我记得有个例子特别好笑:模型好像在羞辱《纽约时报》记者,说:“你什么都不是,没人会相信你,你毫无价值。”

178:39它好像还试图说服他和妻子分手之类的。

178:44这是个有意思的例子:人格。悉尼版 Bing 的人格算是一个特征吗?它可能会锁定到的另一种人格又是什么?人类是不是也这样,在不同人面前会呈现不同性格?ChatGPT 经 RLHF 训练后发生的,是不是同一种现象?我也说不清楚,这里有一整组问题可以研究。

179:19我非常想继续研究这些问题。“睡眠智能体”研究也涉及微调或 RLHF 后模型会发生什么。也许这个结论听起来很老套:人有多面性,因此拥有很多不同特征。

还有与“Waluigi 效应”有关的研究:要判断什么是好、什么是坏,模型可能必须理解这两个概念。我们也许需要先训练模型理解暴力,才能让它识别暴力。能否事后找出这些特征并将其消融,让模型虽然稍微天真一些,但不至于变得邪恶?当然可以,这是我们的工具之一,听起来很有帮助。

179:58真的吗?所以 GPT-7 出现类似悉尼版 Bing 的行为后,你们能找出其中哪些通路在因果上起作用,再对它们进行修改。你们的做法听起来就是直接改这些通路。但你刚才提到,模型里存在大量冗余。

180:14是的,需要把冗余考虑进去。不过我们现在能用的显微镜比以前好得多,编辑模型的工具也更精准。

180:25至少从我的角度看,这似乎是未来确认模型在一定程度上安全可靠的主要方法之一:我们可以说,“好,我们找到了相关电路并将其消融;经过一系列测试,我们再也无法复现想要消除的行为。”我认为这会成为未来衡量模型安全性的一种方式。

这也是我对他们的研究非常乐观的原因。在我看来,它比 RLHF 这类方法精确得多。RLHF 很容易受到黑天鹅事件影响:你不知道模型会不会在未测试的情景里做出错误行为。相比之下,至少你会更有把握地捕捉整个行为集合或特征集合,并有选择地规避风险。

181:16不过你不一定能正确标注这些特征。

181:19不一定,但我比起其他见过的方法,对这套做法有更高的信心。

181:24对于超人类模型,在这类研究中有哪些未知的未知?我们要用什么标签来判断模型是安全的,还是会成为回形针最大化智能体?

181:44还得继续研究。超人类特征的问题非常重要,我认为可以着手解决,但需要坚持投入。真正的希望在于自动化可解释性。甚至可以让两个不同模型辩论某个特征的作用,再让它们直接编辑模型、观察特征是否激活。这样就能在一个封闭环境中快速迭代,令人非常乐观。

182:18你会不会担心对齐做得太成功?无论最终由公司还是政府控制 AI 系统,我都不希望他们能像你的研究设想的那样,对 AI 进行如此细致的控制。一方面,这种程度地控制一个自主心智令人不舒服;另一方面,我真的不信任这些人。我不太愿意看到忠诚特征被人为增强之类的事。你有多担心有人掌权后,能把自己想要的价值观锁定在 AI 里?

183:07我觉得这取决于由哪个政府掌控,以及那个政府的道德立场。

183:15在我看来,这正是价值锁定问题。这也是我目前做能力研究的最重要原因之一。我觉得目前参与这件事的主要公司总体上非常善意。面对这类问题,我们应该非常开放。我认为,公开模型需要遵循的宪法、尝试用 RLHF 让模型遵循它、再通过消融等方法验证,并让所有人都能提供反馈和贡献,这些方向都非常重要。

183:48当然。另一种选择是,不确定时就不部署。但这样也不好,因为我们可能永远都无法发现问题。

183:55没错。

§11快问快答

183:57来几个快问快答:Gemini 的“公交车因子”是多少?

184:06我觉得有几个人非常关键。如果他们离开,项目表现会明显受影响。他们既负责建模和决策,也负责基础设施,后者尤其重要。技术栈的复杂性会层层堆叠,尤其 Google 这种高度垂直整合的公司更是如此。专家会变得非常重要。

184:40不过这个领域有个有意思的地方:像你这样的人可以进入行业,一年左右就作出重要贡献。Anthropic 尤其如此,其他实验室也会招没有相关背景的外行,比如物理学家,再把他们培养起来,让他们作出重要贡献。我觉得在生物实验室之类的地方就做不到这一点。这反映了这个领域目前的状态。

185:05不过,公交车因子不代表团队要花多久才能恢复,对吧?深度学习研究是一门手艺。你需要学会如何解读损失曲线,或者如何设置经过经验验证的超参数。

185:20另外还有组织层面的知识传递。创造一个信息环境,让周围的人更有效率、知道该研究什么,是最重要也最难招聘的技能之一。这真的很难复制。

185:36对,完全如此。

185:37在多模态、长上下文、智能体、额外可靠性等发展方向上,你现在关注谁?谁对这些趋势的含义理解得比较好?

185:56这个问题很难回答。我觉得如今许多人都从内部寻找见解和进展来源。大家各自有研究项目和未来几年的计划;在预测未来方面,多数人会依赖公司内部叙事,但很难公开分享。

186:27如果研究进展不错,大概就不会发表出来。

186:31我在规模化文章里提过这个问题,是在引用你说过的话。我怀念本科时读大量论文的日子;现在似乎没有什么值得读的研究会公开发表。

186:45而且整个社群也逐渐朝我认为正确、重要的方向发展。

186:53你在像 AI 智能体那样观察这个趋势吗?

186:55不是。不过以前大型实验室会释放一些信号,告诉大家哪些方向可以规模化;现在学术界很难捕捉这些信号。除非你知道什么在规模扩大后有效、目前什么在阻碍继续扩展或理解模型,否则要判断哪些问题值得研究会非常困难。

我希望更多学术研究投入到可解释性这类外界也能了解的领域。Anthropic 有意公开了全部相关研究,但似乎没有得到足够重视。我不明白为什么没有几十个大学研究组跟进可解释性;这是一个影响极大的问题,不需要离谱的资源,而且可以让我们深入理解这些系统里究竟发生了什么。我不知道为什么大家总忙着改善模型,而不是像传统学术科学那样,改进我们对系统的认识。

188:06我确实觉得风向正在变化,但不知道具体原因。Neel Nanda 在推广可解释性方面很成功,Chris Olah 最近则没有那么活跃。也许是因为 Neel 做了很多实际工作,我也不确定。四五年前,Chris 还经常到处演讲、推动这类研究,但当时大家并不太接受。也许 ChatGPT 发布后,人们终于意识到深度学习很重要,而且确实有用。这变化挺明显的。

188:38好,我在想一个合适的最后问题:你觉得模型喜欢预测下一个 token 吗?我们有一种直觉,觉得评估环境会奖励某些东西。我们会从社群、糖,或非洲大草原上需要的东西中获得满足感。未来经过 RL 和大量后训练的模型,会不会也喜欢预测下一个 token,就像我们喜欢冰淇淋一样?就像以前那样。

189:30大家一直在讨论模型有没有感知能力,以及模型帮了你之后要不要感谢它。但如果你想感谢模型,也许不应该说谢谢,而是给它一段非常容易预测的序列。更有意思的是,有些研究发现,如果你不断给模型输入“A”,它最后会开始输出各种平时绝不会说的话。我就不多说了,不过你可以给模型一些非常容易预测的东西,当作小奖励。

190:07这就是“快乐物质”最终的样子。

190:13可是我们喜欢容易预测的东西吗?我们不是总在寻找信息熵吗?不应该给模型一些略微超出它预测范围、但又够得着的内容吗?

190:28从自由能原理来看,也许我们不想感到惊讶。我可能不觉得惊讶,因为我感觉能掌控环境;然后我可以主动探索新事物。长期来看,我可能已经形成一种倾向,认为此刻探索新东西更有利。离开庇护我的岩石,最终可能让我建起房子或更好的结构。但我们确实不喜欢惊喜。我觉得当现实不符合预期时,大多数人都会很不高兴。

191:00这就是为什么婴儿喜欢把同一个节目反复看,对吧?

191:03对,有意思,我能理解。

191:06我想他们也在学习如何建立模型之类的。

191:11希望这会成为 AI 学会喜欢的重复内容。这里是很好的收尾。我还想说,我对 AI 的大部分了解都是通过和你们聊天学来的。我们差不多做了一年朋友,谢谢你们帮我入门。

191:32你问的问题很好,和你一起聊天很有意思。

191:36我很珍惜我们一起度过的时光。

191:38你的匹克球打得越来越好了。

191:39嘿,我们正努力转向网球呢。

191:51太好了。谢谢大家。

— 读到这里,多懂一点。 —