当前位置: 首页 > news >正文

RoboVQA:机器人多模态长范围推理

23 年 11 月来自 Google Deepmind 的论文“RoboVQA: Multimodal Long-Horizon Reasoning for Robotics”。

本文提出一种可扩展、自下而上且本质多样化的数据收集方案,该方案可用于长期和中期的高级推理,与传统的狭窄自上而下的逐步收集相比,其吞吐量提高 2.2 倍。通过在 3 栋办公楼内执行任何用户请求并使用多种具身(机器人、人类、带抓取工具的人类)来收集真实数据。通过这些数据,表明在所有具身上训练的模型比仅在机器人数据上训练的模型表现更好,即使仅对机器人episodes进行评估也是如此。
其探索收集成本的经济性,发现对于固定的预算,利用更便宜的人工收集和机器人收集是有益的。本文发布一个大型且高度多样化(29,520 条唯一指令)的数据集,称为 RoboVQA,包含 829,502 个(视频,文本)对,用于以机器人为中心的视觉问答。其还展示如何通过评估具有干预机制的真实机器人实验来实现任务的完成,使其即使不完善也可以在人工监督下部署,同时还提供单一的性能指标。

本文展示一个基于数据集训练的单一视频条件模型 RoboVQA-VideoCoCa,该模型能够在广泛的现实环境中执行各种落地的高级推理任务,认知干预率比零样本视觉-语言模型 (VLM) 基线低 46%,并且能够引导真实机器人完成长远任务。与零样本模型的性能差距表明,还需要收集大量落地的数据才能用于现实世界的部署,这强调对可扩展数据收集方法的迫切需求。视频 VLM 在所有 VQA 任务中的平均错误率降低 19%,明显优于单图像 VLM。由于视频条件和数据集的多样性,该模型可以用作需要识别动作而不是状态情况下的一般视频价值函数(例如成功和可affordance),从而扩展机器人的能力和环境理解。

数据

收集和数据集:如图所示从用户请求到 VQA 任务生成的收集过程。从 3 栋办公楼和 3 个具身中的所有长期任务中收集 episodes,从而产生 238 小时的视频(10 天)、5,246 个长期 episodes 和 92,948 个中期 episodes 。平均长期 episodes 持续 102 秒,中期 episodes 平均持续 14 秒。在实验中,对自由格式文本答案的评估是由人类执行的,因此故意将验证和测试集保持在较小的规模,每个大约有 1,000 个 VQA 条目(每个来自 50 个 episodes)。虽然训练和验证/测试之间的场景可能会重叠,但 episodes 没有重叠。

请添加图片描述

任务多样性:为了确保数据集和基准不会过拟合特定环境、领域或任务,收集广泛任务的示例,而传统的收集方式 [5] 中,研究人员和工程师会以自上而下的方式提前确定一个固定的小任务列表。在此选择自下而上的方法,其中大量任务由用户和遥操作员众包。这有利于广度和更好地与来自真实用户的请求分布保持一致。这导致任务多样性高(26,798 个独特的中期指令,2,722 个独特的长期指令)。

吞吐量和成本:如图所示大部分吞吐量增益来自以连续方式收集的中期 episodes,而无需重置场景或机器人。注:事后标记过程可以通过众包并行化,如果并行执行,则不会影响吞吐量,但它仍然是收集预算中的一项成本。然而,VQA 任务是免费生成的,它利用已知的过去和未来任务序列,并根据不同的已知语义点(例如,在执行中期任务之前或之后)及时定位问题。

思维链:将高级目标分解为定义的任务,使机器人能够在执行长期规划时体现其思维过程。此外,这些任务以自然语言问题和答案的形式提供,可以看作是一系列视觉问答 (VQA) 步骤。这种表述类似于语言模型提示的思维链 [6]。同时进行的工作有[7],它表明模仿一步步的人类思维可以提高规划准确性。

模型

RoboVQA-VideoCoCa

训练一个名为 RoboVQA-VideoCoCa 的新模型,该模型源自 VideoCoCa 模型 [8],这是一个扩展 CoCa [9] 的视频-语言模型。它使用一种编码器-解码器架构,结合视频和文本模态之间的对比预训练(如 CLIP [10])和生成预训练(如 SimVLM [11])。除非另有说明,用一个 383M 参数的 VideoCoCa 基础模型,其初始检查点在图像字幕任务上进行训练,并在 RoboVQA 视频文本数据集上视觉问题方面的重要性,并发现视频条件的实质性好处。

基线

为了与微调模型进行比较,考虑以下最先进的基线,它们在视觉问答和机器人规划方面具有类似的功能。

PaLM-E [3] 是一个基于预训练的 ViT [12] 和 PaLM [2] LLM 模型构建的视觉语言模型,它将图像投影到预训练的 LLM 的标记嵌入空间中。
规划方法。尝试四种基线规划方法:其中两种使用 RoboVQA-VideoCoCa 和 PaLM-E(零样本)作为端到端规划模型。作为另外两个基线,采用 SayCan [5] 和 Grounded Decoding [13] 的方法,它们使用纯文本 LLM(PaLM [2])进行短语级或 token 级解码,由视觉 affordance 函数引导(使用 RoboVQA-VideoCoCa 作为 affordance 的视频价值函数)。

基准

VQA 基准

我们首先评估模型在各个任务上的表现,其中每个任务由一个视频片段和一个问题组成。使用精确匹配将推理结果与存储在中央数据库中先前人工评估结果进行比较,以确定视频问题对的正确/不正确。然后收集未找到匹配的推理结果供人工评估者评估。在评估过程中,向人工评估者展示与模型呈现的精确视频片段和问题。要求评估者将模型生成的答案标记为正确或不正确,在这种情况下,评估者可以提出正确答案。所有答案都添加到数据库中,并相应地标记每个答案的正确性。

带干预的规划基准

干预:如图所示,提出 3 种不同的长期规划评估。每个评估都通过干预率来衡量,将其进一步分解为高级文本域的认知和低级运动命令域的物理。然而,所有进展都可以用平均认知和物理速率的单一干预率来衡量。当物理动作是遥操作(100% 物理干预)时,这种区别很有用,可以将高级评估与低级评估分离开来。由于 RoboVQA 数据集非常广泛且多样化,需要一个可以测试整个范围的评估程序。然而,当前的低级策略往往只在非常狭窄的领域中执行,因此这种解耦能够在评估 #1 和 #2 中测试所有任务。

请添加图片描述

离线视频结果:在评估 #1 中,在来自 RoboVQA 数据集的 100 个长期 episodes(机器人和人类)上运行模型,总共有 854 个规划步。模型被赋予长期指令,需要输出中期规划,这些计划由人类评分。注:SayCan 和 Grounded Decoding 基线的推理时间很慢,这使得它们不适合在实时环境中运行(因此未在其他评估中显示)。同样,PaLM-E 562B 模型的推理时间对于实时来说太慢(30 秒),因此在这里使用较小的版本。注:尽管模型小了 30 倍,但它的性能比最先进的模型高出 46%。

相关文章:

RoboVQA:机器人多模态长范围推理

23 年 11 月来自 Google Deepmind 的论文“RoboVQA: Multimodal Long-Horizon Reasoning for Robotics”。 本文提出一种可扩展、自下而上且本质多样化的数据收集方案,该方案可用于长期和中期的高级推理,与传统的狭窄自上而下的逐步收集相比&#xff0c…...

TCP/IP原理详细解析

前言 TCP/IP是一种面向连接,可靠的传输,传输数据大小无限制的。通常情况下,系统与系统之间的http连接需要三次握手和四次挥手,这个执行过程会产生等待时间。这方面在日常开发时需要注意一下。 TCP/IP 是互联网的核心协议族&…...

Microsof Visual Studio Code 安装教程(中文设置)

VS Code 是一个免费的代码编辑器,可在 macOS、Linux 和 Windows作系统上运行。启动和运行 VS Code 既快速又简单。VS Code(全称 Visual Studio Code)是一款由Microsoft 推出的免费、开源、跨平台的代码编辑器,拥有强大的功能和灵活…...

python爬虫:Android自动化工具Auto.js的详细使用

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 1. Auto.js 简介2. 安装与配置2.1 安装 Auto.js2.2 安装 Python 环境2.3 安装 ADB 工具3. Python 与 Auto.js 结合3.1 通过 ADB 执行 Auto.js 脚本3.2 通过 Python 控制 Auto.js3.3 通过 Python 与 Auto.js 交互4. 常用…...

Unity DOTS从入门到精通之 自定义Authoring类

文章目录 前言安装 DOTS 包什么是Authoring1. 实体组件2. Authoring类 前言 DOTS(面向数据的技术堆栈)是一套由 Unity 提供支持的技术,用于提供高性能游戏开发解决方案,特别适合需要处理大量数据的游戏,例如大型开放世…...

linux 软件安装(上)

一、基础环境准备 1.1、安装VM 1.2、在VM上导入linux iso镜像,装好linux系统 华为centos镜像下载地址 https://mirrors.huaweicloud.com/centos/ https://mirrors.huaweicloud.com/centos/7.9.2009/isos/x86_64/ 网易centos镜像下载地址 htt…...

php虚拟站点提示No input file specified时的问题及权限处理方法

访问站点,提示如下 No input file specified. 可能是文件权限有问题,也可能是“.user.ini”文件路径没有配置对,最简单的办法就是直接将它删除掉,还有就是将它设置正确 #配置成自己服务器上正确的路径 open_basedir/mnt/qiy/te…...

【江协科技STM32】ADC数模转换器-学习笔记

ADC简介 ADC(Analog-Digital Converter)模拟-数字转换器ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁,ADC是一种将连续的模拟信号转换为离散的数字信号的设备或模块12位逐次逼近型…...

QT系列教程(20) Qt 项目视图便捷类

视频连接 https://www.bilibili.com/video/BV1XY41127t3/?vd_source8be9e83424c2ed2c9b2a3ed1d01385e9 Qt项目视图便捷类 Qt项目视图提供了一些便捷类,包括QListWidget, QTableWidget, QTreeWidget等。我们分别介绍这几个便捷类。 我们先创建一个Qt …...

git worktree的使用

git worktree 是 Git 提供的一个强大功能,允许你在同一个仓库中同时创建多个工作目录,每个目录对应一个分支,从而实现并行开发。以下是 git worktree 的常用命令和使用方法: 1. 创建新的工作目录(Worktree&#xff09…...

Spring Boot+RabbitMQ+Canal 解决数据一致性

目录大纲 一、环境配置1.1 docker-compose.yml 配置1.2 docker-compose 常用命令1.3 镜像服务启动状态 二、MySQL binlog 配置2.1 docker-compose command 配置 binlog2.2 创建canal用户,以及查看是否开启binlog 三、canal 相关配置文件3.1 canal.properties 完整文…...

Java高频面试之集合-08

hello啊,各位观众姥爷们!!!本baby今天来报道了!哈哈哈哈哈嗝🐶 面试官:详细说说CopyOnWriteArrayList CopyOnWriteArrayList 详解 CopyOnWriteArrayList 是 Java 并发包(java.util…...

C#实现高性能异步文件下载器(支持进度显示/断点续传)

一、应用场景分析 异步文件下载器用处很大,当我们需要实现以下功能时可以用的上: 大文件下载(如4K视频/安装包) 避免UI线程阻塞,保证界面流畅响应多任务并行下载 支持同时下载多个文件,提升带宽利用率后台…...

【数据分析】转录组基因表达的KEGG通路富集分析教程

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍差异分析(limma)KEGG富集分析(enrichKEGG)可视化加载R包数据下载导入数据基因差异分析火山图KEGG通路富集分析可视化通路结果另一个案例总结系统信息参考介绍 KEGG富集分析,可…...

【由技及道】API契约的量子纠缠术:响应封装的十一维通信协议(全局的返回结果封装)【人工智障AI2077的开发日志012】

摘要:在API通信的量子混沌中,30种返回格式如同平行宇宙的物理定律相互碰撞。本文构建的十一维通信协议,通过时空锚点(ApiResult)、量子过滤器(ResponseWrapper)和湮灭防护罩(Jackson…...

STM32 ——系统架构

3个被动单元 SRAM 存储程序运行时用到的变量 Flash(内部闪存存储器) 存储下载的程序 程序执行时用到的常量 桥接1和桥接2 AHB到APB的桥(AHBtoAPBx) 桥1 通过APB2总线连接到APB2上的外设。 高速外设,最高72MHz。 桥2 通过…...

算法 之 树形dp 树的中心、重心

文章目录 重心实践题目小红的陡峭值 在树的算法中,求解树的中心和重心是一类十分重要的算法 求解树的重心 树的重心的定义:重心是树中的一个节点,如果将这个点删除后,剩余各个连通块中点数的最大值最小,那么这个节点…...

如何利用 Excel 表格实现精准文件批量重命名教程

在处理大量文件时,有时需要根据特定规则对文件名进行调整。如果您的文件名和新名称之间存在一对多的关系,并且这种关系可以通过 Excel 表格来管理,那么使用“简鹿文件批量重命名”软件中的“匹配对应名称命名”功能将是一个高效的选择。接下来…...

ACE协议学习1

在多核系统或复杂SoC(System on Chip)中,不同处理器核心或IP(Intellectual Property)模块之间需要保持数据的一致性。常用的是ACE协议or CHI。 先对ACE协议进行学习 ACE协议(Advanced Microcontroller Bu…...

【实战ES】实战 Elasticsearch:快速上手与深度实践-5.1.1热点分片识别与均衡策略

👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 5.1.1 Filebeat Logstash ES Kibana 全链路配置实1. 架构设计与组件选型1.1 技术栈对比分析1.2 硬件配置推荐 2. Filebeat 高级配置2.1 多输入源配置2.2 性能优化参数 3.…...

Kubernetes 的正式安装

1.基础的网络结构说明 软件路由器 ikuai 当然同一个仅主机模式 相当于在 同一个我们所谓的广播域内 所以相当于它们的几张网卡 是被连接起来的 为了防止出现问题 我们可以把第二块网卡临时关闭一下 2.准备路由器 ikuai 爱快 iKuai-商业场景网络解决方案提供商 (ikuai8.com)…...

初阶数据结构(C语言实现)——4.2队列

目录 2.队列2.1队列的概念及结构2.2队列的实现2.2.1 初始化队列2.2.2 销毁队列2.2.3 队尾入队列2.2.4 队头出队列2.2.5获取队列头部元素2.2.6 获取队列队尾元素2.2.7获取队列中有效元素个数2.2.8 检测队列是否为空,如果为空返回非零结果,如果非空返回0 3…...

Mysql主从复制和Mysql高可用以及负载均衡配置

需要先配置MySQL主从复制,然后再在主MySQL服务器上配置MySQL Router。以下是详细说明和步骤: 1. 为什么需要先配置MySQL主从复制? MySQL主从复制是MySQL高可用性和负载均衡的基础,通过将数据从主服务器实时同步到从服务器&#…...

c#中使用时间戳转换器

在C#中,时间戳转换器通常用于将时间戳(通常是一个表示自某一特定时间点(如1970年1月1日UTC)以来的毫秒数的长整型值)转换为DateTime对象,或者将DateTime对象转换回时间戳。以下是几种实现这一功能的方法: 1. 使用DateTime的构造函数 将时间戳转换为DateTime long tim…...

杂项知识笔记搜集

1.pygame pygame可以画出来图形界面,pygame Python仓库 PyGame游戏编程_游戏程序设计csdn-CSDN博客 2.V4L2库 V4L2是Linux上的Camera采集器的框架 Video for Linux ,是从Linux2.1版本开始支持的。HDMI视频采集卡采集到的视频通过USB3.0输出&#xff0…...

rust语言match模式匹配涉及转移所有权Error Case

struct S{data:String, }//注意:因为String默认是移动语义,从而决定结构体S也是移动语义,可采用(1)或(2)两种方法解决编译错误;关键思路:放弃获取结构体S的字段data的所有权,改为借用。fn process(s_ref:&a…...

golang从入门到做牛马:第十一篇-Go语言变量作用域:变量的“生活圈”

在Go语言中,变量的作用域决定了它在程序中的可见性和生命周期。理解变量的作用域对于编写清晰、高效的代码至关重要。Go语言中的变量可以在三个主要地方声明:函数内、函数外和函数定义中。接下来,让我们深入探讨局部变量、全局变量和形式参数的作用域。 局部变量:函数内的“…...

【Linux】37.网络版本计算器

文章目录 1. Log.hpp-日志记录器2. Daemon.hpp-守护进程工具3. Protocol.hpp-通信协议解析器4. ServerCal.hpp-计算器服务处理器5. Socket.hpp-Socket通信封装类6. TcpServer.hpp-TCP服务器框架7. ClientCal.cc-计算器客户端8. ServerCal.cc-计算器服务器9. 代码时序1. 服务器启…...

linux安装Mariadb10.5并修改端口

首先配置yum源 进入下方的文件进行配置 vim /etc/yum.repos.d/MariaDB.repo填写下方内容 [mariadb]name MariaDBbaseurl https:///mirrors.aliyun.com/mariadb/yum/10.5/centos8-amd64/gpgkeyhttps:///mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDBmodule_hotfixes…...

从Windows到ARM Linux:Qt程序的交叉编译与移植指南

引言 在嵌入式开发中,我们经常需要将桌面端开发的Qt程序部署到ARM架构的Linux设备。本文详细介绍如何将Windows平台开发的Qt程序,通过Linux虚拟机交叉编译为ARM架构可执行文件的完整过程 环境准备 需要特别注意的是,对于CentOS 7 默认支持…...