在开发机器人学习方法时,如果能整合大型多样化数据集,再组合使用强大的富有表现力的模型(如 Transformer),那么就有望开发出具备泛化能力且广泛适用的策略,从而让机器人能学会很好地处理各种不同的任务。比如说,这些策略可让机器人遵从自然语言指令,执行多阶段行为,适应各种不同环境和目标,甚至适用于不同的机器人形态。
但是,近期在机器人学习领域出现的强大模型都是使用监督学习方法训练得到的。因此,所得策略的性能表现受限于人类演示者提供高质量演示数据的程度。这种限制的原因有二。
从原理上看,强化学习能同时提供这两种能力。
近期出现了一些具有潜力的进展,表明大规模机器人强化学习在多种应用场景中能够取得成功,比如机器人的抓取和堆叠能力、学习具有人类指定奖励的不同任务、学习多任务策略、学习基于目标的策略以及机器人导航。然而,研究表明,如果使用强化学习来训练Transformer等功能强大的模型,则更难以有效地进行大规模实例化
Google DeepMind 最近提出了 Q-Transformer,旨在将基于多样化真实世界数据集的大规模机器人学习与基于强大 Transformer 的现代策略架构结合起来
尽管从原理上来看,直接使用Transformer来替代现有的架构(如ResNets或更小的卷积神经网络)在概念上很简单,但设计一种能够有效利用这种架构的方案却非常困难。只有在能够使用大规模多样化的数据集时,大型模型才能发挥其效力-小规模、范围狭窄的模型并不需要这种能力,也无法从中获益
尽管之前有研究通过仿真数据来创建这样的数据集,但最有代表性的数据还是来自真实世界。
因此,DeepMind 表示,该研究的重点是通过离线强化学习利用 Transformer 并整合之前收集的大型数据集
离线强化学习方法是利用先前已有的数据进行训练,其目标是根据给定的数据集推导出最有效的可能策略。当然,也可以利用额外自动收集的数据来增强这个数据集,但训练过程与数据收集过程是分开的,这为大规模机器人应用提供了一个额外的工作流程
在使用 Transformer 模型来实现强化学习方面,另一大问题是设计一个可以有效训练这种模型的强化学习系统。有效的离线强化学习方法通常是通过时间差更新来进行 Q 函数估计。由于 Transformer 建模的是离散的 token 序列,所以可以将 Q 函数估计问题转换成一个离散 token 序列建模问题,并为序列中的每个 token 设计一个合适的损失函数。
DeepMind 采用的方法是按维度离散化方案,这是为了避免动作基数呈指数爆炸。具体而言,动作空间的每个维度都被视为强化学习中的一个独立时间步骤。离散化中的不同 bin 对应于不同的动作。这种按维度离散化的方案使得我们可以使用带有一个保守的正则化器的简单离散动作 Q 学习方法来处理分布转变情况
DeepMind 提出了一种专门的正则化器,其旨在最小化未被使用动作的值。研究表明,这种方法可以有效地学习范围狭窄的类似演示的数据,并且也可以学习带有探索噪声的范围更广的数据
最后,他们还采用了一种混合更新机制,其将蒙特卡洛和 n 步返回与时间差备份(temporal difference backups)组合到了一起。结果表明这种做法能提升基于 Transformer 的离线强化学习方法在大规模机器人学习问题上的表现。
这项研究的主要贡献是Q-Transformer,它是一种基于Transformer架构的用于机器人离线强化学习的方法。Q-Transformer对Q值进行了按维度的token化,并且已经成功应用于大规模多样化的机器人数据集,包括真实世界数据。图1展示了Q-Transformer的组件
DeepMind 进行了实验评估,包括仿真实验和大规模真实世界实验,旨在严格比较和实际验证。其中,我们采用了大规模的基于文本的多任务策略进行学习,并验证了 Q-Transformer 的有效性
在真实世界实验中,他们使用的数据集包含 3.8 万个成功演示和 2 万个失败的自动收集的场景,这些数据是通过 13 台机器人在 700 多个任务上收集的。Q-Transformer 的表现优于之前提出的用于大规模机器人强化学习的架构,以及之前提出的 Decision Transformer 等基于 Transformer 的模型。
为了使用Transformer进行Q学习,DeepMind采取的方法是对动作空间进行离散化和自回归处理
要学习一个使用TD学习的Q函数,经典方法基于贝尔曼更新规则
研究者对贝尔曼更新进行了修改,使之能为每个动作维度执行,做法是将问题的原始 MDP 转换成每个动作维度都被视为 Q 学习的一个步骤的 MDP。
具体而言,对于给定的动作维度 d_A,新的贝尔曼更新规则可以表述为:
这意味着对于每个中间动作维度,要在给定相同状态的情况下最大化下一个动作维度,而对于最后一个动作维度,使用下一状态的第一个动作维度。这种分解能确保贝尔曼更新中的最大化依然易于处理,同时还能确保原始 MDP 问题仍可得到解决。
为了兼顾离线学习过程中的分布变化情况,DeepMind 还引入了一种简单的正则化技术,其是将未曾见过的动作的值降到最低。
为了加快学习速度,他们还采用了蒙特卡洛返回方法。这种方法不仅使用了对于给定事件片段(episode)的返回即用(return-to-go),还使用了可跳过按维度最大化的 n 步返回(n-step returns)
在实验中,DeepMind对Q-Transformer进行了评估,涵盖了一系列真实世界任务。同时,他们还将每个任务的数据限制在只包含100个人类演示的范围内
在演示中,除了演示之外,他们还添加了自动收集的失败事件片段,以创建一个数据集。这个数据集包含了来自演示的3.8万个正例和2万个自动收集的负例
相比于RT-1、IQL 和Decision Transformer (DT) 等基准方法,Q-Transformer 可以有效地利用自动事件片段来显着提升其使用技能的能力,这些技能包括从抽屉里取放物品、将物体移动到目标附近、开关抽屉。
研究者还在一个高难度的模拟取物任务上对新提出的方法进行了测试—— 在该任务中,仅有约8% 的数据是正例,其余的都是充满噪声的负例。
在这个任务中,Q-学习方法如QT-Opt、IQL、AW-Opt和Q-Transformer通常表现更好,因为它们能够利用动态规划来学习策略,并利用负例进行优化
基于这个取物任务,研究者进行了消融实验,结果发现保守的正则化器和MC 返回都对保持性能很重要。如果切换成 Softmax 正则化器,性能表现显着更差,因为这会将策略过于限制在数据分布中。这说明 DeepMind 这里选择的正则化器能更好地应对这个任务。
他们对于n步返回的消融实验发现,尽管这可能会引入偏差,但这种方法可以在显着更少的梯度步骤内实现同等的高性能,有效地处理许多问题
研究人员还尝试在更大规模的数据集上运行Q-Transformer。他们将正例数量扩大到11.5万,负例数量增至18.5万,从而得到一个包含30万个事件片段的数据集。使用这个大型数据集,Q-Transformer仍然能够学习,并且甚至比RT-1 BC基准表现更好
最后,他们将Q-Transformer训练的Q函数作为可供性模型( affordance model)与语言规划器组合在一起,类似于SayCan
Q-Transformer 可供性估计的效果由于之前的使用QT-Opt 训练的Q 函数;如果再将未被采样的任务重新标注为训练期间当前任务的负例,效果还能更好。由于 Q-Transformer 不需要 QT-Opt 训练使用的模拟到真实(sim-to-real)训练,因此如果缺乏合适的模拟,那么使用 Q-Transformer 会更容易。
为了测试完整的「规划 + 执行」系统,他们实验了使用 Q-Transformer 同时进行可供性估计和实际策略执行,结果表明它优于之前的 QT-Opt 和 RT-1 组合。
从给定图像的任务可供性值示例中可以观察到,Q-Transformer 在下游的「规划+ 执行」框架中能够提供高质量的可供性值
请阅读原文以获取更多详细内容
以上是谷歌DeepMind:将大模型与强化学习相结合,打造机器人感知世界的智能大脑的详细内容。更多信息请关注PHP中文网其他相关文章!