ARTICLE DETAIL

资讯详情

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

MLLMs赋能视觉语言导航:显式世界表示如何实现通用智能体

MLLMs赋能视觉语言导航:显式世界表示如何实现通用智能体 1. 从“看图说话”到“看图走路”为什么VLN需要新的导航范式如果你玩过一些早期的第一人称视角游戏比如《毁灭战士》或者《雷神之锤》你会发现一个有趣的现象游戏里的AI敌人虽然会追着你打但它们的行动路径往往是预设好的或者基于非常简单的“看见-靠近”逻辑。它们不理解“房间”、“走廊”、“桌子后面”这些概念更不会根据你的语言指令比如“去左边的房间在书架的第二层找一本红色的书”来行动。它们的世界是一堆坐标点和碰撞体积的集合。这和我们今天要聊的“视觉与语言导航”任务何其相似。传统的VLN智能体就像一个装备了顶级摄像头和GPS但脑子里只有一本死板路书的机器人。你告诉它“去客厅”它能通过预先学习的大量“客厅”图片特征在已知的地图里找到一条路。但这条路是脆弱的如果客厅的沙发换了个位置或者多了一盆它没见过的绿植它可能就“卡住”了因为它无法理解这些新物体与“客厅”这个抽象概念以及“走过去”这个动作之间的动态关系。它的“世界模型”是隐式的、固化的藏在神经网络那数以亿计的参数里难以解释更难以泛化。这就是“One Agent to Guide Them All”这个标题背后直指的核心痛点。我们需要的不是一个在成千上万个模拟场景中刷出高分的“应试高手”而是一个真正能“理解”它所处环境并能用人类语言与之交流的通用导航智能体。想象一下未来的家庭服务机器人你不需要为它预先绘制家里的3D地图也不需要训练它认识你家每一件独特的家具。你只需要对它说“去我卧室把床头柜上正在充电的平板电脑拿过来。”它就能自己探索、识别、规划并执行。这要求智能体必须建立一个显式的世界表示——一个它自己能“看懂”并能用来推理的、关于环境的结构化心智地图。多模态大语言模型的出现让我们看到了实现这个愿景的钥匙。MLLMs比如GPT-4V、Gemini等已经展现了惊人的跨模态理解与生成能力。它们能看着图片描述内容也能根据文字生成图像。但直接让MLLMs去控制一个机器人或虚拟智能体在环境中移动就像让一位博学的战略家去当侦察兵——知识渊博但缺乏对瞬息万变的战场态势的实时感知和具身体验。MLLMs擅长高层规划和语义理解却对低层的、连续的、基于几何的导航动作如“向左转15度前进2米”感到陌生。因此这篇工作提出的核心思想“Empowering MLLMs for VLN via Explicit World Representation”其精妙之处在于“赋能”二字。它不是抛弃MLLMs也不是让MLLMs从头学习导航而是为MLLMs配上一个“感官”与“手脚”——即一个能够实时构建并维护显式世界表示的模块。这个模块将智能体看到的连续视觉流转换成MLLMs能够直接理解和操作的符号化、结构化的环境知识。于是MLLMs可以专注于它最擅长的事情理解复杂的自然语言指令、进行多步逻辑推理、制定高层任务规划。而具体的路径寻找、避障、动作执行则交给基于显式世界表示的低层控制器或规划器。这种“大脑”MLLMs与“小脑”显式世界模型的分工协作正是实现“One Agent to Guide Them All”这一宏大目标的关键一步。它旨在打造一个智能体无需在每一个新环境、新任务上进行微调就能通过零样本或极少样本的方式适应并完成导航指令。从模拟环境到真实世界的迁移其核心障碍也正在于此——模拟环境可以穷举但真实世界无限复杂。一个依赖于隐式、数据驱动特征的智能体必然会在sim-to-real的鸿沟前跌倒。而一个拥有显式、可解释世界表示的智能体则有可能像人类一样利用先验知识和实时观察快速构建对新环境的认知从而实现泛化。2. 显式世界表示为MLLMs绘制可推理的“思维地图”那么什么是“显式世界表示”它为什么如此重要我们可以把它理解为智能体为自己创建的一张实时更新的、富含语义的“思维地图”。这张地图不同于SLAM技术生成的点云或网格地图后者是精确的几何描述但缺乏“意义”。显式世界表示的核心在于它将原始的、像素级的视觉观测转化为一系列计算机具体是MLLMs能够直接进行逻辑运算的符号和关系。2.1 从像素到符号构建表示的流水线一个典型的构建流程可能包含以下几个关键步骤这也是该领域研究常见的思路全景图像分割与物体识别智能体在环境中的一个观测点通常能获取360度的全景图像。第一步是使用强大的视觉基础模型如SAM、Grounding DINO等对图像进行全景分割和开放词汇检测。这不仅仅是识别出“椅子”、“桌子”还要能识别出“一张带有杯子的木质书桌”。每个被检测到的物体实例都会被赋予一个语义标签、一个在图像中的像素掩码以及一个置信度分数。3D空间定位与构图仅有2D图像中的物体是不够的。智能体需要知道这些物体在三维空间中的位置。这可以通过单目深度估计、或多视角几何如果智能体在移动来实现。结合智能体自身的位姿位置和朝向可以将每个检测到的物体大致定位在一个以智能体为中心的局部3D坐标系中。随着智能体的移动不断累积这些局部观测就能逐步构建出一个稀疏的3D语义地图。地图中的每个“点”不再是一个纯粹的空间坐标而是一个带有语义标签如“沙发”、“电视”、“门”的实体。关系与结构抽取这是使表示变得“可推理”的关键。我们需要从物体集合中抽取出它们之间的关系。这些关系包括空间关系“电视”在“沙发”的正面“咖啡桌”在“沙发”前面。功能/语义关系“遥控器”通常放在“咖啡桌”上“书架”上放着“书”。导航拓扑关系“门”连接着“客厅”和“卧室”“走廊”通向“厨房”。 这些关系可以形式化为一个图结构节点是带有属性的物体或区域边是它们之间的关系。例如(客厅 包含 沙发)(沙发 前面是 咖啡桌)(客厅 通过-门-连接 卧室)。2.2 表示的格式如何让MLLMs“读得懂”构建出图结构后下一步是如何将其“喂”给MLLMs。MLLMs的天然语言是文本。因此一个直接的方法是将这个图结构用自然语言描述出来。例如“你当前位于一个客厅。你的正前方3米处有一张灰色的沙发。沙发的左侧有一个落地灯。沙发的正前方2米处有一张木质的咖啡桌桌上放着一个白色的马克杯和一个遥控器。在你的右手边约5米远的地方有一扇开着的门门后似乎是一个卧室可以看到床的一部分。”这种描述是稠密的、富含语义的。但它可能很长而且在智能体探索过程中会不断增长。直接将其作为上下文输入MLLMs会迅速消耗宝贵的上下文窗口且包含大量冗余信息比如反复描述同一个静止的沙发。更高效的方法是使用一种结构化的文本格式比如JSON或自定义的键值对列表或者甚至是一种简化的领域特定语言。例如{ agent_pose: {location: living_room, orientation: facing_north}, observable_objects: [ {id: obj_1, class: sofa, attributes: [gray, fabric], distance: 3.0, bearing: 0.0}, {id: obj_2, class: floor_lamp, attributes: [black], distance: 2.5, bearing: -30.0}, {id: obj_3, class: coffee_table, attributes: [wooden], distance: 2.0, bearing: 0.0}, {id: obj_4, class: door, attributes: [open], distance: 5.0, bearing: 90.0, connects_to: bedroom} ], spatial_relations: [ {subject: obj_3, relation: on, object: [obj_5(mug), obj_6(remote)]}, {subject: obj_4, relation: leads_to, object: bedroom} ] }这种表示非常紧凑且易于被MLLMs解析和操作。MLLMs可以通过指令学习理解这种格式中每个字段的含义并基于此进行推理。例如当指令是“拿起遥控器”时MLLMs可以推理出遥控器obj_6在咖啡桌obj_3上而咖啡桌在我正前方2米处。因此下一步动作应该是“走向咖啡桌”。实操心得表示粒度与计算开销的权衡在实际系统设计中显式表示的粒度是需要仔细权衡的。过于精细的表示如描述物体的每一个纹理细节会带来巨大的计算和存储开销且对导航任务可能并无必要。过于粗糙的表示如只记录物体类别和大致方向又可能丢失关键信息。一个实用的策略是分层表示在全局规划时使用粗粒度的拓扑地图房间连接关系在局部执行时使用细粒度的物体级地图。同时要引入记忆与遗忘机制对于远离当前区域或与当前任务无关的物体信息可以进行压缩或暂时移除以控制表示的大小。2.3 动态更新与不确定性管理环境不是静态的。智能体在移动视角在变化甚至物体也可能被移动比如人拿走了遥控器。因此显式世界表示必须是一个动态系统。增量更新每获得一个新的观测就需要将新的物体和关系融合到现有地图中。这涉及到数据关联问题新看到的“沙发”和地图里已有的“沙发”是同一个吗这需要通过外观特征、空间位置一致性等进行判断。置信度传播视觉检测是有噪声的深度估计是不准的。因此地图中的每一个实体和关系都应该附有一个置信度。当从多个角度、多次观测到同一个物体时其位置和属性的置信度应该提高。长期未被观测到的物体其置信度应随时间衰减。处理矛盾当新的观测与已有地图强烈冲突时比如原来放桌子的地方现在空了系统需要有能力假设“物体被移走了”并更新地图而不是简单地将新观测视为错误而丢弃。这需要一定的常识推理能力而这正是MLLMs可以发挥作用的地方。这个动态的、带不确定性的显式表示构成了智能体进行可靠决策的基础。它让智能体不再是“一瞥之下”的盲目行动者而是拥有了持续积累和修正的环境认知。3. MLLMs作为高层指挥官基于显式表示的推理与规划拥有了显式世界表示这张“实时战略地图”MLLMs就可以扮演起高层指挥官的角色。它的输入至少包含三部分1人类的自然语言指令2当前的显式世界表示文本化或结构化3可能还有任务历史或对话上下文。它的输出则是一个高层行动计划或下一个具体动作。3.1 指令分解与目标 grounding复杂的导航指令往往是多步骤的。例如“去厨房拿一个苹果然后放到客厅的茶几上。” MLLMs首先需要做的是任务分解和目标落地。分解将指令分解为子目标序列[G1: 导航至厨房], [G2: 找到并拿取苹果], [G3: 导航至客厅], [G4: 找到茶几并放置苹果]。落地将抽象的子目标与显式世界表示中的具体实体绑定。这被称为“Grounding”。G1: 导航至厨房MLLMs需要查询地图找到“厨房”这个区域。如果地图中已经标记了厨房的位置和连接关系例如通过门与餐厅相连那么规划就很简单。如果地图中还没有探索到厨房MLLMs则需要根据常识厨房通常与餐厅或客厅相邻和当前已探索区域的结构推断出最可能的方向并生成一个探索性的子目标如“探索东南方向的门廊”。G2: 找到并拿取苹果这需要MLLMs知道“苹果”是一种可能出现在“厨房”的“食物”。它需要规划先找到厨房内的典型容器如“冰箱”或“水果篮”然后接近并执行“拿取”操作。这涉及到对物体功能和属性的常识理解。整个过程中MLLMs不断地在“内部思考”利用其海量先验知识和“外部查询”检索显式世界表示之间切换。显式表示提供了具体的、当下的环境事实而MLLMs的先验知识提供了推理所需的常识和逻辑规则。3.2 规划生成从目标到动作序列基于落地后的子目标MLLMs需要生成一个可执行的计划。这个计划的粒度可以有所不同高层行为序列对于上述例子MLLMs可能输出[行动: 移动到(厨房), 行动: 搜索(苹果, 在[冰箱, 柜台]中), 行动: 拿取(苹果), 行动: 移动到(客厅), 行动: 搜索(茶几), 行动: 放置(苹果, 在茶几上)]。具体的导航指令在更底层的控制中MLLMs可能需要输出更具体的指令如“向左转直行至沙发处然后右转朝向那扇开着的门”。这需要MLLMs对空间关系有更精细的理解并能将其转化为以自我为中心的动作描述。这里的一个关键设计点是MLLMs应该规划到什么程度让MLLMs直接输出低层的电机控制命令如“轮子转速10”是不现实的也是低效的。更合理的架构是MLLMs输出高层行为或目标点然后由一个专门的低层导航控制器或运动规划器来接收这个目标并结合显式世界表示中的几何信息障碍物位置、自由空间计算出安全、平滑的具体运动路径。这样实现了大脑战略规划和小脑/脊髓战术执行的分离。3.3 交互与纠错当指令模糊或环境变化时现实世界的指令常常是模糊的。比如“把那个东西拿过来。” 显式世界表示中可能有很多个“东西”。这时MLLMs可以主动发起对话澄清。它可以根据当前视野和地图生成一个澄清问题如“你指的是红色的杯子还是桌子上的遥控器” 这需要MLLMs具备指代消解和基于上下文的提问能力。同样当计划执行失败时例如按照规划路径前进时发现路被椅子挡住了低层控制器会反馈失败信息。MLLMs需要根据这个反馈和最新的世界表示重新进行规划。例如它可能决定“绕过椅子”或者如果椅子是轻便的甚至可能规划“移开椅子”这个新动作。踩坑实录MLLMs的“幻觉”与规划可行性在早期实验中直接让MLLMs基于文本描述进行规划一个常见的问题是“幻觉规划”。例如指令是“打开窗户”MLLMs可能成功规划出“走到窗户前伸出手打开窗户”。这看起来合理。但如果显式世界表示中明确显示这个“窗户”实际上是一个“壁画上的窗户图像”或者是一个“被封死的窗户”那么这个规划就是不可行的。因此必须将MLLMs的规划严格限制在显式世界表示所描述的事实范围内。一个有效的做法是在MLLMs输出规划后增加一个“可行性检查”模块。这个模块将规划步骤与当前世界表示进行逻辑验证确保每一步的前提条件如“窗户是可打开的”都在表示中得到了支持。如果发现矛盾则要求MLLMs重新规划或报告失败原因。4. 系统集成与零样本泛化挑战将显式世界表示构建模块、MLLMs规划模块和低层导航控制模块集成在一起形成一个完整的VLN智能体是一个系统工程挑战。数据流如何在模块间高效传递各模块以什么频率运行如何保证实时性4.1 典型系统架构与工作流程一个参考的闭环工作流程可能如下感知与建图线程高频持续运行。接收视觉和位姿传感器数据进行物体检测、分割、深度估计并增量式更新显式世界表示语义图。这个线程独立于规划确保环境表示是最新的。规划与决策线程低频由事件触发如收到新指令、子目标完成、执行失败。当被触发时从建图线程中获取当前最新的世界表示快照将其与任务指令一起输入MLLMs。MLLMs进行推理输出下一个高层行动或一个短序列的行动计划。控制与执行线程高频接收规划线程输出的行动命令。如果是导航命令如“去往坐标(x,y)”或“走向桌子”则由路径规划器如A* D*根据显式世界表示中的障碍物信息生成一条无碰撞路径并输出底层的控制命令速度、角速度。如果是操作命令如“拿起”则触发相应的操作技能模块。这种异步架构平衡了计算开销和响应速度。MLLMs的推理虽然强大但耗时不适合在每秒数十次的控制循环中运行。让它运行在低频的决策层是合理的。4.2 实现零样本泛化的关键“One Agent to Guide Them All”的雄心在于零样本泛化即智能体在训练中从未见过某个环境或某种物体但在测试时能成功导航。显式世界表示是实现这一点的基石。对新物体的泛化传统VLN模型需要针对数据集中出现的所有物体类别进行训练。而基于MLLMs的方案只要视觉基础模型如Grounding DINO能够以开放词汇的方式检测出这个物体例如“一个紫色的独角兽玩具”MLLMs就能利用其先验知识理解这个物体可能具有的属性“玩具”、“可移动的”并将其纳入地图进行推理。即使它从未在训练数据中见过“独角兽玩具”它也知道这是一个可以绕过的物体而不是一堵墙。对新环境的泛化智能体不需要预先学习目标环境的布局。它通过在线构建显式表示来理解新环境。MLLMs的常识如“卧室通常有床和衣柜”“厨房里有冰箱和水槽”可以指导它在探索未知环境时进行有根据的猜测。例如如果指令是“去卧室睡觉”而智能体探索到一个有床的房间即使这个房间的布局和它之前见过的所有卧室都不同它也能大概率推断出这就是卧室。对新指令的泛化MLLMs本身具有强大的语言理解和生成能力能够处理训练数据中未出现过的指令句式、组合任务或复杂逻辑。4.3 Sim-to-Real的核心障碍与缓解策略从模拟环境如Habitat, AI2-THOR, Matterport3D训练和测试到部署在真实机器人上最大的挑战是“域差异”。感知域差异模拟器的视觉渲染再真实与真实摄像头拍摄的图像在纹理、光照、噪声上仍有巨大差异。这会导致视觉基础模型在模拟器中训练的检测器在真实世界中性能下降。解决方案使用在大量真实世界数据上预训练的、泛化能力强的视觉基础模型如CLIP、SAM而不是仅在模拟数据上微调的模型。同时可以在感知模块引入简单的域适应技术如图像增强或特征对齐。动力学与执行差异模拟器中的机器人运动是完美的而真实机器人存在滑移、控制误差、传感器噪声。规划好的路径可能无法精确执行。解决方案在低层控制器中必须使用鲁棒的反馈控制如PID并实时根据传感器反馈如激光雷达、里程计调整路径。显式世界表示也需要能够融合来自多传感器的信息如激光雷达的精确测距来修正基于视觉的估计提高地图的几何精度。交互差异模拟器中的物体操作如开门、拿取通常通过简单的API调用完成而真实世界需要复杂的抓取、力学交互。解决方案对于涉及物理交互的任务目前的MLLMs赋能方案可能主要聚焦在导航部分将操作任务委托给专门训练的操作技能模型。或者MLLMs只规划到“靠近物体并准备操作”这一步后续由技能库完成。个人经验仿真到真实从“可用”到“可靠”的漫长之路在仿真中一个基于MLLMs和显式表示的智能体可能达到90%的成功率看起来非常惊艳。但一旦转移到真实机器人平台成功率可能骤降到30%以下。除了上述域差异一些在仿真中被忽略的细节会成为“杀手”。例如仿真中地面永远是平坦的而真实环境可能有轻微坡度或地毯边缘导致机器人颠簸甚至倾覆。仿真中物体检测框是精确的而真实检测会有漂移导致机器人认为“桌子”的位置比实际偏了20厘米结果撞了上去。因此必须进行大量的真实世界“压力测试”找出这些“角落案例”并针对性增强系统的鲁棒性。例如为路径规划器设置更大的安全边界对物体位置估计使用更保守的滤波算法并让MLLMs学会在规划中考虑“不确定性”比如“缓慢靠近可能位置有误差的物体”。5. 未来展望超越导航的通用具身智能“One Agent to Guide Them All”不仅仅是一个VLN的解决方案它更像是一个通往通用具身智能的架构蓝图。通过显式世界表示这座桥梁我们将强大的、但“脱胎”的MLLMs与物理世界连接了起来。未来的演进方向可能是多方面的表示更加丰富和高效目前的显式表示可能主要以物体和房间为中心。未来可以融入更多信息如物体的功能状态“门是开着的还是关着的”、“灯是亮着的还是灭的”、材料的物理属性“这是玻璃的易碎”、甚至动态实体的意图“那个人正走向门口”。表示的形式也可能从纯文本发展为文本与空间数据结构如3D场景图的混合以便更高效地支持几何查询。MLLMs与专业模型的协同MLLMs作为通用推理引擎可以调用一系列专业化的“工具”模型。例如遇到一个需要开门的任务MLLMs可以调用一个专门的门把手抓取和旋转规划模型需要回答环境中的问题时可以调用一个视觉问答模型。MLLMs负责任务编排和工具选择。从被动响应到主动探索与学习当前的智能体主要响应人类指令。未来的智能体可以具备主动探索的能力以构建更完整的世界模型。它还可以从失败中学习更新自己的常识或策略。例如如果多次尝试都无法打开一扇门它可能会更新世界表示为该门添加一个“可能上锁”的属性并反馈给人类。多模态交互的深化交互不限于语言。智能体可以理解手势指向“拿那个”结合手指方向甚至通过观察人类的演示来学习新任务。这条路充满挑战从感知的不确定性、推理的复杂性到系统集成的工程难度每一步都需要深耕。但“One Agent to Guide Them All”所描绘的愿景——一个能理解我们的话语、感知我们的世界、并为我们执行复杂任务的通用助手——正是驱动我们不断将MLLMs的强大认知能力通过显式世界表示这一关键赋能器注入到物理智能体中的核心动力。这不再仅仅是让机器“看到”或“走到”而是让机器开始“理解”它所处的世界并像我们一样在其中思考和行动。
返回列表