NavGPT:使用大模型进行视觉和语言导航的显示推理模型

NavGPT: Explicit Reasoning in Vision-and-Language Navigation with Large Language Models

论文地址:https://arxiv.org/abs/2305.16986

摘要

在以前所未有的数据规模进行训练的情况下,像 ChatGPT 和 GPT-4 这样的大型语言模型(LLMs)展现出了模型规模扩展带来的重要推理能力的出现。这种趋势突显了使用无限语言数据训练 LLMs 的潜力,推动了通用体验智能代理的发展。在这项工作中,本文介绍了 NavGPT,一种纯粹基于 LLM 的指令遵循导航代理器,通过进行零样本顺序动作预测来揭示 GPT 模型在复杂的实体场景中的推理能力,用于视觉语言导航(VLN)。在每个步骤中,NavGPT 将视觉观察的文本描述、导航历史记录和未来可探索方向作为输入,推理代理器的当前状态,并做出接近目标的决策。通过全面的实验,本文证明 NavGPT 能够明确地执行导航的高级规划,包括将指令分解为子目标、整合与导航任务相关的常识知识、从观察到的场景中识别地标、跟踪导航进展以及通过调整计划适应异常情况。此外,本文展示了 LLMs 能够根据路径上的观察和动作生成高质量的导航指令,以及根据代理器的导航历史绘制准确的自顶向下度量轨迹。尽管使用 NavGPT 进行零样本 R2R 任务的性能仍然不及经过训练的模型,但本文建议为 LLMs 适应多模态输入以用作视觉导航代理,并将 LLMs 的明确推理应用于受益于基于学习的模型。

论文贡献

  1. 引入了一种新颖的指令遵循 LLMs 代理器,用于视觉导航,配备一个支持系统与环境进行交互,并追踪导航历史记录
  2. 研究了当前 LLMs 在进行导航决策时的能力和局限性
  3. 揭示了 LLMs 在导航的高级规划方面的能力,通过观察LLMs的思维,使导航代理器的规划过程可访问和可解释

相关工作

方法

VLN 问题描述:给定一个自然语言指令 W \mathcal{W} W,由一系列单词 { w 1 , w 2 , ⋯   , w n } \{w_1,w_2,\cdots,w_n\} {w1,w2,,wn} 组成,在每个步骤 s t s_t st 中,代理器通过模拟器解释当前位置,以获取一个观察结果 O \mathcal{O} O。这个观察结果包括 N 个备选视角,表示不同方向上的代理器的自我中心视角。其中,每一个视角可表示为 o i ( i ⩽ N ) o_i(i\leqslant N) oi(iN),与之相关的角度和方向可表示为 a i ( i ⩽ N ) a_i(i\leqslant N) ai(iN)。于是观察结果可被定义为:

O t = [ < o 1 , a 1 > , < o 2 , a 2 > , ⋯   , < o N , a N > ] \mathcal{O}_t=[<o_1,a_1>,<o_2,a_2>,\cdots,<o_N,a_N>] Ot=[<o1,a1>,<o2,a2>,,<oN,aN>]

在整个导航过程中,代理的动作空间被限制在导航图 G G G 中。代理必须从 M = ∣ C t + 1 ∣ M=\lvert C_{t+1}\rvert M=Ct+1 个可导航视点中进行选择,将观察结果 O t C = [ < o 1 C , a 1 C > , < o 2 C , a 2 C > , ⋯   , < o M C , a M C > ] \mathcal{O}_t^C=[<o_1^C,a_1^C>,<o_2^C,a_2^C>,\cdots,<o_M^C,a_M^C>] OtC=[<o1C,a1C>,<o2C,a2C>,,<oMC,aMC>] 与标准指令 W W W 对齐,这里 C t + 1 C_{t+1} Ct+1 表示候选视角集合。代理通过选择与 O i C \mathcal{O}_i^C OiC 的相对角度 a i C a_i^C aiC 来预测后续动作,然后通过与模拟器的交互来执行此动作,从当前状态 s t = < v t , θ t , ϕ t > s_t=<v_t,\theta_t,\phi_t> st=<vt,θt,ϕt> 到状态 s t + 1 = < v t + 1 , θ t + 1 , ϕ t + 1 > s_{t+1}=<v_{t+1},\theta_{t+1},\phi_{t+1}> st+1=<vt+1,θt+1,ϕt+1>。代理还维护历史状态记录 h t h_t ht,并调整状态之间的条件转移概率 S t = T ( s t + 1 ∣ a i C , s t , h t ) \mathcal{S}_t=T(s_{t+1}|a_i^C,s_t,h_t) St=T(st+1aiC,st,ht),其中 T T T 表示条件转移的概率分布。

综上所述,代理需要学习的由 Θ \Theta Θ 参数化的策略 π \pi π 是基于预测机 W \mathcal{W} W 和当前的观测值 O t C \mathcal{O}_t^C OtC 得出的,即 π ( a t ∣ W , O t , O t C , S t ; Θ ) \pi(a_t|\mathcal{W},\mathcal{O}_t,\mathcal{O}_t^C,\mathcal{S}_t;\Theta) π(atW,Ot,OtC,St;Θ)。在本文的研究中,NavGPT 以零样本的方式执行 VLN任务,其中 Θ \Theta Θ 并不会从 VLN数据集中进行学习,而是从 LLM 训练的语言语料库中进行学习。
NavGPT

NavGPT

NavGPT 是一个通过与环境、语言引导和导航历史交互来执行动作预测的算法模型。将前 t t t 步的观察 O \mathcal{O} O、LLM 推理 R \mathcal{R} R 和动作 A \mathcal{A} A 三元组的导航历史设为

H < t + 1 = [ < O 1 , R 1 , A 1 > , < O 2 , R 2 , A 2 > , ⋯ < O t , R t , A t > ] \mathcal{H}_{<t+1}=[<\mathcal{O}_1,\mathcal{R}_1,\mathcal{A}_1>,<\mathcal{O}_2,\mathcal{R}_2,\mathcal{A}_2>,\cdots<\mathcal{O}_t,\mathcal{R}_t,\mathcal{A}_t>] H<t+1=[<O1,R1,A1>,<O2,R2,A2>,<Ot,Rt,At>]

为了获得导航决策 A t + 1 A_{t+1} At+1,NavGPT需要在提示管理器 M \mathcal{M} M 的帮助下,将来自 VFMs F \mathcal{F} F 的视觉感知、语言指令 W \mathcal{W} W、历史 H \mathcal{H} H 和导航系统原则 P \mathcal{P} P 进行协同作用,定义如下:

< R t + 1 , A t + 1 > = L L M ( M ( P ) , M ( W ) , M ( F ( O t ) ) , M ( H < t + 1 ) ) <\mathcal{R}_{t+1},\mathcal{A}_{t+1}>=LLM(\mathcal{M}(\mathcal{P}),\mathcal{M}(\mathcal{W}),\mathcal{M}(\mathcal{F}(\mathcal{O}_t)),\mathcal{M}(\mathcal{H}_{<t+1})) <Rt+1,At+1>=LLM(M(P),M(W),M(F(Ot)),M(H<t+1))

导航系统原则 P \mathcal{P} P:导航系统原则指定了 LLM 作为 VLN 的代理。明确定义了 VLN 的任务和 NavGPT 在每个导航步骤的基本推理格式和规则。例如,NavGPT 应该通过识别唯一的视点 ID 在预定义环境图的静态视点(位置)之间移动。 NavGPT 不应伪造不存在的 ID

视觉基础模型 F \mathcal{F} F:NavGPT 作为 LLM 代理需要 VFM 的视觉感知和表达能力,将当前环境的视觉观察转化为自然语言描述。VFMs 在这里扮演翻译的角色,用它们自己的语言翻译视觉观察,例如自然语言、对象的边界框和对象的深度。通过对 Prompt 的管理,视觉感知结果将被重新转化为纯自然语言以供 LLM 理解

导航历史 H < t + 1 \mathcal{H}_{<t+1} H<t+1:导航历史对于 NavGPT 评估指令完成进度、更新当前状态以及做出后续决策至关重要。历史由对先前的观察 O < t + 1 \mathcal{O}_{<t+1} O<t+1 和动作 A < t + 1 \mathcal{A}_{<t+1} A<t+1 的总结描述以及来自 LLM 的推理 R < t + 1 \mathcal{R}_{<t+1} R<t+1 组成

Prompt 管理 M \mathcal{M} M:使用 LLM 作为 VLN 代理的关键是将上述所有内容转换成 LLM 可以理解的自然语言。这个过程由 Prompt 管理器完成,它从不同的组件收集结果并将它们解析为单个提示,供 LLM 做出导航决策

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值