前言

今天25年4.23一早

本文起笔于25年4.23日上午,后因当天下午受邀去长理做了个面对200研究生的大模型与具身落地实践的讲座,导致在4.23当天 没有写完——一直放在草稿箱里,直到4.24日凌晨 才写完了一半,随后才对外发布,所以你看到的发表日期是4.24日凌晨

朋友圈刷到π0所在的公司Physical Intelligence (π)于今25年4.22日推出π0的0.5版本了详见《π0.5: a VLA with Open-World Generalization

之后,我组建的「七月具身:π0复现微调交流群」群中,也在讨论这事,并说:七月老师要更新博客了

这不就来了

现在具身模型的发展 还不如大语言模型那样成熟

  • 大语言模型,现在无论国内外,基本都有迭代,比如国内deepseek qwen glm,国外的gpt llama gemini
  • 但不少具身模型只有第一版,大概率没后续版本、没后续的升级/维护,但即便如此,依然非常感谢他们宝贵的idea,以及对外开放的paper,更别说 还开源代码的了——very respect
    更何况这其中,也有一些机构 在之前模型上 想大力度创新,因为改动大,故命名新的模型,而非是老模型的几点几版本

π0 发新版了,意味着和Google的RT(大概率是不更了),以及figure(没开源过)等等——还有别的一些模型 没列举全,进入了少数迭代型的具身模型的行列

而且在π0至π0.5之间,他们还发布了π0的各种变体、比如FAST π0、Hi Robot

不过,遗憾的是,截止到25年9月上旬,π0.5尚未开源,那怎么办法呢

  1. 贴心的我还是给你分享一个类似π0.5的工作,即:EO-Robotics——类似π0.5集成了离散自回归解码与连续流匹配去噪:单个模型完成具身推理、动作生成
  2. 后来,π0.5开源了

顺带,额外说个事,目前国内具身赛道分为三派(彼此交叉 各有侧重)

  • 一派是以清华为代表的学院派,侧重科研,比如具身模型的底层突破
  • 一派是以宇树为代表的硬件派,侧重运动控制
  • 一派是以七月为代表的落地派,3分科研、7分落地,侧重场景落地与定制开发

具体而言

  1. 我司「七月在线」作为具身智能的场景落地与定制开发商,今25年有望交付10个集团客户的具身订单,​且交付的过程中,会适时摘取出部分可以分享的细节,分享到本博客内
  2. 且我们也在持续招人且持续扩大合作开发圈
    比如我司长沙、武汉、上海具身团队都在招人,特别是上海具身团队的扩充,如果在上海,做过sim2real/运动控制、或上肢操作的,欢迎垂询

第一部分 全新的π0.5

1.1 提出背景

要想让机器人走出实验室,到现实世界中具备可执行各种任务的泛化能力,则意味着它必须能够从各种信息来源中转移经验和知识

  • 有些是与当前任务直接相关的第一手经验
  • 有些则需要从其他机器人形态、环境或领域迁移,就像人类也会利用他人告诉自己的事实,或者在他人书中得到知识
  • 还有一些则是完全不同的数据类型,如语言指令、基于网络数据的感知任务,或对高层语义指令的预测

这些不同数据源的异质性构成了主要障碍,但幸运的是,最近在VLA模型方面的进展使得提供了可以实现这一目标的工具:通过将不同模态统一到同一序列建模框架中,VLA 可以适配于机器人数据、语言数据、计算机视觉任务及其组合进行训练

在本文中,作者们利用这一观察结果,设计了一种用于视觉语言代理(VLA)的协同训练框架,该框架能够利用异构且多样的知识源,以实现广泛的泛化能力

总的来说,π0.5 汲取了来自多种来源的经验:

  1. 除了在各种真实家庭中直接用移动操作机器人收集的中等规模数据集(约400 小时)之外
  2. π0.5 还利用了来自
    1) 其他非移动机器人的数据
    2) 在实验室条件下收集的相关任务数据
    3) 需要基于机器人观察预测” 高层次” 语义任务的训练样本——即高级语义下的子任务预测
    4) 人类监督者为机器人提供的口头语言指令
  3. 以及由网络数据生成的多模态样例,如图像描述、问答和目标定位

在首次训练阶段提供给 π0.5 的绝大多数训练示例(97.6%),并非来自移动操作机器人执行家务任务,而是来自其他来源——即上述的后两者,例如其他机器人或网络数据

尽管如此,π0.5 依然能够在训练期间从未见过的全新家庭中控制移动操作机器人,执行诸如挂毛巾或整理床铺等复杂任务,并能完成长达10 至15 分钟的长时操作技能,仅凭高层次提示即可清洁整个厨房或卧室

π0.5的设计遵循一种简单的分层架构:

  1. 首先在异质混合的训练任务上对模型进行预训练,然后通过「低层次的动作示例和高层次的语义动作」对其进行专门针对移动操作的微调,这些低级动作对应于所预测的子任务标签,例如“拿起砧板” 或 “重新整理枕头”——相当于当人类给出了一个高级语义指令 比如 “清洁整个厨房或卧室 ”,机器人需要预测其对应的子任务 比如“ 拿起砧板” 或” 重新整理枕头”
    we first pre-train the model on the heterogeneous mixture of training tasks, and then fine-tune it specifically for mobile manipulation with both low-level action examples and
    high-level “semantic” actions
    , which correspond to predicting subtask labels such as “pick up the cutting board” or “rearrange the pillow.”
  2. 即在推理的每一步运行时,模型首先预测语义子任务,根据任务结构和场景语义推断下一步应执行的行为,然后基于该子任务预测低层次的机器人动作片段

    比如如下图所示,机器人被指派清洁一个家中未包含在训练数据中的厨房。模型被赋予了4个常规任务——关闭柜子,将物品放入抽屉,擦拭溢出物,并将餐具放入水槽
    比如,对于最后一个任务,它通过预测“并将餐具放入水槽”任务的子任务(例如,拿起盘子)并执行低级动作来完成该任务

这一简单的架构不仅能够实现对长时序多阶段任务的推理,还能够在两个层级上利用不同来源的知识:

  • 低层次动作推理过程可以直接受益于其他机器人收集的动作数据,包括其他环境中更简单的静态机器人
  • 而高层次推理过程则可以利用来自网络的语义示例、高层注释预测,甚至是由人类” 监督者” 在现场为机器人提供的口头指令

这种设计通过逐步引导机器人完成复杂任务,指导其(类似于指导人类的方式)执行完成诸如打扫房间等复杂任务所需的各项子任务

1.2 相关工作:VLA、基于VLM的推理与规划等等

1.2.1 通用操作策略、VLA、非机器人数据的共同训练

第一,对于通用机器人操作策略

  1. 近期的研究表明,将机器人操作策略的训练数据分布从狭窄的单一任务数据集扩展到涵盖多个场景和任务的多样化数据集
    [17-Robonet, 25-Bridge data, 80-BridgeData v2, 63-Open X-Embodiment, 41-Droid, 6-Roboagent, 30-Rh20t, 67-On bringing robots home, 1-Agibot world colosseo]

    不仅能够让所得策略直接解决更广泛的任务,还提升了其对新场景和新任务的泛化能力
    [9-Rt-1, 63-Open X-Embodiment,62-Octo, 22-Scaling cross-embodied learning]
  2. 训练此类通用策略需要新的建模方法,以应对通常包含数百种不同任务和场景的数据集的规模和多样性

第二,对于视觉-语言-动作模型VLAs——下面大部分的模型 在本博客内其他文章内 都已解读过

  1. 比如下面这些工作
    23-Palme: An embodied multimodal language model
    92-Rt-2、42-Openvla、8-π0、83-Tinyvla、90-3dvla、55-Rdt-1b、45-Cogact、3-Minivla
    75-From multimodal llms to generalist embodied agents: Methods and lessons
    64- FAST: Efficient action tokenization for vision-language-action models
    74-Open-world object manipulation using pre-trained vision-language models
    84-Dexvla、7-Gr00t n1
    37-Otter: A vision-language-action model with text-aware visual feature extraction

    提供了供了一种有吸引力的解决方案:通过对预训练的视觉-语言模型进行机器人控制微调,VLA 能够利用从大规模网络预训练中获得的语义知识,将其应用于机器人领域
  2. 当VLA与高度表达的动作解码机制相结合时,例如
    流匹配[8-π0]

    扩散
    55-Rdt-1b
    84-Dexvla
    52-Hybridvla详见此文《HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散

    或先进的动作token化方案[64-FAST: Efficient action tokenization for vision-language-action models]
    VLAs可以在现实世界中执行广泛的复杂操作任务
  3. 然而,尽管VLA在语言理解方面表现出色,通常仍只在与其训练数据高度匹配的环境中进行评估
    且尽管有研究表明,只要在更广泛的环境中收集机器人数据,像抓取物体或打开抽屉等简单技能就能够实现泛化
    [14-UMI, 67-On bringing robots home,28-Robot utility models, 49-Data scaling laws in imitation learning for robotic manipulation, 64-FAST π0]

    但将同样的方法应用于如厨房清理等更复杂、长时序的任务时存在挑战,因为通过强行扩大机器人数据收集范围来实现可能场景的广覆盖 不总是行得通的——更何况大规模层面的数据收集 并不是一件轻松的事

第三,对于非机器人数据的共同训练

  1. 许多先前的研究致力于利用多样化的非机器人数据来提升机器人策略的泛化能力。以往的方法探索了从计算机视觉数据集初始化视觉编码器
    85-Masked visual pre-training for motor control
    58-R3m
    57-Where are we in the search for an artificial visual cortex for embodied intelligence?
    18- An unbiased look at datasets for visuomotor pre-training


    或利用现成的任务规划器
    38- Language models as zero-shot planners: Extracting actionable knowledge for embodied agents
    48-Code as policies: Language model programs for embodied control
    73- Progprompt: Generating situated robot task plans using large language models
    81- Llmˆ3: Large language model-based task and motion planning with motion failure reasoning
  2. VLA 策略通常基于 “经过大规模互联网视觉和语言数据训练的视觉-语言模型” 进行初始化[23- Palme,92-Rt-2,42-Openvla]
    值得注意的是,VLA 架构具有高度灵活性,能够在多模态视觉、语言和动作token的输入与输出序列之间进行映射

    因此,VLA 扩展了可迁移方法的设计空间不仅仅局限于简单的权重初始化而是支持在单一统一架构上协同训练:机器人动作模仿数据及前述任一或多种模态交错的数据集
  3. 已有研究表明,采用用于 VLM 训练的数据混合协同训练 VLA
    [23-Palme,92-Rt-2,86-Magma: A foundation model for multimodal ai agents]
    能够提升其泛化能力,例如在与新物体或未见过的场景背景交互时表现更佳

π0.5超越了 VLM 数据协同训练,作者设计了一个系统,可以利用更广泛的与机器人相关的监督信号协同训练 VLA,包括来自其他机器人的数据、高层语义子任务预测以及口头语言指令

虽然多任务训练和协同训练并非新概念,但他们展示了他们系统中特定的数据源组合使移动机器人能够在全新的环境中执行复杂且长期的行为。他们认为,这种泛化水平,尤其是考虑到任务的复杂性,远远超出了先前工作的成果

1.2.2 基于大语言模型的机器人推理和规划

第四,对于基于大语言模型的机器人推理和规划

已有大量研究表明,将端到端策略与高级推理相结合,能够显著提升长时序任务的性能——尤其是在高级子任务推理能够借助大规模预训练LLM和VLM的情况下,比如

  • 2-Do as i can and not as i say
  • 36- Look before you leap
    44-Interactive task planning with language models
    74-Open-world object manipulation using pre-trained vision-language
     models,
  • 71-Yell at your robot,4-Rt-h,16-Racer
    11-Automating robot failure recovery
     using vision-language models with optimized prompts
  • 53 -Okrobot
    88-Robotic control
     via embodied chain-of-thought reasoning,
  • 51-Moka: Open-vocabulary robotic manipulation through mark-based visual prompting
    59-Pivot: Iterative visual prompting
     elicits actionable knowledge for vlms
  • 13-Navila: Legged robot vision-language-action model for navigation
    70-Bumble: Unifying reasoning and acting with vision-language models for building-wide mobile manipulation
  • 91-Closed-loop open-vocabulary mobile manipulation with gpt-4v
    65-Open-vocabulary mobile manipulation in unseen dynamic environments with 3d semantic maps
  • 72-Hi robot: Open-ended instruction following with hierarchical vision-language-action models
    47-Hamster: Hierarchical action models for open-world robot manipulation
    76-Gemini robotics: Bringing ai into the physical world
    8-π0

π0.5的方法也采用了两阶段推理过程:首先推理出一个高级语义子任务(例如“拾起盘子”)然后基于该子任务预测具体动作

但许多先前的方法为此目的使用了两个独立的模型,一个VLM用于预测语义步骤,另一个低层策略模型负责执行这些步骤,比如

π0.5的方法在高层推理和低层推理中均使用完全相同的模型,其流程更类似于

但π0.5与具身链式思维chain-of-thought方法

  • 88- Robotic control via embodied chain-of-thought reasoning,
  • 46-Llara: Supercharging robot learning data for visionlanguage policy,
  • 61-Llarva: Vision-action instruction tuning enhances robot learning

不同的是,π0.5的高级推理过程的运行频率仍低于低层动作推理

即Our method uses the same exact model for both high-level and low-level inference, in a recipe that more closely resembles chain-of-thought [82] or test-time compute [39] methods, though unlike embodied chain-of-thought methods [88, 46, 61], the high-level inference process still runs at a lower frequency than low-level action inference

1.2.3 具有开放世界泛化能力的机器人学习系统

第五,对于具有开放世界泛化能力的机器人学习系统

  1. 尽管大多数机器人学习系统都是在与训练数据高度匹配的环境中进行评估的,但已有一些先前的研究探索了更广泛的开放世界泛化

    当机器人的任务被限制在一组更为狭窄的基础任务时,例如拾取物体,允许任务特定假设的方法(例如抓取预测,或结合基于模型的规划与控制)已被证明能够广泛泛化,甚至适用于全新的家庭环境[4
    40-Robots at the tipping point: the road to irobot roomba
    20-Reviews-consumer technology. the teardownamazon astro consumer robot
    60-Autonomously learning to visually detect where manipulation will succeed
    56-Dex-net 2.0: Deep learning to plan robust grasps with synthetic point clouds and analytic grasp metrics
    29-Anygrasp


    然而,这些方法并不能很好地泛化到通用型机器人可能需要执行的全部任务范围
  2. 最近,在许多领域收集的大规模数据集
    41-Droid: A large-scale inthe-wild robot manipulation dataset
    68-Gnm: A general navigation model to drive any robot
    63-Open-X,67- On bringing robots home
    14-UMI,49-Data scaling laws in imitation learning for robotic manipulation

    被证明能够使简单但端到端学习的任务泛化到新环境中

    再比如
    33-Robot learning in homes: Improving generalization and reducing dataset bias
    31- Navigating to objects in the real world
    67-On bringing robots home
    69-ViNT: A foundation model for visual navigation
    26-Spoc:Imitating shortest paths in simulation enables effective navigation and manipulation in the real world
    49-Data scaling laws in imitation learning for robotic manipulation
    28-Robot utility models: General policies for zero-shot deployment in new environments
    64-FAST π0
  3. 然而,这些演示中的任务仍然相对简单,通常持续不到一分钟,并且成功率往往较低
    他们展示了π0.5 能够执行较长且多阶段的任务,例如将所有餐具放入水槽,或捡起新卧室地板上的所有衣物,同时能够泛化到全新的家庭环境

1.3 π0.5的模型结构

1.3.1 预备知识:含π0.5与π0在模型结构上的细微差别

视觉-语言-动作模型(VLAs)通常通过在多样化的机器人示范数据(比如数据集\mathcal{D})上进行模仿学习训练

其通过最大化在给定观测\mathbf{o}_{t}和自然语言任务指令l 的条件下,动作\mathbf{a}_{t}(或更一般地,一个动作片段\mathbf{a}_{t: t+H})的对数似然值:

\max _{\theta} \mathbb{E}_{\left(\mathbf{a}_{t: t+H}, \mathbf{o}_{t}, \ell\right) \sim \mathcal{D}} \log \left(\pi_{\theta}\left(\mathbf{a}_{t: t+H} \mid \mathbf{o}_{t}, \ell\right)\right)

其中的观测\mathbf{o}_{t}通常包含一个或多个图像\mathbf{I}_{t}^{1}, \ldots, \mathbf{I}_{t}^{n}以及本体感觉状态\mathbf{q}_{t},该状态捕捉机器人关节的位置

VLA架构遵循现代语言和视觉-语言模型的设计,采用特定模态的分词器,将输入和输出映射到离散(“硬”)或连续(“软”)的token表示,并配备大型自回归transformer 主干网络,该网络经过训练可将输入token映射到输出token——这些模型的权重从预训练的视觉语言模型中初始化的

通过将策略输入和输出编码为tokenized表示,上述模仿学习问题可以被描述为在「特定的观察、指令和动作token序列上」的下一个token的预测问题,这样就可以利用现代机器学习的可扩展工具对其进行优化

  1. 在实践中,图像和文本输入的tokenizer 选择遵循现代视觉-语言模型的做法。对于动作,先前的工作已经开发出了有效的基于压缩的token化方法[64-FAST π0],他们在本π0.5研究的预训练阶段使用了这些方法

    注意,也就意味着,π0.5的预训练是基于下一个token的预测技术,且分词技术用的π0_FAST提出的高效tokenization方法
  2. 近期有一些VLA模型也提出通过
    \rightarrow  扩散[55- Rdt-1b, 84-Dexvla, 52-Hybridvla]
    \rightarrow  或流匹配[8-π0]来表示动作分布,从而为连续值动作块提供更具表现力的表示

    在π0.5模型的后训练阶段,他们基于 π0 模型[8]的设计进行构建,该模型通过流匹配来表示动作分布——与动作相对应的token接收流匹配的前一步骤的部分去噪动作作为输入,并输出流匹配向量场 『即the tokens corresponding to actions receive the partially denoised actions from the previous step of flow matching as input, andoutput the flow matching vector field』

    这些token 还使用一套不同的模型权重,称之为” 动作专家”,类似于专家混合架构。这个动作专家可以专门用于基于流匹配的动作生成,并且其规模可以远小于其余LLM 主干(and can be significantly smaller than the rest of the LLM backbone)

当然了,π0.5采用了混合训练流程,在预训练阶段进行离散分词训练,在后训练阶段仅使用flow matching动作专家进行训练,而π0始终使用动作专家『π0.5 uses a hybrid training procedure,with discrete tokenized training in the pre-training phase, andtraining with a flow matching action expert only in the post-training phase, while π0 always uses the action expert.

 原论文附录E详解介绍了模型的技术细节


π0.5模型是在π0的基础上构建的,并采用PaliGemma VLM[5]作为视觉-语言理解的主干网络,同时作为“动作专家”以实现快速动作生成

  1. 该VLM主干网络输入一系列图像\left[\mathbf{I}_{t}^{1}, \ldots, \mathbf{I}_{t}^{n}\right]以及一个类似于π0的语言提示\ell,但还包括机器人的本体感知状态q_{t} (以tokenized形式)和tokenized动作[64],这些将通过自回归方式进行预测
  2. 至于动作专家是一个较小的Transformer,它接收一系列带噪声的动作token \mathbf{a}_{t: t+H}^{\tau, \omega}作为输入,动作时域为50,即H=49,并采用流匹配目标进行训练

    带有动作维度d的噪声动作块首先通过一个单一线性层投影到transformer的嵌入维度
    \rightarrow  与π0不同,π0会将流匹配时间步\tau与噪声动作融合后输入transformer

    \rightarrow  而π0.5则使用独立的MLP仅对\tau进行投影,然后通过自适应RMSNorm将时间步信息注入到动作专家的每一层

    时间步MLP的形式为\operatorname{swish}\left(W_{2} \cdot \operatorname{swish}\left(W_{1} \cdot \phi(\tau)\right)\right),其中\phi: \mathbb{R} \rightarrow \mathbb{R}^{w}为正弦位置编码函数[79],W_{1}, W_{2} \in \mathbb{R}^{w \times w}
    动作专家输出动作token y_{1: H}^{a},随后通过最终的线性投影解码为目标向量场

这两个Transformer的参数设置相同:

  1. 对于从PaliGemma权重初始化的2B VLM,参数为π0: {宽度=2048,深度=18,MLP维度=16,384,注意力头数=18,KV头数=1,头部维度=256}
  2. 而动作专家模型(参数量为3亿)则仅有{宽度=1024,MLP维度=4096}与前者不同,其余参数一致

对于π0.5而言,来自VLM和动作专家的嵌入仅通过自注意力机制进行交互

  • 对于图像、prompt token和本体状态,使用完整前缀掩码
  • FAST动作token可以关注该前缀,并以自回归方式关注之前的动作token
    动作专家(其是连续工作表示)的嵌入可以关注前缀和彼此之间,但不会关注FAST动作token,以避免两种动作表示之间的信息泄漏

实际上,信息以单向流动的方式从VLM传递到动作专家;没有任何VLM嵌入会关注动作专家。每一层的注意力掩码示例如下图图18所示

且遵循π0对流匹配时间步τ进行采样

————
实际上,对于π0而言,如此文《π0源码(openpi)剖析——从π0模型架构的实现:如何基于PaLI-Gemma和扩散策略去噪生成动作,到基于C/S架构下的模型训练与部署》中的「
1.2.4.2 特征嵌入方法:embed_prefix(图像和文本输入)、embed_suffix(状态和动作信息)」所说

  • “`embed_prefix`:处理图像和文本输入(图像通过SigLip模型编码,文本通过Gemma LLM编码),创建前缀 token,皆为双向注意力——即语言token可以关注图像token,图像token反过来亦可关注语言token,最终实现多模态融合,用ar_mask = false表示
  • `embed_suffix`:处理机器人状态信息、噪声化的动作信息(状态和噪声动作经过线性投影和MLP处理),创建后缀 token

其中
  状态为单个token,和第一个动作token均设置为单向注意力,用ar_mask = true表示
  其余动作tokens之间设置为双向注意力,用ar_mask = false表示”


总的来说,对于π0.5

  1. 作者没有采用标准的均匀采样\tau \sim \mathcal{U}(0,1)[50,54],也没有采用强调中间时间步的方法[27],而是采用了一种强调低时间步的时间步采样分布[8],其形式为p(\tau)= \operatorname{Beta}\left(\frac{s-\tau}{s} ; \alpha=1.5, \beta=1\right)。超过阈值的时间步将这些时间步从采样中排除,因为如果积分步长\delta满足\delta>1-s,则不需要它们
  2. 在作者的实验中,作者使用s = 0.999,这可以支持最多1,000个积分步(\delta>0.001)。作者对所有输入图像应用图像增强(随机裁剪、缩放、旋转和颜色抖动),按照以下超参数并依次进行
    transforms = [
         augmax.RandomCrop(int(width * 0.95), int(
    height * 0.95)),
         augmax.Resize(width, height),
         augmax.Rotate((-5, 5)),
         augmax.ColorJitter(brightness=0.3,
        contrast=0.4, saturation=0.5),
     ]

1.3.2 π0.5的模型架构(含训练方法简介)

下图图3 中提供了π0.5 模型和训练方法的概述

首先,模型权重通过「一个在网络数据上训练的标准VLM」做初始化,随后训练过程分为两个阶段:

  1. 预训练阶段
    旨在使模型适应多样化的机器人任务

    在预训练阶段,所有任务(包括涉及机器人动作的任务),均使用离散token表示,这带来了简单、可扩展且高效的训练[64-FAST π0]
    换言之,将所有不同的数据源结合起来生成具有离散token的初始 VLA。此阶段使用来自不同机器人平台的数据、高级语义动作预测以及来自网络的数据。机器人数据使用 FAST action tokenizer将动作表示为离散token[64]
  2. 在后训练阶段
    旨在使其专门用于移动操作,并赋予其高效测试时推理的机制(类似OpenAI o1的test-time inference)
    且,在后训练阶段,他们还给模型配备一个动作专家,就像π0一样,以便既可以更细粒度地表示动作,又可以为实时控制实现更高效的推理
    即,在后训练阶段,利用与任务最相关的数据(包括来自人类监督员的口头指令)对模型进行专门化处理,使其适用于移动操作的低级和高级推理。此阶段使用流匹配来表示动作分布,从而能够实现高效的实时推理,并能够表示精细的连续动作序列

其次,在推理时模型首先为机器人生成一个高层次的子任务,然后在此子任务的条件下,通过动作专家预测低层次动作——At inference time, the model first infers a high-level subtask, and then predicts the actions based on this subtask

总之,π0.5架构可以灵活地表示动作块分布和tokenized文本输出,其中后者既用于协同训练任务(例如问答),也可用于分层推理过程中输出高层次子任务预测

模型捕获的分布可以表示为

\pi_{\theta}\left(\mathbf{a}_{t: t+H}, \hat{\ell} \mid \mathbf{o}_{t}, \ell\right)

  1. 其中\mathbf{o}_{t}=\left[\mathbf{I}_{t}^{1}, \ldots, \mathbf{I}_{t}^{n}, \mathbf{q}_{t}\right]由所有摄像头的图像以及机器人的配置(节角度、夹持器姿态、躯干升降姿态和底盘速度)组成
  2. \ell 为整体任务提示(例如,” 收拾餐具”)
  3. \hat{\ell} 表示模型的(分词后的)文本输出,可以是预测的高层次子任务(例如,将餐具放入水槽”任务的子任务——拿起盘子),也可以是网页数据中视觉-语言提示的答案
  4. \mathbf{a}_{t: t+H}为预测的动作块

接下来,他们将分布分解为 

\pi_{\theta}\left(\mathbf{a}_{t: t+H}, \hat{\ell} \mid \mathbf{o}_{t}, \ell\right)=\pi_{\theta}\left(\mathbf{a}_{t: t+H} \mid \mathbf{o}_{t}, \hat{\ell}\right) \pi_{\theta}\left(\hat{\ell} \mid \mathbf{o}_{t}, \ell\right)

通过该表达式,可以很直观的看出来:其中动作分布不依赖于\ell,仅依赖于\hat{\ell},因此

  • 高层推断捕捉到\pi_{\theta}\left(\hat{\ell} \mid \mathbf{o}_{t}, \ell\right)
  • 低层推断捕捉到\pi_{\theta}\left(\mathbf{a}_{t: t+H} \mid \mathbf{o}_{t}, \hat{\ell}\right)

这两种分布均由同一模型表示

该模型对应于一个Transformer,它接收N个多模态输入tokens x_{1: N}这里他们宽泛地使用token一词,既指离散输入,也指连续输入」,并生成一序列多模态输出y_{1: N}

因此,可以写为y_{1: N}=f\left(x_{1: N}, A\left(x_{1: N}\right), \rho\left(x_{1: N}\right)\right)

  1. 每个x_{i}可以是
    \rightarrow  一个文本token:x_{i}^{w} \in \mathbb{N}
    \rightarrow  或一个图像patch:x_{i}^{I} \in \mathbb{R}^{p \times p \times 3}
    \rightarrow  或是流匹配flow matching中机器人动作的中间去噪值:x_{i}^{a} \in \mathbb{R}^{d}
  2. 观测值\mathbf{o}_{t}l构成了x_{1: N}的前缀部分
    根据token类型——由\rho\left(x_{i}\right)指示,每个token不仅可以由不同的编码器处理,还可以由Transformer中的不同专家权重处理

    例如
    \rightarrow  图像patch通过视觉编码器处理
    \rightarrow  文本tokens通过嵌入矩阵进行嵌入
    \rightarrow  按照π0 [8] 的方法,将动作tokens x_{i}^{a}线性投影到Transformer嵌入空间,并在Transformer中使用单独的专家权重处理这些动作token
  3. 注意力矩阵A\left(x_{1: N}\right) \in[0,1]^{N \times N}表示一个token是否可以关注另一个token
    不同于LLM中的标准因果注意力,这里的图像patch、文本prompt和连续动作token采用双向注意力机制
    Compared to standard causal attention in LLMs, image patch, textual prompt, and continuous action tokens use bidirectional attention

    由于作者希望π0.5既能输出文本(用于回答关于场景的问题,或输出下一步要完成的任务),也能输出动作(在环境中执行动作)

    因此函数 f 的输出被分别划分为文本token logits和动作输出token,记作\left(y_{1: M}^{\ell}, y_{1: H}^{a}\right)
    \rightarrow  前 M 个对应于文本token的对数概率,可用于采样\hat{\ell}
    \rightarrow  后 H 个token由一个单独的动作专家生成,就像在 π0 中那样,并通过线性映射投影为连续输出,用于获取\mathbf{a}_{t: t+H}
    请注意,M+H \leq N,即并非所有输出都与损失相关机器人本体感觉状态被离散化后以文本token的形式输入到模型中

1.4 π0.5的训练方案详解:先预训练后微调

1.4.0 如何兼顾训练快、推理快:离散化token训练下(自回归),推理时用连续动作表示(流匹配)

类似于π0,他们一开始就想着在最终模型中使用流匹配flow-matching [50] 来预测连续动作

即给定\mathbf{a}_{t: t+H}^{\tau, \omega}=\tau \mathbf{a}_{t: t+H}+(1-\tau) \omega, \omega \sim \mathcal{N}(0, \mathbf{I}),其中\tau \in[0,1]是流匹配时间索引,模型被训练以预测流向量场\omega-\mathbf{a}_{t}

然而,如[64] 所示,当动作通过离散token进行表示时,VLA的训练速度可以大大加快,特别是在采用对动作片段压缩效率较高的tokenization方案(例如 FAST)时,不幸的是,这类离散表示并不适合实时推理(此处的实时推理 特指需要实时的生成动作token )

因为它们在推理时需要昂贵的自回归解码[64]——说白了,相当于自回归训练快、推理慢

我在解读FAST_π0时,也特地强调过,FAST这种模式可以让训练加速,但让推理却变慢了,详见此文《自回归版π0-FAST——打造高效Tokenizer:比扩散π0的训练速度快5倍但效果相当(含π0-FAST源码剖析)

  1. 因此,一个理想的模型设计应在训练时采用离散化动作但在(动作)推理时仍然允许使用流匹配flow matching 生成连续动作
  2. 因此,π0.5通过自回归采样token(使用 FAST 分词器)和flow field的迭代整合iterative integration来预测动作
    Our model is therefore trained to predict actions boththrough autoregressive sampling of tokens (using the FASTtokenizer) and iterative integration of the flow field

    从而将两者的优势结合起来

此外,他们利用注意力矩阵确保不同的动作表示(离散动作、连续动作)之间,不会相互关注,且最终经过优化,以最小化组合损失

\begin{aligned} \mathbb{E}_{\mathcal{D}, \tau, \omega} & {\left[H\left(x_{1: M}, f_{\theta}^{\ell}\left(\mathbf{o}_{t}, \ell\right)\right)\right.} \\ & \left.+\alpha\left\|\omega-\mathbf{a}_{t: t+H}-f_{\theta}^{a}\left(\mathbf{a}_{t: t+H}^{\tau, \omega}, \mathbf{o}_{t}, \ell\right)\right\|^{2}\right] \end{aligned}

  1. 其中H\left(x_{1: M}, y_{1: M}^{\ell}\right)是文本token和预测对数值logits(包括FAST编码的动作token)之间的交叉熵损失
  2. y_{1: H}^{a}=f_{\theta}^{a}\left(\mathbf{a}_{t: t+H}^{\tau, \omega}, \mathbf{o}_{t}, \ell\right)是(较小的)动作专家的输出
  3. \alpha \in \mathbb{R}是一个权衡参数

该方案使得能够

  • 首先通过将动作映射到文本token (\alpha=0),将π0.5作为标准的VLM Transformer 模型进行预训练——说白了 就是用下个token的预测技术做自回归训练
  • 然后在后训练阶段,为了实现快速推理——添加额外的动作专家权重,以非自回归的方式预测连续动作token

他们发现,在推理阶段,首先采用标准的自回归解码生成文本token \hat{\ell},随后在文本token的条件下进行10步去噪处理,从而生成动作\mathbf{a}_{t: t+H}——At inference time we then uses tandard autoregressive decoding for text tokens ˆℓfollowedby 10 denoising steps, conditioned on text tokens, to produceactions at:t+H

1.4.1 自回归预训练:离散化token下的子任务预测——类似下个token预测

在第一个训练阶段,π0.5使用广泛的机器人和非机器人数据进行训练,如下图图4所示

  1. 预训练数据包括来自移动操纵器(MM)的数据、多样环境下的非移动机器人(ME)的数据、在实验室条件下采集的跨体态数据(CE)、高层次子任务预测(HL),以及多模态网页数据(WD)
  2. 在后训练阶段,额外使用了语言指令(VI),并省略了实验室环境下的跨体态数据(CE),以将模型重点放在移动操纵和多样化环境上。图中展示了每个类别任务的一个示例子集

具体而言,在预训练阶段中,它被训练为一个标准的自回归transformer,能够对「文本、物体位置和FAST编码动作token」进行下一个token的预测It is trained as a standard auto-regressive transformer, performing next-token prediction of text, objectlocations, and FAST encoded action tokens

而预训练中预训练数据的更清晰介绍,则如下所示

  • 多样化的移动操控器数据(MM)
    使用了约400小时的移动操控机器人在约100个不同家庭环境中执行家务任务的数据,其中部分环境在图7中所示,使用的是第IV-E节中的机器人

    这部分训练集与π0.5的评估任务最直接相关,这些任务包括在新的、未见过的家庭环境中进行类似的清洁和整理任务
  • 多样化多环境非移动机器人数据(ME)
    他们还收集了非移动机器人数据,这些机器人配备了单臂或双臂,并部署在各种家庭环境中
    这些机械臂被固定在表面或安装平台上,由于它们重量更轻且更易于运输,我们能够在更广泛的家庭中收集到更加多样化的数据集
    然而,这些ME数据来自于与移动机器人不同的实体形式
  • 跨Embodiment实验室数据(CE)
    他们在实验室中为广泛的任务(例如,清理桌子、叠衣服)收集了数据,这些任务在更为简单的桌面环境和多种类型的机器人上进行
    其中一些任务与π0.5的评估高度相关(例如,将餐具放入垃圾桶),而另一些则不相关(例如,研磨咖啡豆)。这些数据包括单臂和双臂机械臂,以及固定和移动底座

    此外,他们还纳入了开源的 OXE 数据集[15]。该数据集是 π0[8] 所用数据集的扩展版本
  • 高级子任务预测(HL)
    将诸如“打扫卧室”之类的高级任务指令分解为诸如“整理被子”和“捡起枕头”之类的较短子任务,类似于语言模型中的链式思维提示,有助于训练好的策略对当前场景进行推理,并更好地确定下一步行动

    对于 MM、ME 和 CE 中涉及多个子任务的机器人数据,作者们手动为所有数据标注子任务的语义描述,并训练 π0.5 ,使其能够基于当前观察和高级指令,联合预测子任务标签(以文本形式)以及基于子任务标签的动作
    For robot data in MM, ME, and CE where the task involves multiple subtasks, we manuallyannotate all data with semantic descriptions of the subtasks andtrain π0.5 to jointly predict the subtask labels (as text) as well as the actions (conditioned on the subtask label) based on the current observation and high-level command.

    这自然会形成一个既能作为高级策略(输出子任务),又可以作为低级策略(执行这些子任务动作)的模型——相当于从高级指令推断出子任务,继而再预测该子任务所对应的动作
    且还标注了当前观测中显示的相关边界框,并训练π0.5 在预测子任务前预测这些边界框
  • 多模态网络数据(WD)
    即最后,他们包括了一组多样化的网络数据,涉及图像描述「CapsFusion [87], COCO[12])、问答(Cambrian-7M [77], PixMo [19], VQAv2[32]」以及预训练中的目标定位

    对于对象定位,他们进一步通过额外的网络数据扩展了标准数据集,这些数据包含带有边界框标注的室内场景和家庭物品

对于所有动作数据,他们训练模型预测目标关节和末端执行器的姿态。为区分两者,作者在文本prompt中添加:“<control mode> 关节joint/末端执行器end effector <control mode>”

所有动作数据均通过各自数据集中——每个动作维度的1%和99%分位数被归一化到[−1,1]区间。他们将动作 a 的维度设为一个固定值,以适应所有数据集中最大的动作空间。对于配置和动作空间维度较低的机器人,作者对动作向量进行零填充

1.4.2 后训练:基于动作专家,通过流匹配生成连续动作块

在对模型进行离散token 280k 梯度步的预训练后,他们进行第二阶段的训练——称之为后训练

  1. 此阶段的目的是使模型专注于到作者的应用场景(家庭环境下的移动操控),并引入一个动作专家,通过流匹配生成连续动作块
    此阶段将下一个token预测(以保留文本预测能力),与动作专家的流匹配(动作专家在后训练开始时以随机权重初始化)联合训练
    ————

    说白了,预训练在π0.5的预训练阶段中,一切都是next-token prediction(包括动作预测 也是离散化动作token 预测)
    而在后训练中,同时进行了:子任务的离散化token预测,与flow matching下的连续动作(扩散去噪)预测

  2. 他们优化方程 (1) 中的目标寒素
    \begin{aligned} \mathbb{E}_{\mathcal{D}, \tau, \omega} & {\left[H\left(x_{1: M}, f_{\theta}^{\ell}\left(\mathbf{o}_{t}, \ell\right)\right)\right.} \\ & \left.+\alpha\left\|\omega-\mathbf{a}_{t: t+H}-f_{\theta}^{a}\left(\mathbf{a}_{t: t+H}^{\tau, \omega}, \mathbf{o}_{t}, \ell\right)\right\|^{2}\right] \end{aligned}
    其中 α=10.0,进行额外的 80k 步训练
  3. 后训练动作数据集包含MM和ME机器人数据,筛选为长度低于固定阈值的成功片段。还引入网页数据(WD),以保持模型的语义和视觉能力,并加入与多环境数据集相关的HL数据切片
  4. 此外,为提升模型预测合适高层子任务的能力,他们收集了口头指令演示(VI),由专家用户通过“语言演示”构建,选择合适的子任务指令,逐步指挥机器人完成移动操作任务
    这些示例通过实时“远程操作”机器人并结合已学习的低层策略完成任务,实质上为训练好的(低层)策略提供了高质量高层子任务输出的演示

1.5 机器人系统细节

作者在移动操作实验中使用的机器人系统如图5所示

  • 所有实验均采用了两种类型的移动操作机器人。这两种平台均配备有两个6自由度机械臂,带有并联夹爪和腕部安装的单目RGB摄像头,以及轮式全向底盘和躯干升降机构。底盘的状态和动作空间对应于线速度(二维)和角速度(一维),而躯干升降机构为一维(上下)或二维(上下与前后)
  • 除了两个腕部摄像头外,机器人在两臂之间还安装有面向前后各一个摄像头。在高层推理时使用所有四个摄像头,在低层推理过程中则使用腕部和前置摄像头。根据平台不同,状态和动作空间的总维度为18或19
  • 控制系统非常简单:π0.5模型直接以50 Hz(带有动作分块)频率为机械臂、夹爪和躯干升降机构下达目标位姿指令,并为底座下达目标速度指令
    这些目标通过简单的PD控制器进行跟踪,无需额外的轨迹规划或碰撞检测。所有操作与导航控制均为端到端实现

第二部分 实验评估

π0.5模型旨在广泛泛化到全新的环境。尽管通常会在与训练数据相匹配的环境中评估VLA,作者的所有实验均在训练过程中未见过的新环境中进行

为了进行定量比较,作者采用一组模拟家庭环境,以提供可控且可复现的实验设置,而最真实的最终评估则在三个位于真实家庭中的环境中进行,这些家庭并未包含在训练集中(见图6)

实验主要关注以下几个问题:

  1. π0.5能否有效泛化到全新家庭中的复杂多阶段任务?
  2. π0.5的泛化能力如何随着训练数据中不同环境数量的增加而变化?
  3. π0.5训练混合中的各个协同训练要素分别对其最终性能有何贡献?
  4. π0.5与π0VLA相比表现如何?
  5. π0.5的高层推理组件有多重要?它与扁平的低层推理以及理想高层基线相比表现如何?

// 待更

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐