斯坦福提出首个开源视觉语言动作大模型OpenVLA

OpenVLA:开源视觉语言动作大模型

  • 摘要
  • 模型结构
  • 训练数据
  • 训练设施
  • 实验
  • 总结和局限性

项目主页
代码链接
论文链接
模型链接

摘要

OpenVLA 摘要
现有的VLA(Vision-Language-Action )模型具有这些局限性:
1)大多封闭且开放;
2)未能探索高效地为新任务微调VLA的方法,而这是VLAs被采用的关键组成部分。
为此本工作开发了OpenVLA,一个基于97万条Open X-Embodiment机器人任务的7B参数开源VLA模型,它为通用机器人操作策略设定了新的技术前沿,它支持直接控制多台机器人,并且可以通过参数高效微调快速适应新的机器人配置。OpenVLA建立在Llama2语言模型和ViT视觉编码器上,融合了来自 DINOv2和SigLIP的预训练权重。由于添加了更多数据和新模型组件,OpenVLA在通用物体操作任务上的表现十分出色,在29个任务和多种机器人形态上,其绝对任务成功率比封闭模型RT-2-X(55B)高出16.5%,同时参数数量减少了7倍。

模型结构

模型结构
给定一张图像观测和语言指令,OpenVLA可以预测7维的机器人控制动作。该结构包含3个关键的组件:(1)一个联结了Dino V2和SigLIP特征的视觉编码器,(2)一个将视觉特征映射到语言embedding空间的投射层,(3)一个7B参数量的LLM backbone:Llama2。整个模型基于Prismatic-7B VLM,仅修改了输出部分,针对机械臂action使用归一化分为了256bin,动作token来自语言token后身下的token和使用频率很低的token(类似RT2)。

训练数据

训练数据构建OpenVLA训练集的目标是捕捉各种机器人、场景和任务的多样性,使其可以直接控制各种机器人,并允许高效地微调以适配新的机器人。我们利用Open X-Embodiment 数据集作为基础来构建我们的训练集,截至撰写本文时,OpenX数据集包含70多个独立的机器人数据集,超过200万个机器人轨迹,为便于使用该数据集进行训练,我们对原始数据集进行了数据清洗,目标是确保:
(1)所有训练数据集中具有一致的输入和输出空间;为解决该问题,我们仅将训练数据集限制为至少包含一个第三人称摄像头和单臂末端执行器控制的操作数据集;
(2)在最终的训练混合数据中具有均衡的机器人配置、任务和场景;为此,我们利用Octo里的方法对所有通过第一轮筛选的数据集的混合数据权重进行不同比例配置。
此外我们还尝试将一些额外的数据集加入到训练集中,这些数据集是在Octo发布后添加到OpenX数据集中的,包括约10%的DROID数据集。在实践中,我们发现DROID上的动作标记准确率在整个训练过程中都保持较低的水平,这表明在未来可能需要更高的混合权重或模型来适应其多样性。为了不影响最终模型的质量,在训练的最后1/3阶段我们将DROID从中移除。

训练设施

OpenVLA模型在64个A100 GPU集群上训练了14天,(总共21,500个A100小时),batch_size设为2048。推理时OpenVLA在bfloat16精度(即未进行量化)下需要15GB的GPU内存,在NVIDIA RTX 4090 GPU上运行时约为6Hz(不包括编译、投机解码或其他推理加速技巧)。我们还可以通过量化进一步减少OpenVLA在推理过程中的内存占用,同时在实际的机器人任务中不会影响性能。同时我们实现了一个远程VLA推理服务器,允许实时远程向机器人传输动作预测,从而无需拥有强大的本地计算设备来控制机器人。我们将此远程推理解决方案作为开源代码的一部分进行发布。

实验

实验目标是测试OpenVLA是否能够作为一种强大的多机器人控制policy,并且能很好地微调适配新的机器人:

  1. 在评估多个机器人和各种类型的泛化能力时,OpenVLA与之前的通用机器人策略相比如何?
  2. OpenVLA可以在新的机器人设配置和任务上进行有效的微调吗?它与当前最先进的数据驱动的高效模仿学习方法相比如何?
  3. 我们可以使用参数高效微调和量化来降低OpenVLA模型的训练和推理计算需求,使其更易于使用吗?性能-计算消耗的权衡是什么?
    实验一:直接在多个实验平台上进行评估
    BridgeData
    Google Robot Evaluation
       RT-1-X和Octo都表现不佳,经常无法操纵正确的物体,尤其是在有干扰物的情况下,有时还会导致机器人胡乱挥动手臂。请注意,我们的评估测试了比先前工作中的评估更大的泛化程度,以挑战互联网数据预训练的VLA模型。因此,没有互联网预训练的模型的性能预期较低。RT-2-X明显优于RT-1-X和Octo,证明了大规模网络数据的预训练VLMs对机器人技术的益处。
       值得注意的是,OpenVLA在谷歌机器人评测中的表现与RT2-X相当,但在BridgeData V2评测中的表现显著优于RT-2-X,尽管其参数量仅为RT-2-X的十分之一(7B vs. 55B参数)。从质量上看,我们发现RT-2-X和OpenVLA都比其他测试模型表现出更稳健的行为,例如在有干扰物的情况下接近正确的物体,正确地使机器人的末端执行器与目标物体的朝向对齐,甚至从错误中恢复,例如不安全地抓取物体(有关更详细的示例,请参见https://openvla.github.io)。RT-2-X在语义泛化任务中表现出更高的性能,如图3所示,这是预期的,因为它使用了更大规模的互联网预训练数据,并与机器人动作数据和互联网预训练数据共同进行微调,以更好地保留预训练知识,而不是仅在机器人数据上进行微调,如OpenVLA。然而,OpenVLA在其他所有任务类别中在BridgeData V2和谷歌机器人评测中的表现与RT-2-X相当或更好。性能差异可归因于多种因素的结合:我们为OpenVLA创建了一个更大的训练数据集,包含97万条轨迹(而RT-2-X为35万条);我们对训练数据集进行了更仔细的清洗,例如从Bridge数据集中过滤掉了所有零动作;OpenVLA还使用了一种融合的视觉编码器,将预训练的语义和空间特征结合在一起。

实验二:在新的机器人上进行微调适配
新机器人适配
   总的来说,我们发现OpenVLA实现了最高的平均性能。值得注意的是,大多数先前的工作只有在狭窄的单指令或多样化的多指令任务中才能获得较强的性能,导致成功率差异很大。OpenVLA是唯一在所有测试任务中的成功率能达到至少50%的方法,这表明它可能是一个强大的模仿学习选型,特别是涉及语言引导的多任务。对于狭窄但高度灵巧的任务,Diffusion Policy仍然显示出更平滑和更精确的轨迹; 扩散策略中的动作分块和时间平滑有望帮助OpenVLA达到相同水平的灵活性,并且可能是未来工作的一个有希望的方向。
实验三: 参数高效的微调
微调的方式有:

  1. full finetuning(全参微调): 优化所有参数;
  2. last layer only(仅最后一层微调):仅微调OpenVLA transformer backbone 最后一层和token embedding矩阵;
  3. frozen vision(冻结视觉):固定视觉编码器,微调其他所有参数;
  4. sandwich微调:微调视觉编码器、token embedding矩阵和最后一层;
  5. LoRA微调:使用low-rank自适应的方法微调所有线性层
    参数微调效果对比
       只有对网络进行最后一层微调或冻结视觉编码器时将导致性能不佳,进一步适应对目标场景的视觉特征是至关重要的。相比之下,Sandwich微调实现了更好的性能,因为它微调视觉编码器,同时它消耗了更少的GPU内存,因为它不会对整个LLM主干进行微调。最后,LoRA微调实现了两者之间的最佳权衡性能和训练记忆消耗,优于Sandwich微调并达到完全微调的性能,同时只微调了1.4%的参数。我们发现LoRA Rank对策略性能的影响可以忽略不计,因此建议使用r = 32的默认Rank。使用LoRA微调,我们可以在单个A100 GPU上在10-15小时内对新任务的进行微调,与完全微调相比,计算减少了8倍。

总结和局限性

总结:
1, OpenVLA是一个先进的、开源的视觉-语言-动作(Visual Language Action)模型;
2, 它现成能够实现跨身体机器人控制,同时可以通过参数高效微调技术轻松适应新的机器人;
3, 满足实时控制;
4, 指标达到业内SOTA。

局限性:
1,目前仅支持单张图像观测。将OpenVLA扩展到支持多图像和本体感知输入以及观测历史是未来工作的重要方向。探索使用在交织的图像和文本数据上预训练的VLM(视觉语言模型)可能有助于实现这种灵活输入的VLA微调。

2,提高OpenVLA的推理效率对于实现ALOHA(每秒50hz的高频控制)等配置的VLA控制至关重要[88]。这也将利于测试更灵巧的双手操作任务的VLA。探索使用动作分块或替代的推理时优化技术可能是一个可行的解决方案。

3,尽管OpenVLA在测试任务上的成功率通常低于90%,但它仍优于之前的通用Policy,有提升空间。

4,由于计算能力的限制,许多VLA设计问题尚未得到充分研究:基模型VLM的大小对VLA性能有何影响?在机器人动作预测数据和大规模互联网的视觉语言数据上进行协同训练是否可以显著提高VLA性能?最适合VLA模型的视觉特征是什么?

个人评价:非常Nice,赶紧在自己的机器人上复现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/771513.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vue3 【提效】使用 CSS 框架 UnoCSS 实用教程

该换种更高效的方式写 CSS 啦&#xff0c;举个例&#xff1a; <div class"flex"> </div>相当于 <div class"flex"> </div> <style> .flex {display: flex; } </style>当然&#xff0c;还有超多强大的功能帮我们提升…

【后端面试题】【中间件】【NoSQL】MongoDB查询过程、ESR规则、覆盖索引的优化

任何中间件的面试说到底都是以高可用、高性能和高并发为主&#xff0c;而高性能和高并发基本是同时存在的。 性能优化一直被看作一个高级面试点&#xff0c;因为只有对原理了解得很透彻的人&#xff0c;在实践中才能找准性能优化的关键点&#xff0c;从而通过各种优化手段解决性…

为什么人员定位系统很有必要性?

人员定位系统在现代社会和企业环境中具有极高的必要性&#xff0c;这主要体现在以下几个方面&#xff1a; 一、安全保障 二、提升效率 三、管理优化 四、增强合规性 综上所述&#xff0c;人员定位系统通过提供实时、准确的位置信息&#xff0c;为企业带来了安全保障、效率提升…

香橙派AIpro实测:YOLOv8便捷检测,算法速度与运行速度结合

香橙派AIpro实测&#xff1a;YOLOv8便捷检测&#xff0c;算法速度与运行速度结合 文章目录 香橙派AIpro实测&#xff1a;YOLOv8便捷检测&#xff0c;算法速度与运行速度结合一、引言二、香橙派AIpro简介三、YOLOv8检测效果3.1 目标检测算法介绍3.1.1 YOLO家族3.1.2 YOLOv8算法理…

500mA、低压差、低噪声、超快、无需旁路电容的CMOS LDO稳压器RT9013

一般描述 RT9013 SOT23-5封装的外观和丝印 RT9013 是一款高性能的 500mA LDO 稳压器&#xff0c;具有极高的 PSRR 和超低压差。非常适合具有苛刻性能和空间要求的便携式射频和无线应用。 RT9013的静态电流低至25μA&#xff0c;进一步延长了电池的使用寿命。RT9013 也适用于低…

Element中的日期时间选择器DateTimePicker和级联选择器Cascader

简述&#xff1a;在Element UI框架中&#xff0c;Cascader&#xff08;级联选择器&#xff09;和DateTimePicker&#xff08;日期时间选择器&#xff09;是两个非常实用且常用的组件&#xff0c;它们分别用于日期选择和多层级选择&#xff0c;提供了丰富的交互体验和便捷的数据…

私域和社群的差别是什么?

社群就是拉很多人建群就可以了&#xff0c;但是私域不是&#xff0c;这里有三点不同 1、私域的用户来源&#xff0c;不仅仅是微信&#xff0c;而是基于一定的联系形成的链接&#xff0c;比如买了商家的货&#xff0c;反复购买觉得好&#xff0c;推荐给亲朋好友的二次开发用户&…

nanodiffusion代码逐行理解之Attention

目录 一、注意力中的QKV二、注意力中的位置嵌入三、注意力中的多头四、注意力和自注意力五、注意力中的encode和decoder 一、注意力中的QKV 简单来说&#xff1a; Q: 要查询的信息 K: 一个索引&#xff0c;要查询的向量 V: 我们查询得到的值 复杂一点的解释&#xff1a; Query…

如何快速选择短剧系统源码:高效构建您的在线短剧平台

在数字化时代&#xff0c;短剧作为一种新兴的娱乐形式&#xff0c;受到了广泛的欢迎。随着市场需求的增长&#xff0c;构建一个在线短剧平台成为了很多创业者和开发者的目标。而选择正确的短剧系统源码则是实现这一目标的关键步骤。本文将为您提供一些实用的指导&#xff0c;帮…

论文解析——Transformer 模型压缩算法研究及硬件加速器实现

作者及发刊详情 邓晗珂&#xff0c;华南理工大学 摘要 正文 实验平台 选取模型&#xff1a; T r a n s f o r m e r b a s e Transformer_{base} Transformerbase​ 训练数据集&#xff1a;WMT-2014 英语-德语翻译数据集、IWSLT-2014 英语-德语互译数据集 Transformer模…

策略模式入门:基本概念与应用

目录 策略模式策略模式结构策略模式应用场景策略模式优缺点练手题目题目描述输入描述输出描述题解 策略模式 策略模式&#xff0c;又称政策模式&#xff0c;是一种行为型设计模式&#xff0c;它能让你定义一系列算法&#xff0c;并将每种算法分别放入独立的类中&#xff0c;以…

基于Spring Boot的高校智慧采购系统

1 项目介绍 1.1 摘要 随着信息技术与网络技术的迅猛发展&#xff0c;人类社会已跨入全新信息化纪元。传统的管理手段因其内在局限&#xff0c;在处理海量信息资源时日渐捉襟见肘&#xff0c;难以匹配不断提升的信息管理效率和便捷化需求。顺应时代发展趋势&#xff0c;各类先…

http数据传输确保完整性和保密性整流程方案(含源码)

往期文章回顾 【深度学习】 【深度学习】物体检测/分割/追踪/姿态估计/图像分类检测演示系统【含源码】【深度学习】YOLOV8数据标注及模型训练方法整体流程介绍及演示【深度学习】行人跌倒行为检测软件系统【深度学习】火灾检测软件系统【深度学习】吸烟行为检测软件系统【深度…

rtpengine_mr12.0 基础建设容器运行

目录 Dockerfile rtpengine.conf 容器内编译安装 RTPEngine 正常提供功能 1. 启动RTPEngine服务 2. 删除 RTPEngine服务 3. 加载内核模块 检查所有进程是否正在运行 上传到仓库 博主wx&#xff1a;yuanlai45_csdn 博主qq&#xff1a;2777137742 后期会创建粉丝群&…

实验二 图像的代数运算

一、实验目的&#xff1a; 1&#xff0e;了解图像的算术运算在数字图像处理中的初步应用。 2&#xff0e;体会图像算术运算处理的过程和处理前后图像的变化。 二、实验内容&#xff1a; 1&#xff0e;图像的加法运算 图像相加一般用于对同一场景的多幅图像求平均效果&…

【QT】概述|对象树模型|两种控件模式|信号和槽|lambda

目录 什么是QT 特点 QT程序 main函数 QT按钮 纯代码模式 图形化模式 对象树模型 信号和槽 连接与断开 自动连接 断开连接 信号的发射 lambda表达式 基本语法 捕获列表 Lambda表达式用于信号与槽的连接 例如 什么是QT Qt是一个跨平台的C图形用户界面应用…

如何在TikTok上获得更多观看量:12个流量秘诀

TikTok作为热门海外社媒&#xff0c;在跨境出海行业中成为新兴的推广渠道&#xff0c;但你知道如何让你的TikTok赢得更多关注次数吗&#xff1f;如果您正在寻找增加 TikTok 观看次数的方法&#xff0c;接下来这12种策略&#xff0c;你需要一一做好&#xff01; 1. 在内容中添加…

女性经济崛起,天润融通用客户感知挖掘市场潜力

每逢一年一度的国际妇女节&#xff0c;“女性”话题都会被郑重地讨论。 从消费市场上来说&#xff0c;最近几年女性群体正在拥有越来越大的影响力&#xff0c;甚至出现了“她经济”这样的专属词汇在最近几年被市场反复讨论。 毫无疑问&#xff0c;女性消费群体的崛起已经成为…

2.8亿东亚五国建筑数据分享

数据是GIS的血液&#xff01; 我们现在为你分享东亚5国的2.8亿条建筑轮廓数据&#xff0c;该数据包括中国、日本、朝鲜、韩国和蒙古5个东亚国家完整、高质量的建筑物轮廓数据&#xff0c;你可以在文末查看领取方法。 数据介绍 虽然开源的全球的建筑数据已经有微软的建筑数据…

【android】【adb shell】写一个shell脚本,监听进程pid变化

前言 当前业务&#xff0c;需要写一个脚本&#xff0c;不断监视com.android.phone 进程是否异常死掉 脚本 #!/system/bin/sh last_pid"" current_pid"" while(true){current_pidps -A | grep com.android.phone | awk {print $2}if [ -n "$current…