注:以下内容仅供交流学习使用,不可用于商业用途,并尊重原作者的一切权益。英文原文可使用Google Scholar查看。
一个通用的模型
摘要
受大规模语言建模进展的启发,我们应用了一种类似的方法来构建一个在文本输出领域之外的单一多面手代理。代理,我们称之为Gato,是一种多模式、多任务、多体现的多面手策略。具有相同权重的相同网络可以播放雅达利、标题图像、聊天、使用真实的机器人手臂堆栈块等,根据其上下文决定是否输出文本、关节扭矩、按下按钮或其他令牌。在本报告中,我们描述了模型和数据,并记录了Gato的当前能力。
(
图1:一个通才代理。Gato可以使用具有相同权重集的单个神经网络,在广泛的环境中感知和操作不同的实施例。Gato接受了604个不同任务的训练,包括不同的模式、观察和行动规格。
图2:Gato的训练阶段。来自不同任务和模式的数据被序列化为一个平坦的标记序列,分批处理,并由一个类似于大型语言模型的转换神经网络进行处理。使用掩蔽,使损失函数仅应用于目标输出,即文本和各种操作。
)
1介绍
在所有任务中使用单一的神经序列模型有显著的好处。它减少了为每个领域制作适当的归纳偏差的策略模型的需要。它增加了训练数据的数量和多样性,因为序列模型可以摄取任何可以序列化成平面序列的数据。此外,即使在数据、计算和模型规模的前沿,其性能也在不断提高(Kaplan等人,2020年;Hoffmann等人,2022年)。从历史上看,更善于利用计算的通用模型最终也倾向于超过更专门的特定领域的方法(Sutton,2019)。
在本文中,我们描述了一个通用代理的当前迭代,我们称之为Gato,实例化为一个单一的,大的,变压器序列模型。通过一组权重,Gato可以进行对话、标题图像、用真实的机器人手臂叠加块,在玩雅达利游戏时优于人类,在模拟3D环境中导航,遵循指令等等。
虽然没有一个代理可以被期望在所有可以想象的控制任务中超越,特别是那些远远超出其训练分布的任务,我们在这里测试了一个假设,即训练一个通常能够完成大量任务的代理是可能的;这个通用代理可以用很少的额外数据进行调整来成功地完成更多的任务。我们假设这样的代理可以通过缩放数据、计算和模型参数来获得,在保持性能的同时不断扩大训练分布,以覆盖任何任务、行为和感兴趣的体现。在这种情况下,自然语言可以作为跨其他不兼容的实施例的共同基础,解锁对新行为的组合泛化。
我们的训练重点放在模型规模的操作点,允许实时控制真实世界的机器人,目前在Gato的情况下大约有1.2B个参数。随着硬件和模型架构的改进,这个操作点自然会增加可行模型的规模,将多面手模型推高到比例律曲线上。为了简单起见,Gato是以纯监督的方式离线训练的;然而,原则上,没有理由不能通过离线或在线强化学习(RL)进行训练。
2模型
Gato的指导设计原则是对尽可能广泛的相关数据进行训练,包括不同的模式,如图像、文本、本体感觉、关节扭矩、按下按钮,以及其他离散和连续的观察和动作。为了能够处理这个多模态数据,我们将所有数据序列化为一个平坦的标记序列。在这种表示中,Gato可以从类似于标准的大规模语言模型进行训练和采样。在部署过程中,采样的令牌被组装成对话响应、标题、按键或基于上下文的其他操作。在下面的小节中,我们将描述Gato的标记化、网络架构、损失函数和部署。
有无限种可能的方法可以将数据转换为令牌,包括直接使用原始的底层字节流。下面我们将报告我们发现的标记化方案,它在当前规模上使用当代硬件和模型架构对Gato产生了最好的结果。
文本通过句子片段编码(Kudo & Richardson,2018)与32000个子词到整数范围[0,32000)。
图像首先以光栅顺序转换为不重叠的16×16补丁序列,正如在ViT中所做的那样(多索维茨基等人,2020年)。然后,图像斑块中的每个像素在[−1,1]之间进行归一化,并除以斑块大小的平方根(即√16 = 4)。
离散的值,例如,雅达利按钮按下,被压缩成按行大调顺序的整数序列。标记化的结果是在[0,1024)范围内的一个整数序列。
连续的值,例如本体感觉输入或关节力矩,首先被压缩成按行-大调顺序排列的浮点值序列。如果还没有,这些值被mu-law编码到范围[−1,1](详见图14),然后离散到1024个统一的箱子。然后将离散整数转移到[32000,33024)的范围。
在将数据转换为令牌之后,我们使用以下规范序列排序。
文本标记的顺序与原始输入文本相同。
光格顺序的图像补丁标记。
按主要顺序排列的张量。
按字典顺序嵌套结构。
代理时间步长作为观察标记,然后是分隔符,然后是动作标记。
代理事件作为时间顺序中的时间步长。
关于标记化剂数据的进一步细节见补充材料(B节)。
2.2嵌入输入令牌和设定输出目标
在标记化和排序之后,我们将一个参数化的嵌入函数f(·;θe)应用于每个标记(即,它同时应用于观察和操作),以产生最终的模型输入。为了能够有效地从我们的多模态输入序列s1:L中学习,嵌入函数根据令牌源自的模态执行不同的操作:
属于文本、离散或连续值观察或操作的标记通过查找表嵌入到学习到的向量嵌入空间中。根据所有标记在相应时间步长内的局部标记位置,为所有标记添加可学习的位置编码。
使用单一的ResNet(He et al.,2016a)块嵌入属于任何时间步长的图像补丁的标记,以获得每个补丁的向量。对于图像补丁标记嵌入,我们还添加了一个可学习的图像内位置编码向量。
关于嵌入功能的详细信息,我们可以参考附录C.3部分。
当我们对数据进行自动回归建模时,每个令牌也可能是给定前一个令牌的目标标签。文本标记、离散值和连续值以及操作可以在标记化后直接设置为目标。图像标记和代理的非文本观察目前还没有在Gato中进行预测,尽管这可能是未来工作的一个有趣的方向。这些非预测令牌的目标被设置为一个未使用的值,它们对损失的贡献被掩盖。
2.3训练
给定一个标记序列s1:L和参数θ,我们使用概率链规则对数据进行建模:
(公式1)
设b索引序列B的一个训练批。我们定义了一个屏蔽函数m,如果索引l处的标记来自文本或来自代理记录的操作,则m(b,l)=为1,否则为0。一批B的训练损失可以写成
(公式2)
如上所述,Gato的网络架构有两个主要组成部分:将标记转换为标记嵌入的参数化嵌入函数,以及在下一个离散标记上输出分布的序列模型。虽然任何通用的序列模型都可以用于下一个标记预测,但为了简单性和可伸缩性,我们选择了一个转换器(Vaswani et al.,2017)。Gato使用一个1.2B参数解码器变压器,共24层,嵌入大小为2048,注意后前馈隐藏大小为8196(更多细节见C.1节)。
因为域内的不同任务可以共享相同的实施例、观察格式和操作规范,因此该模型有时需要进一步的上下文来消除任务的歧义。我们不是提供一个热门任务标识符,而是从(Sanh等人,2022;Wei等人,2021;Brown等人,2020年)中获得灵感,并使用提示条件反射。在训练过程中,对于每批中25%的序列,会准备一个提示序列,来自同一源代理在同一任务上生成的事件。一半的提示序列来自情节的结尾,作为许多领域的目标条件反射形式;另一半是从情节中均匀采样的。在评估过程中,可以使用成功演示所需任务来提示代理,我们在这里展示的所有控制结果中默认执行。
模型的训练在16x16 TPU v3切片上进行,为1M步,批处理大小为512,令牌序列长度为L = 1024,大约需要4天。架构细节可以在c节中找到。因为代理事件和文档很容易包含比适合上下文更多的标记,所以我们从可用的事件中随机抽取L标记的子序列。每一批都在域上近似均匀地混合子序列(例如雅达利、MassiveWeb等),通过一些手动提高更大和更高质量的数据集的权重(详见第3节中的表1)。
(
图3:运行Gato作为控制策略。Gato使用一系列交错的标记化观察、分隔符标记和以前采样的操作,以以标准的自回归方式产生下一个操作。新的动作被应用于环境——本图中的一个游戏机,获得了一组新的观察结果,然后重复这个过程。
)
2.4部署
将Gato作为一个策略部署如图3所示。首先,一个提示符,如一个演示,被标记化,形成初始序列。默认情况下,我们取演示的前1024个令牌。接下来,环境将生成第一个观察结果,它将被标记化并附加到序列中。Gato对动作向量进行一次自动回归采样,每次得到一个标记。一旦包含动作向量的所有标记都被采样(由环境的动作规范确定),就通过反转第2.1节中描述的标记化过程来解码动作。一旦包含动作向量的所有标记都被采样(由环境的动作规范确定),就通过反转第2.1节中描述的标记化过程来解码动作。该模型总是可以在其包含1024个令牌的上下文窗口中看到所有以前的观察结果和操作。我们发现在部署过程中使用变压器XL内存是有益的,尽管在训练中没有使用它(Dai et al.,2019)。
3数据集
Gato在大量的数据集上进行训练,包括在模拟和真实世界环境中的代理经验,以及各种自然语言和图像数据集。表1列出了我们使用的数据集及其属性。假设采用第2.1节中描述的令牌化机制,则计算每个控制数据集的近似令牌数。
3.1模拟控制任务
我们的控制任务包括由专业SoTA或SoTA近SoTA强化学习代理生成的数据集。对于每个环境,我们记录了代理在训练时产生的体验子集(状态、行动和奖励)。
模拟的环境包括元世界(Yu et al.,2020),并引入了基准的元强化学习和多任务学习,Sokoban(Racaniere等人,2017)提出作为一个规划问题,BabyAI(谢瓦利尔-博伊斯维特等人,2018)在网格世界中的语言指导,用于连续控制的DM控制套件(通优库等,2020年),以及DM实验室(Beattie等,2016年),旨在从以自我为中心的原始像素教授代理导航和3D视觉。我们还使用了街机学习环境(Bellemare et al.,2013)的经典雅达利游戏(我们使用两组游戏,我们称之为ALE Atari和ALE AtariExtended,详见第F.1节)。我们还包括了Procgen基准测试(Cobbe等人,2020年)和模块化RL(Huang等人,2020年)。我们还包括四项任务,如Zolna等人所述,使用DM Manipulation Playground的模拟Kinova-Jaco手臂。(2020)。F部分包括了对这些控制任务的更深入的描述,以及使用了什么RL代理来生成数据。
(
表1:数据集。左图:用于训练Gato的控制数据集。右图:视觉和语言数据集。样本权重表示每个数据集在训练序列批次中的平均比例。
)
我们发现,对一组经过过滤的事件进行训练,至少80%的专家返回的。专家返回来衡量专家代理所能达到的最大持续性能。我们将其定义为一个任务收集的所有事件计算的所有窗口平均收益集合的最大值:(公式)其中,N为任务收集的事件总数,W为窗口大小,Ri为事件i的总返回量。为了获得准确的估计,在实践中,我们将W设置为总数据量的10%或至少1000集(即W=分钟(1000,0.1×=))。
3.2视觉和语言
Gato使用Massive文本(Rae et al.,2021),这是一个来自多个来源的大型英语文本数据集的集合:网页、书籍、新闻文章和代码。
我们还在Gato的训练中包含了几个视觉语言数据集。ALIGN(Jia et al.,2021)由1.8B幅图像及其替代文本(alt-text)注释组成。LTIP(长文本和图像对),包括3.12亿张带有标题的图片(Alayrac等人,2022年)。概念标题(Sharma等人,2018)和COCO标题(Chen等人,2015)分别用3.3M和120k图像-文本对对数据集进行标题。多模态海量网络(M3W)数据集(Alayrac et al.,2022)包括4300万个网页,其中文本和图像都被提取出来。我们还包括了视觉问答数据集。特别是OKVQA(Marino等人,2019年)和VQAv2(Antol等人,2015年),其中有9K和443K三联体的图像、问题和答案。为了从这些数据中形成一个训练集,我们对5对(图像,文本)进行采样,将它们标记化,连接,然后填充或随机裁剪到所需的训练序列长度。
(
图4:使用Sawyer机械臂的RGB堆叠环境。块沿着几个形状轴变化,有5个保持的测试三胞胎。目标是把红色堆叠在蓝色上,而忽略绿色。
)
3.3机器人技术- RGB堆叠基准测试(真实版和sim版)
作为我们在现实世界中采取物理行动的实验平台,我们选择了Lee等人(2021)介绍的机器人块堆积环境。该环境包括一个具有3-自由度笛卡尔速度控制的索耶机器人臂,一个额外的速度自由度,和一个离散的夹持器动作。这个机器人的工作空间包含三个不同形状的红色、绿色和蓝色的塑料块。可用的观察包括两个128×128相机图像,机器人手臂和夹持关节角度以及机器人的末端执行器姿态。值得注意的是,代理没有观察到篮子中三个物体的地面真实状态信息。剧集的固定长度为400个时间步长,频率为20 Hz,共计20秒,在剧集结束时,剧集块的位置被随机地重新放置在工作空间中。机器人的动作如图4所示。这个基准测试有两个挑战:技能掌握(代理提供来自5个测试对象三联体的数据,然后进行测试)和技能泛化(数据只能从排除5个测试集的一组训练对象中获得)。
我们为这些任务使用了几个训练数据来源。在技能泛化过程中,对于模拟和真实,我们使用了来自Lee等人(2021)的最佳多面手sim2真实代理收集的数据。我们只在与指定的rgb堆叠训练对象交互时收集数据(在模拟中总共有387k成功轨迹,在实际中有15k成功轨迹)。对于技能掌握,我们使用了来自Lee等人(2021年)的最佳每组专家的模拟数据和来自真实机器人的最佳sim2真实策略(总计219k轨迹)。请注意,此数据仅用于第5.4节中的特定技能掌握实验。
- 多面手代理的能力
在本节中,我们将总结Gato在上述数据上进行训练时的性能。也就是说,所有任务的所有结果都来自于一个带有一组权重的预训练模型。经过微调的结果将在第5节中介绍。
4.1模拟控制任务
图5显示了Gato训练数据中专家的高于给定分数阈值的不同控制任务的数量。
我们以百分比报告性能,其中100%对应每个任务的专家,0%对应随机策略。对于我们训练模型的每个模拟控制任务,我们在相应的环境中推出50次Gato策略,并对定义的分数取平均值。如图5所示,Gato在超过50%的专家分数阈值下执行604个任务中的超过450个。
(
图5:Gato在模拟控制任务上的表现。预先训练模型的性能高于专家分数的百分比的任务数。这里x轴上的值代表专家分数的特定百分比,其中0对应随机代理的性能。y轴是预训练模型的平均性能等于或高于该百分比的任务数。也就是说,每个颜色带的宽度表示Gato的平均表现高于特定任务专家获得的最高分数的一个百分比的任务数量。
)
在ALE雅达利(Bellemare et al.,2013)中,Gato在23场雅达利比赛1中获得了平均人类得分(或更好),在11场比赛中获得了超过2倍的人类得分。虽然生成数据的单任务在线RL代理仍然优于Gato,但这可以通过增加容量或使用离线RL训练而不是纯粹的监督来克服(见5.5节,我们提供了一个专业的单一领域雅达利代理在44场游戏中获得比人类更好的分数)。
在BabyAI(谢瓦利-博伊斯维特等人,2018),Gato在几乎所有2级中都获得了超过80%的专家分数。对于最困难的任务,被称为BossLevel,Gato的得分为75%。我们可以找到的另外两个已发布的基线,BabyAI 1.0和BabyAI 1.1(Hui et al.,2020),得分分别为77%,仅通过100万个演示就获得了90%。
在Meta-World(Yu et al.,2020)上,Gato在我们训练的44个任务中实现了所有50%以上,35个任务实现了超过80%,3个任务实现了超过90%。在典型的DM控制套件上(Tassa等人,et al.,2018)中,Gato在30个州任务中有21个获得了超过50%的专家得分,在18个任务中获得的专家得分超过80%。
4.2机器人
第一人称远程操作使专家演示的收集成为可能。然而,收集这样的示威活动速度缓慢,而且成本高昂。因此,数据高效的行为克隆方法是训练多面手机器人机械手的理想方法,因此离线预训练是一个动机良好的研究领域。为此,我们在已建立的机器人技术的RGB堆叠基准上评估了Gato。
(
图6:由Gato生成的图像标题。Gato成为了一名图像字幕员,描述了MS-COCO的前几张图像。我们报告了前三个标题抽样使用温度0.9,没有樱桃采摘。该提示显示在附录中。
图7:与Gato的聊天。当Gato被提示为聊天机器人时,与它进行对话。通常Gato的回答是相关的回答,但通常是肤浅的或事实上不正确的,这可能会通过进一步的缩放而得到改进。我们使用了与Rae等人(2021年)相同的提示。
表2: Gato真实机器人技能泛化结果。除了执行数百个其他任务外,Gato还与可比的发布基线进行竞争。
)
技能推广性能
来自RGB堆叠机器人基准测试的技能泛化挑战测试了代理堆叠以前看不见的形状的对象的能力。该代理是在一个由各种不同形状的机器人叠加对象组成的数据集上进行训练的。然而,五个物体形状的三联体不包括在训练数据中,并作为测试三联体。我们评估了训练过的多面手,每个测试三联体200集。表2显示,我们的多面手代理在每个测试三组上的成功率与Lee等人(2021年)中的单个任务BC-imp(过滤后的BC)基线相当。
4.3文本样本
该模型展示了基本的对话和图像字幕功能。图6包含了Gato的图像字幕性能的一个代表性样本。图7显示了一些手工挑选的纯文本对话交换示例。
5分析
5.1比例尺分析
在图8中,我们分析了预训练模型的总体分布内性能作为参数数量的函数,以便深入了解如何随着模型容量的增加而提高性能。我们评估了3种不同的模型大小(以参数计数测量):一个79M模型,一个364M模型,和一个1.18B模型(Gato)。关于这三种模型架构的详细信息,请参阅C节。
在这里,对于所有三个模型大小,我们绘制了随着训练进展的标准化返回。为了得到这个单一的值,对于每个任务,我们将模型的性能作为专家分数的百分比来计算模型的性能(与在第4.1节中所做的相同)。然后,对于表1中列出的每个域,我们平均该域的所有任务的百分比分数。最后,我们表示-汇总所有领域的百分比分数。我们可以看到,对于等效的令牌计数,随着规模的增加,性能会显著提高。
(
图8:模型尺寸比例定律结果。分布内性能作为3个模型尺度的标记的函数。性能首先在每个单独的控制域内进行平均聚合,然后在所有域内进行平均聚合。我们可以看到,随着固定数量的模型容量的增加,模型容量得到持续的改进。
图9:少镜头的表现,在各种训练前设置。橙色对应于对所有数据进行预训练的基本Gato。红色只根据少数镜头的数据从头开始训练。本实验采用364M个的Gato参数变量来节省计算量。
)
5.2分配任务
在本节中,我们想回答以下问题:我们的代理可以用来有效地解决一个全新的任务吗?出于这个原因,我们从预训练集中保留了四个任务的所有数据: cartpole.swingup(DM控制套件域)、汇编v2(元世界域)、简单苹果的顺序(DM实验室域)和拳击(ALE Atari域)。这四个任务将作为评估Gato分发外能力的测试平台。
理想情况下,代理可以通过调节包括显示期望行为的提示来学习适应新任务。然而,由于加速器内存限制和标记化演示的极长的序列长度,可能的最大上下文长度不允许代理参加一个信息足够丰富的上下文。因此,为了使代理适应新的任务或行为,我们选择对单个任务的有限数量的演示进行微调代理的参数,然后评估微调后的模型在环境中的性能。微调非常类似于训练前,但有微小的变化,比如不同的学习率计划;详情请参见E节。
我们想要衡量在训练前使用的数据的选择如何影响微调后的性能。为此,我们将Gato(在所有数据上训练)与在消融数据集上训练的变体进行了比较:
- 模型仅对来自要微调的任务的同一域的数据进行预训练,仅对相同域的数据。
- 一个只对非控制数据进行预训练的模型,没有控制数据。
- 一个模型从头开始进行微调,即根本没有预训练,抓痕。
考虑到所有这些实验都需要从头开始训练一个新的模型,然后再进行微调,我们使用第5.1节中描述的计算量较低的364M参数架构来显示结果。结果如图9所示。
在cartpole.swingup和汇编-v2任务上的微调性能,两者都不需要图像处理,呈现出类似的趋势。在所有的数据集上进行预训练会得到最好的结果,然后只在同一领域上进行预训练。这种差异对于汇编v2较小,但对于所有少数镜头数据集都是一致的。对于这些非基于图像的环境,当对没有只包含图像和文本数据的控制数据集进行预训练时,我们没有看到任何好处(cartpole.swingup)或甚至负转移(汇编-v2)。
苹果饲料简单的DM实验室排序结果略有不同。仅对DM实验室数据进行预训练已经足以接近19人的最大奖励,因此添加来自不同环境的数据没有明显的好处。与之前分析的无视觉环境相比,不同之处在于,在无控制数据上进行预训练有帮助,这可能是因为DM实验室环境中的代理被提供了图像,尽管这些图像是模拟的,但看起来很自然。因此,从图像字幕或视觉基础的问题回答任务转移是可能的。
(
图10:机器人技术的微调结果。左:经过35k个专家集训练的Gato、专家和CRR的真实机器人技能泛化成功率的平均比较(上限)。右:模拟机器人技能泛化成功率的比较,对一系列参数数量的消融,包括专家分数和5k次训练的BC基线。
)
我们无法观察到拳击术前训练的任何好处。随机初始化的模型似乎比考虑的任何预先训练的变量都更好。我们假设这是由于游戏的输入图像在视觉上与其他数据非常不同,这表明转移是困难的。我们将在我们相关的工作部分进一步讨论这个雅达利的挑战。
5.3对机器人堆叠任务的微调
第4.2节演示了能够执行各种任务的基本Gato可以在RGB堆叠技能泛化基准上执行具有竞争力。在本节中,我们想回答以下问题:当允许我们如何对第5.2节中的新任务进行微调时,我们的代理如何改进机器人任务?我们考虑了不同的模型大小,并分析了预训练数据集对技能泛化基准的影响,以及一个新的非分布任务。对数据集消融的微调的进一步分析见附录I。
技能推广
首先,我们想表明,对特定于对象的数据进行微调,类似于Lee等人(2022年)所做的事情,是有益的。因此,我们分别对测试数据集的五个演示子集微调了Gato。每个子集都是通过随机划分一个测试数据集来获得的,该数据集由一个通用的模拟到真实的代理叠加真实的测试对象所收集的演示组成。我们考虑这个设置,它与(Reeetal.,2022)的RGB堆叠任务的微调基线相当;并使用他们的行为克隆5k结果获得的5k数据集。为了最好地匹配他们的实验,我们在训练期间改变了我们的返回过滤方案:我们不是只使用成功的堆栈,而是以事件的规范化返回为条件。
图10比较了Gato在不同微调数据机制下的成功率,模拟真实专家和批评正则化回归(CRR)(Wang et al.,2020),训练了所有测试三胞胎的35k集。Gato,在现实和模拟中(左右图的红色曲线),只用10集就恢复了专家的表现,在100或1000集的微调数据时达到峰值,超过了专家。在这一点之后(在5000点),性能略有下降,但并没有远远低于专家的性能。
(
图11:比较训练/测试任务目标的变化。顶部:在技能泛化基准测试中测试的标准“蓝色红色堆栈”任务。底部:小说的“蓝色叠绿色”任务展示了Gato对知觉变化的分布适应。
)
微调和模型大小
为了更好地理解大型模型在机器人领域的少镜头适应的好处,我们对模型参数大小进行了消融。本节将重点介绍仿真内的评估。图10比较了完整的1.18B参数Gato与较小的364M和79M参数变体,用于不同数量的微调数据。虽然364M模型在一个情节上过度拟合,导致性能下降,但随着参数数量的增加,有明显的趋势是更好的适应情节。79M车型的表现明显比更大的车型要差。结果表明,该模型更大的容量允许该模型使用在测试时从不同的训练数据中学习到的表示。
对感知变化的适应
虽然技能泛化任务是运动技能泛化对形状变化的有效基准,但它并没有测试主体对目标规范中的感知变化和排列的适应能力。为了进一步评估Gato的泛化能力,我们在RGB堆叠基准测试中设计了一个新的任务,其目标是将蓝色对象堆叠在绿色对象上,对于测试三联体1(见图11)。首先,我们使用3D鼠标在真实的机器人上收集了500个该任务的演示,总共需要2小时45分钟的演示数据,并对这些事件上的Gato进行了微调。值得注意的是,预训练集中的所有模拟和真实的机器人数据都显示了机器人成功地将红色对象叠加在蓝色对象上,并且该数据不包括测试集中的对象形状。我们发现,在微调数据集上添加绿色任务上的模拟演示,可以提高性能,10%是该数据的理想采样比。
在评估了真实机器人上的微调Gato后,我们最终获得了60%的成功率,而在蓝绿数据上从头开始训练的BC基线仅获得了0.5%的成功率(1/200集)。定性地说,BC基线会持续地向蓝色物体移动,偶尔会拿起它,把它放在绿色物体的顶部,但几乎从未实现一个完整的、稳定的堆栈。
(表3:真实的机器人技能掌握结果。Gato与过滤后的BC基线具有竞争力。)
5.4机器人:技能掌握
与第4.2节中讨论的技能泛化挑战类似,技能掌握挑战包括训练一个机械臂来堆叠不同形状的块。然而,技能掌握允许代理对涉及用于评估的对象形状的数据进行训练,即技能泛化中的测试集成为技能掌握训练集的一部分。因此,这个挑战有助于衡量Gato在分配任务上的表现(可能是在训练演示中没有看到的初始条件)。我们的技能掌握结果使用了附录H中描述的Gato架构的早期版本,没有进行微调。
表3比较了Gato和已建立的BC-IMP基线之间的对象组间的组级成功率百分比和平均成功率。Gato在所有训练三组上的表现超过或非常匹配BC-IMP的表现。
5.5专家单域多任务代理
在本节中,我们将展示由两个专家(而不是多面手)代理获得的结果。他们俩都只对来自单个领域的数据进行了训练,并为每个训练任务推出了500次,而没有对每个任务进行任何微调。
元世界
第一个代理使用了在第5.1节中介绍的最小的体系结构,即79M参数,并在所有50个元世界任务上进行训练。虽然Gato可以访问MuJoCo物理引擎的状态和无限的任务种子,但这里提供的代理不能访问任何额外的特性或任务,并使用规范的API(Yuetal.,2020)。本实验结果表明,本文提出的体系结构也可以用于小规模地获得最先进的代理。训练程序是分别训练单任务MPO(Abdolmaleki et al.,2018)专家完成每个MT-50任务,记录训练时产生的轨迹。然后将这种经验结合起来,或提炼成一个单一的代理,在所有50个任务中平均达到96.6%的成功率。据我们所知,这个代理是第一个同时完成这个基准测试的几乎100%的平均成功率(多任务)的代理。我们的代理的完整任务列表和相应的成功率见补充材料(K部分)中的表7。
ALE雅达利
我们还培训了ALE雅达利的所有51项任务。由于雅达利领域比Meta-World更具挑战性,我们使用了具有1.18B参数的Gato架构。在44场比赛中,所得到的代理比普通人表现得更好(关于我们的评估和得分的细节见4.1节)。我们想注意的是,用于为其他7款游戏生成训练数据的在线专家的表现也低于人类的平均水平。因此,雅达利代理在所有数据包含超人情节的游戏中取得了比人类更好的表现。
专业的雅达利代理优于我们的通才代理Gato,它在23场比赛中取得了超人的表现。这表明,缩放Gato可能会带来更好的性能。然而,我们故意限制了Gato的大小,使它可以在真实的机器人上实时运行。
(图12:注意图。延时注意力地图从选定的头部在第一层的雅达利突破和RGB堆叠。)
5.6注意分析
我们将各种任务的转换器注意力权重呈现到图像观察之上,以获得Gato如何在不同任务中关注图像的不同区域的定性感觉(见图12)。更多任务的更多细节和可视化可以在附录j中找到。这些可视化清楚地表明,注意力跟踪与任务相关的对象和区域。
5.7嵌入可视化
为了理解Gato如何对每个任务编码不同的信息,我们可视化了每个任务的嵌入。
我们分析了11个任务。对于每个任务,我们随机抽取100个片段,并对每个片段进行标记。然后,我们从每个一集中取128个标记的子序列,计算它们的嵌入(在第12层,这是变压器层总深度的一半),并在序列上对它们进行平均。所有任务的平均嵌入被用作PCA的输入,从而将其维数降至50。然后,使用T-SNE得到最终的二维嵌入。
图13显示了最终的2D绘制的T-SNE嵌入,按任务着色。来自相同任务的嵌入显然聚集在一起,来自相同域和模态的任务集群也彼此靠近。即使是保留任务(cartpole.swingup)也被正确地聚集,并位于DM控制套件像素的另一个任务旁边。
6相关工作
与Gato最密切相关的架构是决策变形金刚(Chen等人,2021b;R里德等人,2022;郑等人,2022;Furuta等人,2021年)和轨迹变压器((Janner等人,2021年),这显示了高度通用的lm样架构对各种控制问题的有用性。Gato还使用了一个类似于lm的体系结构来进行控制,但选择了设计差异来支持多模态、多实施例、大规模和通用部署。Pix2Seq(Chen等人,2022)也使用基于lm的架构进行目标检测。感知器IO(Jaegle et al.,2021)使用一种专门用于很长序列的转换器派生体系结构,将任何模态建模为一个字节序列。这种架构和类似的架构可以用于扩展未来的多面手模型所支持的模式范围。
Gato的灵感来自于GPT-3(布朗等人,2020年)和戈弗(Rae等人,2021年)等作品,推动了通才语言模型的极限;以及最近的火烈鸟(Alayrac等人,2022年)多面手视觉语言模型。Chowdhery等人(2022)明确地开发了540B参数的路径语言模型(PalM),作为一个多面手,可以完成数百个文本任务。未来的工作应该考虑如何将这些文本功能统一为一个完全的多面手代理,该代理也可以在现实世界、不同的环境和实施例中实时作用。
(图13:嵌入式可视化图。来自不同任务的嵌入的T-SNE可视化。视觉语言嵌入(M3W)的很大一部分与语言集群(MassiveText)重叠。其他涉及操作的任务也属于它们自己的集群中。)
Gato还从最近的多实施例连续控制的工作中获得了灵感。Huang等人(2020)使用消息传递图网络为许多模拟的二维步行者变体构建了一个单一的运动控制器。Kurin等人(2020)表明,在不兼容的(即不同的实施例)控制方面,变压器可以优于基于图的方法,尽管没有编码任何形态归纳偏差。Devin等人(2017)在模拟的二维操作环境中学习了一种用于多任务和多机器人转移的模块化策略。Chen等人(2018)训练了一种基于机器人硬件向量表示的通用策略,成功地转移到模拟的机器人臂和真实世界的机械臂。
各种早期的多才模型已经被开发出来,像Gato,跨越高度不同的领域和模式。NPI(Reed &德弗雷塔斯,2016)训练了一个LSTM(霍克雷特&施米德胡伯,1997)执行不同的程序,如排序数组和添加两个数字,这样网络能够推广到比训练中看到的更大的问题实例。Kaiser等人(2017)开发了多模型,该模型联合训练8种不同的语音、图像和文本处理任务,包括分类、图像字幕和翻译。特定模式的编码器用于处理文本、图像、音频和分类数据,而其他网络参数在任务之间共享。施midhuber(2018)提出了“万物大网”,描述了一种对日益普遍的问题解决者进行增量训练的方法。Keskar等人(2019)提出了可控的多任务语言模型,该模型可以根据语言域、子域、实体、实体之间的关系、日期和任务特定行为进行指导。
在这个讨论中,区分一个单一的多任务网络体系结构和一个对所有任务具有相同权重的单一神经网络是很重要的。一些杨树RL代理在单一领域内实现了良好的多任务RL结果,如雅达利57和DMLab (Espeholt等,2018年;Song等,2020年;Hessel等,2019年)。然而,更常见的情况是跨任务使用相同的策略架构和超参数,但每个任务中的策略参数是不同的(Mnih等人,2015;Tassa等人,2018)。这对于适用于棋盘游戏的最先进的RL方法也是如此(rer等人,2020)。此外,这种选择已被离线RL基准所采用(Gulcehre等,2020;傅等,2020)和最近关于大型序列神经网络控制的工作,包括决策变压器(陈等,2021b;里德等,2022;郑等人,2022)和Janner等人的轨迹变压器(2021)。相比之下,在这项工作中,我们学习了在不同任务中具有相同权重的单一网络。
最近的立场论文提倡高度多面手模型,特别是施米德胡伯(2018)提出的一个大网,以及Bommasani等人(2021)提出的基础模型。然而,据我们所知,还没有报道过一个多面手使用现代变压器网络对数百个视觉、语言和控制任务的训练。
“单脑”风格的模型与神经科学有着有趣的联系。蒙特卡斯尔(1978)曾指出,“新皮层模块的处理功能在所有新皮层区域中在定性上是相似的。”简而言之,运动皮层没有任何内在的运动,感觉皮层也没有任何感觉。”蒙特卡斯尔发现,无论与视觉、听力还是运动控制有关,大脑皮层中的神经元柱的行为都相似。这引发了一些争论,即我们可能只需要一个算法或模型来建立智能(霍金斯和布莱克斯利,2004)。
感官替代为单一模型提供了另一个论点(Bach-y Rita & Kercel,2003)。例如,可以为盲人建立触觉视觉辅助工具如下。照相机捕捉到的信号可以通过舌头上的电极阵列发送到大脑。视觉皮层学会处理和解释这些触觉信号,赋予人某种形式的“视觉”。这表明,无论输入信号的类型如何,同一网络都可以对其产生有用的效果。
我们的工作是基于深度自回归模型,它有悠久的历史,可以在文本、图像、视频和音频的生成模型中找到。将自回归生成与变形器相结合(瓦斯瓦尼等,2017;德夫林等,2018)对语言建模的巨大影响(布朗等,2020;雷等,2021年),蛋白质折叠(跳线等,2021),2021等,2021;王等,2021;2022),代码生成(陈等,2021;),具有检索能力的对话系统(中野等,2021;托皮兰等,2022),神经机器翻译(约翰逊等,2020)和更多(博马萨尼等,2021)。最近,研究人员利用语言模型探索了任务分解和基础(Huang等人,2022年;Ahn等人,2022年)。
Li等人(2022a)构建了一个控制体系结构,包括序列标记器、预先训练的语言模型和特定于任务的前馈网络。他们将其应用于虚拟家庭和BabyAI任务,并发现包含预先训练好的语言模型提高了对新任务的泛化。类似地,Parisi等人(2022年)证明,通过自我监督学习预先训练的视觉模型,特别是作物分割和动量对比(He等人,2020年),可以有效地纳入控制政策。
如前所述,在雅达利的转会是一项挑战。Rusu等人(2016)研究了随机选择的雅达利游戏之间的转移。他们发现雅达利是一个难以转移的领域,因为不同的游戏在视觉、控制和策略方面存在显著差异。卡纳维斯托等人(2020年)讨论了将行为克隆应用于雅达利等视频游戏时出现的进一步困难。
最近,人们对数据驱动的机器人技术非常感兴趣(Cabi等人,2019年;Chen等人,2021年a)。然而,博姆马萨尼等人(2021年)指出,在机器人技术中,“关键的绊脚石是收集正确的数据。”与语言和视觉数据不同,机器人技术数据既不丰富,也不能代表足够多样化的实施例、任务和环境阵列。”此外,每次我们在机器人实验室中更新硬件时,我们都需要收集新的数据和再训练。我们认为,这正是为什么我们需要一个能够用很少的数据来适应新的实施例和学习新的任务的通用代理。
当存在混杂变量时,使用自回归模型生成行动可能会导致因果关系上的“自我错觉”偏差(Ortega et al.,2021)。例如,当多个任务共享相似的观察和操作规范时,采样操作可以使模型能够解决错误的任务。正如在第2节中所解释的,我们在模糊的任务中使用提示工程,将我们的模型设置在一个成功的演示上。这就屏蔽了混杂的变量,减少了自我妄想。我们在这项工作中没有探索的另一个解决方案是使用反事实教学,即我们使用瞬时专家反馈在线训练一个模型。我们把这个问题留给以后的调查了。
7更广泛的影响
尽管多面手代理仍然只是一个新兴的研究领域,但它们对社会的潜在影响需要对它们的风险和利益进行彻底的跨学科分析。为了透明起见,我们在附录A中的模型卡中记录了Gato的预期用例。然而,减轻多面手药物危害的工具相对不发达,在部署这些药物之前还需要进一步的研究。
由于我们的多面手代理可以作为一个视觉语言模型,它继承了类似的关注(魏丁格等人,2021;2021;博马萨尼等人,2021;Rae等人,2021;Alayrac等人,2022)。此外,通才代理人可以在现实世界中采取行动;提出新的挑战,可能需要新的缓解策略。例如,物理体现可能导致用户将代理人格化,导致在系统故障的情况下产生错误的信任,或者可以被坏人利用。此外,虽然跨领域知识转移通常是ML研究的一个目标,但如果某些行为(如街机游戏战斗)被转移到错误的环境中,它可能会产生意想不到的和不希望的结果。随着通才系统的发展,知识转移的伦理和安全考虑可能需要大量的新研究。
当考虑到在许多实施例中操作的多面手制剂时,技术性的AGI安全(Bostrom,2017)也可能变得更具挑战性。因此,偏好学习、不确定性建模和价值对齐(Russell,2019)对于设计与人类兼容的通才代理尤为重要。有可能将语言的一些价值对齐方法(欧阳等人,2022;Kenton等人,2021年)扩展到多面手代理。然而,即使为价值协调开发了技术解决方案,由于不可预见的环境或有限的监督,即使是焊接设计师的干预,也仍然可能产生负面的社会影响(Amodei et al.,2016)。这一限制强调了需要一个仔细的设计和一个包含多个学科和观点的部署过程。
理解模型如何处理信息,以及任何紧急能力,都需要进行大量的实验。外部检索(Borgeaud等人,2021年;Menick等人,2022年;中野等人,2021年;托皮兰等人,2022年)已被证明可以提高可解释性和性能,因此应在未来的通才代理设计中予以考虑。
尽管仍处于概念验证阶段,但最近在通才模型方面的进展表明,安全研究人员、伦理学家,最重要的是,一般公众,应该考虑他们的风险和利益。我们目前还没有向任何用户部署Gato,因此预计不会产生立即的社会影响。然而,鉴于其潜在的影响,应深思熟虑地发展通才模式,并以促进人类健康和活力的方式加以部署。
8限制和未来的工作
8.1 RL数据收集
Gato是一种数据驱动的方法,因为它来源于模仿学习。虽然自然语言或图像数据集相对容易从网络中获得,但目前还没有用于控制任务的网络规模的数据集。这在一开始似乎是有问题的,特别是当扩展Gato到更多的参数时。
话虽如此,人们已经对这个问题进行了广泛的调查。离线RL的目标是利用现有的控制数据集,它的日益普及已经导致了更多样化和更大的数据集的可用性。更丰富的环境和模拟正在构建中(例如元宇宙),越来越多的用户已经在数千个已经部署的在线游戏中与它们进行了互动(例如,存在一个《星际争霸2》游戏的大型数据集)。真实数据也已经存储为ML研究目的;例如,用于训练自动驾驶汽车的数据是从记录人类驾驶员数据中获得的。最后,虽然Gato使用了包含观测和相应行动的数据,但已经研究了使用大规模观测数据来增强代理的可能性(Baker et al.,2022)。
多亏了在线视频共享和Youtube和Twitch等流媒体平台,仅观察数据集并不比自然语言数据集更困难收集,这推动了未来的研究方向,即扩展Gato从网络数据中学习。
虽然前一段着重于减轻从RL代理收集数据的缺点,但需要注意的是,与抓取web数据相比,这种方法提供了一套不同的权衡,实际上在某些情况下可能更实用。一旦模拟建立并接近SOTA代理训练,它就可以用来生成大量高质量的数据。这与以低质量而臭名昭著的网络数据质量形成了鲜明对比
简而言之,我们认为获取合适的数据本身就是另一个研究问题,这是一个日益活跃的、日益重要的研究领域。
8.2提示和简短的上下文
通过一个专家演示提示Gato,它帮助代理输出与给定任务相对应的操作。这特别有用,因为否则代理没有可用的任务标识符(这与许多多任务RL设置相反)。Gato从提示中的观察和动作中推断出相关的任务。
然而,我们的代理的上下文长度被限制为1024个令牌,这意味着代理有时总共只关注几个环境时间步长。这对于有图像观测的环境尤其如此,根据分辨率,每个观测都可以产生100多个令牌。因此,对于某些环境,只有演示集的一小部分适合变压器内存。
由于这种有限的提示环境,使用不同提示结构的初步实验产生了非常相似的性能。类似地,在新环境中使用基于提示的上下文学习的模型的早期评估,与在相同环境中进行的无提示评估相比,并没有显示出显著的性能改善。
因此,上下文长度是目前我们的架构的一个限制,主要是由于自注意的二次缩放。许多最近提出的架构能够使更长的上下文和更高的效率,这些创新可以潜在地提高我们的代理性能。我们希望在未来的工作中探索这些体系结构。
9结论
变压器序列模型作为多任务多体现策略是有效的,包括对现实世界的文本、视觉和机器人任务。它们在很少有机会超出分配的任务学习中也表现出了希望。在未来,这些模型可以通过提示或微调来学习新的行为来作为默认的起点,而不是从头开始训练。
给定比例律趋势,包括对话在内的所有任务的性能将随着参数、数据和计算的规模而提高。更好的硬件和网络架构将允许训练更大的模型,同时保持实时的机器人控制能力。通过在相同的基本方法上进行扩展和迭代,我们可以构建一个有用的通用代理。
总结:
文章总结了通用大模型在多个模态共用方面的潜力,包括视觉、语言、动作等等。通用结构本身符合生物仿生学,如人类的大脑皮层。同时在最后说明了在动作类数据收集方面存在的问题以及可能的解决方法。