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

pi*0.6的RECAP:VLA如何从成功、失败和人工纠正中继续学习

一、普通SFT的缺点

VLA 模型通常从人工示范中学习,训练数据告诉模型,看到这个画面和任务指令时,执行这组机器人动作。这种方法适合让机器人快速掌握基本技能,但存在一个明显问题,模型只知道模仿数据,不知道数据中的动作到底有多好。

机器人真正部署后,经常会遇到示范数据没有覆盖的问题。例如,

  • 叠衣服时碰乱已经折好的部分;
  • 打开冰箱后碰倒里面的物品;
  • 纸箱虽然组装成功,但动作过慢;
  • 任务执行到一半后进入难以恢复的状态。

这些错误只有机器人实际运行时才会出现。最直接的做法是把新收集的数据继续加入SFT。但自主运行数据中既有成功动作,也有错误动作。如果全部当作正确答案训练,模型可能同时学习好动作和坏动作。只保留成功轨迹同样不理想,一条最终失败的轨迹,前面可能包含很多正确动作;一条最终成功的轨迹,中间也可能绕路、停顿,甚至出现被后续动作修复的错误。

因此,RECAP不直接按照整条轨迹的成功或失败筛选数据,而是尝试判断每个动作是否推动了任务进展。RECAP的全称是:RL with Experience and Corrections via Advantage-conditioned Policies,可以理解为:利用自主经验和人工纠正,通过优势条件策略进行强化学习。

二、RECAP的完整训练闭环

完整的RECAP不是一次普通的微调,而是一套可以重复执行的机器人学习流程,如下,

通用VLA预训练 ↓ 目标任务示范微调 ↓ 机器人自主运行 ↓ 收集成功、失败和人工纠正数据 ↓ 训练价值函数 ↓ 计算每个动作的优势 ↓ 使用优势条件重新训练VLA ↓ 重新部署并继续收集数据

机器人需要在真实环境中运行,产生新的自主轨迹;但模型参数的更新仍然可以离线完成。它不是让机器人一边执行任务,一边运行PPO更新参数,而是先收集一批数据,再集中训练。RECAP主要使用三类数据,

1、人工示范

人工示范提供任务的基本解法,通常作为高质量动作数据使用。

2、机器人自主轨迹

自主轨迹包括成功和失败两种结果。这些数据最接近模型部署时真正遇到的状态,因此很适合用来修复模型自身的失败模式。

3、人工纠正

机器人自主运行时,操作员可以在关键错误发生前接管控制。例如机器人准备碰倒物体时,人工接管机械臂,将动作修正到安全方向。RECAP默认认为这种纠正动作优于机器人原本准备执行的动作,因此会把人工纠正强制标记为正优势数据。

三类数据不会被简单混成一批普通示范,而是先经过价值函数评价,再用于策略训练。

三、价值函数和动作优势

RECAP需要解决两个问题,1、当前状态距离任务完成还有多远?2、刚才执行的动作有没有让任务变得更容易?第一个问题由价值函数回答,第二个问题由优势回答。

1、从成功标签生成逐帧回报

真实机器人任务通常只有整条轨迹的成功标签。例如一次任务结束后只记录成功或者失败。很少为每一帧动作打分。RECAP使用了一种很简单的奖励设计,

普通步骤:奖励为-1 成功结束:最后一步奖励为0 失败结束:最后一步奖励为一个较大的负数

这种设计会让成功轨迹的累计回报近似表示还剩多少步完成任务。例如一条成功轨迹还剩四步结束,从当前帧开始,那么各帧的累计回报依次为 -3、-2、-1、0。数值越接近0,说明越接近任务完成。失败轨迹最后会得到一个较大的负值,因此它的状态价值整体会明显低于成功轨迹。

2、训练价值模型

价值模型接收的输入与VLA类似,主要包括,

  • 多视角机器人图像;
  • 语言任务指令;
  • 与任务有关的文本信息。

但它不生成机器人动作,而是预测当前状态的价值。论文没有直接让模型回归一个浮点数,而是把价值区间切分成201个离散区间,由模型预测价值分布,再计算期望值。这样做的目的不是要求价值模型精确预测还剩xx步,而是让它能够稳定地区分哪些状态更接近成功,哪些状态正在恶化。

论文中的价值模型使用一个比策略模型更小的VLM主干,参数量约为670M。此外,为了减少只在机器人数据上训练导致的过拟合,还混入了少量多模态网页数据。

3、从价值变化计算动作优势

价值只能判断当前状态好不好,优势则判断某个动作是否比参考行为更好。RECAP使用N步估计。为了避免公式过于抽象,可以直接理解为,

动作优势 = 接下来N步实际获得的奖励 + N步之后状态的价值 - 当前状态的价值

举一个叠衣服的例子。机器人执行动作前,衣服已经基本铺平,

当前价值V_t = -0.4

执行一段动作后,机器人成功折好了一只袖子:

未来价值V_{t+N} = -0.2

价值变得更接近0,说明任务取得了进展,这段动作通常会得到较高优势。

另一种情况是,机器人把已经折好的衣服重新碰乱,

当前价值V_t = -0.2 未来价值V_{t+N} = -0.6

价值明显下降,这段动作的优势就会较低。

4、优势标签不等于成功标签

RECAP会为每个任务设置一个优势阈值,

A_t > 任务阈值时,Advantage: positive A_t <= 任务阈值时,Advantage: negative

negative不一定表示动作彻底错误,它只表示这个动作没有达到当前任务设定的改进标准。同样,最终成功轨迹中的某些动作也可能被标记为低优势,因为这些动作可能没有推动任务进展,或者执行效率较低。

论文在预训练阶段按任务设置阈值,使用该任务价值预测结果的30%分位点作为参考。这样可以减少不同任务时长、难度和价值范围造成的影响。

四、pi*0.6接入Advantage Conditioning

pi*0.6并没有单独增加一个复杂的强化学习控制器,而是把优势标记转换成文本,直接加入VLA的输入序列。

当动作被判断为高优势动作时,输入中加入Advantage: positive,否则加入Advantage: negative

该文本位于模型预测出的子任务信息之后、动作之前。模型原来的输入可以简化为,

图像 + 任务指令 + 子任务 → 动作

加入优势条件后变成,

图像 + 任务指令 + 子任务 + 优势标记 → 动作

这样,模型会学习两类动作分布,1、普通情况下,数据中的动作是什么;2、要求生成高优势动作时,动作应该是什么。

适合VLA的原因

pi*0.6的连续动作由Flow Matching Action Expert生成。对于这类模型,直接使用PPO等策略梯度方法并不方便,因为动作模型通常没有容易计算的对数概率。RECAP绕开了这个问题,它先在模型外部训练价值函数并生成优势标签,再把策略优化转换为带条件的监督训练。连续动作部分仍然使用原来的Flow Matching Loss,不需要把整个VLA改造成传统的Actor-Critic结构。

示范和人工纠正处理方法

目标任务最开始进行示范微调时,优势条件固定为正。人工在机器人自主运行过程中提供的纠正动作,也会被强制标记为正。给出原因很直接,人工通常只会在机器人即将犯错时接管,此时纠正动作大概率优于机器人原本准备执行的动作。

推理时价值模型的使用情况

推理时不需要使用价值模型。价值模型主要在训练阶段负责生成优势标签。策略完成训练后,可以直接给pi*0.6输入正优势条件,生成动作。因此,最终部署时不需要每一帧都额外运行价值模型。

与 CFG 的关系

训练过程中,RECAP会随机去掉部分优势条件,让同一个模型同时学会:

不带优势条件的动作预测

以及:

带正优势条件的动作预测

推理时可以直接使用正优势条件。论文把这种情况对应为引导强度等于 1。

也可以进一步使用类似 Classifier-Free Guidance 的方式加强引导:

最终输出 = 无条件输出 + 引导强度 ×(正优势输出 - 无条件输出)

但引导强度不是越大越好。

引导过强可能把动作推到训练分布边缘,使机械臂动作变得过快或过于激进。论文默认主要使用直接的正优势条件,而不是依赖很大的 CFG 系数。

五、RECAP的优势

RECAP最重要的作用不是简单提高成功率,而是让VLA能够使用部署后产生的数据。普通SFT通常面临两个选择,1、保留失败数据,可能学到错误动作;2、删除失败数据,又会丢失大量有效步骤。

RECAP提供了第三种选择,即保留全部数据,但告诉模型哪些动作更值得加强。

因此,一条失败轨迹不再被整体丢弃。轨迹前半段的正确动作仍然可以作为训练数据,导致任务恶化的动作则不会被当作高优势行为。同样,一条成功轨迹也不会被默认视为每一步都最优。动作是否值得加强,由价值变化和优势阈值共同决定。

论文实验覆盖了叠衣服、制作意式咖啡和纸箱组装等长时程任务。在部分难度较高的任务上,RECAP使单位时间内成功完成的任务数量提升到原来的两倍以上,同时把失败率大约降低了一半。

但是,RECAP并不是完全自动解决机器人强化学习问题,它仍然依赖以下前提,

  • 任务需要能够判断最终成功或失败;
  • 价值模型需要正确理解图像中的任务进度;
  • 优势阈值需要与具体任务匹配;
  • 部分任务仍需要人工提供纠正数据;
  • 错误的价值估计会进一步产生错误的优势标签。

因此,实际训练中最关键的不只是策略模型,还包括价值模型和优势数据的质量。

http://www.jsqmd.com/news/1009558/

相关文章:

  • 从车规级到边缘AI:飞凌OK-MX93xx-C开发板开箱与核心功能实测(附i.MX 93资源解析)
  • 三步搞定微信聊天记录永久保存:WeChatExporter终极指南
  • 告别51,拥抱STC32:从Keil C51到C251的工程迁移与配置详解
  • 【JAVA毕设源码分享】springboot+vue的在线课程学习网站的设计与实现(程序+文档+代码讲解+一条龙定制)
  • 2026年比较好的换热器化工设备/回收化工设备/化工设备用户口碑推荐厂家 - 品牌宣传支持者
  • ESP32开发板选购避坑指南:CH340 vs CH9102X,在Mac上烧录程序前你必须知道的事
  • 告别YUV图片转换烦恼:在Ubuntu 22.04上从源码编译libjpeg-turbo的完整指南
  • 2026年V2G充电桩厂家权威性分析:诚信与实力如何兼顾?——基于四川及全国主流企业的多维度测评 - 优质品牌商家
  • 别再只会用MySQL了!用Docker Compose 5分钟搞定Milvus向量数据库(附避坑指南)
  • 雷电模拟器dnconsole命令详解:从文件管理到批量操作,提升手游工作室效率的5个技巧
  • Mac鼠标滚动卡顿怎么办?Mos平滑滚动工具终极解决方案
  • 2026年评价高的芜湖稽查应对服务/芜湖财税咨询服务性价比高的公司 - 品牌宣传支持者
  • 矩阵李群在机器人运动控制中的应用与实现
  • 深信服EDS存储容量怎么算?手把手教你规划戴尔服务器上的SSD与HDD配比
  • 2026去除图片背景人物工具大全:电脑手机在线及PS抠图操作教程
  • 电赛小白也能搞定的旋转倒立摆:STM32 HAL库+双环PID实战避坑指南
  • 法考讲义pdf|讲义|资料已整理
  • Java毕设项目:轻量化校园家教资源对接平台的设计与实现 (源码+文档,讲解、调试运行,定制等)
  • 2026金华驾校教练选择指南:本地老牌、耐心教学与实战派谁更值得托付? - 优质品牌商家
  • LangChain 系列之 Messages:为什么大模型对话不是简单字符串?
  • RK3588开发板长按关机时间怎么改?手把手教你修改RK806的DTB配置
  • 法考讲义免费下载|讲义|资料已整理
  • Android AudioRecord实战:从权限申请到PCM数据流,一个完整录音封装类详解
  • Azure ML零基础实战:从Compute Instance快速启动训练环境
  • 从GPT-1到GPT-4o:一个后端工程师眼中的模型演进与API调用实战
  • CarPlay开发者的工具箱:除了苹果官方文档,Linux和Android平台各自还有哪些‘神器’?
  • 从玩具到工业设备:一张图看懂不同应用场景下,船型开关的选型要点与降额标准
  • 从‘星际争霸’到多智能体算法:手把手用PyMARL框架在SMAC上跑通第一个QMIX实验
  • 我把常用的Matlab脚本做成了独立桌面应用,不用开Matlab也能运行了
  • 2026-06-14:切换打开灯泡。用go语言,给定一个整数数组 bulbs,数组中每个元素都在 1 到 100 之间。共有 100 个电灯泡,编号从 1 到 100,初始时全部处于关闭状态。 依次遍