科技行者 2026-11-09 15:46:58
2014年之后的很长一段时间里,机器人强化学习领域有个心照不宣的规矩:一个策略对应一个任务。你想让机械臂学会开抽屉,就单独训练一个模型;想让它学会倒水,再单独训练一个。这样做效率很低,但大家都接受了,因为同时教会一个策略做很多件事,实在太难了。
难在哪里?
想象你同时带四个性格迥异的学生备考。一个学得飞快,一个原地踏步,一个偶尔开窍偶尔退步,还有一个干脆拒绝配合。如果你用同一套教案、同一个进度表对付所有人,大概率是快的学生被拖慢,慢的学生被落下,最后谁都没教好。多任务强化学习面对的正是这个局面:40个任务的难度、奖励信号、学习速度完全不同,硬塞进一个策略里联合训练,很容易出现几个简单任务学得很好、剩下大半任务几乎学不会的局面。
这篇来自英伟达、香港科技大学(广州)和清华大学的研究论文,就是想解决这个问题。他们搭了一个叫Hebero的训练平台,又设计了一套叫DGPO的训练方法,最终让一个参数量只有0.32M(32万个参数,比很多手机APP的图标文件还小)的紧凑策略,同时学会了40个高度不同的机械臂操作任务,平均成功率达到90.1%。这个数字放在"一个脑子干40件事"的背景下,是相当惊人的。
GPU并行仿真:把实验室搬进显卡
第一个要解决的问题其实不是算法,是基础设施。
机器人强化学习天生就吃训练数据,而训练数据来自大量的试错交互。过去这种交互要么靠真实机器人(慢、贵、还容易损坏硬件),要么靠CPU上跑的物理仿真器(比如MuJoCo),但CPU仿真的并行能力有限。
GPU并行仿真:利用显卡同时计算成千上万个独立的物理场景,让机器人可以"同时"在几千个平行世界里反复试错,大幅提升数据收集速度。
Hebero把LIBERO基准(一个业界常用的、包含40个任务的机器人操作测试集)里的全部40个任务,塞进了同一个GPU并行仿真进程。论文里给出的数字很直观:在单张L20显卡上,Hebero能跑到每秒7500步的仿真吞吐量,是他们对照的96核CPU版MuJoCo基准(每秒2200步)的3.4倍。而且内存占用只有10.6GiB显存,相比之下CPU方案占用了1.5TiB的主机内存。
这个对比不是炫技,它直接决定了后面所有实验能不能做。如果仿真速度慢、内存开销大,你根本没法在合理时间内让一个策略吃够40个任务的数据,更谈不上联合训练。
这里有个细节值得多说一句:扩大并行环境数量,确实能在相同的训练时间预算下带来更高的成功率。论文里的实验显示,当每个任务的并行副本数从40个增加到4000个时,整体平均成功率从个位数一路爬升到70%以上。这就好比你练钢琴,一天练一小时和一天分十个时段各练六分钟,效果可能差不多,但如果能把这十段并行塞进同一个小时,你练习的总量就上去了,熟练速度自然更快。GPU并行仿真做的正是这种"压缩时间"的事。
示范数据怎么用:DGPO框架的三件套
光有快的仿真器还不够,因为多任务学习的核心难题仍在:稀疏奖励下怎么学。
稀疏奖励:很多机械臂任务只有在完成的那一刻才给策略一个"成功"信号,中间过程完全没有反馈,这会让策略在摸索阶段几乎像无头苍蝇一样乱撞。
研究团队的思路是,既然LIBERO每个任务都配了50条人类示范轨迹,为什么不把这些轨迹用得更彻底一点?于是他们设计了DGPO(Demonstration-Guided Policy Optimization,示范引导的策略优化)框架,核心是三个共享组件。
第一个是示范追踪奖励。传统做法可能只在任务最终完成时给奖励,DGPO则把示范轨迹里机械臂的运动轨迹、物体的位置变化都变成密集的奖励信号,策略每一步越贴近示范轨迹,拿到的奖励就越多。这就像学游泳时,教练不是等你游到对岸才给反馈,而是全程盯着你的划水姿势、呼吸节奏,随时纠正。如果没有这种密集反馈,初学者很可能在水里扑腾半天都摸不着门道,因为他根本不知道自己哪一步做对了、哪一步做错了。
第二个是非对称价值学习。训练时负责"打分"的评论家(critic)网络能看到比实际执行策略的演员(actor)网络更多的信息,比如物体和目标之间的精确误差。这种信息不对称只在训练阶段存在,部署时策略依然只用它平时能拿到的那些传感器数据。
非对称critic(评论家网络):强化学习里常见的架构,一个负责决策行动(actor),一个负责评估这个决策好不好(critic);非对称指的是critic训练时能看到比actor更多的"内部信息",帮助它打分更准,但不会泄露给actor,保证actor部署时依然能独立工作。
第三个是一套统一的示范命令流,负责在上千个并行环境里管理每个环境当前走到示范轨迹的哪一步、用的是哪条轨迹。这件事听起来琐碎,但如果没有这套集中管理机制,几千个并行环境各自为政地去查轨迹数据,会造成大量重复存储和调度混乱。
IW-ABC:用一个信号同时调度"该教多少"和"该重视谁"
DGPO搭好了框架,但框架只是地基,真正决定效果的是上面具体怎么调度训练资源。论文里最核心的创新,是一个叫IW-ABC的训练策略。
IW-ABC背后的洞察其实挺朴素:每个任务的学习进度,可以用一个很轻量的信号来衡量,就是这个任务最近的训练成功率。不需要额外跑评估,直接从训练过程中的滚动数据统计就行。研究者管这个信号叫τk(任务k的学习进度),它会随着训练不断更新,用的是指数滑动平均(EMA)的方式,老数据权重逐渐衰减,新数据权重逐渐增强。
有了这个进度信号,两件事就可以联动起来。
第一件事是ABC,自适应行为克隆(Adaptive Behavior Cloning)。
行为克隆(BC):最简单粗暴的模仿学习方式,让策略直接模仿示范轨迹里对应时刻的动作,类似"抄作业"。
ABC的聪明之处在于,它不是让策略永远抄作业,而是让抄作业的力度随着两个变量动态调整:一是这个任务自己学得怎么样了(τk越高,抄作业力度越小),二是整体训练进行到什么阶段了(训练越往后,所有任务的抄作业力度都会统一收紧到一个很低的下限)。
这就像家长辅导孩子写作业,一开始孩子什么都不会,家长手把手教,几乎是代笔。等孩子某道题型已经掌握了,家长就会主动放手,让孩子自己尝试,哪怕偶尔出错也不再立刻纠正。但如果家长永远不放手,孩子就永远学不会独立解题,考试时没有家长在身边照样翻车。如果没有这种"随进度递减"的设计,策略会一直依赖示范动作,一旦遇到和示范轨迹稍有偏差的新场景(比如物体位置被随机挪动了),就完全不知道该怎么办,这正是论文后面提到的"评估协议会重新随机采样物体位置,而不是重复播放录制好的摆放"所要测试的能力。
第二件事是IW,重要性加权(Importance Weighting)。
这个机制针对的是另一个问题:均衡地收集每个任务的数据,不代表均衡地学会每个任务。 简单任务可能三两下就学会了,难任务却一直停滞,但如果PPO更新时给所有任务一样的权重,难任务的声音就会被简单任务的海量成功样本淹没。
IW的做法是,把每个任务当前的进度τk和全部任务的平均进度τ做比较,进度落后于平均水平的任务会获得更大的损失权重,这样它们在策略梯度更新里的"话语权"就被放大了。打个比方,这有点像班级里排座位,老师特意把成绩落后的同学调到前排、多提问,不是因为偏心,而是因为这些同学需要更集中的注意力才能跟上进度,如果座位安排对所有人一视同仁,落后的同学只会越落越远。
论文还做了一个很细致的消融实验,验证这个重要性加权到底该作用在策略网络(actor)上,还是同时作用在价值网络(critic)上。结果很明确:两者都加权,平均成功率90.1%,长时任务成功率70%;只加权actor,平均成功率骤降到78.2%,长时任务成功率只有50%。这组对比说明,如果只纠正"做什么动作"的偏差,而不纠正"怎么评估这个动作好不好"的偏差,效果会打折扣,相当于只告诉落后的同学该读哪页书,却没有同步调整给他们的测验难度和反馈密度。
把这两件事放在一起看,IW-ABC其实是用同一套进度信号,同时回答了"该不该继续抄作业"和"该不该被多关注"这两个问题,这种一致性设计比分别设计两套独立机制要精简得多。
实验结果:数字怎么说话
论文里对比了一整套学习方法,全部共享DGPO的训练底座,区别只在于怎么使用示范数据。下面这张表是核心结果,所有方法都在相同的40任务、相同的30000次PPO迭代、相同的50条示范轨迹下训练。
| 方法 | 是否用重要性加权 | 平均成功率 | 长时任务成功率 | 任务覆盖数(满分40) |
|---|---|---|---|---|
| 纯PPO(无示范) | 否 | 50.8% | 10.0% | 20 |
| BC初始化后接PPO | 否 | 47.5% | 20.0% | 18 |
| ABC | 否 | 75.5% | 40.0% | 29 |
| FAMO-ABC(最强基线) | 否 | 82.3% | 53.3% | 30 |
| IW-ABC | 是 | **90.1%** | **70.0%** | **35** |
| 视觉版IW-ABC | 是 | **93.5%** | **81.9%** | **38** |
这张表里有几个数字值得停下来多看一眼。
首先,单纯用示范做离线初始化(BC→PPO)反而比什么都不用的纯PPO还要差一点(47.5% vs 50.8%),这说明离线预训练的知识如果不能在在线阶段被持续"激活",很容易在后续训练中被遗忘甚至带偏方向。
其次,ABC相比BC→PPO有巨大跃升(75.5% vs 47.5%),这证明了在线、动态的示范引导比一次性的离线模仿更有效,因为它能根据当前训练状态实时调整引导强度,而不是在训练一开始就把所有鸡蛋放在一个篮子里。
第三,IW-ABC相比目前最强的竞品FAMO-ABC,平均成功率高出7.8个百分点,长时任务成功率更是高出16.7个百分点(70.0% vs 53.3%)。
FAMO:另一种多任务平衡方法,全称Fast Adaptive Multitask Optimization,它通过观察每个任务损失函数的下降速度来动态调整权重,原本设计用于价值函数(critic)的平衡。论文里把FAMO和ABC结合做成FAMO-ABC作为最强对照组。
长时任务(Long任务)的成功率提升幅度最大,这个现象很值得琢磨。长时任务通常意味着机械臂要完成一连串步骤才能拿到最终奖励,比如先拿起一个物体,再打开一个抽屉,再把物体放进去,中间任何一步失误都会导致整个任务失败。这类任务原本就是稀疏奖励问题里最棘手的那种,信号稀疏到几乎像在黑暗里摸索。IW-ABC能把长时任务的成功率从53.3%一口气提到70%,说明这套"进度感知+动态加权"的机制,恰恰在最难啃的骨头上发挥了最大作用。
视觉版本的IW-ABC表现更进一步,达到93.5%的平均成功率,这个版本的策略不依赖物体的精确坐标信息,而是直接从第三人称和手腕摄像头的图像里提取特征(用的是一个冻结参数的Tiny ViT视觉模型,策略网络只需要学习一个轻量的注意力池化层来汇总图像特征)。视觉版本总参数量是5.92M,依然算是一个相当紧凑的策略,却反而比状态输入版本效果更好,这多少有点反直觉,因为通常大家会觉得给策略喂"已经处理好的精确坐标"应该比喂"原始图像"更容易学。一个可能的解释是,视觉特征里蕴含了状态向量没有编码进去的额外上下文信息,比如物体的朝向细节、遮挡关系等等。
真实机器人上的验证
仿真里跑得好,不代表真实世界能用。很多强化学习论文的痛点就卡在这一步,仿真和现实之间存在所谓的"sim-to-real gap"(仿真到现实的差距),策略在仿真里学得再漂亮,搬到真实机械臂上可能立刻失灵。
这篇论文选了一个相对保守但扎实的验证方式:他们没有直接测试最复杂的视觉策略迁移,而是用状态输入的IW-ABC策略,在仿真里联合训练四个RoboTwin Piper机械臂任务(点击铃铛、摇晃瓶子、把药瓶移到垫子上、把容器放到盘子上),然后把训练好的策略权重原封不动地部署到真实的Piper机械臂上,中间不做任何权重更新。
真实世界的物体姿态感知,用的是FoundationPose(一个基于RGB-D图像的6D姿态估计和跟踪模型),把估计出来的物体位置转换到机器人坐标系里,喂给冻结的策略网络。
结果是20次试验里,总体成功率达到82.5%。具体拆开看,点击铃铛任务20次全中,摇晃瓶子15次成功,药瓶挪移13次成功,容器放置18次成功。这个结果说明,仿真里学到的多任务策略确实具备跨越现实鸿沟的能力,哪怕只是在一个相对有限的四任务场景里。
这也从侧面印证了一件事:示范追踪奖励和非对称critic这类在仿真训练阶段精心设计的机制,最终目标不是让策略在仿真评估指标上好看,而是让学出来的行为真的具备可迁移、可泛化的结构,这才是机器人学习真正要解决的问题。
这篇工作还留了哪些问题
论文自己也坦承了局限。IW-ABC依赖的时间索引式行为克隆目标,本质上是让策略在训练过程中的某一时刻去模仿示范轨迹里同一时刻的动作,但如果策略的实际轨迹和示范轨迹产生了偏移(这种偏移在复杂任务里几乎不可避免),这种按时间对齐的模仿目标就可能失去意义,相当于你在模仿一个人跳舞,但你们俩的节拍已经逐渐错开了,再怎么模仿都对不上点。虽然论文里提到追踪奖励能在一定程度上缓解这种偏移,但没有完全解决。
另外,受限于研究资源,目前的训练和评估只覆盖了LIBERO和RoboTwin这两个基准,没有扩展到更大规模或更多样化的任务集合。研究团队也明确表示,未来会把这套基准构建方法和DGPO训练框架扩展到更有挑战性、规模更大的任务体系里去。
写在后面
读这篇论文时,最让我驻足的其实不是最终那个90.1%的数字,而是IW-ABC的设计逻辑:它没有为"该怎么分配示范引导力度"和"该怎么分配任务权重"分别造两套复杂系统,而是硬生生用同一个廉价的信号(训练成功率的滑动平均)同时回答了这两个问题。这种"一个信号、两处复用"的思路,其实是工程实践里一种挺稀缺的克制,很多论文的倾向是给每个子问题配一个专门模块,最后系统臃肿得难以维护,而这里反而做了减法。
还有一个细节让我重新想了一下"模仿学习"这件事的本质。论文里提到,单纯的离线BC初始化(BC→PPO)效果比完全不用示范的纯PPO还要差(47.5% vs 50.8%)。这个结果乍一看有点尴尬,花了力气去预训练,结果反而拖了后腿。但细想一下其实挺合理:如果示范动作本身和真实部署场景存在哪怕很细微的分布差异(比如论文评估协议里会重新随机采样物体位置),那么一个被示范数据"锚定"得太死的初始策略,反而可能在后续在线训练阶段更难摆脱错误的先验,这就是为什么ABC选择让模仿力度随进度和时间动态衰减,而不是一次性灌输完就撒手不管。这让我想到教育里一个老生常谈但常被忽视的道理:填鸭式的知识灌输,有时候比不教还糟糕,因为学生得先费力气忘掉错误的套路,才能重新学会正确的。
这篇论文还没完全解决的那个"轨迹漂移"问题,其实是个很有意思的开放题。一个策略在模仿示范时逐渐偏离轨迹,这和人类学一项新技能时的情况其实很像:你照着教练的动作学网球发球,学着学着你的节奏、力度已经形成了自己的习惯,这时候还死守着教练最初演示的"标准动作时间轴"去纠正你,可能已经不是最优的教学方式了。怎么设计一种能感知"学生已经走出自己的路"并随之调整引导方式的机制,这个问题留给未来的研究者,也留给每一个正在学一项新技能的人。
Q&A
Q1:Hebero是什么?
A:Hebero是一个基于Isaac Lab构建的GPU并行机器人学习基准,把LIBERO基准里全部40个高度不同的操作任务整合进同一个GPU并行仿真进程,支持状态输入和视觉输入两种策略的联合训练与评估。
Q2:IW-ABC相比其他方法效果好在哪里?
A:IW-ABC用同一个轻量的任务学习进度信号,同时调度自适应行为克隆的引导力度和PPO更新的任务权重。在40个任务上达到90.1%的平均成功率,比最强基线FAMO-ABC高7.8个百分点,长时任务成功率更是高出16.7个百分点。
Q3:这个多任务策略真的能用在真实机器人上吗?
A:论文在真实的Piper机械臂上做了验证,一个仅在仿真中联合训练出的四任务状态策略,不做任何权重更新直接部署到真实硬件,20次试验的总体成功率达到82.5%,证明了仿真训练的多任务策略具备现实可迁移性。
【版权声明】本文内容来源于科技行者,版权归原作者及原媒体所有。本站仅作信息分享,不构成任何商业用途;如涉版权问题,请联系本站删除。
发布时间:2026-11-09 15:04:11
(第1/1页/共7829字/3阅)