RSI-Nav让机器人自己出题自己改卷:导航成功率提到48.8%
2026年的机器人导航研究圈子里,流传着一个不太体面的秘密。很多团队训练导航机器人的方法,说起来有点像请一个翻译官先把所有资料翻译完,锁进柜子里,再找个学生按着这些翻译好的材料死记硬背。翻译官翻完就下班了,不会再回来看一眼学生学得怎么样,更不会根据学生的学习进度去调整翻译的方式。等到学生发现翻译有问题的...
2026年,机器人导航研究圈里有个不太好意思摆上台面的秘密。
不少团队训练导航机器人的路数,有点像先请个翻译把所有资料翻完、锁进柜子,再找个学生照着这些译稿死记硬背。翻译干完活就走人,既不回头看学生学得怎样,也不会按学生的进度调整翻法。等学生发现译文有毛病,已经晚了——那些错的和过时的材料早印进脑子里了。
这还真不是打比方。视觉语言导航(VLN,Vision-and-Language Navigation,要求机器人听懂人类自然语言指令,在真实或模拟的三维环境里走到指定地点)这个领域,目前的数据合成就是这么个流程。
一个“指令生成模型”预先给所有没有文字标注的轨迹配上说明,造出几百万条“指令-路径”配对数据,再一股脑丢给导航模型去学。导航模型学完一轮、水平上去了,那些配对数据却还是模型很笨的时候生成的样子,没跟着一起长进。
上海AI实验室联合复旦大学、哈尔滨工业大学等多家机构的研究者,决定把这套流程推倒重来。他们提出的RSI-Nav,核心想法简单得有点返璞归真:同一个模型既当老师又当学生,而且这个过程必须实时同步,不能有时间差。
“导航”和“讲路”这两件事,为什么要绑在一起学
先说说这件事到底难在哪儿。
VLN这个方向最早能追溯到2018年的R2R数据集(Room-to-Room,第一个大规模室内导航指令数据集)。后来陆续演化出需要走更长路线的RxR、要自己找目标物体的REVERIE,还有在连续空间里行走而非在预先标好的节点间跳转的VLN-CE(Continuous Environments,连续环境导航,机器人每一步只能前进25厘米或转15度,不像玩传送门游戏那样在固定点之间瞬移)。
这些任务越来越贴近真实世界。可真实世界最大的障碍从来不是算法,是数据。
给机器人走过的一段路配上一句准确的人类语言描述,极其依赖人工标注,成本高到没法规模化。研究者们因此很早就琢磨自动合成的办法:2018年就有人用“说话人模型”(Speaker Model,专门负责把轨迹翻译成文字说明的模型)做回译,后来的ScaleVLN、SRDF把这套思路做到了百万级别。
但规模一大,新问题就来了。
第一个问题是分工太细。导航模型管听指令走路,指令生成模型管看路写说明,各干各的,顶多训练时共享一些底层特征提取器,没法真正互相教学。有些研究试过把两个任务绑在一起学,可往往要靠专门设计的网络架构,比如单独的“动作解码器”和“语言解码器”,绑得比较僵硬,灵活性有限。
第二个问题,也是RSI-Nav论文反复强调的痛点,是时间错位。
可以想象一家餐厅的试吃官制度。老板请了个试吃官,把本季度所有新菜尝一遍、打好分、写好评语,一次性交给厨房参考。可从尝第一道菜到写完最后一份评语,也许三个月过去了,这三个月里厨师的手艺已经进步不少,评语里挑的那些毛病,厨师可能早改掉了。不让试吃官跟着厨房的进度实时反馈,这份评语交上去的时候,就跟厨师当下的真实水平对不上了。
论文里管这叫“annotate the full trajectory corpus with a fixed model before updating”:先用一个固定不变的模型把整个语料库标注完,再去更新模型。标注时模型是旧的,模型更新了,标注却没法倒回去重做一遍。
RSI-Nav想解决的就是这两件事。它要让“讲路”和“走路”两种能力长在同一个脑子里,还要让“出题”和“做题”保持实时同步,不留时间差。
一个模型,两种身份:既是导航员,又是讲解员
RSI-Nav的底座是Qwen3.5-9B,一个90亿参数的多模态大模型。它没有给导航和指令生成各开一个脑子,而是用同一套参数,靠不同的任务提示词来区分当前该干哪件事。
具体来说,RSI-Nav要学三件事。
第一件是指令跟随(Instruction Following,又叫VL2A,Vision-Language to Action,即看着图像、听着指令,预测接下来该做的动作)。机器人每一步保留过去8帧的观测历史,加上当前画面,模型看完这些信息,要一口气预测出接下来连续4个动作。动作集合只有四种:前进、左转、右转、停止。
第二件是指令生成(Instruction Generation,又叫VA2L,Vision-Action to Language,反过来,看着一整段路径的32帧画面和完整的动作序列,生成一句自然语言描述这段路该怎么走)。
第三件是空间理解(Spatial Understanding),也就是搞清楚物体在三维空间里彼此的位置关系,比如“床头柜在床的旁边”这类描述;导航做决策时,靠的就是这种基础认知能力。
有个细节值得多说两句:指令生成任务不只是看图说话,它还要“看动作说话”。
论文做了个对照实验,叫VA2L对比V2L(只看画面不看动作)。结果是,加入动作信息后,下游导航的成功率从47.0%提升到48.8%,路径效率指标SPL从38.8%提升到41.0%。
这个结果并不意外。让人只看一段别人走路的视频去描述路线,和让他同时看视频再加一份“这一步左转、这一步直走”的详细记录去描述,后者写出来的说明显然更准确。画面本身会有歧义,比如镜头轻轻晃一下看着像转弯,其实机器人只是在原地微调朝向。拿动作记录做校准,生成的指令才靠得住。
> VL2A(Vision-Language to Action):给定视觉画面和语言指令,预测导航动作,也就是“指令跟随”这一任务方向。
>
> VA2L(Vision-Action to Language):给定视觉画面和实际执行过的动作序列,反过来生成语言描述,也就是“指令生成”这一任务方向。
核心机制:小批量、即时更新、自己给自己出题
模型的三种能力说清楚了,接下来该看RSI-Nav最关键的设计,也就是论文标题里“policy-synchronized”(策略同步)这个词的含义。
整个流程分几步走。
第一步是标准的监督微调(SFT,Supervised Fine-Tuning,用人工标注或已有高质量数据对模型做初步训练,让它先具备基本能力),把导航和讲路的基础打牢。这相当于新员工入职培训,先把规章制度和基本业务过一遍。
训练数据来源很杂:SRDF、EnvDrop、ScaleVLN、R2R、RxR等多个数据集的连续导航轨迹,加上VSI-590K、LLaVA-3D的546K样本,还有MindCube的空间理解数据。SRDF原本是离散轨迹,在预设节点之间跳转,论文把它转成了连续轨迹,也就是真实的逐步行走;转换还专门设计了算法,把离散路径点映射进Habitat仿真器(一个常用的三维环境仿真平台)的坐标系,再用最短路径跟随器一步步走出完整动作序列。
训练结束,真正的“递归自我提升”才开场。
研究者把大量没有文字标注的轨迹切成小批次,称为shard(分片),每片16384条轨迹。对分片里的每条轨迹,当前模型要干三件事:先给这条路生成一句指令,再从起点按自己刚生成的指令重走一遍,最后检查这次执行有没有走到终点、走得够不够高效。
走到目标点3米范围以内,且SPL效率指标过了设定门槛,这条“指令-轨迹”配对才算合格,留下当训练数据;不合格的直接扔掉。
一批处理完,模型马上更新,接着处理下一个分片。更新时用的不只是本片刚筛出的合格数据,还掺入之前监督微调阶段用过的空间理解数据做重放(replay),防止模型在持续学新东西时把老本事忘掉。
这个设计最妙的地方是:下一个分片的指令生成和执行检验,交给刚刚更新完的模型去做,而不是最初那个一成不变的模型。
这就又回到前面试吃官的比喻,不过这次制度要改一改:不再让外部的试吃官给厨房打分,而是让厨师自己尝自己做的菜,尝完立刻照反馈调整下一道菜,做完再尝,每轮间隔都很短。间隔拉得太长,比如攒够一整年的菜再统一评估,厨师的手艺早就偏了还没人知道;间隔短到每做一道就尝一口,问题能当场发现、当场纠正。
论文专门做了消融实验来验证“间隔该多短”,结论挺有意思:不是越频繁越好,也不是越粗放越好。
团队拿64块GPU、在6.4万条轨迹构成的固定子集上,对比了不同更新粒度的表现。“candidate”衡量的是每块GPU在触发一次模型更新之前得先处理掉多少条轨迹。测试显示,每64条就更新一次,反而不如攒到256条再更新;而每1024条更新一次时,得把整个子集跑完才动手,已经很像传统的离线训练,效果同样被拉低。
中间值256条表现最好,SR(成功率)从冷启动模型的52.9%升到57.2%,SPL从45.5%升到48.7%。
更新太频繁,模型还没来得及积累出有意义的变化就被打断,前后两次生成的数据几乎没差别,计算资源白费;更新太粗放,又回到最初要规避的“数据滞后于模型”的老问题。256这个数字放到64块GPU的集群规模上,正好对应16384条轨迹一个分片,这也是论文最终采用的全量训练配置。
> SFT(Supervised Fine-Tuning):监督微调,用标注好的数据直接教模型该输出什么,是大模型训练中最基础的一步。
>
> SPL(Success weighted by Path Length):按路径长度加权的成功率,既看有没有走到终点,也看走得绕不绕远路,路线越直越高效,分数越高。
执行检验:为什么留下轨迹本身,而不是重新走出来的那条路
这里还有一个容易被人忽略、其实很讲究的设计决策。
模型生成了一条指令,并且成功、高效地执行完之后,拿来训练的应该是原始那条轨迹,还是模型自己重新走出来的那条?
RSI-Nav选了前者,保留原始轨迹τ_i,不用重新执行产生的那条轨迹。
论文给了两点理由。其一,让机器人在真实或仿真环境里一遍遍重走路径,会在Habitat仿真器里触发大量重新渲染,计算开销很高,成本不低。其二,更关键的是执行过程本身会累积误差——模型跑的时候方向稍微偏了一点,这个偏差要是被当成"标准答案"写进训练数据,等于把噪声也一并学进去了。
所以执行这一步,更像是让机器人过一场资格考试,而不是重新录一遍教学视频。
打个比方:学生写了篇作文,老师让他照着自己的思路口头讲给同学听,看别人听完能不能顺着描述走到正确结论。同学们都能准确理解,就说明这篇作文写得清楚、逻辑站得住,作文本身可以收进范文集;但"同学复述老师作文"这个过程没必要也收进去,因为复述难免有口误和遗漏,那不是原始作文的质量。
保留原始轨迹,只用执行结果检验指令合不合格,这个设计把"数据生成"和"数据质量检验"彻底拆成了两件事:检验归检验,训练素材本身不受污染。
成绩单:从52.9%到68.6%的跃迁
设计思路讲了这么多,最后还是要看实际效果。
RSI-Nav在R2R-CE和RxR-CE两个基准的Val-Unseen(验证集中模型从未见过的环境)上做了测试。
R2R-CE上,RSI-Nav拿到68.6%的成功率(SR)和58.6%的SPL;监督微调阶段结束时的冷启动模型是52.9% SR、45.5% SPL,提升接近16个百分点。RxR-CE上,成功率从冷启动的54.7%升到72.4%,SPL从48.8%升到56.5%;nDTW指标(Normalized Dynamic Time Warping,衡量机器人实际路线和参考路线在空间与顺序上的吻合度,不只看终点对不对,还看路走得像不像)从62.4提升到70.6。
这个nDTW指标的提升,特别值得多说一句。
机器人完全可以抄近路、绕开指令里提到的地标,照样走到终点,成功率照样很高,但nDTW会很低——它压根没按指令描述的路线走。nDTW明显提升,说明RSI-Nav不只是"蒙对了终点",而是真的在按指令一步步走对路。对需要精确遵循多步骤指令的长距离导航任务来说,这一点尤其重要。
和同期其他方法比,RSI-Nav在这两个基准上都拿到了对比方法中领先的成绩,包括NavFoM(4.61 NE、61.7% SR)、DualVLN(64.3% SR)、AwareVLN(65.4% SR)等近期工作。
更让人意外的是,RSI-Nav提升导航能力的同时,没有牺牲空间理解能力。VSI-Bench(专门测试模型"思考空间"能力的基准,比如判断两个物体的相对方向)从64.6提升到64.9,ScanQA从93.2提升到96.4,SQA3D从65.1提升到65.4,MindCube从91.8提升到93.5——四项全部小幅提升,没有一项下降。
这说明论文把空间理解数据混进来做"重放"训练,确实起到了防止能力遗忘的作用;空间理解能力本身也在和导航能力的共同训练中拿到了一点额外增益。
说到这儿,我自己有个疑问:论文里空间理解那点提升,幅度只有0.3到3个百分点。这到底是模型在空间推理上确实长了点本事,还是训练过程里的正常起伏?显著性检验论文没做,能说的只是"modest"(温和)的改善,别解读过头。
双向学习互相喂养:讲路的能力,真能教会机器人走路吗
论文还做了一系列消融实验,拆解到底是哪个环节在起作用。
先看双向学习本身的贡献。只用导航数据训练(Nav),成功率是44.7%;加上V2L(不带动作的指令生成)数据联合训练,提到47.0%;换成VA2L(带动作的指令生成),提到48.8%;再叠加空间理解数据,最终达到52.9%。
每叠加一步都在涨分,涨幅最大的两步分别是从纯导航到加入VA2L(提升4.1个百分点),以及从VA2L到加入空间理解(提升4.1个百分点)。"学会讲路"这件事本身确实能反哺"学会走路",不是空谈。
论文另做了一组挺扎实的对照:同一批轨迹,换不同的指令生成器来打标注,再拿这些数据训练结构一样的导航模型,比下游导航表现。结果呢,SRDF生成的指令在传统NLP指标(BLEU、METEOR、ROUGE这类衡量生成文本与参考文本相似度的指标)上分数更高;可RSI-Nav指令训出来的导航模型成功率41.3%,把SRDF指令的36.8%甩开了一截。
这个结果打破了一个容易想当然的假设:生成的指令和人写的参考答案长得越像,就等于这条指令质量越高。
实际情况正好反过来。论文引了Gadre等人2024年的看法:NLP相似度指标量的主要是"像不像人话",不是"对后续训练有没有用"。一条指令,用词跟人类标准答案对不上没关系,只要清楚、能执行、能准确把机器人指到目的地,它当训练数据的价值反而更高。
打个比方,两份给外卖骑手的送餐路线说明。一份辞藻漂亮、用词讲究,跟公司模板几乎一字不差;另一份大白话,甚至有点絮叨,可骑手照着走,准能按时摸到门牌号。公司内部审核要是只按文字与模板的相似度打分,头一份肯定占优;可外卖送得顺不顺,靠的其实是后一份。RSI-Nav就是那个"话不好听但真能送到"的指令生成器——它生成的过程始终得过执行检验这一关,不是光模仿人类怎么写。
> nDTW(Normalized Dynamic Time Warping):动态时间规整的归一化版本,用来衡量两条轨迹在空间形状和时间顺序上的相似程度,数值越高说明走的路线越贴合参考路径。
>
BLEU、METEOR、ROUGE、CIDEr 和 SPICE 这几项指标,在自然语言处理里用来衡量生成文本与参考文本有多相似,机器翻译、图像描述任务常用它们,但当初设计时并不是冲着“指令到底好不好用”去的。
从仿真环境走到真实世界,机器狗跑进了办公楼,也上了马路。
论文没有让 RSI-Nav 只停留在仿真里刷分,还做了真实环境部署。模型被装到一台 DEEP Robotics M20 四足机器人上,推理则放在配备 NVIDIA RTX 4090 显卡的远程服务器上跑,摄像头画面和语言指令通过网络持续传过去,动作指令实时生成,再拿来控制机器人行走。
测试覆盖室内和室外两类场景:绕开障碍物、在狭窄空间穿行、执行多步骤复杂指令、识别开放词汇地标(指令里提到的物体此前没有专门训练过)、跨房间长距离导航,以及室外开放环境下的导航。
论文给出了几个具体例子。有一条指令是“绕过黄色椅子,朝着左边的植物走,在右边的植物前停下”,模型得认识椅子和植物,还得理解左右方位和绕行的空间关系。另一条更复杂:“面向盆栽植物出发,沿着通道走到门口,左转朝四足机器人走去,转身走到明亮的房间,右转,在洗衣机前停下”,这是多步骤、长距离的室内导航,模型要一路盯住空间位置和指令执行到哪一步。
这些真实世界演示挺有说服力。不过论文在“局限性”部分也承认,眼下只是定性展示,还没在大量不同真实环境、没见过的场景和更长距离的导航任务上做过系统性的鲁棒性评估。
写在后面
读完论文,最让我意外的不是最终 68.6% 的成功率,而是那个比较 SRDF 和 RSI-Nav 指令质量的实验。
它挑战的是一个我之前没细想过的假设:评估 AI 生成的文本,我们习惯拿人类写的参考答案去对照,算个相似度分数,分高就认为质量好。论文用实打实的下游实验说明,“像人话”和“真正有用”这两件事可以脱钩。
这个发现不止对导航指令生成成立。往大了说,凡是让 AI 生成训练数据的场景,比如让大模型自己写数学题的解题步骤去训练另一个模型,恐怕都有类似的坑:容易量化、容易对标参考答案的指标被过度依赖,而“这份数据对后续训练到底有没有用”这个更根本的问题反倒被忽略。
另一个让我反复琢磨的细节,是 256 这个“更新粒度”的最优值。数字看着很工程化,背后的道理却有普遍性:反馈循环太频繁,系统会对噪声过度敏感;太粗放,又会脱离实际进展。训练模型也好,做别的需要持续迭代的事也好,中间总有一个“恰到好处”的节奏,这个节奏得靠实验找,拍脑袋定不下来。
论文也坦白了一个没解决的问题:自我提升系统天然受限于自己当前的能力边界。模型给自己出题、自己改卷,难免偏向保留它本来就擅长应付的简单轨迹,淘汰掉那些指令本身没错、执行起来却比较困难的样本。时间一长,这套系统会不会越练越擅长“容易的路”,在真正复杂、需要长程推理的导航任务上反而停住?
论文没回答这个问题,把它留在了“未来工作”里。但这恰恰是最该继续追问的地方:一个能自我迭代的系统,到底是在持续进步,还是在不断加固它最初的舒适区?
Q&A
Q1:RSI-Nav是什么?
RSI-Nav 这套框架走的是数据驱动路线,专门用于视觉语言导航,能递归地自我提升。它让一个共享模型同时承担三项任务:跟指令走、生成指令、理解空间。训练数据由模型自己产出,质量也由它自己把关,紧接着马上完成自我更新。背后的机制叫策略同步的语言-动作双向自举。这样一来,导航能力就一步步往上走。
Q2:RSI-Nav相比之前的导航方法有什么优势?
A:在 R2R-CE 和 RxR-CE 两个主流基准上,它的成功率分别为 68.6% 和 72.4%,明显高于此前多数方法。训练采用分片小批量加即时更新的方式,生成的指令数据始终跟当前模型水平同步,不会像传统方法那样数据滞后于模型;空间理解能力也保持得不错。
Q3:RSI-Nav的训练数据是怎么来的?
A:训练数据有两部分。初始阶段用的是多源公开数据集,包括 SRDF、EnvDrop、ScaleVLN、R2R、RxR,以及空间理解数据集 VSI-590K、LLaVA-3D 和 MindCube;进入递归自我提升阶段后,模型自己生成指令,再经执行检验筛选,留下约 250 万条指令跟随样本和 110 万条指令生成样本。