机器人记忆越长越好?Long-WAM给出相反答案
你有没有想过,一个机器人手臂要接住传送带上正在移动的杯子,它到底需要"看"多久的历史画面才能判断准?直觉上答案可能是:越多越好呗。多看点历史,总比少看强。但NVIDIA、MIT、香港大学联合团队的这篇最新研究告诉你,事情远比这复杂。他们发现一个让人意外的现象:给机器人更长的记忆窗口,有时候完全没用,甚至会拖慢反...
传送带上的杯子在动,机械臂要把它接住,得“看”多久的历史画面才够?这个问题听起来简单,答案却没那么直白。
直觉上,多看总比少看强。NVIDIA、MIT、香港大学联合团队的最新研究却给出了不一样的结果:把机器人的记忆窗口拉长,有时毫无作用,甚至会让反应变慢。真正起作用的,不是给不给历史信息,而是底层模型有没有学会怎么用这些信息。这篇论文叫Long-WAM,研究的正是这件事。
先看一个具体场景。杯子在传送带上以每秒7.5厘米的速度移动,机器人要抓住它。市面上的两个强力选手π0.5和Fast-WAM,20次尝试全部失败,一次都没成功。用了新方法的Long-WAM,成功率达到90%。这不是运气,是设计出来的结果。
难点究竟在哪
实时机器人控制,天生带着一对矛盾。
机器人要判断“现在这个动作该怎么做”,光看当前一帧画面不够。杯子往哪个方向移动、速度多快、之前的操作完成到什么程度,这些信息都藏在过去几秒甚至几十秒的画面里。给机器人一段“视觉历史”,看上去是顺理成章的解法。
可历史看得越多,处理这些画面花的时间也越长。机器人要是为了想明白“刚才发生了什么”耗掉太多时间,等它做出反应,传送带上的杯子早就跑远了。
论文开篇提出的核心矛盾正在这里:获取历史信息和及时做出反应,在同一个系统里互相打架。
还有一个此前没被注意到的差别,被研究团队挖了出来:有历史,并不代表会使用历史。他们为此设计了一组对照实验——让三种不同预训练方式得到的视觉基础模型,各自配上同一套机器人动作控制模块,再把输入的历史时长一点点加长,从0秒一路加到38.4秒。
结果很有意思。在RoboCasa GR-1这个模拟测试环境里,用双向预训练方式(也就是业内常用的Wan2.2模型)得到的版本,历史时长拉长了,成功率却原地踏步,19.2秒和0秒时表现几乎没差。而用自回归方式预训练的版本,历史从0秒拉到19.2秒,成功率从63.3%一路涨到78.7%,涨了整整15.4个百分点。两种模型吃进去的历史画面长度完全一样,结果却天差地别。
这说明,单纯“给”模型历史窗口并不够。模型得先具备“读懂历史、预测未来”的能力,才能把这些历史信息转化成更准的动作。这是整篇论文最重要的发现,也是后面所有设计的出发点。
自回归预训练:先学会“预见”,再学“行动”
要理解这个发现,得先弄清楚两种预训练方式的区别。
自回归预训练*:按时间先后,模型逐帧去猜视频的下一帧长什么样,而每猜一帧,都要以它前面已经生成的内容为依据;这种只许朝前看、不许朝后看的结构,就是因果结构。
双向预训练*:训练时,模型能同时获取过去与未来所有帧的信息,时间顺序对它不构成约束。眼下主流的视频生成模型(例如Wan2.2)多采用这种训练方式。
双向预训练出来的模型,生成单张图片或者短视频时效果很好,因为它见过“完整的”视频序列,知道开头和结尾分别是什么样。可当你把这种模型改造成机器人控制系统,要求它必须按照时间顺序、只根据过去发生的事情去推断接下来该怎么做,这跟它训练时养成的思维习惯并不一致。
Long-WAM团队的思路反过来了。他们先让模型做一件“纯粹”的事:只看视频,不告诉它任何机器人的动作指令,专门练习“给我一张起始图片和一句话描述,预测接下来会发生什么”。这个阶段训练出来的模型叫LongLive2.0-Robot,学习素材来自大约1万个小时等效时长的机器人操作视频和第一视角人类活动视频,横跨五个数据集,包括RoVid-X、AgiBot World、EgoDex、EgoVerse和VITRA。
有个细节需要点明:这一阶段跟机器人具体要做什么动作完全无关,模型只专心学一件事——视频后面会怎么发展。正因如此,它能同时拿多种不同机器人的视频、乃至人类手部操作的视频来学,也不用去处理不同机器人动作坐标系彼此对不上这个棘手的麻烦。
打个比方,这就像学开车。一上来就坐进驾驶座练打方向和踩刹车,不如先长时间待在副驾驶上,看路况怎么变、猜前车下一步往哪走。要是跳过这一步直接练操作,学员做出来的动作也许挺规范,可对“接下来要出什么事”毫无预判,真碰上突发状况就慌了手脚。反过来说,先把“预判路况”这项底层能力练够时间,等手真正搭上方向盘,脑子里已经装着一张会动的路况图,动作自然就从容了。
等这套“预判能力”训练完毕,团队再把它改造成可以执行机器人动作的系统。改造有一条不能破的规矩:视频预测这一侧的因果结构得原封不动地保留,不许动。换句话说,负责“想象下一幕画面”的模块,只能看见自己先前预测出来的东西,绝不能偷瞄动作指令那一块的信息。而负责“生成动作”的模块则相反,它可以读取已经观察到的历史、部分去噪后的未来画面预测,以及完整的待生成动作序列。
论文里把这种“先想象未来,再据此生成动作”的模式称为逆向动力学建模,英文缩写IDM。
逆向动力学建模(IDM)*:先由视频预测模块设想出后面几步可能出现的画面,再让动作生成模块结合这份设想和已观察到的历史,一起定下该怎么动。整个过程中设想出来的未来画面只是中间计算产物,从来不会被渲染成能看的图片。
团队另外还比较了两种做法。一种叫“无未来视频预测”,动作生成完全不看任何对未来的设想,只依赖历史画面;另一种叫“联合去噪”,未来画面和动作在每一步计算中互相作用、一起生成。实验数据摆在那里:在LIBERO-Long这个长任务测试集上,IDM模式成功率99.5%,无未来视频预测模式94.5%,联合去噪模式97.8%。先预判、再行动这条路,效果确实是最好的。
context窗口该开多大:并非越长越好
自回归预训练这项底层能力有多重要,前文已经说清。接下来要回答的是另一个问题:历史窗口究竟该开多大?
答案并不统一——不同任务需要的窗口长度差得很远。
LIBERO-Long上,历史加到2.4秒,成功率就从94.5%升到99.5%,继续拉长几乎不再变化,2.4秒基本就是上限。可到了RoboCasa GR-1,情况完全不同:这个测试环境包含多阶段任务,比如要连续拿取、转移好几个物体,历史窗口一路开到19.2秒,成功率还在往上涨,从63.3%升到78.7%。
差别的原因并不复杂。LIBERO-Long的任务结构比较简单,机器人只要掌握“最近发生了什么”,就能判断下一步做什么,更早的历史对当前决策帮不上多少忙。GR-1则要求机器人记住“整个流程进行到了哪一步”,任务链条越长,需要回看的历史自然越长。
不过窗口也不是越大越好。实验数据显示,窗口拉到38.4秒时,RoboCasa GR-1上的成功率反从78.7%降到75.2%。团队的解释是:38.4秒是训练时平均轨迹长度(12.1秒)的三倍,也就是说,大部分采样到的历史帧其实靠“重复第一帧”填充出来,这类假数据占比高达80.4%。问题不在记忆能力本身见顶,而在训练数据里真实的长轨迹样本不够,硬撑出来的超长窗口里掺了大量水分。
这有点像让人回忆过去一整年来决定今天穿什么。假如这一年里绝大多数日子都是同一天的复制粘贴(也就是数据里的“重复填充”),回忆这些内容毫无帮助,反倒让人分心去处理一堆没有信息量的噪音。不限制回忆的真实有效性、一味追求“回忆得更久”,得到的只是虚假的安全感,实际决策质量反而会下滑。
context窗口*:模型做当前决策时实际参考的历史观察时长,论文里按秒数衡量,比如2.4秒、19.2秒等。
还有一个数字值得记住:历史窗口拉长8倍(从2.4秒到19.2秒),RTX 5090显卡上的推理延迟也跟着涨了3.2倍,从107.4毫秒升到341.0毫秒。历史信息不是白给的,看得越多,算得越久,这笔账得算清楚。
速度与精度的拉锯战:怎么让机器人不等待
“该看多久”想明白了,接下来是更现实的工程问题:机器人不能干等着模型算完再动。
论文给出的办法叫异步执行,思路很朴素:模型在算下一步怎么做时,机器人别闲着,先把上一步已经算好的动作继续执行下去。
异步执行*:模型推理和机器人实际执行动作同时进行,互不等待;而不是机器人每做完一个动作就停下来,等模型给出下一条指令。
有个技术细节挺有意思。不少同类系统做异步切换时,怕前后两个动作指令接不上、出现“一卡一顿”的突变,会额外设计平滑过渡机制,比如让新旧动作在交接处做加权混合。Long-WAM团队却发现,自己的系统根本不需要这些补丁。原因还是前面那个核心能力:视频预测这一侧本身具备连续、稳定的未来预判能力,前后两次生成的动作块在重叠部分天然一致,用不着人工去“缝合”。
实验数据很能说明问题。RoboTwin 2.0测试里,Long-WAM从同步切到异步,成功率只掉了0.2个百分点(从94.4%到94.2%)。拿来对比的两个系统,Fast-WAM掉了15.4个百分点,LingBot-VA直接掉了45.5个百分点。
异步执行之外,团队还设计了一套叫流式VAE编码的机制。
VAE*:一种把原始图像压缩成更紧凑“潜在表示”的神经网络模块,机器人系统用它把摄像头画面转成模型能处理的数据格式。
流式*:摄像头画面一边进来,系统就一边处理,不等所有画面收齐才开算,这样处理时间被提前分摊出去,触发指令后的等待也随之减少。
这套机制解决的是另一个细节:如果每次都等整段观察画面收完才开始编码,机器人就会攒下一堆等待时间。流式编码相当于把“排队”拆成边到边处理,后续触发推理的时间点可以往后推,留给交接的空档也能缩得更短。
拿餐厅后厨接单打个比方。厨师非要等一整桌客人全点完才做第一道,这桌人就得干等很久;客人点一道、厨师立刻备这一道的料,等最后一道点完,前面几道已经快出锅了。缩短的不是做菜本身的时间,而是“等待”被重新安排,从集中等待变成边点边做。
工程优化这块,团队还在硬件层面做了大量细节打磨:用四位数值精度(NVFP4)压缩视频预测部分的计算量,复用去噪过程中不会变化的计算结果,针对RTX 5090、DGX Spark、Jetson AGX Thor三款硬件分别做底层算子调优。最终在RTX 5090上,整个推理流程(包括完整的观察画面编码)从未优化的356毫秒降到107.4毫秒,提速3.3倍。每做一次动作决策,留给机器人的反应时间比原来宽裕了三倍以上。
四大模拟测试平台的成绩单
原理讲完,来看具体数据。
LIBERO这个单臂机器人操作测试集上,Long-WAM用IDM模式拿到99.5%的平均成功率;最难的LIBERO-Long子任务同样是99.5%,比LingBot-VA高1.0个百分点,比Fast-WAM高4.3个百分点。
双臂机器人测试集RoboTwin 2.0上,Long-WAM平均成绩94.4%,分别比ABot-M0.5和LingBot-VA 2.0高出0.3和0.8个百分点。
在专门考察动态场景的DOMINO平台上——物体处于移动状态——Long-WAM做了针对性微调后拿到34.9%的成功率,操作得分45.1。横向比,它的成功率比Fast-WAM高15个百分点,操作得分比PUMA多10.1分。这个成绩有分量:DOMINO要求机器人盯着物体运动的趋势去推断拦截轨迹,正好是检验“历史信息能否被正确用起来”的最直接考场。
RoboCasa GR-1上的情况前文已提及:历史从0秒拉到19.2秒,成功率由63.3%升到78.7%。78.7%这个数字高于所有被测过的其他方法,比排在第二的Cosmos Policy(67.1%)多出11.6个百分点。
规划与执行,各自该管哪一摊
论文还安排了一组系统级实验,颇有启发。用的是RoboCasa365,这个平台专门考察“原子技能”和“复合任务”。
原子技能指“拿起杯子”“打开柜门”这类单一的基础动作;复合任务则要把若干原子技能串起来,完成一个更复杂的目标,例如“把所有碗叠好放进柜子”。
团队先把Long-WAM单独拎出来测。在已经见过的原子技能上,它的成功率是67.9%,π0.5同期只有39.6%。Long-WAM自身的“手上功夫”确实过硬。
接下来这组对比更有看头。团队给Long-WAM外挂了一个高层规划模块GPT-6 Astra,Long-WAM本身完全不重训,只让规划模块去分配该执行哪个子任务。整体成绩从31.4%升到54.4%,多了23个百分点。同一个规划模块接到π0.5上,涨幅只有13.6个百分点。
这组对比点出一件常被忽略的事:规划再强,底层执行模块不扎实,规划能带来的提升也有限。反过来,执行够强,规划才真正兑现出它该有的价值。
好比乐队里指挥和演奏者的关系。指挥再出色,乐手连音准和节奏都把不住,那些精妙构思根本落不了地。乐手技艺过硬,指挥每一个细微手势才能变成动人的音乐。规划与执行,从来不是谁替代谁,而是两种能力互相放大。
真实机器人上的表现:速度与长任务双重考验
除模拟环境外,团队还在真实的Unitree G1人形机器人和YAM双臂机械臂上做了实测。
G1上,传送带速度从3厘米/秒一级级提到7.5厘米/秒,Long-WAM的抓取成功率一直稳在90%到100%之间。π0.5在最高速度下成功率是0%,Fast-WAM在6.0和7.5厘米/秒下同样都是0%。
难度更高的一项是“动态叠杯”:杯子在移动,机器人既要抓住它,还得准确套进另一个固定杯子,拦截和对准缺一不可。20次测试,Long-WAM成了19次;π0.5和Fast-WAM加起来,20次里一次都没成。
YAM机械臂上测了三项平均耗时超过40秒的长流程任务:按颜色分拣积木、把饺子放进锅里、把碗叠起来。成功率依次是80%、80%、85%,平均81.7%。这类任务考的不是瞬时反应,而是能不能在漫长的操作过程里持续、准确地推进到下一步。
两类测试合起来指向同一件事:要求“快”的瞬时拦截也好,要求“久”的长流程也好,背后考的都是机器人能否把历史观察有效转化成对当下和未来的正确判断。
写在后面
读完论文,让我印象最深的不是那些漂亮的成功率数字,而是那个“双向预训练下历史越长成功率不涨”的对照实验。
结果有点反常识。一般直觉是“模型能看到的信息越多,表现就该越好”,这几乎是深度学习里默认成立的朴素假设。论文用一组干净的对照实验说明:信息量增加,必须配上模型内在处理这些信息的方式,否则多出来的信息毫无用处,只是摆在那里的一堆无用数据。
这个发现不只属于机器人控制,放到更广的范围也有意味。很多场景里我们都容易掉进“数据越多越好、历史越长越好”的思维定式。论文提醒的是:获取信息的渠道和消化信息的能力,从来是两回事。前者管“有没有”,后者管“会不会用”。缺了后者,前者再充足也是摆设。
另一个让我反复琢磨的点,是38.4秒那个“历史窗口拉长反而效果变差”的细节。团队的解释是训练数据里真实长轨迹样本不够,大量历史帧靠重复填充凑出来。这暴露了一个更现实的瓶颈:不是算法能力到顶了,是数据本身的真实密度跟不上野心。这种“卡在数据而不是卡在算法”的情况,在很多领域的研究里恐怕比我们以为的更常见。
传送带还在转,杯子还在移,机器人得在那一瞬间判断:刚才看到的轨迹,接下来会往哪走。这个判断背后究竟要藏多少秒历史才够用,或许本来就没有固定答案——取决于你问的是哪个任务,给的是哪种记忆。
Q&A
Q1:Long-WAM是什么?
A:Long-WAM由NVIDIA、MIT、香港大学等团队联合提出,是一个机器人控制框架。其核心发现是:机器人看更长的历史画面,想真正提升控制效果,得先让视觉基础模型经过自回归方式预训练;光把历史窗口拉长,并不会自动带来提升。
Q2:Long-WAM在真实机器人上表现怎么样?
A:Unitree G1人形机器人上,Long-WAM抓取移动杯子的成功率保持在90%到100%,动态叠杯任务20次成功19次;同等条件下对比的π0.5和Fast-WAM全部失败,一次都没成功。
那为什么把历史窗口拉长,机器人的表现反倒不一定跟着变好?
原因在于,窗口拉得太长之后,里面大量的历史帧其实是重复画面凑出来的无效数据,这部分占比能到80%以上。窗口更长还会让推理延迟明显上升,机器人的反应速度随之被拖慢。说到底,历史长度得跟任务复杂度对上,不是越长越管用。