跳转至

LLM as Copilot for Coarse-Grained Vision-and-Language Navigation

会议: ECCV 2024
arXiv: N/A
代码: 无
领域: LLM Agent / 机器人导航
关键词: 视觉语言导航, 大语言模型, 粗粒度指令, 困惑度评分, 主动求助

一句话总结

本文提出VLN-Copilot框架,让视觉语言导航智能体在粗粒度(简短模糊)指令下遇到困惑时主动向LLM求助,LLM作为副驾驶实时生成细粒度导航指导,在两个粗粒度VLN数据集上显著提升导航成功率。

研究背景与动机

领域现状:视觉语言导航(VLN)要求智能体根据自然语言指令在室内环境中导航到目标位置。传统VLN研究多关注细粒度指令——即逐步描述路径的详细指令(如"左转走到厨房门口,然后右转经过餐桌...")。但在真实场景中,用户更倾向于给出简短的高层指令(如"去二楼的卧室"),这类粗粒度指令更符合人类交互习惯,近年来受到越来越多关注。

现有痛点:粗粒度指令通常太简短,缺乏导航过程中的中间路标和动作描述,智能体很难仅凭这些信息做出正确决策。具体来说,当智能体面临多条可选路径时,粗粒度指令无法提供足够的消歧信息。现有一些方法尝试让智能体在导航中主动求助,但求助对象通常是预先构建的数据集或模拟器中的固定回应,灵活性和实用性有限。

核心矛盾:粗粒度指令的信息量与导航决策所需信息量之间存在巨大缺口。智能体需要在某些关键决策点获得额外信息,但传统方法无法动态生成上下文相关的导航建议。

本文目标 (1)如何判断智能体何时需要帮助——即何时对当前决策不确定?(2)如何动态生成与当前场景和目标相关的细粒度导航指导?(3)如何将LLM的辅助无缝集成到现有VLN框架中?

切入角度:作者观察到LLM具有强大的空间推理和常识推理能力,可以根据场景描述和目标信息推断合理的导航路径。关键洞察是:不是让LLM替代智能体做所有决策,而是让LLM作为"副驾驶"——仅在智能体困惑时提供辅助,这样既利用了LLM的推理能力,又保留了专用VLN模型的视觉理解优势。

核心 idea:通过困惑度评分量化VLN智能体的决策不确定性,在高困惑时主动向LLM请求细粒度导航指导,LLM基于场景上下文生成实时建议辅助导航。

方法详解

整体框架

VLN-Copilot由三个核心组件构成:(1)基础VLN智能体,负责感知环境和执行导航动作;(2)困惑度评估模块,在每个决策步实时评估智能体的不确定性;(3)LLM副驾驶,在智能体困惑超过阈值时接收场景描述查询,生成细粒度导航建议反馈给智能体。整个流程是:智能体观察环境→计算困惑度→若困惑则向LLM求助→LLM返回细粒度指令→智能体结合原始指令和LLM建议做决策。

关键设计

  1. 困惑度评分(Confusion Score):

    • 功能:量化智能体在每个导航步的决策不确定性,决定是否需要向LLM求助
    • 核心思路:在每个时间步,VLN智能体对所有可选动作计算概率分布。困惑度定义为动作概率分布的熵——当最高概率动作与次高概率动作差距小时,熵较高,说明智能体不确定该走哪条路。具体地,\(CS_t = -\sum_i p(a_i) \log p(a_i)\),当\(CS_t\)超过阈值\(\tau\)时触发求助。阈值\(\tau\)通过在验证集上搜索最优值确定
    • 设计动机:与固定频率求助相比,基于困惑度的自适应求助更高效——在简单路段不求助以减少LLM调用开销,在关键岔路口才请求帮助。这模拟了人类驾驶中"遇到不确定路口才看导航"的行为
  2. 场景描述构建(Scene Description Construction):

    • 功能:将智能体当前感知到的视觉信息转化为LLM可理解的文本描述
    • 核心思路:在决定求助后,系统将智能体当前的全景视图中各个可导航方向的视觉观察转化为文本。主要包含三类信息:(1)各方向可见的物体和房间类型;(2)智能体已经过的路径描述(历史轨迹);(3)原始粗粒度指令中的目标描述。这些信息被组织成结构化的prompt输入给LLM
    • 设计动机:LLM无法直接处理图像,因此需要一个视觉-文本转换环节。通过包含历史轨迹信息,LLM可以理解智能体当前的空间上下文,避免给出重复或矛盾的建议
  3. LLM辅助融合(LLM Guidance Fusion):

    • 功能:将LLM返回的细粒度指导与原始指令融合,用于智能体的动作决策
    • 核心思路:LLM生成的细粒度指导被编码为文本嵌入,与原始粗粒度指令的嵌入通过注意力机制融合。融合后的指令表征与视觉特征进行交叉注意力,产生更新的动作概率分布。为了平衡原始指令和LLM建议的影响,引入一个可学习的门控机制,让模型自适应地决定在多大程度上采纳LLM的建议
    • 设计动机:完全依赖LLM可能引入噪声(LLM对空间描述的理解可能不精确),因此需要门控机制让原始VLN模型的视觉判断仍然发挥作用,两者互补

损失函数 / 训练策略

训练分两阶段:(1)预训练基础VLN智能体,使用标准的交叉熵损失和辅助的进度监督损失;(2)固定VLN骨干,训练融合模块和门控机制,使用模仿学习损失(让智能体在接收LLM指导后更接近最优路径)。LLM(GPT-4/LLaMA)不做微调,直接通过in-context learning使用。

实验关键数据

主实验

数据集 指标 VLN-Copilot HAMT DUET 提升
R2R-Last (val unseen) SR↑ 52.3 44.6 46.1 +6.2 vs DUET
R2R-Last (val unseen) SPL↑ 44.8 38.2 40.5 +4.3 vs DUET
REVERIE (val unseen) SR↑ 38.7 32.1 33.4 +5.3 vs DUET
REVERIE (val unseen) SPL↑ 30.2 25.6 27.3 +2.9 vs DUET

消融实验

配置 SR↑ SPL↑ 说明
Full VLN-Copilot 52.3 44.8 完整模型
固定频率求助 49.1 41.2 每5步求助一次,不如自适应策略
w/o 场景历史 50.5 43.1 LLM缺少历史轨迹信息导致建议不准
w/o 门控融合 48.7 40.9 完全依赖LLM建议反而下降
Oracle求助 57.8 50.3 在真正需要时才求助的上界

关键发现

  • 困惑度评分的门控机制最为关键:去掉后SR下降3.6%,说明选择性求助优于盲目求助
  • 与Oracle求助的差距(5.5% SR)表明困惑度评估仍有改进空间
  • 不同LLM的效果差异不大(GPT-4 vs LLaMA-2-70B),说明框架对LLM选择不敏感
  • 求助频率约为总步数的20-30%,既节省了LLM调用成本又获得了显著提升
  • 场景历史信息的加入使LLM建议的相关性提升了12%(人工评估)

亮点与洞察

  • 自适应求助机制:困惑度评分实现了"按需求助",避免了每步都调用LLM的高开销,这个设计思路可以迁移到其他需要LLM辅助的实时决策系统(如机器人操作、自动驾驶)
  • LLM作为副驾驶而非主驾驶:不替代专用模型而是补充其不足,这种协作范式比端到端LLM方案更实用——保留了专用模型的视觉理解优势,同时借用LLM的常识推理
  • 门控融合防止LLM噪声:LLM对空间描述的理解可能不精确,门控机制让系统能自适应地决定采纳LLM建议的程度

局限与展望

  • 场景描述的构建依赖物体检测器的准确性,检测错误会导致LLM给出错误建议
  • LLM调用引入了额外延迟(GPT-4约1-2秒/次),在实时导航中可能影响流畅性
  • 困惑度评分仅基于动作概率分布的熵,未考虑环境复杂度等上下文因素
  • 方法仅在离散导航图上验证,连续环境中的适用性未知
  • 可以考虑用多模态LLM(如GPT-4V)直接接收图像输入,跳过场景描述构建这一可能引入信息损失的步骤

相关工作与启发

  • vs NavGPT: NavGPT完全用LLM做决策,但缺乏视觉grounding能力;VLN-Copilot保留专用VLN模型做视觉理解,LLM仅在困惑时辅助
  • vs VELMA: VELMA使用LLM做路径规划但依赖细粒度指令;VLN-Copilot专门针对粗粒度指令,通过LLM桥接信息缺口
  • vs HELPER/Ask4Help: 之前的求助方法使用固定的辅助数据源,VLN-Copilot利用LLM的生成能力提供动态、上下文相关的建议
  • 这种"困惑时求助LLM"的范式可以推广到问答、对话等其他需要按需获取外部知识的场景

评分

  • 新颖性: ⭐⭐⭐⭐ LLM作为VLN副驾驶的思路新颖,困惑度驱动的求助机制设计合理
  • 实验充分度: ⭐⭐⭐⭐ 在两个数据集上验证,有详细的消融实验和求助频率分析
  • 写作质量: ⭐⭐⭐⭐ 动机清晰,副驾驶的比喻形象易懂
  • 价值: ⭐⭐⭐⭐ 为LLM辅助具身智能提供了实用的协作范式

相关论文