专栏名称: 计算机视觉深度学习和自动驾驶
讨论计算机视觉、深度学习和自动驾驶的技术发展和挑战
目录
相关文章推荐
科幻世界SFW  ·  新刊速递 | ... ·  2 天前  
DataEye短剧观察  ·  DataEye短剧热力榜:6部短剧播放超3亿 ... ·  昨天  
DataEye短剧观察  ·  DataEye短剧热力榜:6部短剧播放超3亿 ... ·  昨天  
科幻世界SFW  ·  悼念向际纯:中国科幻绘画的开拓者 ·  3 天前  
河北青年报  ·  抖音、快手、微信同日宣布:下架! ·  3 天前  
51好读  ›  专栏  ›  计算机视觉深度学习和自动驾驶

Inner Monologue:通过语言模型规划进行具身推理

计算机视觉深度学习和自动驾驶  · 公众号  ·  · 2024-09-29 01:54

正文

22年7月来自谷歌的论文“Inner Monologue: Embodied Reasoning through Planning with Language Models”。

大语言模型 (LLM) 的推理能力应用于自然语言处理以外的领域,例如机器人的规划和交互。这些具身问题需要智体了解世界的许多语义方面:可用的技能库、这些技能如何影响世界以及世界的变化如何映射回语言。在具身环境中进行规划的 LLM,不仅需要考虑要使用哪些技能,还需要考虑如何以及何时使用它们 - 答案会随智体自己的选择而随时间而变化。这项工作调查在这种具身上下文中使用的 LLM 在多大程度上可以通过自然语言提供的反馈源进行推理,无需任何额外的训练。利用环境反馈,LLM 能够形成内心独白(Inner Monologue),使它们能够在机器人控制场景中进行更丰富的处理和规划。本文调查各种反馈源,例如成功检测、场景描述和人机交互。闭环语言反馈显著提高三个领域的高级指令完成率,包括模拟和真实的桌面重排列任务以及现实世界中厨房环境中的长距离移动操作任务。


智能且灵活的具身交互要求机器人能够以适当的方式部署大量基本行为,根据长期任务的需要对这些行为进行排序,并且还能够识别在特定行为或规划失败时何时切换到其他方法。高级规划、感知反馈和低级控制只是需要无缝组合在一起以执行具身智体(例如机器人)在世界中智能行动所需推理的几个子任务。虽然传统上这些挑战是从规划(例如 TAMP [1])或分层学习(例如 HRL [2])的角度来解决的,但对复杂任务进行有效的高级推理也需要语义知识和对世界的理解。

近期机器学习研究中的一个引人注目观察结果是,大语言模型 (LLM) 不仅可以生成流畅的文本描述,而且似乎拥有丰富的内化世界知识 [3、4、5、6、7]。在经过适当的调节(例如提示)后,它们甚至可以进行一定程度的推理,并回答似乎需要推理和论断的问题 [8、9、10、11、12、13]。这提出了一个有趣的可能性:除了解释自然语言指令的能力之外,语言模型是否还可以作为结合多种反馈源的推理模型,并成为机器人操作等具体任务交互式问题的解决方案?

先前的研究表明,语言帮助人类内化知识,并通过语言思维进行复杂的关系推理 [14、15、16、17、18]。想象一下当一个人试图解决某项任务时发生的“内心独白(inner monologue)”:“我必须打开门;让我试着拿起钥匙插进锁里……不,等等,它不合适,我再试试另一个……那个管用,现在我可以转动钥匙了。” 在这种情况下,思考过程包括选择解决高级任务的最佳直接行动(“拿起钥匙”),观察尝试行动的结果(“它不合适”),以及针对这些观察结果采取的纠正措施(“我再试试另一个”)。受人类思维过程的启发,这种内心独白是纳入LLM反馈的自然框架。

如图所示:Inner Monologue 利用一系列感知模型(例如场景描述和成功检测器)以及预训练的语言调节机器人技能,为使用大语言模型的机器人规划提供可靠的闭环反馈。实验表明,系统可以推理和重新规划,在模拟和真实环境中完成 (a) 移动操作和 (b, c) 桌面操作的复杂长范围任务。


场景包括一个试图执行高级自然语言指令 i 的具身机器人智体。 这个机器人智体只能执行来自先前训练的策略库 πk 和简短语言描述 lk 的短期技能,这些策略库可以通过强化学习或行为克隆进行训练。 “规划器”是一个预训练过的 LLM [20, 21],它试图找到完成指令的技能序列。 为了观察环境,规划器可以访问来自环境的文本反馈 o,这些反馈可以附加到指令中或由规划器请求。 观察 o 可能是成功检测、目标检测、场景描述、视觉问题回答,甚至是人类反馈。 以下讨论LLM 规划器在多大程度上能够推理并利用这些反馈来“闭环”环境并改进规划。

当机器人与环境交互时,通过不断将来自各种反馈源的信息注入 LLM 规划语言提示中来形成“内心独白”。虽然 LLM 已经展示了出色的规划能力,可以完成具身控制任务 [20],但之前的研究发现,将 LLM 预测与外部组件(如affordance函数 [21])相结合,对于制定机器人可执行的有用规划至关重要。然而,到目前为止,在这种情况下使用的 LLM 仍然是单向的——提供技能列表,而不进行更正或利用机会进行相应的重规划。相比之下,“内心独白”研究以闭环方式直接向 LLM 提供落地环境反馈的设置。这促进了在复杂的长范围环境中改进 LLM 推理,甚至在应用基于外部 affordance 的任何落地方法之前也是如此。

假设向规划器提供文本反馈,但不假设将 LLM 规划与低级机器人控制融合的单一特定方法,或一个将环境反馈提取到语言中的特定方法。目标不是关注特定的算法实现,而是提供一个案例研究,说明将不同类型的反馈纳入基于 LLM 闭环规划的价值。因此,“内心独白”在单独的系统中使用语言反馈,这些系统包含不同的 LLM、不同的将规划与控制融合的方法、不同的环境和任务以及不同的获取控制策略方法。在“内心独白”的具体实现中,用预训练的 LLM 进行规划,这些 LLM 未经微调,而是仅通过少样本提示进行评估。

理论上,任何类型的环境反馈都可以为 LLM 规划器提供信息,只要它可以通过语言表达即可。重点关注如图所示的特定形式反馈,这些反馈可以分解为特定于任务的反馈,例如成功检测,以及特定于场景的反馈(“被动”或“主动”),后者描述场景。图中给出各种类型的文本反馈:成功检测提供特定于任务的任务完成信息,被动场景描述在每个规划步骤中提供结构化的语义场景信息,而主动场景描述仅在 LLM 规划器查询时提供非结构化的语义信息。


成功检测 。语义成功检测是一个二元分类问题,即低级技能 πk 是否成功。工程化的成功检测器可以在模拟中对真实状态进行操作,而学习的成功检测器可以在现实世界中成功和失败的真实示例上进行训练 [78、79、80、81、82]。用语言形式的成功检测器输出,称为成功反馈。

被动场景描述 。虽然有很多方法可以描述场景中包含的语义,术语“被动场景描述”宽泛地描述一致性地提供并遵循某种结构的场景反馈源。被动场景描述涵盖所有环境落地反馈源,这些反馈源会自动提供并注入到 LLM 提示中,无需 LLM 规划器进行任何主动提示或查询。这种反馈的一种常见类型是目标识别 [83、84、85、86]——此类目标识别器的文本输出称为 目标反馈 。在模拟桌面重新排列环境中会使用任务进度场景描述,称为 场景反馈

主动场景描述 。作为被动场景描述的主动模式对应,主动场景描述包含直接响应 LLM 规划器中主动查询而提供的反馈源。在这种情况下,LLM 可以直接询问有关场景的问题,而这个问题可以由人来回答,也可以由另一个预训练模型来回答,比如视觉问答 (VQA) 模型 [87, 88, 89, 90]。虽然以前的反馈类型是严格结构化且范围狭窄的,但在主动场景描述设置中,LLM 可以接收开放式问题的非结构化答案,从而允许它主动收集与场景、任务甚至用户偏好相关的信息(在人工提供响应的情况下)。发送给 LLM 规划器的组合输出包括 LLM 生成的问题和响应。由于目标是研究 LLM 规划器是否以及如何整合此类反馈,并希望研究结构化的 VQA 式人工反馈以及非结构化的人类偏好反馈,故这里只考虑人工提供的响应,称为 人工反馈


在基于 Ravens 的 [75] 模拟环境中试验基于视觉的积木块操作任务,根据多个基线评估方法,并在不同数量的文本反馈中做消融实验。给定桌子上的一些积木和碗,一个装有夹持器的机械臂负责将这些物体重新排列成某种所需的配置,由自然语言指定(例如,“将积木放在颜色匹配的碗中”)。在四个见过任务和四个未见过任务上评估每种方法,其中见过的任务可用于训练(在监督基线的情况下)或用作 LLM 规划器的少量提示。

Inner Monologue 的这个实例使用了 (i) InstructGPT [9, 91] 作为多步规划 [20, 21] 的 LLM,(ii) 脚本模块以目标识别 (Object)、成功检测 (Success) 和任务进度场景描述 (Scene) 的形式提供语言反馈,以及 (iii) 预训练的语言条件拾取和放置原语(类似于 CLIPort [76] 和 Transporter Nets [75])。目标反馈会告知 LLM 规划器场景中存在的目标,仅使用目标反馈的变型类似于在此环境中 [19] 中演示的示例。成功反馈会告知规划器最近操作的成功/失败。但是,在存在许多目标和测试时间干扰的情况下,复杂的组合状态空间要求规划器额外推理整体任务进度(例如,如果目标是堆叠多个积木,未完成的积木塔可能会被机器人撞倒)。因此,任务进度场景描述 (Scene) 解释了 LLM 为完成智体迄今为止实现的高级指令而推断的语义子目标。对于使用“目标 + 场景”反馈的变型,由于额外的推理复杂性,添加思维链(CoT) [10、12、13] 可以提高推断目标和实现目标之间的一致性。

将其与直接在长期任务指令上训练的多任务 CLIPort 策略进行了比较(即不使用 LLM 进行规划)。由于 CLIPort 是单步策略,在策略推出期间不会自发终止,因此分析具有 oracle 终止(即重复直到 oracle 指示任务完成)和固定步骤终止(即重复 k 步)的 CLIPort 评估。虽然当 LLM 停止生成新步时 Inner Monologue 会终止,但出于实际考虑,同样将最大步骤数设置为 k。k = 15。为了模拟现实世界的干扰并评估系统对干扰的鲁棒性,在测试时将高斯噪声添加到系统的多个级别:N (0,3) 用于像素观察,N (0,2.5) 用于策略原语(即,拾取-放置的像素热图),N (0,0.02m) 用于放置位置。如图所示各种例子提示:


下表是各种实验的成功率结果:


在现实世界的机器人平台上评估 “Inner Monologue”,该平台的设计类似于模拟实验,使用运动基元进行桌面拾取和放置。 该装置由一个 UR5e 机器人手臂组成,该手臂配备一个腕戴式英特尔 RealSense RGB-D 摄像头,可以俯瞰各种目标的工作空间——从玩具积木到食品再到调味品。 采用 Inner Monologue 的实例,使用 (i) InstructGPT [9, 91] 作为多步规划的 LLM,(ii) 使用 MDETR [92] 进行预训练的开放词汇目标识别,生成当前可见的目标列表和不再可见的先前可见目标列表 (目标),(iii) 对来自 MDETR 的目标边框预测进行启发式处理以进行成功检测 (成功),以及 (iv) 零样本“拾取-和-放置”策略,该策略使用 LLM 从语言命令 (例如,由规划器给出) 解析目标对象,然后在目标对象边框的中心执行基于脚本吸力的“拾取-和-放置”基元。 除了 LLM 和 MDETR 的预训练(开箱即用)之外,系统不需要任何模型微调即可对新目标执行拾取和放置任务。

研究两个任务:(i)一个简单的 3 积木块堆叠任务,其中 2 个积木块已经预先堆叠,以及(ii)一个更复杂的长范围排序任务,将食物放在一个盘子里,将调味品放在另一个盘子里(其中食物和调味品的分类由 LLM 规划器自主完成)。由于系统的默认“拾取-和-放置”性能通常很高,人为地将高斯噪声注入策略操作中(即,添加标准偏差 σ=4mm,以 2σ 为限)通过重规划和接地闭环反馈,对故障恢复进行压力测试。结果列于下表成功率的平均中。由于现实世界感知和杂乱的额外挑战,该系统还容易受到嘈杂物体和成功检测的影响。







请到「今天看啥」查看全文