斯坦福大学最新!如何微调VLA模型?如何优化速度与成功率?

部署运行你感兴趣的模型镜像

点击下方卡片,关注“具身智能之心”公众号

作者 | Moo Jin Kim等  编辑 | 具身智能之心

本文只做学术分享,如有侵权,联系删文


>>点击进入→具身智能之心技术交流群

更多干货,欢迎加入国内首个具身智能全栈学习社区具身智能之心知识星球(戳我)这里包含所有你想要的。

VLA的有效微调并不明确

最近的视觉-语言-动作模型(VLAs)建立在预训练的视觉-语言模型基础上,并利用多种机器人数据集来展示强大的任务执行、语言跟随能力和语义泛化。尽管取得了这些成功,VLAs在处理新的机器人设置时仍面临挑战,需要通过微调来实现良好性能。然而,如何最有效地进行微调尚不明确,因为存在多种可能的策略。我们研究了VLA适应的关键设计选择,如不同的动作解码方案、动作表示和学习目标,以OpenVLA作为代表性基础模型。我们的实证分析得出了一个优化的微调(OFT)方案,该方案集成了并行解码、动作分块、连续动作表示和基于简单L1回归的学习目标,从而共同提高了推理效率、策略性能和模型的输入输出灵活性。我们提出了OpenVLA-OFT,这是该方案的一个实例化,它在LIBERO仿真基准测试中设置了新的最先进水平,将OpenVLA在四个任务套件上的平均成功率从76.5%显著提高到97.1%,同时将动作生成吞吐量提高了26倍。在现实世界评估中,我们的微调方案使OpenVLA能够成功执行双臂ALOHA机器人上的灵巧、高频控制任务,并在平均成功率上比使用默认微调方案的其他VLA(π0和RDT-1B)以及从头开始训练的强大模仿学习策略(Diffusion Policy和ACT)高出多达15%(绝对值)。

代码:https://openvla-oft.github.io

这是我在具身智能之心知识星球的分享,欢迎和我们一起讨论!国内首个具身智能全栈学习社区,近30+方向学习路线!

行业介绍

最近的视觉-语言-动作模型(VLAs)——通过对大规模机器人数据集上的预训练视觉-语言模型进行微调以实现低级机器人控制,已在各种机器人和任务上展示了强大的任务性能、语义泛化和语言跟随能力。尽管它们具有这些优势,但对于在新型机器人和任务上令人满意地部署VLAs而言,微调至关重要,然而,在巨大的设计空间中,最有效的适应方法尚不清楚。希望将VLA微调到新机器人设置和任务的机器人从业者可能会默认使用预训练时使用的相同训练方案(或其参数高效变体),但显然这并不一定会产生最佳策略,而且文献中对替代微调方法的实证分析有限。

先前的工作已开始探索VLA适应策略,Kim等人提出了通过LoRA的参数高效微调。然而,其自回归动作生成对于高频控制(25-50+Hz)来说仍然太慢(3-5Hz),并且LoRA和VLAs的全参数微调在双臂操作任务中通常表现不佳。尽管最近的方法通过更好的动作标记化方案提高了效率,实现了2到13倍的速度提升,但动作块之间的显著延迟(例如,最近FAST方法的750ms)仍然限制了高频双臂机器人的实时部署。探索实现令人满意的速度和质量的替代VLA适应方法仍然是一个研究不足的领域。

这项工作中,我们使用OpenVLA(一个代表性的自回归VLA)作为基础模型,研究了将VLAs适应到新型机器人和任务的关键设计决策。

研究了三个关键设计选择:动作解码方案(自回归与并行生成)、动作表示(离散与连续)和学习目标(下一个标记预测与L1回归与扩散)。

研究表明了几个相互关联的关键见解:(1)并行解码与动作分块不仅提高了推理效率,还提高了下游任务的成功率,同时使模型的输入输出规格更加灵活;(2)与离散表示相比,连续动作表示进一步提高了模型质量;(3)使用L1回归目标微调VLA与基于扩散的微调在性能上相当,但训练收敛和推理速度更快。基于这些见解,我们引入了OpenVLA-OFT:一个优化的微调(OFT)方案的实例化,该方案集成了并行解码和动作分块、连续动作表示和L1回归目标,以增强推理效率、任务性能和模型输入输出灵活性,同时保持算法简单性。在标准化的LIBERO仿真基准测试和双臂ALOHA机器人上的灵巧任务上进行了实验。在LIBERO中,OpenVLA-OFT通过建立97.1%的平均成功率树立了新的最先进水平,超过了微调后的OpenVLA策略(76.5%)和π0策略(94.2%),同时使用8步动作块将动作生成速度提高了26倍。对于现实世界中的ALOHA任务,通过添加特征线性调制(FiLM)来增强方案(表示为OFT+),以在需要准确语言理解的任务中加强语言接地。OpenVLA-OFT+成功执行了基于用户提示的灵巧双臂任务,如折叠衣服和操作目标食品项目(见图1),在平均成功率上比微调后的VLA(π0和RDT-1B)以及从头开始训练的突出模仿学习策略(Diffusion Policy和ACT)高出多达15%(绝对值)。使用25步动作块,OpenVLA-OFT+实现了比基础OpenVLA快43倍的吞吐量,表明我们的新微调方案能够实现实时机器人控制,同时具有强大的任务性能和语言跟随能力。

6f01167cf9fdfefedbaac3149f40bec9.png

相关工作一览

先前的工作已利用语言和视觉基础模型来增强机器人能力,将它们用作加速机器人策略学习的预训练视觉表示,用于机器人任务中的物体定位,以及用于高级规划和推理。最近,研究人员探索了对视觉-语言模型(VLMs)进行微调以直接预测低级机器人控制动作,从而产生了“视觉-语言-动作”模型(VLAs),这些模型已证明对分布外测试条件和未见过的语义概念具有有效的泛化能力。这些工作主要侧重于模型开发,而我们则侧重于开发微调此类模型的方案,并通过我们的实证分析来证明各个设计决策。

尽管微调对于现实世界中VLA的部署至关重要,但对有效微调方案的实证分析仍然有限。虽然一些研究,展示了各种参数更新策略,并从其发现中表明LoRA微调能够有效适应操作频率低于10Hz的单臂机器人,但他们的分析并未扩展到具有高频控制(25-50+Hz)的双臂机器人,这是一个更复杂的控制场景。我们通过探索VLA适应设计决策来弥补这一差距,以在真实世界的双臂操纵器上实现快速推理和可靠任务执行,该操纵器具有25Hz的控制器。

最近的工作通过新的动作tokenlize方案提高了VLA效率,使用矢量量化或基于离散余弦变换的压缩来表示动作块(动作序列),所使用的标记比简单逐维分箱(如RT-2和OpenVLA中使用的)更少。虽然这些方法使自回归VLA的速度提高了2到13倍,但我们探索了自回归建模之外的设计决策,因为自回归建模仍然受到迭代生成的固有限制。我们的并行解码方法,当与动作分块结合时,实现了显著更高的速度提升:在单臂任务中(具有单个输入图像)吞吐量为0.07ms,在双臂任务中(具有三个输入图像)吞吐量为0.321 ms。

另一项研究证明了在高频双臂操纵中使用生成方法(如扩散或流匹配)对VLA进行微调的有效性。尽管这些基于扩散的VLA通过同时生成多时间步动作块而比自回归VLA具有更高的动作吞吐量,但它们在训练和推理时引入了计算权衡,因为训练速度较慢,并且在推理时存在多个去噪或集成步骤。此外,这些基于扩散的VLA在架构、学习算法、视觉-语言融合方法和输入输出规格方面存在显著差异,哪些设计元素对性能影响最大仍不清楚。通过受控实验,我们表明,使用更简单的L1回归目标进行微调的策略在任务性能上可以与更复杂的方法相媲美,同时实现显著更高的推理效率。

预备知识回顾

原始OpenVLA公式

使用OpenVLA作为我们的代表性基础VLA,这是一个通过对Prismatic VLM在Open X-Embodiment数据集的100万个片段上进行微调而创建的70亿参数操纵策略。OpenVLA的原始训练公式使用每时间步7个离散机器人动作标记的自回归预测:3个用于位置控制,3个用于方向控制,1个用于夹持器控制。它采用下一个标记预测和交叉熵损失作为学习目标,类似于语言模型。

动作分块

先前的工作表明,动作分块(即预测和执行一系列未来动作而不进行中间重新规划)提高了许多操纵任务上的策略成功率。然而,OpenVLA的自回归生成方案使得动作分块不切实际,因为即使在NVIDIA A100 GPU上生成单个时间步的动作也需要0.33秒。对于大小为K的时间步和动作维度D,OpenVLA需要KD个顺序解码器前向传递,而没有分块则只需要D个传递。这种K倍增加的延迟使得动作分块对于高频机器人来说在原始公式下不切实际。

研究VLA微调关键设计决策

VLA微调设计决策

使用基础模型的自回归训练配方对VLAs进行微调的方法面临两个主要限制:推理速度慢(3-5Hz),不适合高频控制;在双臂操纵器上任务执行不可靠。

8384dd1875493010e99e2090f54aa76d.png

为了解决这些挑战,我们研究了VLA微调的三个关键设计组件:

(a)动作生成策略(图2,左):我们将自回归生成(需要顺序逐标记处理)与并行解码(能够同时生成所有动作并启用高效动作分块)进行比较。

(b)动作表示(图2,右):检查离散动作(归一化动作的256箱离散化),这些动作通过基于softmax的标记预测进行处理,与通过MLP动作头直接生成的连续动作进行比较。对于离散动作,语言模型解码器的最终隐藏状态被线性投影到logits中,这些logits通过softmax操作形成动作标记的概率分布。对于连续动作,最终隐藏状态而是被映射到归一化连续动作,由一个单独的动作头MLP完成。

(c)学习目标(图2,右):将使用下一个标记预测进行离散动作微调的策略与使用L1回归进行连续动作微调的策略以及使用条件去噪扩散进行比较。

我们使用OpenVLA作为基础模型进行研究,通过LoRA微调对其进行适应,因为训练数据集相对较小(500个演示,而预训练为100万个演示)。

实现替代设计组件

基础OpenVLA模型最初采用离散动作标记的自回归生成,通过下一个标记预测进行优化。我们在实现微调替代设计决策的同时保持原始预训练不变。

1)并行解码和动作分块

与需要顺序标记预测的自回归生成不同,并行解码使模型能够在单个前向传递中将输入嵌入映射到预测的输出序列。修改模型以接收空动作嵌入作为输入,并用双向注意力替换因果注意力掩码,允许解码器同时预测所有动作。这将动作生成从D个顺序传递减少到单个传递,其中D是动作维度。

并行解码自然地扩展到动作分块:为了预测多个未来时间步的动作,只需在解码器的输入中插入额外的空动作嵌入,这些嵌入随后被映射到动作块。对于大小为K的块,模型在单个前向传递中预测KD个动作,将吞吐量提高K倍,对延迟影响最小。虽然并行解码在理论上可能不如自回归方法具有表现力,但实验表明,在各种任务上性能没有下降。

2)连续动作表示

OpenVLA最初使用离散动作标记,其中每个动作维度被归一化到[-1,+1]并均匀离散化为256个箱。虽然这种方法很方便,因为它不需要对底层VLM进行架构修改,但离散化过程可能会牺牲精细的动作细节。我们研究了连续动作表示,并借鉴了两种来自主流模仿学习方法的学习目标:

首先,通过用MLP动作头替换解码器的输出嵌入层来实现L1回归,该动作头直接将最终解码器层隐藏状态映射到连续动作值。该模型被训练以最小化预测动作和真实动作之间的平均L1差异,同时保持并行解码的效率优势,并可能提高动作精度。

其次,实现了条件去噪扩散建模,其中模型学习预测在正向扩散过程中添加到动作样本中的噪声。在推理期间,策略通过反向扩散逐渐对嘈杂的动作样本进行去噪以产生真实动作。虽然这种方法提供了可能更具表现力的动作建模,但它要求在推理期间进行多次前向传递(在我们的实现中为50个扩散步骤),从而影响部署延迟,即使使用并行解码也是如此。

3)附加模型输入和输出

虽然原始OpenVLA处理单个相机视图,但一些机器人设置包括多个视角和附加的机器人状态信息。我们实现了一个灵活的输入处理管道:对于相机图像,使用OpenVLA的双视觉编码器从每个视图提取256个patch embedding,这些embedding通过共享投影仪网络投影到语言嵌入空间中。对于低维机器人状态输入(例如,关节角度和夹持器状态),使用单独的投影网络将其映射到与语言embedding相同的embedding空间作为附加输入embedding。

所有输入embedding(视觉特征、机器人状态和语言标记)在序列维度上连接,然后传递给解码器。这种统一的潜在表示使模型能够在生成动作时关注所有可用信息。结合并行解码和动作分块,该架构可以高效地处理丰富的多模态输入,同时生成多个时间步的动作,如图1所示。

通过FiLM增强OpenVLA-OFT以实现增强的语言接地

1)语言跟随的挑战

在部署到具有多个视角(包括腕部安装相机)的ALOHA机器人设置时,我们观察到策略可能会因视觉输入中的虚假相关性而难以跟随语言。在训练期间,策略可能会在学习预测动作时学会关注这些虚假相关性,而不是适当地关注语言指令,从而在测试时导致对用户命令的遵守情况不佳。此外,语言输入可能仅在任务中的特定时刻至关重要——例如,在用勺子舀取食材后决定舀取哪种食材的“将X舀入碗中”任务中。因此,如果没有特殊技术,训练模型以适当关注语言输入可能特别具有挑战性。

2)FiLM

为了增强语言跟随,采用特征线性调制(FiLM),它将语言embedding注入视觉表示中,以便模型更关注语言输入。计算任务描述语言embedding x的平均值,并将其投影以获得缩放和移位向量γ和β。这些向量通过仿射变换调制视觉特征F:

6142edcc6e5211da2a8c975d74b9ac67.png

一个重要的实现细节是选择视觉transformer中要进行调制的“特征”。虽然人们可能会自然地考虑将每个patch embedding视为要调制的特征,但我们发现这种方法会导致较差的语言跟随。相反,从FiLM在卷积网络中的操作方式中汲取灵感,其中调制以空间无关的方式应用于整个特征图的缩放和移位,我们将γ和β的每个元素应用于跨所有视觉patch embedding的相应隐藏单元,以便γ和β影响所有patch embedding。这使得γ和β成为DViT维向量,其中DViT是视觉patch embedding中的隐藏维度数。

在每个视觉transformer block的自注意力层之后和前馈层之前应用FiLM,每个块使用单独的投影仪(见图8)。

752f63e11665db94d1100083b744cef7.png

实验:评估VLA微调设计决策

LIBERO实验设置

在LIBERO仿真基准上进行了评估,该基准以Franka Emika Panda机器人为特征,包含相机图像、机器人状态、任务注释和末端执行器姿态动作增量的演示。使用了四个任务套件:LIBERO-Spatial、LIBERO-Object、LIBERO-Goal和LIBERO-Long,每个套件提供500个专家演示,涵盖10项任务,以评估策略对不同空间布局、对象、目标和长期任务的泛化能力。遵循Kim等人的方法,过滤掉不成功的演示,并通过LoRA对每个任务套件独立微调OpenVLA。我们训练了50,000到150,000个梯度步骤(非扩散方法)和100,000到250,000个梯度步骤(扩散方法),使用64到128的批量大小,跨越8个A100/H100 GPU。每50,000步测试一次模型,并报告每次运行的最佳性能。除非另有说明,否则策略接收一张第三人称图像和语言指令作为输入。对于使用动作分块的方法,将分块大小设置为K=8,以匹配Diffusion Policy基线,并在重新规划之前执行完整的分块,我们发现这可以提高速度和性能。

LIBERO任务性能比较

对于令人满意的部署,机器人策略必须展示可靠的任务执行。我们首先评估不同的VLA微调设计决策对LIBERO基准上成功率的影响。

效率分析表明,并行解码(PD)和动作分块(AC)一起对于高频控制(25-50+Hz)是必要的,特别是对于具有两倍动作维度的双臂机器人。因此,我们评估了同时使用这两种技术的OpenVLA策略,比较了使用离散动作、连续动作(使用L1回归)和连续动作(使用扩散)的变体。

d34346a5c77312e58d9b5cf7410cbc4a.png

表I中的结果显示,并行解码和动作分块不仅提高了吞吐量,还显著提高了下游任务的成功率,与自回归OpenVLA策略相比,平均成功率提高了14%(绝对值)。这种改进在LIBERO-Long中尤为明显,表明动作分块有助于捕捉时间依赖性并减少累积误差,从而导致更平滑和更可靠的任务执行。

此外发现使用连续动作变体比离散动作变体进一步提高了5%(绝对值)的成功率,这可能是由于动作预测的精度更高。L1回归和扩散变体实现了可比的性能,表明高容量的OpenVLA模型可以有效地建模多任务动作分布,即使使用简单的L1回归也是如此。

LIBERO推理效率比较

高效推理对于在高频控制机器人上部署VLA至关重要。现在评估并行解码(PD)、动作分块(AC)和连续动作表示如何影响模型的推理速度。我们通过在一个NVIDIA A100 GPU上对每个模型变体进行100次查询来测量平均延迟(生成一个机器人动作或动作分块所需的时间)和吞吐量(每秒生成的总动作数)。每个查询处理一张224x224像素的图像和一个LIBERO语言指令(“拿起字母汤并放入篮子”)。

84ad26de78dfd2f982afbfcb14dfde36.png

表II中的结果显示,并行解码通过将解码器部分的策略中的7个连续前向传递替换为单次传递,将延迟降低了4倍,吞吐量提高了4倍。添加动作分块(K=8)由于解码器中更长的注意力序列而增加了17%的延迟,但与并行解码结合使用时,它显著提高了吞吐量,实现了比基线OpenVLA快26倍的加速。使用L1回归的连续动作变体在效率方面与基线模型相差无几,因为额外的MLP动作头增加的计算成本可忽略不计。而扩散变体需要50个去噪步骤,因此延迟是基线模型的3倍。然而,由于并行解码和分块,它仍然比原始自回归变体快2倍的吞吐量。这意味着尽管动作分块之间存在显著的延迟,但扩散变体仍然比原始自回归变体更快地完成机器人情节。

模型输入输出灵活性

并行解码使OpenVLA能够以最小的延迟增加生成动作分块,从而增强了模型输出的灵活性。并行解码和动作分块实现的显著加速为处理额外的模型输入提供了空间。我们通过微调OpenVLA以包括额外的输入(如机器人本体感觉状态和手腕安装相机图像),验证了这一点,这将传递给语言模型解码器的视觉patch embedding数量从256增加到512。尽管输入序列长度显著增加,但微调后的OpenVLA策略仍保持了高吞吐量(71.4Hz)和低延迟(0.112秒),如表II所示。

在LIBERO基准上评估这些具有额外输入的策略,结果显示在所有任务套件上的平均成功率进一步提高。值得注意的是,我们增强的微调OpenVLA策略甚至超过了表现最好的π0策略(通过更大规模的预训练和更复杂的学习目标(流匹配)受益),以及多模态扩散转换器(MDT)。即使我们的基础模型预训练数据较少,但发现替代的VLA适应设计决策使微调后的OpenVLA策略能够在LIBERO基准上建立新的最先进的性能。

优化微调配方

基于在任务性能、推理效率和模型输入输出灵活性方面的改进,提出了一种优化微调(OFT)配方,用于VLA适应,该配方结合了三个关键组件:

  1. 并行解码与动作分块

  2. 连续动作表示

  3. L1回归目标

这些设计选择协同工作,产生强大的策略,可以在高频下部署,同时保持算法的简单性。我们将使用OFT配方从OpenVLA基础模型微调的策略称为OpenVLA-OFT。

将OpenVLA适应到现实世界中的ALOHA机器人

虽然前面的实验结果证明了OpenVLA-OFT在仿真中的有效性,但在机器人平台上成功部署,这些平台与预训练期间看到的平台有很大不同,对于展示广泛的适用性至关重要。因此,我们评估了优化微调配方在ALOHA机器人设置上的效果,这是一个操作频率为25Hz的真实双臂操作平台。在OpenVLA预训练期间从未遇到过的新颖灵巧操作任务上进行了评估(其预训练仅涉及单臂机器人数据)。

先前的工作表明,使用自回归VLAs的LoRA微调对于此类任务是不切实际的,因为其吞吐量(对于单臂机器人为3-5Hz,对于双臂任务甚至更低)远低于实时部署所需的25-50Hz。因此,在实验中排除了这个基线,并比较了更有效的方法。

ALOHA实验设置

ALOHA平台由两个ViperX300S机械臂、三个相机视角(一个俯视图,两个手腕安装)和机器人状态输入(14维关节角度)组成。它以25Hz(从原始的50Hz降低,以加快训练速度,同时仍保持平滑的机器人控制)运行,动作表示目标绝对关节角度。该设置与OpenVLA的预训练存在显著差异,后者的预训练包括仅单臂机器人数据、来自第三人称相机的单个相机视角、无机器人状态输入、低频控制(3-10Hz)和相对末端执行器姿态动作。这种分布偏移对模型的适应构成了挑战。

我们设计了四个代表性任务,测试可变形物体操作、长期技能、工具使用和语言驱动控制:

  1. “折叠短裤”:在桌子上用两次连续的双臂折叠折叠白色短裤。训练:20次演示。评估:10次试验。

  2. “折叠衬衫”:通过多次同步双臂折叠折叠白色T恤,测试接触丰富的长期操作。训练:30次演示。评估:10次试验。

  3. “用勺子舀X到碗里”:用左手臂将碗移到桌子中央,用右手臂用金属勺子舀指定的配料(“葡萄干”、“杏仁和绿色M&M”或“椒盐脆饼”)。训练:45次演示(每种配料15次)。评估:12次试验(每种配料4次)。

  4. “把X放进锅里”:用左手臂打开锅,用右手臂放入指定物品(“青椒”、“红椒”或“黄玉米”),然后盖上锅盖。训练:300次演示(每种物品100次)。评估:24次试验(12次在分布内,12次在分布外)。

使用OFT+在每个任务上独立微调OpenVLA,进行50,000到150,000个梯度步骤(总批量大小为32,使用8个A100/H100-80GB GPU),动作分块大小为K=25。在推理时,在重新查询模型以获取下一个分块之前执行完整的动作分块。

比较方法

ALOHA任务对OpenVLA构成了显著的适应挑战,因为基础模型在控制频率、动作空间和输入模式方面与其预训练平台存在显著差异。出于这个原因,我们将OpenVLA-OFT+与最近的VLA(RDT-1B和π0)进行比较,这些VLA在双臂操作数据上进行了预训练,并可能合理地预期在这些下游任务上表现更好。在作者推荐的配方下对这些模型进行微调,并将这些方法作为重要的比较点。此外,为了提供与计算上有效的替代方案的比较,评估了两种流行的模仿学习基线:ACT和Diffusion Policy,这些基线是从头开始在每个任务上训练的。

为了使这些基线方法能够进行语言跟随,我们使用语言条件实现。对于ACT,修改EfficientNet-B0以处理通过FiLM的CLIP语言嵌入。对于Diffusion Policy,使用DROID数据集的实现,该实现根据DistilBERT语言嵌入对动作去噪进行条件设置,并修改为支持双臂控制和多个图像输入。

仅对语言依赖任务(“用勺子舀X到碗里”和“把X放进锅里”)使用此FiLM-EfficientNet实现。对于衣服折叠任务,我们使用原始的ResNet-18骨干网络。

ALOHA任务性能结果

在所有方法(ACT、Diffusion Policy、RDT-1B、π0和OpenVLA-OFT+)上评估了我们的四个ALOHA任务。为了提供细致的评估,我们使用一个预定义的评分细则,该细则对部分任务完成分配分数。图4显示了汇总性能分数,而图5特别跟踪了语言依赖任务的语言跟随能力。

f218849e390648b6b3bb32afb0e24381.png 3cb56e74dae1e0544b3c00ea0408488b.png

非VLA基线的性能。从头开始训练的基线方法显示出不同程度的成功。ACT虽然能够完成基本任务,但产生的动作不够精确,整体性能最低。Diffusion Policy表现出更强的能力,在衣服折叠和舀取任务上的可靠性匹配或超过RDT-1B。然而,它在“把X放进锅里”任务上表现挣扎,该任务拥有更大的训练数据集,这表明与基于VLA的方法相比,其可扩展性有限。

微调VLAs的性能。微调VLA策略在任务执行和语言跟随方面普遍优于从头开始训练的基线,这与先前的研究结果一致。在VLAs中,我们观察到不同的特性:RDT-1B通过其“交替条件注入”方案实现了良好的语言跟随,但在处理闭环反馈方面存在局限。如图7所示,它经常在“用勺子舀X到碗里”任务中犯错——例如,在错过实际碗后继续将配料倒入想象中的碗,这表明过度依赖本体感觉状态而非视觉反馈。另一方面,π0展示了更稳健的执行,动作更平滑,对反馈的反应更好,经常能够从初始失败中成功恢复(如图7所示)。虽然其语言跟随能力略逊于RDT-1B,但π0在整体任务完成方面表现更好,成为最强的基线。最后,OpenVLA-OFT+在任务执行和语言跟随方面实现了最高性能(图6显示了OpenVLA-OFT+成功任务展开的示例)。这尤其值得注意,因为基础OpenVLA模型仅在单臂数据上进行了预训练,而RDT-1B和π0分别在大量双臂数据集(6000个情节和8000小时双臂数据)上进行了预训练。这表明微调技术在下游性能方面可能比预训练数据覆盖范围更重要。

af478b18ac59c9a30c293404cce0688b.png

FiLM的消融研究。通过消融FiLM并评估策略在语言依赖任务上的语言跟随能力,来评估FiLM在我们OpenVLA-OFT+方法中的重要性。如图5所示,去除FiLM后,语言跟随能力下降到33%,这相当于随机选择正确指令的成功率。这表明FiLM对于防止模型过度拟合到虚假视觉特征并确保对语言输入的适当关注至关重要。

ALOHA推理效率比较

通过测量每个方法100次查询的动作生成吞吐量和延迟来评估推理效率。我们在表III中报告了结果。即使仅添加了手腕相机输入,原始OpenVLA公式也显示出较差的效率,吞吐量为1.8Hz,延迟为0.543秒。相比之下,OpenVLA-OFT+实现了77.9Hz的吞吐量,尽管其延迟与先前LIBERO实验中的方法相比更高,因为它必须处理两个额外的输入图像。

其他方法由于架构较小,显示出比OpenVLA-OFT+更高的吞吐量:ACT(84M参数)、Diffusion Policy(157M)、RDT-1B(12亿参数)和π0(33亿参数)。而OpenVLA有75亿参数。ACT通过结合基于L1回归的单通道动作生成(如OpenVLA-OFT+)与其紧凑架构,实现了最高速度。此外,尽管规模更大,但π0由于其优化的JAX实现(所有其他方法均使用PyTorch),在速度上超过了RDT-1B和Diffusion Policy。

值得注意的是,OpenVLA-OFT+的吞吐量(77.9Hz)接近RDT-1B的吞吐量(84.1Hz),尽管其规模大了7倍,因为它在单次前向传递中生成动作,而不需要像RDT-1B那样进行多次去噪步骤。

参考

[1] Fine-Tuning Vision-Language-Action Models: Optimizing Speed and Success

a2f1b974eb8d76cfdcf550c9e4596ce4.jpeg

【具身智能之心】技术交流群

具身智能之心是国内首个面向具身智能领域的开发者社区,聚焦大模型、视觉语言导航、VLA、机械臂抓取、双足机器人、四足机器人、感知融合、强化学习、模仿学习、规控与端到端、机器人仿真、产品开发、自动标注等多个方向,目前近60+技术交流群,欢迎加入!扫码添加小助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

a320af649d9cce46c6d52a646969a511.jpeg

【具身智能之心】知识星球

具身智能之心知识星球是国内首个具身智能开发者社区,也是最专业最大的交流平台,近1000人。主要关注具身智能相关的数据集、开源项目、具身仿真平台、大模型、视觉语言模型、强化学习、具身智能感知定位、机器臂抓取、姿态估计、策略学习、轮式+机械臂、双足机器人、四足机器人、大模型部署、端到端、规划控制等方向。星球内部为大家汇总了近40+开源项目近60+具身智能相关数据集行业主流具身仿真平台、强化学习全栈学习路线、具身智能感知学习路线、具身智能交互学习路线、视觉语言导航学习路线、触觉感知学习路线、多模态大模型学理解学习路线、多模态大模型学生成学习路线、大模型与机器人应用、机械臂抓取位姿估计学习路线、机械臂的策略学习路线、双足与四足机器人开源方案、具身智能与大模型部署等方向,涉及当前具身所有主流方向。

扫码加入星球,享受以下专有服务:

1. 第一时间掌握具身智能相关的学术进展、工业落地应用;
2. 和行业大佬一起交流工作与求职相关的问题;
3. 优良的学习交流环境,能结识更多同行业的伙伴;
4. 具身智能相关工作岗位推荐,第一时间对接企业;
5. 行业机会挖掘,投资与项目对接;

38ef6b56bbe7d48f04e6b82b42662947.png

您可能感兴趣的与本文相关的镜像

Llama Factory

Llama Factory

模型微调
LLama-Factory

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调

### 优化VLA模型的强化学习方法 强化学习(Reinforcement Learning, RL)是一种通过环境的交互来优化策略的方法,能够有效提升VLA(视觉-语言-动作)模型在复杂任务中的表现。由于VLA模型需要处理多模态输入并生成精确的动作输出,传统的强化学习方法在应用时可能面临稳定性问题。标准的PPO(Proximal Policy Optimization)算法在引入到强化学习任务时通常表现出不稳定性,这种不稳定性不仅影响强化学习任务的性能,还会降低先前学习任务的性能,即使使用了经验回放,这种下降可能是由于噪声强化学习梯度对VLA模型中的预训练表示产生了不利影响[^1]。 为了解决这一问题,iRe-VLA框架提出了一种结合在线强化学习和监督学习的迭代训练方法。该方法使训练过程更加稳定,并显著降低了计算需求。iRe-VLA通过在强化学习和监督学习之间迭代训练,能够在保持稳定性的同时探索新的策略,提高其在复杂任务中的表现[^2]。 ### 强化学习在VLA模型中的实现 在VLA模型中应用强化学习时,通常需要定义状态空间、动作空间以及奖励函数。状态空间由视觉输入和语言指令组成,动作空间则是机器人执行的具体动作。奖励函数的设计则需要根据任务目标进行定义,例如完成任务的成功率、动作的效率等。 以下是一个基于PPO算法的简单VLA模型强化学习实现示例: ```python import torch import gym from stable_baselines3 import PPO # 自定义VLA环境 class VLARobotEnv(gym.Env): def __init__(self): super(VLARobotEnv, self).__init__() # 定义状态空间(视觉输入和语言指令) self.observation_space = gym.spaces.Box(low=0, high=255, shape=(256, 256, 3), dtype=np.uint8) # 定义动作空间 self.action_space = gym.spaces.Discrete(5) def reset(self): # 初始化环境状态 return initial_observation def step(self, action): # 执行动作并返回新的状态、奖励、是否结束、额外信息 next_observation, reward, done, info = env.step(action) return next_observation, reward, done, info # 实例化环境 env = VLARobotEnv() # 使用PPO算法训练VLA模型 model = PPO("CnnPolicy", env, verbose=1) model.learn(total_timesteps=10000) # 保存训练好的模型 model.save("vla_ppo_model") ``` 该代码示例使用了Stable Baselines3库中的PPO算法,结合自定义的VLA环境进行训练。通过这种方式,模型能够在环境的交互中逐步优化策略,从而提高任务性能。 ### 稳定性性能提升 iRe-VLA方法通过在线强化学习进一步增强了VLA模型的能力。该方法在微调大型VLA模型时表现出色,能够在保持稳定性的同时显著提升任务性能。尽管iRe-VLA在改进已见类型的技能方面效果显著,但其局限性在于无法在稀疏奖励在线RL条件下学习全新的技能[^2]。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值