强化学习之父、2024 年 ACM 图灵奖得主 Richard Sutton 今天分享了他在 RLC 2025(强化学习会议) 和 AGI 2025 上发表的远程演讲《OaK 架构:一个基于经验的超级智能愿景》。

演讲中,Sutton 介绍了他认为有望实现通用人工智能乃至超级智能的路径:他回顾了长期以来对简单且通用的 AI 智能体架构的追求强调了从经验中学习、拟合世界的重要性介绍了现有的常用智能体模型的架构及其缺陷
最终引出了演讲主旨:OaK 架构Sutton 在介绍 OaK 架构的基础上,也对实现 OaK 架构所需的八个步骤进行了详细拆解,并指出了目前未能实现的部分和可能的发展路径可谓干货满满虽然说 OaK 架构并不是目前能够实现的完整算法或管线,只是一个愿景,但是 Sutton 为 AI(尤其是 AGI)的发展拆解了目标,提供了一张清晰的路线图和研究目标。
机器之心对 Sutton 的这次演讲进行了整理,以飨读者。

视频地址:https://www.youtube.com/live/XqYTQfQeMrE?t=22620sOaK 架构目前还只是一个愿景,尚没有完整的算法,它还需要一些尚未实现的先决条件这个先决条件就是一个能够不断学习和提升的深度学习算法。
让我惊讶的是,到目前为止,我们都还没有这样一个算法在开始之前,我想介绍一下我创立的 Openmind Research Institute,这是一家研究与心智相关的强化学习方法的研究所如果你是对此方向感兴趣的年轻人,可以考虑申请加入我们。
下面正式进入主题。这是本次演讲的提纲。

首先,我要介绍的是我追寻的目标 —— 一种简单且通用的 AI 智能体架构然后我将介绍如何在这个大而复杂的世界中学习,之后将进入 OaK 架构本身以及超级智能的愿景Sutton 追寻的目标我追寻的目标是一种简单且通用的 AI 智能体架构。

「通用」是指该架构不包含特定于任何世界的东西,因此其中不包含任何领域知识然后,该架构需要是「经验的(experiential)」,也就是说,它会随着运行时间经验(如上图右侧小图的红色箭头所示)而成长,而不是仅仅依赖某个专门的训练阶段。
具体来说,「经验」是指一种未经标注、未经解释的信息由于我们追求的是通用设计,因此这些信息不包含任何与特定世界相关的内容「观察」就只是一些信息、事物之间的差别,智能体需要通过自身的体验去理解和解释这些信息。
最后,也可能是最重要的一点,是「开放式抽象(open-ended abstraction)」的概念我们希望智能体能够不断发展自身的概念(concept)体系、思维方式和行为中的常见模式,并且这种抽象能力在复杂性上不设上限,当然唯一的限制是它的计算资源。
为了帮助大家理解我的思路,我想说明:抽象通常有两种主要形式抽象本质上是指从世界中提取出某些「特征」—— 这些特征可用于帮助理解这个世界这里所说的「特征(feature)」,可以理解为线索、方式、概念或者某种在试图理解世界时所构建出的信号结构(进而帮助你做出决策)。
因此,我们希望能够寻找「好的特征」,更准确地说,是「状态特征」(state features)这是一类描述当前情境的有用抽象其次,我们还需要寻找好的「时间抽象」(temporal abstractions),也就是比单一动作更高层次的行为单位 —— 一种在时间尺度上更大的「可以做的事情」。
比如说,「走去上班」、「打开门」或者「捡起一个物体」就是典型的时间抽象我们接下来会详细讨论这些内容这正是我们所追求的目标从经验学习这里,我要引入两个非常关键的概念:设计时(design time)和运行时(runtime)
。

设计时是指智能体还未被部署到环境中、尚未开始获取奖励阶段的时间段在这个阶段,人们可以将领域知识嵌入智能体中当然,我本人并不推崇这种做法,反而希望尽量减少这种预注入而在运行时阶段,指的是智能体已经处于环境中,依赖经验进行学习、并制定与当前世界状态相匹配的规划。
我要重点强调的是在运行时阶段根据经验进行学习在一个庞大且复杂的世界中,情况往往是难以预判的如果我们只依赖设计时的构建,这是远远不够的尤其是当我们关注的是「开放式抽象」时,就必须依赖运行时去主动发现它们那些在设计时就被预设好的「非开放式抽象」并不能满足需求。
因此,一切必须在运行时完成,真正的智能必须靠运行时来驱动既然一切都需要在运行时完成,那为什么还要在设计时做任何事呢?事实上,这些预设反而会使设计更加复杂因此,我们不妨将「设计」本身看作是对智能的一种理解方式,而非仅仅是为了制造某个产品。
如果你的目标是打造一个具体的产品,那么在设计时引入一些信息或背景知识可能是有意义的但如果目标是理解「心智」的本质,那你就希望这个系统尽可能地简洁纯粹也正因为如此,设计时我们应当尽量去除所有不必要的复杂性。
我想在这里再补充一点:如果我们的目标是理解智能,那么理想的智能体架构就不应该在设计时对任何特定世界做出预设承诺正如我在《苦涩的教训(The Bitter Lesson)》博客中所指出的:心智的实际内容,属于任意的、固有复杂的外部世界的一部分。

由于世界的复杂性是无穷无尽的,因此这种复杂性不应当被直接预设到系统中相反,我们应当预设的,只是那些可以主动发现并捕捉复杂性的元方法(meta-methods)我们所追求的是像人类一样具有发现能力的 AI 智能体,而不是那些仅仅包含我们已经发现的知识的系统。
这就是基本的思想,也因此,为了实现「通用性」,我们需要刻意弱化领域知识的作用那么,我想问大家一个问题:我们是否应该让智能体通过特别准备的训练数据进行学习?还是说,我们应该严格限制它只能通过运行时的经验来学习?。

对我来说,答案是明确无疑的我认为,这正是智能(尤其是强化学习)的真正力量所在:它能够从未经预设的运行时经验中学习因此,我想明确表达我的立场:智能体应该只从运行时经验中学习这正是我所说的「智能体应当是完全基于经验的」的含义所在。
世界太复杂,只能近似我之前提到过「大世界」的视角。我们可以设想一下我们的智能体,它就像一个人,与这个世界相比,它是渺小的 —— 甚至是远远小于这个世界的。

这个世界不仅包含了各种物体、地点以及物理世界的复杂性,还包含了大量其他智能体而这些其他智能体的内在心理活动,对于我们的智能体而言是极其重要的智能体之所以能做出「正确的行为」,是因为它能够与人类进行互动 —— 比如与它的上司、配偶、朋友。
而这些人的内心活动对它而言至关重要,正如此刻你们在思考什么对我来说也很重要一样正因如此,世界的复杂性远远超出了智能体的处理能力,并且这种不对称是不可避免的因此,智能体所学到的任何知识都不可能是「完全正确」的,它也不可能实现真正的「最优」行为。
凡是涉及「最优性」或「正确性」的定理,在现实环境中都不具备实际意义我们必须清楚地认识到:这些定理在现实世界中的适用性是极其有限的,甚至是无关紧要的你所构建的价值函数必须是近似的,你的策略也必须是近似的你的状态转移模型,尤其是你对整个世界的模型,必然要比真实世界简单得多。
因此,它注定是不准确的,它只能是近似的甚至对于世界的某个状态,你都不可能真正将其完整地保留在大脑中,因为一个世界状态可能包含了其他所有智能体内心正在发生的事情而你自己的认知能力,也不可能比所有其他智能体的总和还要复杂。
因此,准确建模整个世界状态本身就是不现实的由此还引出一个更进一步、但更微妙的推论:世界在你看来是非平稳的(non-stationary)因为你并不知道环境中真正发生了什么,它在不同时间点表现出的状态也会有所不同。
例如,当你开车行驶在路上时,看到前方有一辆车,你并不知道它会向右转还是向左转当然,这种行为并非真正随机 —— 对方驾驶者脑中的决策过程可能是确定性的,但从你的角度来看,它表现出来的就是非平稳的:有时它转向右,有时转向左,行为似乎在变化。
因此,面对这些现实中的不确定性,你必须在运行时进行学习,在运行时进行规划,并且必须在运行时自主发现所需的抽象结构你出生、成长、进入这个世界,而后必须逐步弄清楚:这个世界由哪些物体构成、有哪些人、这个世界是如何运作的、社会制度是如何组织的 —— 你必须在运行时去弄清这一切。
这些内容不可能在设计阶段就预先嵌入,因此我们强烈主张应摒弃设计时注入的知识结构强化学习及其奖励在介绍 OaK 架构之前,我先从更宏观的角度谈谈一般性的 AI 问题AI 研究的目标是设计出一个有效的智能体,它能够在现实世界中完成目标。

强化学习研究的问题其实一样,只不过它采用了一种更具体的形式:用一个标量信号奖励来表示智能体的目标关于这一点,我稍后进一步解释其次(这点更贴近强化学习的核心假设),我们通常假设世界是通用的,并且无法被完全知晓。
这个「世界」可能是一个简单的网格环境,也可能是一个高度复杂的、充满人类行为的现实世界它可能是随机的、复杂的、非马尔可夫的、非线性的正如我之前所说,它的状态空间可以说是无限的,并且它的动态演化在我们看来也是非平稳的。
我们必须在运行时进行学习与决策,并且这一过程不能依赖来自教师或人类的特殊训练信号这是一个极具挑战性的问题,但我认为这个问题本身非常好,我们无需改变问题设定我们已经拥有了「奖励信号」这一设定,这就足够了,我们只需要努力去解决这个问题即可。
我还想补充说明一点:在这里我们假设智能体的瓶颈是计算资源,而不是数据量我们认为环境能够提供丰富的数据因此我们希望使用流式算法来处理这些数据,而不依赖像 replay buffer 这类机制前面我提到,智能体的目标是通过一个标量信号来定义的。
现在我想再展开讲一下,这就是所谓的「奖励假设(reward hypothesis)」。

奖励假设的核心观点是:我们所说的「目标」和「目的」,都可以被很好地形式化为最大化某个标量信号(即奖励)的累计期望值我认为,这一设定丝毫不是一种限制,相反,它是一种非常清晰、优雅的定义目标的方式如果试图添加其他附加成分,不但不会更好,反而会削弱其清晰性。
已有一些理论工作探讨了这个假设。我推荐大家阅读 Michael Bowling 等人的论文《Settling the Reward Hypothesis》。

论文标题:Settling the Reward Hypothesis论文链接:https://arxiv.org/pdf/2212.10420此外,我们知道,即使是一个非常简单的奖励信号,也可能催生出智能的所有属性。
当然,我不该说「我们知道」,更准确地说,我和一些同行主张并论证了这一观点:在一个足够复杂的世界中,一个简单的奖励就足以引导出智能的全部表现这一点在我们的论文《Reward is Enough》中有详细阐述。
常用智能体模型但正式开始介绍 OaK 架构之前,我希望先从一个「已有的经典架构」讲起,我称之为常用智能体模型(common model of the intelligent agent)这个模型在许多学科中广泛存在 —— 无论是人工智能、心理学、控制论、经济学、神经科学,还是运筹学,大家几乎都采用了这一标准模型。

它所假设的智能体架构具有一些基本属性首先是上图中红色部分的那些元素,也就是经验接口(experiential interface):你会接收到奖励信号(reward),你可以采取行动(action),你会接收到来自环境的某种
观察信号(observations)而这些观察信号通常是不充分的,它们无法完全揭示出环境的真实状态(也就是说,观察不能唯一决定状态)所以从外部视角来看,智能体的核心就是这三个「红色部分」组成的经验接口另一方面,实际上这个常用模型的核心内容,更多是关于智能体内部的四个组成部分:感知、价值函数、反应策略、转移模型。
图中蓝色部分,我们可以看到这些组件之间是如何互相连接的这些连接也就是所谓的状态特征向量(state feature vector)这是用来表示世界状态的方式状态特征向量由多个特征组成,每个维度代表一个抽象出的特征。
这个向量的生成基本上就是对当前状况的理解因此,当基于输入信号和过去的动作来构建对当前状况的认知时,用「感知(perception)」这个词来描述是非常恰当的它就是你对世界的感知方式,表示你的当前状况这种状态表示是你进行决策、选择行为的基础。
如图中所示,状态表示输入反应策略,然后得到行动的动作这里的策略是反应性的(reactively)—— 也就是说,它不需要进行复杂的推理或规划,而是直接基于当前状态做出动作选择这就构成了智能体的前两个核心组件:。
感知系统(perception)和策略模块(policy)这两者合起来就能构成一个完整的智能体但如果我们希望这个系统能够学习和改进,我们还需要加入第三个模块,即价值函数(value function)价值函数可以提供这样的信息:「我现在的表现很好」或「我现在表现很差」,也就是说,它用来判断事情是变好了还是变糟了。
因此,它必须能够读取奖励(reward)信号归根结底,价值函数本质上就是对未来奖励的预测这个预测结果会被用来调整和优化策略 —— 我们用图中一条穿过策略模块的斜线来表示价值函数对策略的影响路径第四个组成部分是状态转移模型(transition model),它是我们用来进行规划的关键结构。
状态转移模型的作用是:在给定当前状态的情况下,根据一个特定的动作,预测可能到达的下一个状态虽然我无法在这里详细展开它的全部工作机制,但总的来说,在规划的过程中,它同样会对策略结构产生影响 —— 我们可以用另一条穿过策略模块的对角线来表示这种影响。
这种影响不仅作用于策略本身,还会反过来影响价值函数的学习与更新到这里,我们就构建了整个常用智能体模型(common model),它以学习与规划为核心,由这四个组件构成我认为有趣的一点是,这个单一模型框架,几乎可以涵盖多个不同学科的建模方式。
例如,在控制论中,相同的概念会用不同术语来表述:它们不说「动作(action)」,而说「控制量(controls)」;不说「奖励(reward)」,而说「收益(payoff)」或「代价(cost)」在心理学中,我们可能也使用「奖励」一词,但我们不会说「观察(observations)」,而是说「刺激(stimuli)」。
总之,这些学科尽管术语不同,但底层思想是高度一致的OaK 架构那么,关键问题来了:这个常用模型究竟缺失了什么?为什么我们不能就此止步?核心缺失在于:这个模型虽然完整,但它仍然停留在低层次的表示上动作是瞬时的,奖励是瞬时的,观察也是瞬时的。
而我们所追求的智能行为,必须涉及到更高层次的抽象我们需要发展出概念(concepts),发展出一整套高级思维方式(ways of thinking)因此,在这个常用模型基础上,我认为最需要补充的就是开放式抽象(open-ended abstractions)
,这正是 OaK 架构试图引入的新要素来看 OaK 架构的设计图这里使用了紫色来标示所有新增的内容OaK 架构的关键扩展,是引入了一系列辅助子问题,这些子问题是相对于主问题(获得奖励)而言的「次级任务」。

主任务仍然是:最大化奖励而这些子任务,我们即将反复看到一个术语:「与奖励一致的特征达成子问题(reward-respecting subproblems of feature attainment)」也就是说:每一个子任务会围绕某个特定特征展开,试图去达成这个特征目标,但前提是:在完成这个目标的同时,不能牺牲太多主任务的奖励,仍然要保持整体的奖励水平不被严重削弱。
从图上看,整个架构与之前几乎相同但有一个关键变化:在原有的策略之后新增了一组被称为「选项(options)」的结构,它们可以理解为更高层次的策略;而在原有的价值函数之后也增加了多个新的价值函数这是因为每一个子问题都是一个独立的问题,因此必须为每个子问题配备一个独立的价值函数,以衡量当前在该子问题上的表现好坏。
因此,系统中需要更多的价值函数来支持多个子任务的评估因此,现在该架构有四类组件:虽然感知和状态特征向量的机制保持不变,但策略和价值函数这两个部分现在都变成了多个我们仍然保留之前的感知模块,负责生成状态特征向量,这个向量会被所有子任务共享。
现在每个子任务都拥有自己的一组选项策略,用于制定适合该任务的行为方式;而对应的,每个子任务也拥有一个独立的价值函数,用于评估当前行为在该子任务上的效果图中没有直接把「子问题」明确画出来因为在架构中,我们并不需要为每个子问题构造一个明确的「对象」。
我们只需要为它定义一个对应的价值函数即可图中那些从特征向量上延伸出来的蓝色小箭头表示:每一个价值函数都试图从共享的状态特征向量中提取出与自己任务相关的那一部分特征进行优化现在我们稍作停留,来谈谈状态转移模型(transition model)。
我希望用一个更具哲学意味的词来定义它:知识(knowledge)我们的所有知识,其实都体现在状态转移模型之中也就是说,它代表了我们对世界的理解:当我们采取某种行动时,世界将如何变化特别是当我们采取那些更高层级的复杂行为 —— 也就是所谓的「选项(options)」时,世界状态可能发生的变化。
「OaK」这一架构名称,正是来源于这两个关键词:Options(选项)


评论(0)