万事通JAT模型:基于Transformer的多模态通用强化学习智能体

独角也有噬元兽 2024-02-23 02:28:22

在人工智能领域,强化学习(RL)是一种让智能体通过与环境的交互来学习和优化行为的方法。强化学习的目标是让智能体能够在各种复杂和不确定的环境中实现最大的累积奖励。然而传统的强化学习方法通常只能解决单一的任务,而不能泛化到多个领域和模态的任务。例如,一个在Atari游戏中表现优异的智能体,可能无法在机器人操控或自然语言处理的任务中发挥作用。这种缺乏通用性和灵活性,限制了强化学习的应用范围和价值。

为了解决这个问题,一些研究者提出了多任务强化学习的方法,即让一个智能体能够同时学习和执行多个不同的任务。这种方法有助于提高智能体的泛化能力和适应性,也有可能实现正向迁移,即在一个任务中学到的知识和技能能够帮助解决另一个任务。但是多任务强化学习也面临着一些挑战,例如如何有效地平衡不同任务的学习进度和优先级,如何避免不同任务之间的干扰和负向迁移,以及如何设计一个能够处理多种数据类型和模态的统一的模型结构。

本文介绍了一篇最新的论文《Jack of All Trades, Master of Some, a Multi-Purpose Transformer Agent》(以下简称JAT),该论文由法国国家信息与自动化研究所(INRIA)的四位研究者Quentin Gallouedec ´、 Edward Beeching 、Clement Romac ´、Emmanuel Dellandrea´撰写。该论文提出了一个新颖的多模态通用强化学习代理框架,能够使用一套参数处理不同复杂度的多种任务,包括顺序控制、计算机视觉和自然语言处理任务。该论文的创新点主要有以下几个方面:

1)该论文使用了一个基于Transformer的模型结构,利用其强大的表示能力和注意力机制,来处理多种数据类型和模态,例如连续的观察和动作、离散的动作、图像和文本等。该模型使用了一个多模态的编码器和一个多模态的解码器,以及一个因果的Transformer来生成下一个嵌入向量。该模型还使用了一些正则化技术,例如梯度裁剪、权重衰减等,来提高模型的泛化能力。

2)该论文构建了一个多领域和多模态的数据集,包含了多个顺序决策数据和文本数据,例如Atari、Meta-World、BabyAI、MuJoCo、OSCAR、Conceptual-Captions、OK-VQA和Wikipedia等。该数据集涵盖了多种任务的难度和复杂度,也提供了丰富的语言和视觉信息。该论文将这些数据集以及生成它们的代码和专家代理都公开给了公众,作为通用AI模型的开放资源。

3)该论文研究了预测观察对学习的影响,发现预测观察可以作为一个有益的辅助目标,提高模型的学习效率,只要合理地平衡观察损失和动作损失的权重。该论文还比较了JAT模型和Gato模型(Reed et al., 2022)在多个基准上的表现,发现JAT模型在Atari和BabyAI上接近Gato模型的水平,但在Meta-World上低于Gato模型的水平。

本文将对该论文的内容进行详细的解读和分析,从以下几个方面展开:

模型结构:介绍JAT模型的嵌入机制、Transformer结构和输出处理方法,以及它们如何适应不同的数据类型和模态。

数据集:介绍JAT模型使用的顺序决策数据集和文本数据集,以及它们的来源、规模和特点。

实验和结果:介绍JAT模型在不同的任务和基准上的实验设置和结果,以及与Gato模型的比较和分析。

结论和展望:总结JAT模型的贡献和局限,以及未来的改进方向和应用前景。

模型结构

JAT模型的核心是一个基于Transformer的网络,能够处理多种数据类型和模态,例如连续的观察和动作、离散的动作、图像和文本等。Transformer是一种使用自注意力机制来编码和解码序列的神经网络结构,最初用于自然语言处理任务(Vaswani et al., 2017),后来也被广泛应用于计算机视觉和多模态任务(Dosovitskiy et al., 2021; Alayrac et al., 2022; Chen et al., 2023; Laurenc¸on et al., 2023a)。Transformer的优点是能够捕捉序列中的长距离依赖关系,同时也能够并行化计算,提高效率。

JAT模型的结构如图1所示,主要包括三个部分:嵌入机制、内部Transformer和输出处理。

图1:JAT网络的架构。对于顺序决策任务,一方面对观察和奖励,另一方面对行动进行编码和交织。该模型使用因果掩码自回归生成下一个嵌入,并根据预期模态进行解码。

嵌入机制

嵌入机制的作用是将不同的数据类型和模态转换为统一的嵌入向量,作为内部Transformer的输入。JAT模型使用了不同的嵌入方法来处理不同的数据类型和模态,具体如下:

连续观察:将奖励值附加到观察向量中,然后通过一个线性层将其映射到一个固定长度的嵌入向量。

离散观察:将观察向量中的每个整数通过一个查找表映射到一个连续向量,然后通过一个线性层将其降维,再将奖励值附加到最后。

图像观察:将输入图像统一裁剪、缩放和归一化,然后通过一个图像编码器,由三个卷积-归一化-注意力的块组成,最后通过一个线性层将其映射到一个嵌入向量。

连续动作:与连续观察的处理方法类似,但不附加奖励值,且使用与连续观察相同的线性层。

离散动作:将输入的整数直接通过一个查找表映射到一个连续向量,与离散观察使用相同的查找表。

图2:JAT图片字幕示例。主题通常是正确的,尽管有时相关性有限。

对于涉及顺序决策的任务,JAT模型将观察嵌入和动作嵌入交错排列,形成一个序列,作为内部Transformer的输入。对于涉及文本的任务,JAT模型使用了GPT-2的分词策略,将文本转换为一个整数序列,然后通过一个查找表映射到一个嵌入向量序列。对于涉及图像和文本的任务,JAT模型使用了ViT的图像嵌入方法,将图像分割为小块,然后通过一个线性层映射到一个嵌入向量序列。JAT模型将图像嵌入和文本嵌入拼接在一起,形成一个序列,作为内部Transformer的输入。

内部Transformer

JAT模型使用了一个因果的Transformer网络,来对输入的嵌入序列进行编码和解码,生成下一个嵌入向量。JAT模型使用了EleutherAI的GPT-Neo的实现(Black et al., 2021),具有12层和12头的自注意力机制,中间维度为8192,隐藏维度为768。JAT模型使用了一个双重的注意力机制,灵感来自于Longformer(Beltagy et al., 2020):全局注意力,使用一个窗口大小为512的令牌来实现全局上下文理解,和局部注意力,使用一个固定窗口大小为256的令牌来实现局部信息处理。JAT模型使用了一个因果的掩码,来保证在训练和推理过程中,只能看到当前和之前的嵌入向量,而不能看到未来的嵌入向量。

输出处理

JAT模型的内部Transformer输出了一个嵌入向量序列,每个嵌入向量都编码了预测下一个元素的基础,这些元素可能属于不同的数据类型和模态。因此,JAT模型使用了不同的解码器和对应的损失函数来处理不同的数据类型和模态,具体如下:

图像:使用一个反卷积神经网络(Zeiler et al., 2010)来预测图像,使用均方误差(MSE)来计算损失。

连续向量:使用一个线性层来预测连续向量,使用均方误差(MSE)来计算损失。

离散值:使用一个线性投影层来给每个离散候选值分配一个分数,使用交叉熵来计算损失。注意,这个投影层与文本令牌和离散顺序值(例如Atari和BabyAI的动作)使用的相同。

为了计算序列的总损失,JAT模型对每个元素的损失进行了平均。对于顺序决策任务,JAT模型对观察损失和动作损失进行了加权,以平衡不同任务的学习难度和精度要求。

数据集

JAT模型使用了一个多领域和多模态的数据集,包含了多个顺序决策数据和文本数据,涵盖了多种任务的难度和复杂度,也提供了丰富的语言和视觉信息。该数据集是为了促进通用AI模型的发展而构建的,也是目前最全面和多样的数据集之一。该数据集以及生成它们的代码和专家代理都已经公开给了公众,可以在Hugging Face的仓库中访问。以下是该数据集的具体介绍:

顺序决策数据集

对于每个顺序决策的环境,JAT模型使用了专家代理来收集一系列的交互数据,每个交互数据包含了观察、动作和奖励。这些专家代理都是使用异步PPO算法(Schulman et al., 2017)从Sample Factory(Petrenko et al., 2020)中训练得到的,能够在各自的任务上达到高于人类的水平。这些交互数据的详细分数可以在附录A中查看。JAT模型使用了以下几个顺序决策数据集:

Atari:Atari是一个经典的强化学习基准,包含了57个来自街机学习环境(ALE)(Bellemare et al., 2013)的游戏。JAT模型为每个游戏收集了大约50万个交互数据,每个交互数据包含了一个图像观察、一个离散动作和一个奖励。

BabyAI:BabyAI是一个具有部分可观察性和双模态观察的强化学习环境(Chevalier-Boisvert et al., 2019; Chevalier-Boisvert et al., 2023)。JAT模型使用了BabyAI论文中提供的机器人来收集10万个交互数据,涵盖了39个不同的设置。每个交互数据包含了一个文本观察(任务描述)、一个离散观察(7×7的代理视野的符号表示)、一个离散动作和一个奖励。

Meta-World:Meta-World是一个提供了50个多样和具有挑战性的机器人操控任务的强化学习基准(Yu et al., 2019)。JAT模型为每个任务收集了1万个交互数据,每个交互数据包含了一个连续观察、一个连续动作和一个奖励。

MuJoCo:MuJoCo是一个包含了11个连续控制任务的强化学习基准(Todorov et al., 2012; Brockman et al., 2016),具有不同的领域复杂度和任务难度。JAT模型为每个任务收集了1万个交互数据,每个交互数据包含了一个连续观察、一个连续动作和一个奖励。

图3:95%的专家归一化总分作为学习步骤的函数的每个RL域的置信区间(CI)。

文本数据集

JAT模型使用了以下几个文本数据集,用于视觉和语言任务:

Oscar:Oscar是一个基于网络爬虫的文本语料库(Ortiz Suarez et al., 2020),包含了大量的英文文档。JAT模型使用了Oscar的未打乱去重的英文子集,经过清洗和去重后,得到了2.45亿篇文档,用于语言模型的训练。

Conceptual-Captions:Conceptual-Captions是一个用于图像描述和视觉理解的数据集(Sharma et al., 2018),包含了超过260万个训练样本和超过1.2万个测试样本,每个样本由一个网上来源的图像和一个描述性的标题组成。

OK-VQA:OK-VQA是一个用于视觉问答的数据集(Marino et al., 2019),包含了超过1.4万个样本,每个样本由一个图像和一个问题组成,问题不仅需要视觉理解,还需要外部知识来准确回答。

Wikipedia:Wikipedia是一个基于维基百科的数据集,包含了超过600万篇英文文章,涵盖了广泛的主题和丰富的信息。JAT模型使用这个数据集来提高语言处理能力,并提供对百科知识的访问。

图4:雅达利57基准上JAT代理的人类标准化分数。

实验和结果

JAT模型在训练过程中定期保存检查点,并在所有训练过的任务上对每个检查点进行评估。与Gato不同,JAT模型的评估不需要任何数据作为提示。我们在附录D中实证地证明,即使在最坏的情况下,JAT模型也能够识别出所需的任务。对于每个任务,我们收集了10个评估序列,并按照该任务的数据集的专家分数进行归一化。对于最终的检查点,我们使用了100个评估序列。然后,我们按照领域对结果进行了汇总。图3显示了每个领域的聚合分数随着学习步骤的变化,图4则重点展示了Atari的结果,显示了每个环境的人类归一化分数。最终的结果详见附录A。

JAT模型在最终的检查点上达到了63.5%的专家归一化分数,证明了模型能够有效地模仿专家代理在各种任务上的行为。JAT模型在Atari 57基准上达到了6.1%的专家分数,相当于16.8%的人类水平,在10个游戏上超过了人类平均水平。对于BabyAI基准,JAT模型达到了98.9%的归一化分数。然而,这个分数在两个任务上低于50%,分别是Boss Level No Unlock和Move Two Across S8N9。对于这个基准,由于数据集的收集使用了一个能够访问环境的完整状态的机器人,而交互的代理只能访问部分观察,因此没有保证能够达到专家分数。最后,在MuJoCo和Meta-World基准上,JAT模型分别达到了81.2%和68.0%的分数。虽然JAT模型在Meta-World的很多任务上达到了专家水平,但我们注意到有一些任务,例如Basketball,完全没有学习到。由于这个基准中的所有任务的动作和观察空间都是相同的,这些失败可能是由于任务的不确定性造成的,我们在附录D中对此进行了更详细的探讨。未来的研究将需要证实这个假设。我们还注意到,有些领域比其他领域更快地掌握了任务;特别是,BabyAI在只有30,000个学习步骤后就达到了90%的分数。我们推测,这是由于任务之间的高语义相似性,使得正向迁移更加强烈,但我们没有提供任何证据来支持这一点。附录A详细介绍了最终的结果。

虽然JAT模型取得了值得称赞的结果,但为了公平的比较,我们只将其与Gato进行了基准测试,因为它是唯一真正可比的基线。Reed et al. (2022)只提供了Gato的11.8亿参数版本的结果,这比JAT模型大6倍。它的结果是按照专家性能进行归一化的。由于我们没有访问归一化参数的权限,我们估计了随机代理的分数,这可能与Reed et al. (2022)使用的不完全相同,并使用了我们的专家分数进行归一化,即使它们显然与Reed et al. (2022)使用的不匹配。因此,这些归一化分数的比较应该谨慎解释。在Atari基准上,JAT模型达到了20.1%的归一化分数,接近Gato的22.4%。在BabyAI基准上,JAT模型达到了99.3%的归一化分数,高于Gato的97.7%。在Meta-World基准上,JAT模型的分数低于Gato的分数,分别为64.5%和87.0%。在MuJoCo基准上,JAT模型达到了72.5%的归一化分数。虽然Gato的训练没有使用MuJoCo,但值得注意的是,它使用了DMC基准,它与MuJoCo有一些相似之处。作为参考,在DMC基准上(Tassa et al., 2018),Gato达到了63.6%的平均分数。

图5:研究所选任务的观测预测学习影响的95%置信区间的聚合度量。给出的结果涵盖了κ的选定范围值,并且基于每个任务的100个评估。最优的κ选择可以显著提高药剂性能。

结论和展望

论文提出了JAT模型,一个新颖的多模态通用强化学习代理框架,能够使用一套参数处理不同复杂度的多种任务,包括顺序控制、计算机视觉和自然语言处理任务。JAT模型使用了一个基于Transformer的模型结构,利用其强大的表示能力和注意力机制,来处理多种数据类型和模态。JAT模型还构建了一个多领域和多模态的数据集,包含了多个顺序决策数据和文本数据,涵盖了多种任务的难度和复杂度,也提供了丰富的语言和视觉信息。JAT模型还研究了预测观察对学习的影响,发现预测观察可以作为一个有益的辅助目标,提高模型的学习效率,只要合理地平衡观察损失和动作损失的权重。JAT模型在多个基准上的实验结果表明,它能够有效地模仿专家代理在各种任务上的行为,并在一些任务上接近或超过了最先进的通用AI模型Gato的水平。

论文的模型结构还是基于传统的强化学习框架,即通过模仿专家代理的行为来学习任务,而没有考虑智能体的主动探索和创新,也没有考虑智能体之间的交互和协作,这些都是通用AI模型需要具备的能力。论文的数据集虽然涵盖了多个领域和模态的任务,但仍然有一些重要的领域和模态没有包括,例如音频、视频、社交媒体、对话、推理等,这些都是通用AI模型需要处理的数据类型和模态。

论文的实验结果虽然在一些任务上接近或超过了最先进的通用AI模型Gato的水平,但在一些任务上仍然有较大的差距,例如Meta-World和MuJoCo,这些任务需要更高的动作精度和环境理解,这些都是通用AI模型需要提高的方面。论文的评估方法虽然使用了专家归一化分数,但由于没有访问Gato模型的归一化参数,因此无法进行完全公平的比较,也没有考虑其他的评估指标,例如模型的大小、速度、效率等,这些都是通用AI模型需要考虑的因素。

未来的改进方向主要有以下几个方面。

我们可以尝试使用更先进的强化学习框架,例如元强化学习(meta-RL)或自适应强化学习(adaptive-RL),来让智能体能够在不同的任务之间进行快速的适应和迁移,也可以尝试使用多智能体强化学习(multi-agent RL)或协同强化学习(collaborative RL),来让智能体能够与其他智能体进行交互和协作,从而提高通用性和灵活性。可以扩展数据集,包括更多的领域和模态的任务,例如音频、视频、社交媒体、对话、推理等,来让智能体能够处理更多的数据类型和模态,也可以提高数据集的质量,例如使用更好的专家代理或更多的数据来源,来让智能体能够学习更高水平的行为和知识。

我们可以优化实验结果,提高模型在一些任务上的性能和泛化能力,例如Meta-World和MuJoCo,这些任务需要更高的动作精度和环境理解,也可以优化模型的大小、速度、效率等,来让模型更加适合实际的应用场景。可以改进评估方法,使用更公平和全面的评估指标,例如使用相同的归一化参数,或者使用其他的评估指标,例如模型的大小、速度、效率等,来让模型的性能和优劣更加清晰和客观。

JAT模型是通用强化学习模型的一个重要和有价值的步骤,也为未来的研究和应用提供了一些启示和参考。我们期待着JAT模型能够在更多的领域和模态的任务上展现出其万事通,多才多艺,多用途的特点,也期待着JAT模型能够不断地进化和完善,成为一个真正的通用AI模型。

参考资料:https://arxiv.org/pdf/2402.09844.pdf

噬元兽(FlerkenS)是一个去中心化的个人AI数字价值容器,同时也是数字经济的新型资产捕捉器和转化器,用数据飞轮为用户提供无边界的数字化、智能化和资产化服务。

噬元兽(FlerkenS)构建AI市场、AI发布器和一个在通用人工智能(AGI)上建设可扩展的系统,AI-DSL让不同类型和领域的AI应用和服务可以相互协作和交互,通过RAG向量数据库(Personal Vector Database)+ Langchain技术方案(Langchain Technology Solution)+大模型的技术实现路径,让用户获得个性化的AI服务,在分布式的网络环境里与AI技术下的服务商实现点到点的连接,建设一个智能体和经济体结合的数智化整体。

波动世界(PoppleWorld)是噬元兽平台的一款AI应用,采用AI技术帮助用户进行情绪管理的工具和传递情绪价值的社交产品,采用Web3分布式技术建设一套采集用户情绪数据并通过TOKEN激励聚合形成情感垂直领域的RAG向量数据库,并以此训练一个专门解决用户情绪管理的大模型,结合Agents技术形成情感类AI智慧体。在产品里植入协助用户之间深度交互提供情绪价值的社交元素,根据用户的更深层化的需求处理准确洞察匹配需求,帮助用户做有信心的购买决定并提供基于意识源头的商品和服务,建立一个指导我们的情绪和反应的价值体系。这是一款针对普通人的基于人类认知和行为模式的情感管理Dapp应用程序。

0 阅读:0

独角也有噬元兽

简介:感谢大家的关注