ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

机器人能像语言模型读文字一样,读懂物理世界吗?

机器人能像语言模型读文字一样,读懂物理世界吗? 你有没有想过一个机器人在做家务的时候它的脑子里到底在发生什么它看到的画面、感知到的自己手臂的位置、听到的指令这些信息乱糟糟地混在一起机器人怎么把它们理清楚、变成一个连贯的行动序列这不是一个抽象的哲学问题,而是当下机器人学习领域真正卡住很多研究者的一道坎。这篇来自武汉大学、清华大学研究者的论文,提出了一个叫WorldToken的系统,试图用一种特别直接的方式回答这个问题。它的思路说起来简单,做起来却牵动了整个机器人策略设计的骨架。**核心问题机器人的一个瞬间应该被切成几块**先说说语言模型的世界是怎么运作的。当你问ChatGPT一个问题,它处理的是一串文字符号,每个词、每个字都是一个独立的token,按时间顺序一个接一个排列。这套逻辑简单粗暴又好用:整个序列只有一种砖块,所有的智能都建立在这些同质砖块的因果关系上。Token可以理解为语言模型处理信息的最小单位比如一个词或者一个字模型读文字就是一串一串地读这些token。但机器人面对的世界完全不是这么回事。同样是一个瞬间,机器人接收到的信息却是五花八门的:三个摄像头拍到的画面、手臂关节的角度和速度、语言指令说要做什么任务。这些东西性质完全不同,一个是视觉像素,一个是数值状态,一个是语义指令。研究界对这个问题给出了完全不同的答案。有的方法把一帧画面拆成几十个视觉token,让每个观测时刻占据序列里的很多个位置;有的用循环神经网络把历史悄悄压缩进一个隐藏状态;还有的干脆搭一个独立的记忆模块,专门负责存取过去的信息。这些设计都能处理时间信息,但它们对序列里的一个位置到底代表什么这件事,给出的答案完全不统一。这不是吹毛求疵的架构分歧,而是直接决定了后续所有模块怎么对接、怎么调试、怎么放大规模的核心选择。WorldToken的答案异常干脆:每一个策略决策时刻,不管里面塞了多少种传感器信息,最终都只能生成一个token,这个token叫做世界token。时间上的每一步,就是序列里的一个位置,不多不少。**世界token是怎么炼出来的**具体怎么把一堆异构信息压成一个token?论文里的做法是这样的:每个摄像头有自己的卷积网络处理视觉输入,机器人的关节角度信息经过一个投影层,任务指令经过一个冻结的CLIP文本编码器,统统转换成同一个维度的向量。CLIP一种由OpenAI提出的视觉语言对齐模型,这里只用它的文字编码部分,把打开微波炉这样的指令变成一个数字向量,而且这部分参数是冻结不训练的。这些向量拼在一起,喂给一个within-step Transformer(单步内Transformer),这个Transformer里还额外加了四个可学习的读出token。这四个读出token的工作方式挺有意思:观测信息之间可以互相看,但读出token只能看观测信息,不会被观测信息看到,这样保证读出token纯粹是在收集信息,不会反过来污染原始观测的表征。最后,把这四个读出token的输出拼起来,过一次归一化和线性投影,就得到了这一时刻唯一的世界token。这就好比你去参加一个多方会议,会议室里同时有PPT演示、语音发言、手写白板笔记,信息形式完全不同。如果你想在会后只留一份纪要交给下一个决策环节,你不会把PPT原图、录音文件和白板照片全部塞进去,你会派一个专门的书记员,一边听一边看一边记,最后浓缩成一页会议摘要。如果不这么做会怎样?下一个环节的人就得自己去翻录音、看PPT、辨认潦草的白板字,效率崩掉,而且不同会议记录的格式还可能不一样,没法批量处理。世界token干的就是书记员的活,它把这一时刻所有异构的感官信息,浓缩成一份统一格式的摘要,交给下一步的时间推理模块。这样设计带来一个直接的好处:序列的长度只取决于机器人做了多少次决策,和每一步用了多少摄像头、多少视觉patch完全没关系。你可以在单步内部随便加相机、加传感器,序列的时间粒度始终保持恒定。**时间怎么被记住的因果Transformer登场**有了逐时刻的世界token序列之后,接下来要解决的是怎么让机器人记住过去发生了什么。论文用的是基于Qwen2解码器架构的因果Transformer,从零开始训练,不借助任何预训练权重(除了那个冻结的CLIP文本编码器)。因果自注意力一种只允许模型看过去不允许看未来的注意力机制保证当前时刻的决策不会作弊偷看还没发生的观测。它对世界token序列做一维RoPE位置编码,用因果自注意力保证当前时刻的表征只依赖于过去和现在,不会偷看未来。RoPE旋转位置编码,一种给序列里的每个位置打上相对位置标记的技术方式方便Transformer理解谁在前谁在后。这里有个细节值得说一下:执行完的动作本身不会被塞回序列里,机器人不是靠记住我刚才做了什么动作来续写历史,而是靠看到动作造成的结果,也就是新的图像和新的关节状态,来间接感知历史。论文里提到这不是因为观测能完全还原动作历史,而是一种设计选择,把动作也显式编码进序列是可以做的扩展,但不是默认方案。窗口滑动的时候,论文特别强调了保留token会被重新编号,不加绝对位置嵌入,因为RoPE本身是相对位置敏感的,整体减去一个偏移量不会改变token之间的相对几何关系。这个细节保证了截断历史这个实验操作,改变的只是能看到多少,不会引入额外的位置编码噪音干扰结果的解读。**动作怎么生成扩散模型来兜底**拿到了历史压缩后的表征,最后一步是决定机器人到底该怎么动。WorldToken用的是DiT扩散模型来生成动作,不是直接回归一个具体数值,而是学习一个噪声预测过程,给定当前的历史表征作为条件,通过adaLN-Zero调制,一步步把随机噪声去噪成一段动作序列。DiTDiffusion Transformer,一种用Transformer结构做扩散模型去噪的方案这里用来生成一小段未来的动作序列。DDPMDenoising Diffusion Probabilistic Models,去噪扩散概率模型的技术全称也就是训练时往真实动作里加噪声再教模型学会怎么把噪声去掉还原动作。控制流程用的是receding-horizon(滚动时域)方式:每次生成十步的动作,但只执行前四步,然后重新观测环境、重新决策。这种生成多步、只用一小段、马上重新看世界的做法,某种程度上像是你规划一次长途开车路线,但每开五分钟就重新看一次导航更新实时路况,而不是死板地按最初那条路线一直开到底。如果不这样滚动重新观测,一旦前面预测的十步动作里有一步执行偏了,后面九步全都跟着跑偏,而机器人还蒙在鼓里继续按原计划走。**训练效果究竟如何85M参数就能打平十亿级模型**理论说清楚了,数据说话才是硬道理。研究者在RoboCasa这个厨房家务任务基准上做了大规模实验,涵盖23个任务,包括开关门、倒咖啡、开关水龙头、微波炉操作等等。一个只有85.3M参数的WorldToken策略,在每个任务用2900条生成演示数据训练之后,达到了59.45%的任务平均闭环成功率,最佳单次评测跑到60.1%。这个数字放在什么背景下看才有意义?论文调研了目前公开报道的、用十亿级参数规模并且做了大规模预训练的RoboCasa系统,它们的成功率大致在50%到79%之间,大部分落在58%到70%这个区间。也就是说,WorldToken用不到一亿参数、完全从零训练(没有用任何机器人轨迹预训练、没有借用大型视频模型),就摸到了那些动辄几十亿参数、吃过海量预训练数据的系统的表现区间下限附近。在数据量相同的对照实验里,300条演示数据的设定下,WorldToken比官方代码复现的BC-Transformer基线高出12到16个百分点。**扩大数据和模型,收益规律是什么样的**研究团队没有满足于跑一个漂亮数字,而是做了一次完整的5×5×2扫描实验:5种数据规模(50、100、300、1000、2900条演示每任务)、5种模型规模(44.3M到1.49B参数)、2个训练种子,一共50个训练出来的策略,总计172500次闭环评测episode。数据规模的效果非常干净利落。所有40组相邻数据规模的对比里,增加数据量总能让离线动作预测误差(RMSE)下降,闭环成功率也总能提升。从50条演示扩到2900条,RMSE下降了47%到57%,闭环成功率提升了32.7到39.3个百分点。而且这个RMSE随数据量下降的曲线,用一个简单的幂律公式就能拟合得很好,拟合的R?值普遍在0.99以上,这种规律性某种程度上呼应了语言模型领域里那种数据和模型协同扩展的现象。RMSERoot Mean Square Error,均方根误差,这里用来衡量策略在专家演示数据上预测出的动作,跟真实专家动作之间差多少数值越低说明模仿得越准。模型规模的效果就没那么整齐了。参数从44.3M提高到218.8M,RMSE持续下降,但再往上加到648.9M甚至1.49B,RMSE不再稳定改善,闭环成功率也没有清晰的排序。也就是说,在这套训练配方下,模型容量的红利大部分被44.3M到218.8M这一段吃掉了,再往后加参数,边际收益明显递减。**机器人到底用没用到记忆两组对照实验揭晓答案**这里出现了论文里我觉得特别值得琢磨的部分。研究者做了两组互补的实验,专门检验机器人策略是不是真的在用它接收到的历史信息,而不是只看当下这一帧就够了。第一组叫同一权重历史截断。拿主扫描实验里训练好的全部50个策略,权重完全不变,只是在推理阶段人为把能看到的历史长度砍短,从10步压到1步、2步、5步。结果是,所有50个策略在只给1步或2步历史的时候,成功率都下降了,最小降幅也有3.5个百分点(1步)和1.4个百分点(2步)。到5步历史的时候,47个策略已经恢复到接近10步历史的水平。这说明,这些策略确实在用它们训练时习得的历史依赖关系,把历史砍掉,性能就掉。第二组是反过来,专门训练几个只给短历史的策略,看它们能不能适应这种先天缺陷。结果发现,专门用1步历史训练出来的策略,评测时给1步历史,成功率能到46.75%和47.68%,远高于那个本来训练时用10步历史、评测时突然被砍到1步的策略(27.91%和27.83%)。这两组实验放在一起看,故事就完整了。这就像一个人如果从小习惯边看导航边开车,你突然把他的导航屏幕关掉,他会明显手忙脚乱;但如果你从一开始就训练他不看导航开车,他反而能适应得挺好,甚至比那个被迫失去导航的司机开得更稳。如果没有第二组实验,你可能会以为机器人对历史信息的依赖是任务本身天然要求的,不可动摇;但第二组实验告诉你,这种依赖更多是训练适配出来的结果,不是任务硬性需要的。有意思的是,离线RMSE和闭环成功率在这里出现了分歧。训练和评测都用10步历史的RMSE比用5步历史的RMSE更低,但闭环成功率却是5步历史那组更高。这说明更擅长模仿专家动作和更擅长真正完成任务,不完全是同一件事。**长时序任务:context越长,行为越靠谱**前面讨论的RoboCasa任务,大部分决策窗口比较短,5步历史基本就够用了。研究者接着跑了一个更硬核的案例:RMBench基准里的Blocks Ranking(积木排序)任务。这个任务要求把三个积木从L、M、R三个槽位排列成目标顺序,需要按照一个固定的三步一循环的换位规则(swap(M,R)→swap(L,R)→swap(L,M))反复执行,有的初始排列需要连续做完五次换位才能到达目标。研究者固定同一个训练好的checkpoint、固定同样的100个初始条件,只改变推理时能看到的历史窗口长度,从608个世界token(约146秒)砍到32个(约8秒)。评测器认定的成功率从95%一路降到28%。更细致的行为审查发现,失败主要集中在需要连续多次换位的场景,而不是单次局部操作的场景。1步换位的任务在所有历史长度下都是100%成功,但需要5步换位的任务,历史长度砍到64或32时,成功率直接归零。这就像让一个人拼一套需要连续五个步骤的宜家家具,如果他每次只能看到最近八秒钟发生的事情,他大概能记住手里正在拧的这一颗螨丝,但完全记不清自己是刚拧完第二步还是第四步,拼到第三步就开始乱套;如果给他看最近146秒的完整操作记录,他就能顺着说明书稳稳走完全程。更让人意外的是一次探索性的压力测试。研究者取消了任务在第一次成功后就终止的规则,让机器人继续跑,不重置场景也不重置历史。结果九条测试轨迹里,有五条在context窗口(608个token,约146秒)开始滑动之后,依然继续正确地执行换位动作。最长的一条完成了31次正确排序的换位,相当于把那个三步一循环的规则完整重复了十轮还多一步,最后一次正确换位发生在第856秒,已经远远超出了训练演示里最多五次换位的记录,也远超单次可见context窗口的长度。这说明这个策略学到的不只是记住训练数据里的那几条特定轨迹,而是真的学到了那个可以无限重复的三步循环规律。**离线指标和真实表现之间的鸿沟**论文专门花了一整节讨论一件事:RMSE低,不代表闭环成功率一定高。在数据和模型规模的大跨度对比里,这两个指标基本是同向变动的,RMSE低的策略往往闭环成功率也更高。但一旦比较相邻很接近的配置,这种一致性就会打折扣。前面提到的历史长度对照实验就是个例子,10步历史的RMSE比5步历史更低,但闭环成功率反而是5步历史更高。论文归纳了两个原因。第一,离线RMSE是在专家轨迹上测的,机器人只要偏离专家的路径一点,后面遇到的状态可能是训练数据里完全没见过的,这时候离专家动作的距离这个指标就失去了参考意义,因为专家演示的动作也不是唯一正确答案。第二,动作层面的微小误差,不一定影响任务层面的成败,但有时候一个毫米级的执行偏差就能决定成败。论文举了Blocks Ranking里一个具体例子:一个用标准扩散损失训练出的策略,几乎每次都能把积木排对顺序(99次中有99次排对),但因为最后按按钮的深度差了几毫米没触发评测器认定的成功阈值,导致实际成功率只有13%。后来研究者加入了一个专门针对这个按压深度的辅助训练目标,把成功率一口气拉到95%,而且原来13次成功的案例全部保留,又多拿下82个之前失败的案例。这个发现提醒人一件很朴素的事:评价一个系统好不好,不能只盯着一个容易量化的代理指标,代理指标和真实目标之间总会有缝隙,缝隙藏在哪里往往比指标数字本身更值得关注。**这套架构真正想解决的,是一个接口问题**读到这里你可能会问,这一整套设计,到底图什么?论文的作者在讨论部分说得很直白:他们并不是想证明时间优先这种组织方式一定比别的方式更好,而是想提供一个干净的分析接口。因为一旦把每个策略时刻对应一个token这件事定死了,你就可以单独调整单步内部怎么压缩感知信息、时间维度怎么做计算、动作怎么生成,而不用担心这些改动同时改变了历史里的一个位置到底代表什么这个基本语义。这让不同架构改动之间的比较,变得更可控、更可归因。论文还提出一个挺有启发性的观点:机器人和纯语言模型或者多模态语言模型不一样,一张图片如果只给语言模型看一次,后面所有推理都必须靠记住这张图的细节;但机器人是可以主动重新去看的,它下一步的动作会改变它接下来能观测到什么。这意味着理论上机器人不需要把每一帧的所有细节都塞进历史里死记硬背,当某个细节变得重要的时候,它完全可以靠再看一眼重新获取,而不是靠一个越滚越大的记忆包袱。当然论文也坦诚承认,现在这套WorldToken并没有真正做到主动感知,这只是一个值得探索的方向。QAQ1WorldToken是什么?AWorldToken是一种机器人策略架构核心思路是把每个决策时刻的多种传感器信息(摄像头画面、机器人关节状态、任务指令)压缩成一个统一的世界token再用因果Transformer按时间顺序处理这些token最后用扩散模型生成具体动作。Q2WorldToken的性能和大模型比怎么样?A一个85.3M参数、完全从零训练的WorldToken策略在RoboCasa任务上达到59.45%的成功率已经进入了目前公开报道的十亿级参数预训练系统(成功率大致50%到79%)的表现区间。Q3机器人策略真的会用到历史信息吗?A研究者做了历史截断实验发现50个训练好的策略在历史被砍短后成功率全部下降证明确实用到了历史但单独训练短历史策略后发现大部分依赖是训练适配出来的不是任务本身严格需要的。
返回列表