A Path Towards Autonomous Machine Intelligence 笔记

原论文来自 Yann Lecun 在 2022 年 6 月发表的《A Path Towards Autonomous Machine Intelligence》。主要讲了关于未来十年的 AI 发展,主要讨论 AI 如何像人和动物一样思考、学会推理。主要中文翻译参考 @浙江大学 Hepta AI Lab 的翻译版本。

机器如何能像人类和动物一样高效地学习? 机器如何学会推理和计划? 机器如何在多个抽象层次上学习感知和行动计划的表示,使它们能够在多个时间范围内进行推理、预测和计划? 本篇论文提出了构建自主智能体的架构和训练范式。 它结合了诸如可配置的预测世界模型、通过内在动机驱动的行为以及通过自我监督学习训练的分层联合嵌入架构等概念。

人类和非人类动物似乎能够通过观察和以独立于任务、无人监督的方式进行的少量交互来学习大量关于世界如何运作的背景知识。 可以假设,这种积累的知识可能构成了通常被称为常识的基础。 常识可以看作是世界模型的集合,可以告诉智能体什么是可能的,什么是合理的,什么是不可能的。 使用这样的世界模型,动物可以通过很少的试验学习新技能。 他们可以预测自己行为的后果,可以推理、计划、探索和想象问题的新解决方案。 重要的是,他们还可以避免在面对未知情况时犯下危险的错误。

常识知识不仅可以让动物预测未来的结果,还可以在时间或空间上填补缺失的信息。 它使他们能够产生与常识一致的感知解释。 当面对模棱两可的感知时,常识允许动物摒弃与其内部世界模型不一致的解释。

本文中的一个假设是,动物和人类在其前额叶皮层的某个地方只有一个世界模型引擎。 该世界模型引擎可针对手头的任务进行动态配置。 使用单个可配置的世界模型引擎,而不是针对每种情况的单独模型,可以跨任务共享有关世界如何运作的知识。 这可以通过将针对一种情况配置的模型应用于另一种情况来进行类比推理。


自主智能代理的建议架构如图所示。它由许多模块组成:

配置器模块从所有其他模块获取输入,并通过调整它们的参数和注意力网络来为手头的任务配置它们。 特别是,配置器可以启动感知、世界模型和成本模块以实现特定目标。

感知模块接收来自传感器的信号并估计世界的当前状态。 对于给定的任务,只有一小部分感知的世界状态是相关的和有用的。 感知模块可以以分层方式表示世界的状态,具有多个抽象级别。配置器启动感知系统以从感知中提取相关信息以用于手头的任务。

世界模型模块构成了架构中最复杂的部分。它的作用是双重的:(1)估计感知不提供的关于世界状态的缺失信息,(2)预测世界的合理未来状态。世界模型可以预测世界的自然演化,或者可以预测由actor模块提出的一系列动作产生的未来世界状态。世界模型可以预测多个似是而非的世界状态,由代表世界状态不确定性的潜在变量参数化。世界模型是世界相关方面的一种“模拟器”。世界状态的哪些方面是相关的,取决于手头的任务。配置器配置世界模型来处理手头的情况。预测是在包含与手头任务相关的信息的抽象表示空间中执行的。理想情况下,世界模型将在多个抽象层次上操纵世界状态的表示,使其能够在多个时间尺度上进行预测。

成本模块以称为能量的标量形式测量智能体的“不适”程度。 能量是由两个子模块计算的两个能量项的总和:内在成本模块和可训练批评者模块。 智能体的总体目标是采取行动以保持在最小化平均能量的状态。

内在成本模块是硬连线的(不可变的、不可训练的)并计算单个标量,即衡量智能体瞬时“不适”的内在能量——想想疼痛(高内在能量)、快乐(低或负内在能量) ,饥饿等。模块的输入是世界的当前状态,由感知模块产生,或者是世界模型预测的潜在未来状态。代理的最终目标是在长期内最小化内在成本。这是基本的行为驱动和内在动机所在的地方。内在成本模块的设计决定了代理人行为的性质。基本驱动器可以在此模块中进行硬接线。这可能包括当站起来激励有腿机器人行走时感觉“好”(低能量),当影响世界状态以激励代理时,当与人类互动以激励社会行为时,当感知附近人类的快乐以激励时同理心,当有充足的能量供应(饥饿/饱腹感),当经历一个激发好奇心和探索的新环境时,当完成一个特定的计划时,等等。相反,当面对一个痛苦的情况或一个容易识别的情况时,能量会很高危险情况(接近极热、火灾等),或使用危险工具时。内在成本模块可以由配置器调制,以在不同时间驱动不同的行为。
可训练的 Critic (批评)模块预测未来内在能量的估计。 与内在成本一样,它的输入要么是世界的当前状态,要么是世界模型预测的可能状态。 对于训练,critic 检索存储在联想记忆模块中的过去状态和随后的内在成本,并训练自己从前者预测后者。 评论模块的功能可以由配置器动态配置,以将系统引导到特定的子目标,作为更大任务的一部分。

短期记忆模块存储有关世界过去、现在和未来状态的相关信息,以及内在成本的相应值。 世界模型访问和更新短期记忆,同时在时间上预测世界的未来(或过去)状态,在空间上完成缺失的信息或纠正有关当前世界状态的不一致信息。 世界模型可以向短期记忆发送查询并接收检索到的值,或者存储新的状态值。 可以通过从内存中检索过去的状态和相关的内在成本来训练评论模块。 该架构可能类似于 Key-Value Memory Networks (Miller et al., 2016) 的架构。该模块可以被视为与脊椎动物中的海马体具有相同的作用。

演员模块计算动作序列的建议并将动作输出到效应器。 演员向世界模型提出一系列行动。 世界模型根据动作序列预测未来的世界状态序列,并将其反馈给成本。 给定由成本定义的目标(由配置器配置),成本计算与提议的动作序列相关的估计未来能量。 由于参与者可以访问估计成本相对于提议的动作序列的梯度,因此它可以使用基于梯度的方法计算最小化估计成本的最佳动作序列。 如果动作空间是离散的,则可以使用动态规划来找到最佳动作序列。 优化完成后,actor 将第一个动作(或一小段动作)输出到效应器。 这个过程类似于最优控制中的模型预测控制(Bryson 和 Ho,1969)。

该模型可以采用两种可能的模式来进行感知动作情节。 第一个不涉及复杂的推理,直接从感知的输出和可能的短期记忆访问产生一个动作。 我们将其称为“模式 1”,类似于卡尼曼的“系统 1”。 第二种模式是通过世界模型和成本进行推理和规划。 它类似于模型预测控制 (MPC),这是最优控制和机器人技术中的经典规划和推理范式。 我们将其称为“模式 2”,类似于卡尼曼的“系统 2”。 我们在这里使用广义的“推理”一词来表示约束满足(或能量最小化)。 许多类型的推理可以被视为能量最小化的形式。

模式一:反应性行为

上图描述了模式一的感知-动作片段。感知模块通过编码器模块提取世界状态的表示 s[0] = Enc(x),其中包含手头任务的相关信息 . 策略模块是参与者的一个组件,它根据状态 a[0] = A(s[0]) 生成一个动作。 产生的动作被发送到效应器。 策略模块的功能由配置器调制,配置器针对手头的任务对其进行配置。

策略模块实现了一个纯粹的反应策略,不涉及通过世界模型进行刻意的计划或预测。 然而,它的结构可能非常复杂。 例如,除了状态 s[0] 之外,策略模块还可以访问短期记忆以获取有关先前世界状态的更完整信息。 它可以使用短期记忆来关联检索给定当前状态的动作。

虽然成本模块是可微的,但其输出 f[0] = C(s[0]) 会间接地受到先前通过外部世界执行的操作的影响。 由于世界是不可微的,所以不能通过【成本←感知←世界←动作】从成本反向传播梯度。 在这种模式下,关于动作的代价 f[0] 的梯度只能通过使用多个扰动动作轮询世界来估计,但这是缓慢且潜在的危险。 这个过程对应于强化学习中的经典策略梯度方法。

在模式 1 期间,系统可以选择性地调整世界模型。 它运行世界模型一步,预测下一个状态 s[1],然后等待由所采取的动作产生的下一个感知,并使用观察到的世界状态作为预测器的目标。 通过使用世界模型,代理可以想象动作过程并预测它们的效果和结果,通过在外部世界中尝试多种动作并测量结果来减少对好的动作和策略进行昂贵且危险的搜索的需要。

模式二:使用世界模型进行推理和规划

上图描述了模式 2 的典型感知-动作情节。感知模块估计世界 s[0] 的状态。演员提出一系列动作 a[0], a[1], 。 . . , a[t], a[t + 1], . . . , a[T]]。世界模型使用 s[t + 1] = Pred(s[t], a[t]) 递归地预测世界状态序列的估计。成本 C(s[t]) 计算序列中每个预测状态的能量,总能量是它们的总和。通过优化或搜索过程,参与者推断出一系列最小化总能量的动作。然后它将序列中的第一个动作(或前几个动作)发送到效应器。实际上,这是具有后退水平规划的经典模型预测控制的一个实例。由于成本和模型是可微的,因此可以使用基于梯度的方法来搜索最优动作序列,就像在经典最优控制中一样。由于总能量是随时间相加的,因此也可以使用动态规划,特别是当动作空间较小且离散时。成对的状态(由编码器计算或由预测器预测)和来自内在成本和可训练评论家的相应能量存储在短期记忆中,用于评论家的后续训练。

  1. 感知:感知系统提取世界当前状态 s[0] = P(x) 的表示。 成本模块计算并存储与该状态相关的直接成本。
  2. 动作提议:参与者提出一个初始动作序列,以馈送到世界模型进行评估(a[0],...,a[t],...,a[T])。
  3. 模拟:世界模型预测一个或几个可能的世界状态表示序列,这些序列是由建议的动作序列(s[1]、...、s[t]、...、s[T])产生的。
  4. 评估:成本模块从预测的状态序列估计总成本,通常作为时间步长的总和 F(x) = PT t=1 C(s[t])
  5. 计划:参与者提出一个成本较低的新动作序列。 这可以通过基于梯度的过程来完成,其中成本的梯度通过计算图反向传播到动作变量。 得到的最小成本动作序列表示为 (aˇ[0], . . . , aˇ[T])。 完全优化可能需要迭代步骤 2-5。
  6. 行动:在一个低成本动作序列上收敛后,演员将低成本序列中的第一个动作(或前几个动作)发送给效应器。 为下一个感知动作集重复整个过程。
  7. 记忆:在每一个动作之后,内在成本和批评者的状态和相关成本都存储在短期记忆中。 这些对可以在以后用于训练或适应批评者。

这个过程本质上就是所谓的模型预测控制 (MPC-Model Predictive Control),在最优控制文献中具有后退范围。 与经典最优控制的区别在于学习了世界模型和成本函数。 原则上,任何形式的优化策略都可以用于第 5 步。虽然当世界模型和成本表现良好时,基于梯度的优化方法可能是有效的,但动作成本映射不连续的情况可能需要使用其他优化策略, 特别是如果状态和/或动作空间可以离散化。 这些策略包括动态规划、组合优化、模拟退火和其他无梯度方法、启发式搜索技术(例如带有修剪的树搜索)等。

在模式 2 中制定合适的动作序列的过程可以看作是一种推理形式。 这种推理形式基于使用世界模型的模拟,以及关于动作序列的能量优化。 更一般地说,“动作”可以看作是代表从一种状态到另一种状态的抽象转换的潜在变量。 这种通过模拟和优化进行的规划可能构成了自然智能中最常见的推理类型。

AI 中许多经典的推理形式实际上可以表述为优化问题(或约束满足问题)。 对于使用因子图和概率图模型执行的概率推理,情况肯定是这样。 所提出的架构实际上是一个因子图,其中成本模块是对数因子。 但是,所提出的架构所支持的推理超出了传统的逻辑概率推理。 它允许通过模拟类比进行推理。

内在成本模块 (IC) 是定义代理的基本行为性质的地方。这是可以间接指定基本行为的地方。对于机器人,这些术语将包括与“疼痛”、“饥饿”和“本能恐惧”相对应的明显本体感受测量,测量外力过载、危险的电气、化学或热环境、过度功耗、低水平等电源中的能量储备等。它们还可能包括帮助智能体学习基本技能或完成其任务的基本驱动力。例如,一个有腿的机器人可能包含驱动它站立和行走的内在成本译者:很像DNA)。这也可能包括社会动力,例如寻求人类的陪伴,寻找与人类的互动并从他们那里得到奖励,以及发现他们的痛苦令人不快(类似于社会动物的同理心)。其他内在的行为驱动力,例如好奇心,或采取具有可观察影响的行动,可能会被包括在内,以最大限度地提高世界模型训练的情境多样性(Gottlieb et al., 2013)

IC 可被视为与哺乳动物大脑中的杏仁核和其他脊椎动物中的类似结构所起的作用相似。 为了防止某种行为崩溃或不受控制地转向不良行为,IC 必须是不可变的,并且不受学习(也不受外部修改)的影响。 评论家 (TC) 的作用是双重的:(1) 以最少的繁重世界模型的使用来预测长期结果,以及 (2) 允许配置器使代理专注于以学习成本完成子目标。

训练批评家。 在计划阶段,内在成本模块将三元组(时间、状态、内在能量): (τ, sτ , IC(sτ )) 存储到联想短期记忆中。 在critic 训练期间,critic 检索过去的状态向量 sτ ,以及稍后时间 IC(sτ+δ) 的固有能量。 在最简单的场景中,critic 调整其参数以最小化目标 IC(stau+δ) 和预测能量 C(sτ) 之间的差异度量。 在更复杂的方案中,它可能使用未来内在能量的组合作为目标。 请注意,状态序列可能包含有关代理计划或采取的行动的信息。

训练世界模型是自我监督学习(SSL)的一个典型例子,其基本思想是模式补全。 对未来输入(或暂时未观察到的输入)的预测是模式补全的一个特例。 在这项工作中,世界模型的主要目的被视为预测世界状态的未来表示

有三个主要问题需要解决。 首先,很明显,世界模型的质量将在很大程度上取决于状态序列的多样性,或者它在训练时能够观察到的三元组**(状态、动作、结果状态)。 其次,由于世界不是完全可预测的,因此可能存在多个合理的世界状态表示,它们遵循给定的世界状态表示和代理的动作**。 世界模型必须能够有意义地表示这个可能无限的合理预测集合。 第三,世界模型必须能够在不同的时间尺度和不同的抽象层次上做出预测。

第一个问题涉及围绕顺序决策过程学习的一个主要问题:“训练集”的多样性取决于所采取的行动。该问题将在下文第 4.10 节中讨论。

第二个问题更可怕:世界并非完全可以预测。因此,世界模型应该能够表示来自给定状态和(可选)动作的多个似是而非的结果。这可能构成本提案带来解决方案的最困难挑战之一。这个问题将在下面的第 4.8 节中讨论。

第三个问题涉及长期预测和规划问题。人类在抽象层面计划复杂的目标,并使用对世界状态和行动的高级描述来做出预测。然后将高级目标分解为更基本的子目标序列,使用来自世界模型的短期预测来产生较低级别的动作。根据当地情况,这种分解过程一直重复到毫秒级的肌肉控制。第 4.6 节讨论了世界模型如何在多个时间尺度和多个抽象层次上表示行动计划的问题。

自监督学习 (SSL) 是一种范式,其中训练学习系统以捕获其输入之间的相互依赖关系。 具体来说,这通常归结为训练一个系统来告诉我们其输入的各个部分是否彼此一致。自监督学习的本质是自动构造数据集,监督信号是机器生成的,也就是自动的,所以称为自监督。捕获输入间的相互依赖关系,本质就是将这个自动构造的数据集和它自动生成的监督信号的依赖对应起来而已。

使用基于能量的模型 (EBM) 的框架进行一般公式化。 该系统是一个标量值函数 F(x, y),当 x 和 y 兼容时,它会产生低能量值,而当它们不兼容时会产生更高的能量值。 这个概念如图 8 所示。数据点是黑点。 能量函数在数据点周围产生低能量值,并在远离高数据密度区域产生较高能量,如能量景观的等高线所示。 EBM 隐式函数公式使系统能够表示多模态依赖关系,其中 y 的多个值与给定的 x 兼容。 与给定 x 兼容的 y 集合可以是单个点、多个离散点、流形或点和流形的集合。

SSL 是一种学习范式,其中训练学习系统以“填补空白”,或者更准确地说,以捕获输入的可观察部分与输入的可能未观察部分之间的依赖关系。部分输入信号被观察到并表示为 x(粉红色),部分输入信号被观察到或未观察到并表示为 y(蓝色)。在时间预测场景中,x 代表过去和现在的观察,y 代表未来的观察。在一般模式完成场景中,输入的各个部分可能在不同时间被观察到或未被观察到。训练学习系统通过标量值能量函数 F(x, y) 捕获 x 和 y 之间的依赖关系,当 x 和 y 一致或兼容时取低值,如果 x 和 y 不一致或不兼容则取高值.在视频预测场景中,如果视频剪辑 y 是视频剪辑 x 的合理延续,系统将产生低能量值。这种基于能量的模型 (EBM) 公式使系统能够表示多模态依赖关系,其中 y 的多个值(可能是无限集)可能与给定的 x 兼容。在右侧面板中,表示能量景观,其中深色圆盘表示数据点,闭合线表示能量函数的轮廓(水平集)。

这样的 SSL 系统可以通过视频培训来学习哪些概念? 我们的假设是,可以获得关于世界如何运作的抽象概念的层次结构。

学习小图像区域的表示,使其在空间和时间上可以从周围的相邻区域预测,这将导致系统提取图像中的局部边缘和轮廓,并检测视频中的移动轮廓。学习图像的表示,以便从一个视点的场景表示可以从稍微不同的视点的同一场景的表示中预测,这将导致系统隐式表示深度图(译者:在3D计算机图形和计算机视觉中,深度图是一种图像或图像通道,其中包含与场景对象的表面到视点的距离有关的信息,用于模拟的3D形状或重建他们。深度图可以由3D扫描仪生成或从多个图像重建 )。深度图是解释相机轻微移动时场景视图如何变化的最简单方法。一旦学习了深度的概念,系统就可以轻松识别遮挡边缘以及属于刚性对象的区域的集体运动。 3D 对象的隐式表示可能会自发出现。一旦物体的概念出现在表示中,物体持久性等概念可能会变得容易学习:由于视差运动而消失在其他物体后面的物体总是会重新出现。无生命和有生命的物体之间的区别如下:无生命的物体是那些轨迹容易预测的物体。诸如稳定性、重力、动量之类的直观物理概念可以通过训练系统在对象表示级别执行长期预测来实现。可以想象,通过在越来越抽象的表示水平和越来越长的时间尺度上进行预测,可以以分层的方式获得越来越多的关于世界如何运作的复杂概念。

在时间预测场景中,潜在变量表示仅从 x 和过去的观察(过去)无法预测关于 y(未来)的内容。 它应该包含对预测有用但不可观察或不可知的所有信息。 我可能不知道我前面的司机是左转还是右转,加速还是刹车,但我可以用一个潜在变量来表示这些选项(译者:本质与决策树、博弈论类似,拟造潜在变量)

潜变量 EBM (LVEBM) 是取决于 x、y 和 z 的参数化能量函数:Ew(x, y, z)。 当出现一对 (x, y) 时,EBM 的推理过程会找到一个潜在变量 z 的值,它使能量最小化。这种通过最小化的潜变量推断允许我们从能量函数中消除 z。(感觉跟因果推断的平掉混杂因子有点像)

联合嵌入预测架构 (JEPA),它可以看作是联合嵌入架构和潜在变量生成架构的组合。 JEPA 是非生成的,因为它实际上并不预测 y,而是根据 x, sx 的表示预测 y, sy 的表示。JEPA 不是生成式的,因为它不能轻易地用于从 x 预测 y。 它仅捕获 x 和 y 之间的依赖关系,而不显式生成 y 的预测。

第一个分支计算 sx,一个 x 的表示,第二个分支 sy 一个 y 的表示。编码器不需要相同。预测器模块在潜在变量 z 的可能帮助下从 sx 预测 sy。能量是预测误差。 JEPA 的简单变体可以不使用预测器,强制两个表示相等,或者可以使用没有潜在的固定预测器,或者可以使用简单的潜在变量,例如离散变量。 JEPA 的主要优点是它在表示空间中执行预测,避免了预测 y 的每个细节的需要,并且能够通过编码器消除不相关的细节。更准确地说,这种表示多模态依赖关系的架构的主要优点是双重的:(1) 编码器函数 sy = Enc(y) 可能具有不变性,这将使其对一组不同的 y 产生相同的 sy。这使得该集合上的能量恒定,并允许模型捕获复杂的多模态依赖性; (2) 潜变量 z 在集合 Z 上变化时,可以产生一组似是而非的预测 Pred(sx, Z) = {s˜y = Pred(sx, z) ∀z ∈ Z} 如果 x 是视频当汽车接近岔路口时,sx 和 sy 可以分别表示岔路口前后汽车的位置、方向、速度和其他特征,忽略不相关的细节,例如道路边缘的树木或道路的纹理人行道。 z 可以表示汽车是走左支路还是右支路。

JEPA 的主要优点是它在表示空间中执行预测,无需预测 y 的每个细节。 这是因为 y 的编码器可以选择生成一个抽象表示,从中消除不相关的细节。注意,JEPA 可以通过两种方式表示与 x 兼容的 y 值的多样性。 第一个是 y 编码器的不变性,第二个是潜在变量 z,如下所述。

通过编码器不变性实现多模态:编码器函数 sy = Enc(y) 可能具有不变性。 如果集合中的所有 y 映射到相同的 sy 值,则所有这些 y 将具有相同的能量。 使用 JEPA,我们失去了生成输出的能力,但我们获得了一种强大的方式来表示输入和输出之间的多模态依赖关系。

通过潜在变量预测器实现多模态:预测器可以使用潜在变量 z 来捕获预测 sy 所需的信息,而这些信息在 sx 中不存在。 当 z 在集合 Z 上变化时,预测器会产生一组似是而非的预测 Pred(sx, Z) = {s~y = Pred(sx, z) ∀z ∈ Z}。 例如,如果 x 是汽车接近岔路口的视频剪辑,则 sx 和 sy 可能代表汽车过去和未来的位置、方向、速度和其他特征,忽略不相关的细节,例如道路边缘的树木 或人行道的纹理。 潜在 z 可能是一个二进制变量,指示汽车是走左分支(z = 0)还是右分支(如果是道路,则 z = 1。如果汽车走左分支,则值 z = 0 将产生较低的 能量 D(sy, s~y) 比 z = 1。

非对比训练的 JEPA 模型可能构成我们学习能够学习相关抽象的世界模型的最佳工具。 当使用 VICReg 和类似标准进行训练时,JEPA 可以选择训练其编码器以消除输入的不相关细节,从而使表示更可预测。 换句话说,JEPA 将学习使世界可预测的抽象表示不可预测的细节将被编码器的不变特性消除,或者将被推入预测器的潜在变量中。 因此被忽略的信息量将被训练标准和潜变量正则化器最小化。

JEPA 学习可以执行准确预测的抽象表示的能力允许分层堆叠。 在此图中,JEPA-1 提取低级表示并执行短期预测。 JEPA-2 将 JEPA-1 提取的表示作为输入,并提取可以执行长期预测的更高级别的表示。 更抽象的表示忽略了长期难以预测的输入细节,使它们能够通过对世界状态的更粗略描述来执行长期预测。

注意,生成式潜变量模型不能消除不相关的细节,除非将它们推入潜变量中。 这是因为它们不会产生 y 的抽象(和不变)表示。 这就是为什么我们反对使用生成式架构的原因。

JEPA 学习抽象的能力表明该架构可以扩展以处理多个时间尺度和多个抽象级别的预测。 直观地说,低级表示包含很多关于输入的细节,可以用来在短期内进行预测。 但可能难以产生具有相同细节水平的准确长期预测。 相反,高级抽象表示可以实现长期预测,但代价是消除了很多细节。

让我们举一个具体的例子。 驾驶汽车时,在接下来的几秒钟内,给定方向盘和踏板上的一系列动作,驾驶员可以准确地预测他们汽车在同一时期的轨迹。 较长时期的轨迹细节更难预测,因为它们可能取决于其他汽车、交通信号灯、行人和其他外部事件,而这些外部事件在某种程度上是不可预测的。 但司机仍然可以在更高的抽象层次上做出准确的预测:忽略轨迹、其他汽车、交通信号等细节,汽车可能会在可预测的时间范围内到达目的地。 此级别的描述中将缺少详细的轨迹。 但是,绘制在地图上的近似轨迹被表示出来。 离散潜变量可用于表示多个替代路线

我认为,在多个抽象层次上表示世界状态序列的能力对于智能行为至关重要。 通过世界状态和动作的多级表示,可以将复杂的任务分解为连续更详细的子任务,并在本地条件通知时实例化为动作序列。 例如,计划一项复杂的任务,比如通勤上班,可以分解为开车去火车站、赶火车等。开车去火车站可以分解为走出家门、发动汽车、开车 . 走出家门需要站起来、走到门口、开门等。这种分解一直下降到毫秒级的肌肉控制,只有在感知到相关的环境条件(障碍物)时才能实例化 、交通信号灯、移动物体等)。

如果我们的世界模型可以分层执行预测,它是否可以用于分层执行模式 2 推理和规划? 分层规划是一个困难的话题,解决方案很少,其中大多数都需要预先定义动作的中间词汇。 但是,如果一个人遵守深度学习的哲学,那么那些行动计划的中间表示也应该被学习

复杂任务由从高级世界状态表示 C(s2[4]) 计算的高级成本定义。 推断出一系列高级抽象动作(a2[2]、a2[4]),使 C(s2[4]) 最小化。 推断的抽象动作被馈送到较低级别的成本模块 C(s[2])、C(s[4]),它们定义了较低层的子目标。 然后下层推断出一个最小化子目标成本的动作序列。 虽然这里只显示了一个 2 层的层次结构,但将这个概念扩展到多个层次是很简单的。 此处描述的过程是自上而下的顺序,但更好的方法是对所有层中的操作执行联合优化

预测发生在各个层面。 较高级别执行长期预测,而较低级别执行短期预测。 总体任务由高级目标定义,在图中表示为 C(s2[4])。 顶层推断出一系列高级动作(a2[2]、a2[4])来优化这个目标。 这些高级“动作”不是真正的动作,而是低级预测状态的目标。 可以将它们视为低级别状态必须满足的条件,以便高级别预测准确。 是否满足这些条件可以通过成本模块 C(s[2]) 和 C(s[4]) 计算。 他们采用较低级别的状态 s[2] 和高级条件 a2[2] 并测量状态满足条件的程度。 定义这些子目标后,较低级别可以执行推理并找到一个低级动作序列,以最小化中级子目标损失 C(s[2]) 和 C(s[4])。

现实世界并非完全可以预测。 对未来世界状态的预测存在不确定性可能有以下几个原因:

  • 世界本质上是随机的(偶然不确定性,类型 1)
  • 世界是确定性的但混乱的,因此如果没有无限就很难精确感知(偶然不确定性,类型 2)
  • 世界是确定性的,但部分是可观察的(偶然不确定性类型 3)。
  • 世界是完全可观察的,但传感器只提供关于世界的部分世界状态(认知不确定性,类型 1)
  • 感知模块提取的世界状态表示不包含准确预测所需的全部信息(认知不确定性,类型 2)。
  • 世界模型是不准确的,因为它的代表性力量的限制(有界理性或认知不确定性,类型 3)。
  • 世界模型是不准确的,因为它是用有限的数据量训练的(认知不确定性,类型 4)。

强化学习中的许多文献都集中在处理环境的随机性。 通常从一开始就假定模型、批评者和策略必须代表分布。 在目前的工作中,我们将预测变量的可能随机性推入一个潜在变量,可以对其进行优化、预测或采样。 这就是 ML 文献中经常提到的“重新参数化技巧”。 我们不需要在这里使用这个技巧,因为我们将预测的潜变量参数化视为基础。

即使使用高度抽象的表示,现实环境也不是完全可预测的。关于预测的不确定性可以通过具有潜在变量的预测器来处理。潜在变量(红色圆圈)包含无法从先前观察中得出的预测信息。潜变量必须正则化以防止能量崩溃并迫使系统在没有它的帮助的情况下尽可能多地进行预测。在规划时,潜变量是从通过将吉布斯分布应用于正则化器而获得的分布中采样的。每个样本都会导致不同的预测。为了产生一致的潜在序列,正则化器的参数可以是先前状态和检索记忆的函数。随着预测的进行,生成的状态轨迹的数量可能会呈指数增长。如果每个潜在变量都有 k 个可能的离散值,则可能的轨迹数将增长为 k的t次方 ,其中 t 是时间步数。必须采用定向搜索和修剪策略。使用多个预测轨迹,可以计算出使平均成本最小化的最优动作序列,或者成本的平均值和方差的组合,从而使风险最小化

随着预测的进行,生成的状态轨迹的数量可能呈指数增长:如果每个潜在变量有 k 个可能的离散值,则可能的轨迹数量将增长为 k的t次方 ,其中 t 是时间步数。 可以采用定向搜索和修剪策略,如经典的蒙特卡洛树搜索 (MCTS)。 在连续潜伏的情况下,可以从正则化器定义的连续分布中采样潜伏。

给定所有潜在的样本,可以推断出每个级别的最佳动作序列。 然而,预测过程可能需要对潜在的多个绘图重复,以便覆盖一组似是而非的结果。 推理过程可用于多个预测,以产生不仅最小化预期成本而且最小化预期成本的不确定性的动作。

自然世界是复杂的,有些不可预测,需要一个具有潜在变量的强大模型来解释不可预测性。 另一方面,代理本身在某种程度上更具可预测性:对效应器的特定动作将产生通常可以确定性预测的运动。 这表明代理应该拥有一个单独的模型,可能没有潜在变量(Sobal 等人,2022 年),因为动作对本体感觉的影响比外部世界的演变或动作对其的影响更容易预测 . 反过来,代理本身拥有的自我模型可以用作多代理场景中其他代理模型的模板

传统上,深度学习架构中的模块通过向量或多维数组传递状态。 但是,当被建模对象的状态从一次到下一次仅以微小的方式变化时,这往往是一种非常低效的方法。 代理的典型动作只会修改世界状态的一小部分。 如果瓶子从厨房移到餐厅,瓶子、厨房和餐厅的状态将被修改。 但世界其他地区将不受影响。

这表明世界的状态应该保存在某种可写的内存中。 每当一个事件发生时,只有受该事件影响的世界状态内存部分需要更新,其余部分保持不变。 传统的键值关联记忆可用于此目的,类似于在记忆增强网络的背景下提出的内容(Bordes 等人,2015;Sukhbaatar 等人,2015;Miller 等人,2016) 和实体网络(Henaff 等人,2017 年)。

Actor 模块的作用有三个:

  1. 给定世界模型对 Mode-2 动作的预测,推断出最小化成本的最优动作序列
    2. 产生代表代理不知道的世界状态部分的潜在变量的多种配置
    3. 训练产生模式 1 行动的策略网络

动作和潜在变量之间没有概念上的区别。 参与者必须探索两组变量的配置。 对于潜在变量,必须探索配置以在不确定性下进行规划。 对于动作变量配置,必须探索以产生最小化成本的最优配置。 在对抗性场景(例如游戏)中,必须探索潜在配置以最大化成本。 实际上,actor 扮演着优化者和探索者的角色。

当世界模型或成本表现不佳时,基于梯度的最佳动作序列搜索可能会失败。 在这种情况下,可以应用另一种搜索/规划方法。 如果动作空间是离散的或可以离散的,可以使用动态规划方法或近似动态规划方法,例如波束搜索或蒙特卡洛树搜索。 实际上,在最佳控制、机器人或“经典”人工智能的背景下开发的任何规划方法都可以在这种情况下使用。

一旦通过规划/推理/优化过程获得最佳动作序列,就可以将动作作为目标来训练策略网络。策略网络随后可用于快速行动,或仅用于在优化阶段之前将建议的行动序列初始化为良好的起点。可以针对多个任务训练多个策略网络。

配置器是代理的主要控制器。它从所有其他模块获取输入并调整它们的参数和连接图。调制可以路由信号、激活子网络、集中注意力等。在预测器和感知编码器的上层是变换器块的场景下,配置器输出可能构成这些变换器块的额外输入令牌,从而调制它们的连接图和函数。

配置器模块之所以必要,有两个原因:硬件重用和知识共享。能够为多个任务重用相同的电路有一个明显的优势,特别是如果任务可以按顺序完成,并且资源量(例如参数内存)是有限的。但还有另一个优势:知识重用。一个合理的假设是,针对给定环境训练的世界模型可以用于一系列不同的任务,只需进行微小的更改。可以想象一种环境的“通用”世界模型,其中一小部分参数由配置器针对手头的任务进行调制。这将比为每个技能使用单独的世界模型更有效地提高数据效率和计算效率。缺点是代理一次只能完成一项任务。

世界模型的预测器部分必须能够根据手头的任务执行广泛的功能。对于在低抽象级别执行短期预测的预测器,配置可能意味着动态信号路由。在低级视网膜主题特征阵列表示中,预测可以简化为单个特征向量的局部位移,伴随着这些向量的小变换。这可以有利地用本地选通/路由电路来实现。对于更高抽象级别的长期预测,最好使用 Transformer 架构。 Transformer 块特别适用于对象交互的基于对象的推理。原因是变压器块的功能与置换等价。由于该属性,无需担心将哪个对象分配给哪个输入标记:结果将与输入分配相同且一致。基于模型的机器人技术的最新工作建议使用在整个轨迹级别运行的变压器,对注意力电路施加约束以配置预测器以进行因果预测或其他任务(Janner 等人,2021 年)。

当前的提议没有规定参与者推断潜在变量实例和最佳动作序列的特定方式。虽然所有模块的可微性原则上可以使用基于梯度的优化来推断最佳动作序列,但优化问题在实践中可能非常困难。特别是当动作空间是离散的,或者从动作到代价的函数非常不平滑时,基于梯度的方法可能无效,需要使用其他(无梯度)搜索方法(动态规划、置信传播、MCTS 、SAT 等)。在模式 2 规划/推理中实例化潜在变量的多个配置可能需要本提案中未描述的附加机制。人类似乎被赋予了通过对感知的替代解释自发循环的能力,正如内克尔立方体和其他具有几种同样合理解释的视觉错觉所证明的那样。在本模型的上下文中,模糊感知的不同解释可以由潜在变量的不同值来表示。虽然人们可以想象一些探索性机制来系统地探索可能的潜在变量值的空间,但这里没有描述这种机制。

短期记忆的精确结构和功能以及它如何用于表示对世界状态的信念也有些模糊。最初的记忆网络系统及其后续系统包含这样的想法,即神经网络可以使用联想记忆作为工作记忆来存储和检索关于计算周期之间世界状态的信念(Bordes 等人,2015;Sukhbaatar 等人,2015)。

总结

这篇论文很宏大而且很复杂的架构,提出了一个可能能实现的“更像人”的人工智能架构。从认知科学的角度分析现在主流人工智能派系都有什么问题,个人认为目前的整个人工智能体系太依赖概率了,某种意义上一个预测一个东西的概率是需要学习非常多东西且效率极低、近乎没有自主学习能力的一种东西。比如现在的 Bert 之类的模型,必须做 fine-tuning 或者 prompt 才能改善下游任务。

人工智能方向肯定会衍生出分层且自学习的结构的,可能更浅的层次是能够通过非概率的方式更快得到一个答案有点类似人类的直觉。且整个系统会自动学习输入进来的知识,自动归纳总结存储起来。