你有没有想过一个问题:为什么机器人学不会做家务,但AI已经能写诗画画了?
答案很扎心。文字和图片可以从互联网上随便抓,一天能抓几十亿张。但机器人的动作数据不行,它必须有人真的操纵一台机械臂,真的去抓一个杯子,真的把它放到指定位置,一条条录下来。这活儿又慢又贵,还没法批量复制。
这就带来一个很现实的困境。语言模型和视觉模型能靠"数据量大力出奇迹"一路狂奔,机器人却做不到。你不可能用抓杯子的100万条数据,去覆盖世界上所有可能出现的杯子、桌子、光线和任务组合。物理世界的可能性是连续的、无穷尽的,而你手里的数据永远是稀疏的、有限的采样。
来自StarVLA团队的这篇论文,恰恰是在回应这个困境。他们提出的方法叫VLAct,核心思路不是去堆更多机器人数据,而是回过头来问一个更本质的问题:在数据注定有限的情况下,怎么把这些有限的数据用到极致,让机器人学到的东西尽可能"举一反三"?
数据喂不饱的胃口,该靠什么撑起来
先弄清楚这里的主角是谁。
VLA(Vision-Language-Action Model):一类接收图像和语言指令、输出机器人动作的模型。你可以把它理解成给机器人装了一个"看得懂、听得懂、还能动手"的大脑,业内比较知名的有Google的RT-2、Physical Intelligence的π0系列、英伟达的GR00T系列。
这类模型通常的做法是,先拿一个在海量图文数据上训练好的视觉语言模型(VLM,可以理解成"能看图会说话"的AI,比如常见的多模态大模型)当作起点,然后再喂机器人轨迹数据,让它学会把语言指令转化成具体动作。这个"喂机器人数据"的阶段,论文里管它叫continued pre-training,中文可以理解成"继续预训练",也就是在通用视觉语言能力基础上,再叠加一层动作能力的训练过程。
问题就出在这个"叠加"的过程里。研究团队发现,大家普遍把这一步当成了单纯的"动作拟合":喂进去多少条轨迹,就让模型去记住这些轨迹里的动作模式。听起来没毛病,但仔细想想不对。
这就好比你想培养一个厨师,理想状态是让他理解"火候""刀工""调味"这些可迁移的原理,这样换一道新菜他也能应付。但如果你只是让他死记硬背一百道菜的具体步骤,他连锅具换了个牌子都可能手忙脚乱。论文的核心洞察就在这里:如果continued pre-training只顾着让模型在训练数据上表现好,而不去关心它学到的"表征"(representation,也就是模型内部对信息的抽象和组织方式,类似人脑对知识的归纳整理)是否具备可迁移性,那么再多的数据也只是在喂养一个越来越死板的胃口。
这篇论文因此把自己定位成一次"以表征为中心"的探索,英文叫representation-centric。他们想搞清楚:在数据预算固定的前提下,怎样设计训练方式,才能让机器人大脑学到真正能迁移的知识,而不是记住一堆孤立的动作片段。
三个陷阱:naive预训练是怎么把自己坑进去的
研究团队没有直接给答案,而是先做了一组很扎实的对照实验,把问题的根源挖了出来。他们发现,朴素的(naive)VLA continued pre-training会掉进三个坑。
第一个坑,是通用视觉语言能力的流失。VLM原本在海量网络图文数据上学到了很丰富的视觉常识,比如认得出各种物体、理解空间关系、懂得语言的微妙含义。但机器人轨迹数据往往视角固定、场景单一,如果任由模型的所有层都被这份"窄数据"持续冲刷,原本广博的视觉语言底子会被慢慢磨掉。
这个现象论文里专门做了实验验证。他们让模型全量更新参数去做机器人预训练,结果在LIBERO-Plus这个基准上只拿到78.9分;而如果冻结视觉编码器和LLM的下半部分层数,只让上层参数去学习动作相关的知识,分数直接跳到82.6,提升了3.7个百分点。
冻结哪些层不是拍脑袋决定的。论文里做了一个层级注意力可视化实验,发现浅层网络的注意力比较发散,倾向于关注广泛的视觉和空间信息;而深层网络的注意力更聚焦,专注于语义和任务相关的区域。这个规律不是设计出来的,是模型自己在训练中长出来的,论文用一张跨层注意力热力图直观展示了这个现象:输入一张沙发的图片,浅层网络的关注区域散布在整张图上,越往深层走,红色的高关注区就越集中收缩到"沙发"这个词对应的具体物体上。
这就好比装修房子。承重墙是浅层,负责撑起整栋楼最基础的结构,你不能随便乱敲;而室内的隔断墙是深层,可以根据当前住户的需求灵活改造。如果不区分对待,把承重墙也当隔断墙一样随便拆,楼是没塌,但整体的稳定性已经被悄悄侵蚀了。这也是为什么论文选择"浅层保护",而不是简单粗暴地全冻结或全解冻。
第二个坑,是被论文称为"decoder lock-in"的现象,也就是单一动作头导致的表征坍缩。
动作头(action head):VLA模型里负责把内部特征转换成具体动作数值的那个模块,常见的有几种流派:FAST用离散token的方式编码动作,类似把连续的动作切成一个个"单词";OFT直接用回归的方式一次性预测出动作数值;PI和GR00T则用流匹配(flow matching)的生成式方法逐步"去噪"生成动作序列。
研究团队做了个很直观的对照实验。他们固定住VLM主干,只改变预训练阶段用的动作头。结果发现,如果预训练阶段只用OFT这一种连续动作头,下游微调时如果还是接OFT,效果确实很好,从60.5分冲到75.8分;但如果下游换成PI头或者GR00T头,效果反而大幅下滑,PI从60.5分掉到55.1分,GR00T从75.9分掉到28.9分,直接腰斩。
这个结果说明什么?说明单一动作头预训练学到的"动作感"并不是一种通用的、谁都能读懂的语言,而是一种只有那一个解码器才认得的"方言"。模型和动作头是联合优化的,时间长了,骨干网络里的特征会悄悄向那个特定动作头的解码几何形状靠拢,变得对它量身定制,对别的解码方式反而变得陌生。
这就像两个人用暗号交流久了,彼此配合默契得很,但一旦换了个不懂暗号的新搭档,之前的默契瞬间归零,甚至比从零开始配合还费劲。如果不做任何干预,让骨干网络只服务于一种解码方式,那这个骨干网络看起来"很懂动作",实际上只是"很懂一种特定的表达动作的方式",这是两码事。
第三个坑,是跨机器人形态之间动作语义的割裂。不同机器人的关节数目、自由度、控制方式天差地别,常见做法是给每种机器人配一个专属的动作输出头,各管各的。这样虽然灵活,但也把本可以共享的动作规律锁在了各自的小房间里,谁也学不到别人的经验。
VLAct的三板斧:怎么把坑填上
搞清楚了坑在哪,VLAct就是针对这三个坑,分别设计了对应的解法。整体流程可以概括成一张图:从一个预训练好的VLM出发,先用浅层保护和图文数据混训来守住VLM原有的家底,再用多头协同监督来避免动作表征被某一种解码器锁死,最后用一个"部分统一"的跨机器人动作空间,让不同机器人之间可以共享物理上真正对应的那部分动作语义。等这套流程走完,下游用户拿到手的是一个更"通用"的骨干网络,他们可以按照自己的需求换上任意一个全新初始化的动作头去微调。
浅层保护和图文数据混合训练
前面提到冻结浅层能防止表征漂移,但只做冻结还不够,论文还加了一手:在机器人数据里混入图文标注数据(caption data)一起训练。
这个想法背后的道理其实很朴素。既然机器人数据太窄容易带偏骨干网络,那不如同时喂它一些"广谱营养",让那些没被冻结的、依然在更新的层,始终有机会接触到贴近VLM原始训练分布的监督信号。团队试过好几种辅助数据,包括边界框问答、点位问答、空间关系问答、纯文本指令数据,最后发现效果最好的是详细的图像描述文本。
原因也不难理解,详细的图像描述天然就是VLM最初训练时吃的那种"主食",里面密集包含了物体、属性、空间关系、场景背景这些语义信息,能够高效地把骨干网络"拉回"到它原本擅长的表征空间附近。实验数据显示,单纯加入图像描述数据,能把LIBERO-Plus的分数从75.0一路推到82.6,提升了7.6个百分点;更耐人寻味的是,连纯文本的指令数据(跟视觉、跟机器人完全不搭边)混进去训练,依然能带来正向提升。这从侧面证明,辅助数据起作用的机制不只是"直接迁移相关知识",更是在帮骨干网络维持它原本的运作状态,让它的参数更新更有多样性,而不是一门心思往动作预测那个窄方向钻。
这有点像人在长时间高强度做一件重复性工作时,如果完全停掉其他一切活动,人会变得又钝又僵。但如果每天抽点时间读读闲书、听听别的领域的讲座,哪怕内容跟本职工作八竿子打不着,人的整体思维反而会更灵活,回到本职工作时反而效率更高。VLAct用图文数据混训做的正是这件事,让骨干网络在学动作的同时,也别忘了它原本"见多识广"的本事。
多头协同监督,逼骨干网络说"普通话"
针对第二个坑,decoder lock-in,VLAct的解法叫多头连续动作协同监督(multi-head continuous action co-supervision)。
具体做法是,在预训练阶段,同一个骨干网络产生的隐层特征,同时喂给OFT、PI、GR00T三种不同的连续动作头,让它们各自去预测同一个真实动作序列,三个头的损失函数加在一起共同反向传播优化骨干网络。
这个设计的巧妙之处在于,它没有引入任何额外的对齐模块或者复杂机制,单纯就是靠"头的多样性"本身当作监督信号。因为三个头的解码几何形状和优化目标都不一样,骨干网络想要同时讨好三个"性格迥异"的下游读者,就没法再走捷径,只能把动作相关的信息组织成一种更通用、更容易被各种不同方式解读的形式。
这就好比一个人要同时给说中文、说英文、说法语的三个朋友讲同一件事。如果他只需要跟一个中文朋友交流,他大可以用很多方言俚语和默契的省略表达,反正对方懂。但如果他还要让说英文和法语的朋友也听懂同一件事,他就必须把表达方式打磨得更清晰、更普适,去掉那些只有特定语言使用者才懂的隐晦表达。这个"打磨"的过程,恰恰逼着他把信息组织得更本质、更容易被不同的听众理解。
实验结果印证了这个思路的有效性。论文做了一个很关键的对照:如果预训练阶段只用OFT头,PI微调的效果是55.1分,比从零开始训练的60.5分还要低;但如果预训练阶段换成OFT加GR00T两个头一起训练(注意,这里PI并没有出现在预训练阶段),PI微调的效果反而提升到63.1分,超过了从零开始的基线。这说明单纯增加头的种类,哪怕目标头没有直接出现在预训练里,也能让骨干网络对陌生的头更友好。而且更让人意外的是,多头协同并没有拖累"本命头"的表现,OFT、PI、GR00T各自作为下游微调头时,相比单头预训练分别提升了1.7、1.6、4.3个百分点。这说明头的多样性不是在稀释某个头的专属优势,而是在真正提炼出一种更普适的动作表征。
部分统一的动作空间:该合并的合并,不该合并的别硬凑
第三个坑是跨机器人形态的割裂问题。VLAct的处理方式,论文起了个名字叫partially unified cross-embodiment action layout,意思是"部分统一的跨机器人动作布局"。
这里有一个很实际的设计权衡。完全不统一,每种机器人各用各的动作头,好处是灵活,坏处是共享不到任何跨机器人的规律。完全统一,把所有机器人的动作维度硬塞进同一套坐标系里,低自由度的机器人用零填充凑齐维度,坏处是会把物理意义完全不同的维度强行对齐到同一坐标,制造出虚假的关联。
VLAct选的是中间道路。哪些动作维度物理意义是真正可比的,就共享;哪些没法比,就保持独立,并且在训练时把不活跃的维度直接遮蔽掉,不参与损失计算。
具体来说,不同机器人的机械臂关节数目、运动学结构可能完全不同,这部分就保持各自独立;但夹爪的开合动作,不管是单臂的Franka还是双臂的AgileX,物理含义都差不多,这部分就共享同一个坐标位置。这样设计出来的统一动作空间是20维的,里面明确划分出左臂、右臂、单臂末端执行器姿态、共享夹爪坐标、右夹爪坐标这几块区域。
这就像整理一个大家庭的共用储物间。每个孩子都有自己专属的玩具箱,不能乱放别人的东西,这是各自独立的部分;但像剪刀、胶水这类工具,大家用的其实是同一把,完全可以放在公共区域共享,这是可以合并的部分。如果把所有东西都塞进一个大箱子不做区分,找东西会很混乱;但如果坚持每个孩子的东西都单独放一个箱子,连公用的剪刀都要买好几把,那也是资源浪费。
实验数据也验证了这个"折中"是对的:完全独立的动作头在RoboTwin上是78.5分,简单粗暴统一成一个头能到79.5分,而这种"部分统一"的设计最终拿到80.5分,是三者里最高的。
除了动作空间设计,论文还处理了一个很细节但很关键的问题:关节角度的周期性。像179度和负179度这样的角度值,数字上看相差358度,但实际的物理姿态只差2度。如果直接拿这两个数字做回归损失,模型会被误导以为这是两种截然不同的姿态。VLAct引入了wrap-aware loss(可以理解成"绕圈感知"损失),先把所有角度统一映射到负180度到180度这个区间,再在计算损失时对预测值和真实值的差值也做一次绕圈处理,确保跨越边界的角度差被正确识别成"实际上很接近"。这个小设计带来了从78.6到80.5的提升,看似技术细节,但对精细操作类任务的稳定性有实打实的帮助。
拿真金白银的实验说话
方法讲完了,接下来看效果,这也是最能验证前面这套理论是否站得住脚的部分。
论文选用Qwen3-VL-4B作为基础视觉语言模型,只用了16块GPU,预训练数据全部是开源的,包括DROID、InternA1、RoboCoin、MolmoAct这几个公开的机器人数据集。
在单臂Franka机械臂的LIBERO-Plus基准上,VLAct拿到了82.6分的总分,超过了阿里巴巴的大型工业级VLA系统ABot-M0(80.5分),也远超同样用Qwen3-VL主干但没有经过VLAct预训练流程的对照组Qwen3VL-OFT(75.0分)。要知道,这两个模型的差异仅仅在于骨干网络有没有经过VLAct这套预训练,动作头、下游数据、优化器、训练预算全部一模一样,所以这7.6个百分点的差距,完完全全是骨干网络本身的功劳。
在VLA-Arena这个综合基准上,差距更明显,VLAct拿到54.8分,而对照组Qwen3VL-OFT只有33.4分,提升了21.4个百分点,这几乎是把成绩翻了一倍还多。
在双臂AgileX机械臂的RoboTwin 2.0基准上,VLAct-OFT在基础设置(只用50条干净轨迹微调)下拿到80.5%的成功率,随机化评估下是41.5%;加上更多数据的场景设置下,进一步提升到92.5%和90.8%,超过了InternVLA-A1、Being-H0.7、LingBot-VLA、ABot-M0以及π0.5这几个知名系统。有意思的是,论文还测试了把VLAct骨干接上不同的动作头(OFT、GR00T、PI)分别微调,三者的成绩差距都在3.4个百分点以内,这再次印证了前面提到的"头的可迁移性"确实是真实存在的。
真实机器人实验同样给出了让人信服的结果。团队用Franka Research 3机械臂做了四类真实场景测试:单臂短时任务、单臂长时任务、双臂协同任务,以及分布外泛化任务。以单臂短时任务为例,VLAct平均成功率92.5%,基线只有77.5%;最难啃的骨头是长时任务里的"舀豆子",这个任务要求先拿起勺子,再舀起一颗豆子,最后倒进另一个碗里,基线的成功率只有33.3%,团队观察到基线经常直接跳过舀豆子这一步,拿着空勺子就去做倒的动作,而VLAct完整地保留了整个任务逻辑,成功率达到80%。
最让人意外的一组数据来自跨机器人形态迁移的测试。VLAct预训练阶段完全没见过GR-1这种人形机器人,也没见过ARX X5双臂平台。但在RoboCasa-GR1这个人形机器人基准上,只用20%的下游微调数据,VLAct就达到49.5%的成功率,已经超过了用了100%数据训练的GR00T-N1.6基线(47.6%)。用满100%数据,VLAct更是冲到54.0%。
这个结果特别值得琢磨。它说明VLAct从Franka和AgileX这两种机器人身上学到的东西,不是死记硬背的"这个机器人该怎么动",而是某种更本质的、跨形态可复用的动作理解。这就像一个学会了骑自行车的人,去学骑摩托车会比完全没碰过两轮交通工具的人快得多,虽然摩托车的操作细节完全不一样,但平衡感、身体重心的把控这些底层能力是相通的。
在最新发布的RoboDojo仿真基准上,VLAct在35个参赛策略里综合得分排名第八,成功率排名第六,进入了前四分之一梯队。而且它超过了所有被明确标记为"世界动作模型"(World-Action-Model,简称WAM,一类试图先预测未来场景变化再决定动作的模型架构)的参赛系统,包括表现最好的X-WAM。要知道,榜单上排名靠前的七个系统里有六个是产业界大公司提交的,VLAct作为一个只用16块GPU、纯开源数据训练出来的学术项目,能挤进这个梯队,含金量不低。
写在后面
读完这篇论文,我印象最深的其实不是那些具体的百分比提升,而是那个"decoder lock-in"的发现。
我们平时聊AI训练,默认的假设通常是"数据越多越好""模型越大越强",很少有人会去追问,当你用某一种特定的输出方式去监督一个模型时,这个模型的内部表征会不会因此被这种输出方式"绑架"。这篇论文用一个很干净的对照实验证明了这件事确实会发生,而且代价不小,PI微调从60.5掉到55.1,GR00T直接腰斩到28.9。这提醒我一件事:很多时候我们以为自己在"训练一个通用能力",实际上可能只是在训练一个只服务于当前评测方式的窄能力,而这种窄化在没有专门做对照实验之前,是很难被察觉的。
另一个让我觉得有意思的细节,是纯文本指令数据居然也能帮助提升机器人动作预测的表现。这个数据跟机器人、跟视觉一点关系都没有,按理说不应该带来任何直接的知识迁移。但它确实有效,这说明"预训练"这件事起作用的机制,可能比我们想象得更复杂,不完全是知识的直接搬运,也包含着某种维持模型整体运作状态的作用,类似于让一台一直高速运转的机器偶尔降降温,反而能跑得更久更稳。
这篇论文没有回答的一个问题是,当VLM主干从4B规模扩大到更大规模时,这套representation-centric的思路是否依然管用,还是说更大的模型本身就自带更强的抗遗忘能力,不再需要这么精细的浅层保护和多头监督。这个问题留在了论文的局限性部分,但我觉得它其实是整个方向里最值得深挖的一环。毕竟,当模型规模膨胀十倍百倍之后,那些为了小模型精心设计的"省着用"的技巧,到底是变得更重要,还是变得多余,这本身就是个很有意思的悬念。
Q&A
Q1:VLAct是什么?
A:VLAct是StarVLA团队提出的一种面向机器人视觉语言动作模型的继续预训练方法,核心思路是在有限的机器人数据下,通过保护VLM原有能力、多头协同监督动作表征、统一跨机器人动作空间这三种设计,让模型学到可迁移的动作知识,而不是死记硬背具体轨迹。
Q2:VLAct相比传统方法效果好在哪里?
A:在LIBERO-Plus基准上达到82.6%成功率,RoboTwin 2.0达到92.5%,均超过阿里ABot-M0等工业级系统;更关键的是仅用20%的RoboCasa-GR1人形机器人数据,就超过了用满全部数据训练的GR00T-N1.6基线,说明它学到的表征具备很强的跨机器人形态迁移能力。
Q3:为什么不能简单地给机器人喂更多数据就好?
A:机器人轨迹数据必须通过真实操作采集,成本高、速度慢,而且物理世界的场景组合是连续无穷的,再多数据也只是稀疏采样。论文指出问题的关键在于continued pre-training阶段的表征质量,而不只是数据数量,单一动作头预训练或全参数更新都可能让模型学到的东西难以迁移到新任务和新机器人上。
热门跟贴