PointWAM:机器人的世界模型,为什么要用三维点云来预测
你有没有想过,教会一个机器人做一件事,和教会它做一个完整的家务,中间隔着多远的距离?拿起杯子不难,难的是知道杯子在哪、手该怎么弯、力气该用多大、水会不会洒出来。更难的是,这一切还得在三维空间里实时发生,而不是在一张平面照片上。过去几年机器人学习领域一直在跟这个问题较劲,而最近一篇名叫PointWAM的论文,...
教会机器人做一件事,和教会它做一整套家务,这中间差着多远?这个问题值得琢磨。
拿起杯子本身不难。难的是杯子在哪、手该往哪个角度弯、用多大劲儿、水会不会洒——而且这些判断得在三维空间里实时完成,不是看一张平面照片就能应付。过去几年,机器人学习领域一直在跟这个难题较劲。最近一篇叫 PointWAM 的论文,给出的答案挺巧妙。
**核心问题:机器人要么看不懂世界,要么做不了精细活**
先看现在主流的机器人控制方法,大致分两派。
一派叫 VLA。
也就是视觉语言动作模型(Vision-Language-Action model):给一张图片加一句指令,模型直接输出机器人该怎么动。
这类模型的路子简单直接,看图说话。问题是它们不会去想“如果我这么做,世界会变成什么样子”。好比让一个从没炒过菜的人直接颠勺,他多半手忙脚乱,因为脑子里没有油温升高、食材翻滚这一过程的预演。
另一派是世界动作模型(World Action Model,简称 WAM),想法更聪明一些:既然预判未来能帮模型做对动作,那就让它同时学两件事——预测世界会怎么变,以及预测该采取什么动作。思路没问题,麻烦出在“世界”这两个字到底怎么表示。
现有的 WAM 大多把世界表示成一帧帧 RGB 图像,或者这些图像压缩后的隐藏特征。这就像你想描述一个立体的苹果,却只给出某个角度拍的照片。照片能告诉你苹果是红的、大概多大,但背面有没有磕碰它说不了,你伸手去摸时手指该怎么弯才能贴合果皮曲面,它更说不了。碰上需要精细接触、要考虑三维几何形状的灵巧操作任务,比如用两根手指捏住一根细管子插进孔里,这种二维表示天生就有点不够用。
也有人试过另一条路:直接追踪三维空间里的点轨迹来指导动作,这类方法叫“基于点的策略”(point-based policy)。短板很明显——它们只关心手部关键点怎么运动,周围的场景(被操作的物体和环境)会怎么跟着变,完全不管。还有一类工作反过来,专门预测场景的三维运动,但把机器人的动作当成已知输入,而不是需要预测的东西。等于世界模型做得不错,却没法直接拿来控制机器人。
换句话说,之前的方法要么世界建模做得不错但不出动作,要么动作预测做得不错但世界建模很弱,很少有人用同一套三维表示方式把这两件事捏到一起。PointWAM 要补的,正是这个缝隙。
**PointWAM的设计思路:把场景和手都变成三维点云的轨迹**
PointWAM 的核心想法说起来并不复杂:三维空间信息既然这么重要,那就把整个世界——包括背景环境(论文里叫“场景”)和机器人的手——统统用三维点云来表示,再让模型同时预测这些点未来会怎么移动。
具体来说,给模型一段彩色点云
点云(point cloud):由很多个带坐标和颜色的三维点组成的数据,常用来表示扫描或拍摄到的真实三维场景。
再加一句语言指令,比如“拿起浇水壶给植物浇水”,模型会输出两样东西:场景里每一个点未来往哪移动,以及手部关键点未来往哪移动。这两个预测被放进同一个时空坐标系,也就是说,场景怎么变、手怎么动,是一起理解的,不是两条互不相干的线。手部轨迹预测出来之后,再经过一个叫“动作重定向器”的模块,把这些手的运动转成机器人真正能执行的关节角度和末端位置指令。
有个细节很值得琢磨:场景点的预测不需要人工挑选“哪个物体是重要的”。
不这样设计会怎样?前面提到的点策略方法(Point Policy、Dexterous Point Policy)都得靠人或者外部识别模型先把目标物体框出来,告诉模型“你要盯着这个杯子看”。这好比你请了个保姆,但每次做饭之前都得先帮她把菜洗好切好分类摆盘,她才能开始炒。PointWAM 省掉了这道预处理工序,对观察到的每一个点都一视同仁地预测轨迹。这意味着模型能从海量没有标注“重点物体”的人类演示视频里学东西,不用等人工标注员一个个去圈出任务相关的物体。对“大规模预训练”来说这一点至关重要——人工标注既贵,又会限制能用的数据规模。
**为什么要同时预测场景和手,而不是只预测手?**
这是整篇论文最关键的设计决策之一,也是实验里验证得最扎实的一点。
团队还设置了一组对照:去掉场景轨迹这一路监督,模型只负责预测手怎么动,其余设置原样不动。平均成功率随即从 64.4% 降到 53.5%,差出将近 11 个百分点。光让模型“看见”三维场景显然不够,还得让它预判场景接下来怎么变,学到的表征才真正有用。
这背后的道理其实挺直觉的。
想象你在教一个孩子倒水。只让他盯着自己的手该怎么拿杯子,他学会的只是一套固定的手部动作,换个杯子换个角度就懵了。但如果你同时让他观察水流出来时水面怎么上升、杯子会不会因为变重而需要调整抓握力度,他学到的就是手和被操作对象之间的因果关系,这种理解能迁移到各种杯子、各种场景。PointWAM 里的场景轨迹预测,起的就是“同时观察水面变化”这个作用,它逼着模型的共享骨干网络去学手和环境之间怎么相互影响,而不只是死记硬背一套动作序列。
论文同时试了另一种更省事的世界建模路子:不碰三维点轨迹,转而预测未来某一帧图像在特征空间中的形态,思路接近已有工作 FLARE。这条路子强过完全不做世界建模,成功率达到 60.1%,可相比三维点轨迹的 64.4%,仍低了 4.3 个百分点。说白了,预测三维空间里真实点的位移,比预测一张图像隐特征的变化携带的信息更多,也更符合物理世界的样子。
场景识别本身怎么才能更懂三维结构,论文也做了探讨。
除了讨论"要不要预测场景",研究团队还关心"场景该怎么理解"。
PointWAM选用的编码器名为Mosaic3D。
编码器是把点云、图像这类原始输入转成一组数字特征向量的神经网络模块,这些向量浓缩了输入中对任务有用的信息。
Mosaic3D专在三维点云上训练,预训练目标是把三维点的特征与文字描述对齐,因此它天然擅长抓取物体的三维几何结构。
论文另外测了一种更普遍的做法:拿在二维图像上训练好的编码器(DINOv3)提特征,再把特征"贴"到对应的三维点坐标上,也就是"特征提升"(lifted features),PointWorld等工作走的是这条路。这种方式成功率只有59.0%,低于直接用三维特征的方案。
差距背后是什么原因?
特征提升相当于给一堆三维点贴上从二维照片里学来的标签,点坐标确实是三维的,可描述这个点"是什么、周边形状怎样"的信息,源头仍是一张平面照片。好比给盲人摸到的物体贴文字标签,标签位置没错,内容却是别人用眼睛看出来的,不是用手摸出来的。直接在三维点云上训练出的特征,更能准确捕捉物体表面的凹凸、朝向这类只有"摸"过才清楚的信息,对需要精细接触的灵巧操作而言,差距就落在5.4个百分点上。
从人类视频里学会操作:预训练带来的巨大提升
论文最吸引人的一项结果,是它验证了人类演示视频能被有效用于训练机器人策略,而且提升幅度相当大。
实验用到两个人类演示数据集:EgoDex
EgoDex是一个大规模第一人称人类手部操作视频数据集,记录了手部关节的三维姿态。
另一个是VITRA,两者合计115万段演示片段。这些视频不含机器人动作指令,只有人的手在三维空间中的运动以及周围物体随之发生的变化。论文把它们处理成与机器人演示数据格式一致的"场景轨迹+手部关键点轨迹",同一个模型骨干便能同时消化人类视频和机器人数据这两类"食物"。
效果有多惊人?在DexJoCo基准上,未经人类视频预训练的PointWAM平均成功率仅12.1%,预训练后升到60.1%,提升近五倍。
对比之下,论文另外测试的三个基线方法(GR00T N1.6、Fast-WAM、PointACT)本身已用大规模机器人数据或视频文本对做过预训练,再叠加EgoDex预训练,成功率变动都在1.4个百分点以内,几乎没反应。可见预训练的收益并非"看过更多数据"这么简单,而来自PointWAM这套共享三维点轨迹表示方式本身——人手和机器手外形不同,但在"手部关键点如何在三维空间移动"这一抽象层面,经验可以直接复用。
这就像你学会用自己的手拧瓶盖,虽然没有机械手指,但"手腕旋转、手指施力"这套动作模式可以迁移给一个戴厚手套的人,核心运动逻辑相通。若不做统一表示,人类视频和机器人数据就是两种语言,模型看了人类视频也用不上——其他基线方法从人类视频里几乎学不到东西,原因正在于此:它们的表示方式根本没给这种迁移留出接口。
论文还考察了数据规模和模型规模的扩展。数据量从32.4万段(仅用EgoDex)增至114.8万段(加入VITRA全部数据),成功率由60.1%升到69.0%。参数量从3900万增至6.55亿,成功率从52.3%涨到69.0%,其间出现一个有意思的现象:参数量从3900万升到1.06亿时,成功率反倒从52.3%滑到50.1%,直到模型足够大(3.26亿参数以上)才明显受益。这提示小规模三维骨干网络可能缺少足够容量来消化如此丰富的轨迹监督信号。
实战检验:在模拟和真实机器人上到底表现如何
设计理念讲了这么多,终归要看实际表现。
测试主要覆盖三个场景。其一是DexJoCo,一个模拟环境中的灵巧操作基准,含十个任务,如用锤子钉钉子、玩河内塔、组装零件,单手与双手协作任务兼有,机械臂末端装16自由度灵巧手(Allegro Hand)。PointWAM以单个策略同时应对十个任务,平均成功率69.0%,比最强对比方法GR00T N1.6(大规模预训练的视觉语言动作模型)高11.7个百分点,比π0.5高19.0个百分点。十个任务中,PointWAM在八个上拿到最高分。
第二个场景是RoboDojo-Precision,专测高精度放置能力的任务集,机械臂换成平行夹爪而非灵巧手。这很有看头:PointWAM本为多指灵巧手设计,论文想验证其点轨迹表示能否迁移到构型完全不同的夹爪上。结果PointWAM平均得分8.8分(满分制部分进度分),成功率4.8%,绝对数字虽不高(这套任务本身很难,基准排行榜上的方法也很少能完成),但已超过用大规模机器人数据预训练过的GR00T N1.6(6.2分、2.3%)。可见PointWAM学到的"手部关键点在三维空间中如何移动"的知识,确有一定跨构型迁移能力。
第三个是真实机器人实验,平台为OpenArm人形机器人,配两只7自由度机械臂和两只6自由度灵巧手(Inspire RH56F1),加一台立体相机采集深度信息。测试两个任务:拿香蕉放篮子,以及双手协作把方形插销插入孔中。
拿香蕉这个任务里,有个细节很能说明问题。把香蕉换成一个没见过的盒子、颜色又和桌面很接近时,靠RGB图像的GR00T N1.6和π0.5成功率分别只剩16.7%和25.0%,PointWAM则做到58.3%。道理不复杂:颜色对比度一低,基于颜色信息的模型就很容易"找不到"目标物体;PointWAM用的是三维形状信息,盒子长什么样、边缘在哪儿,不会因为颜色相近就消失。
这有点像雾天开车。完全靠看路牌的颜色判断方向,雾一大就抓瞎;车上装了激光雷达去感知周围物体的实际轮廓,雾天的影响就小得多。插销插孔任务上,PointWAM成功率达到50.0%,另外两个方法只有16.7%和25.0%。论文分析下来,问题主要卡在"插入"这一步,需要精确的双手协同对位,而三维点轨迹预测恰好能提供这种精细的空间对齐信息。
**几个容易被忽略但很关键的工程细节**
论文里还藏着几个挺有意思的细节决策。
先说手部怎么表示。论文拿"解剖学关键点"(手掌上固定的几个点加指尖,总共十个点)和"深度采样的手部表面点"两种方式做了对比,看哪种效果更好。结果关键点方式达到64.4%,表面点方式只有43.6%到44.6%左右。原因在于关键点在人类手和机器人手之间有语义上的对应关系,比如"食指指尖"这个概念在两种手上都存在,表面点没有这种天然的对应性,模型很难建立起跨形态的联系。
再说体素大小。把三维空间切成多大的网格单元(体素),会影响效果。论文试了0.5厘米、1厘米、2厘米三种,1厘米最优,达到64.4%,比0.5厘米的59.9%和2厘米的52.2%都好。网格太粗,接触的细节都被模糊掉;太细,又没能给输入的深度图像带来额外有用的细节。属于"不多不少刚刚好"的那种设计。
论文还发现另一件事:微调阶段把Mosaic3D这个视觉编码器也一起训练,成功率反而从64.4%掉到54.9%。这个结果挺有启发性。预训练好的三维编码器已经学到了足够通用和稳健的几何特征,如果在小规模机器人数据上继续微调它,反而容易把这些通用特征"带偏",学到一些只对当前任务管用、缺乏泛化性的细节。很多视觉大模型微调时也有类似的经验:预训练特征越是经过大规模、多样化数据锤炼过,越应该谨慎对待继续微调它的冲动。
Q&A
Q1:PointWAM是什么?
A:PointWAM 是一种三维世界动作模型,它的做法是把机器人要理解的世界分成场景与手两块,以三维点轨迹的形式对两者的未来运动一并做出预测,随后再把手的轨迹转成机器人能够真正执行的动作。
Q2:PointWAM靠什么实现了人类视频预训练的大幅效果提升?
A:人手和机械手在它这里被统一成同一种三维关键点轨迹格式,于是同一个模型骨干既能从人类演示视频里学,也能从机器人数据里学。经过预训练,DexJoCo 的平均成功率由 12.1% 提高到 60.1%。
Q3:PointWAM和GR00T N1.6等主流VLA模型相比优势在哪?
A:在DexJoCo模拟基准上,平均成功率比GR00T N1.6高出约11.7个百分点。真实机器人实验中,面对颜色和背景接近的未见过物体,PointWAM依靠三维形状识别,成功率明显高于依赖RGB图像的基线方法。