首页 > 其他分享 >AAAI-2024 | 大语言模型赋能导航决策!NavGPT:基于大模型显式推理的视觉语言导航

AAAI-2024 | 大语言模型赋能导航决策!NavGPT:基于大模型显式推理的视觉语言导航

时间:2024-12-26 18:26:25浏览次数:5  
标签:Prompt 语言 LLMs 模型 NavGPT 管理器 视觉 导航

  • 作者:Gengze Zhou, Yicong Hong, Qi Wu

  • 单位:阿德莱德大学,澳大利亚国立大学

  • 论文链接: NavGPT: Explicit Reasoning in Vision-and-Language Navigation with Large Language Models (https://ojs.aaai.org/index.php/AAAI/article/download/28597/29161)

  • 代码链接: https://github.com/GengzeZhou/NavGPT

主要贡献

  • 论文提出了基于大模型(LLM)的视觉语言导航(VLN)模型NavGPT,能够处理多模态输入、不受限制的语言指导、与开放世界环境的交互以及使用导航历史进行进度跟踪。

  • 展示了LLMs在导航中的高层规划能力,包括将指令分解为子目标、整合与导航任务相关的常识知识、从观察到的环境中识别地标、持续监控导航进度以及通过计划调整应对异常情况。

  • 通过观察LLMs的思考过程,使得导航智能体的规划过程变得可访问和可解释。

  • 通过一系列实验,证明了LLMs能够执行复杂的导航规划,并且能够在导航历史的基础上生成高质量的导航指令和准确的俯视度量轨迹。

研究背景

研究问题

论文主要解决的问题是如何利用大模型(LLMs)进行视觉和语言导航(VLN),即LLMs在零样本情况下进行视觉和语言导航的能力。

研究难点

该问题的研究难点包括:

  • 如何将视觉信号转换为自然语言描述,

  • 如何在不依赖监督数据的情况下进行导航决策,

  • 以及如何在不损失信息的情况下处理长历史记录。

相关工作

该问题的研究相关工作有:

  • SayCan和PaLM-E等将LLMs集成到具身机器人任务中,

  • Shah等人使用GPT-3进行地标识别,

  • Zhou等人利用LLMs的常识推理能力进行对象导航。

研究方法

这篇论文提出了NavGPT,用于解决视觉和语言导航问题。

VLN形式化描述

VLN问题被公式化为在给定自然语言指令的情况下,智能体在每个步骤通过模拟器获取观测值,并在导航图中选择可导航的视点。

智能体通过选择相对角度来预测下一步动作,并通过与模拟器的交互来转移到下一个状态。

NavGPT系统

NavGPT将视觉感知结果、语言指令、历史记录和导航系统原则通过Prompt管理器转换为LLM可以理解的Prompt。

  • NavGPT的导航系统原理。定义了VLN任务和NavGPT的基本推理格式,要求NavGPT通过识别唯一视点ID在预定义环境中导航,不得虚构不存在的ID。

  • 视觉基础模型将视觉观察转化为自然语言描述,供LLM理解。

  • 导航历史记录了之前的观察和动作,对评估指令完成进度和更新状态至关重要。

  • 提示管理器M整合。、F和H的结果,形成单一提示,使LLM能做出导航决策。

视觉感知器

NavGPT使用BLIP-2模型将视觉输入转换为自然语言描述,每个视点由24个以自我为中心的视图组成,通过BLIP-2模型生成详细语言描述,同时结合其他视觉模型提取的底层特征,如Fast-RCNN提取的物体边界框和深度信息,以过滤和定位物体。

推理和动作的协同

NavGPT通过在每一步输出推理轨迹来增强其理解当前状态的能力。

推理轨迹不仅有助于复杂的规划和策略创建,还可以通过注入先前的推理轨迹来提高问题解决能力。

Prompt管理器

NavGPT的Prompt管理器将、和解析并重新格式化为LLMs的Prompt。

  • 对于,Prompt管理器传达VLN任务定义和NavGPT的行为限制。

  • 对于,Prompt管理器将方向的解释组合成Prompt。

  • 对于,Prompt管理器使用GPT-3.5总结观察结果,并将其插入到Prompt中,以处理历史记录的长度。

实验设计

数据集

实验基于R2R数据集进行,该数据集包含7189条轨迹,每条轨迹对应三条细粒度的指令。数据集分为训练集、验证未见集、测试未见集,分别包含61、56、11和18个室内场景。

评估指标

评估指标包括:

  • 轨迹长度(TL),

  • 导航误差(NE),

  • 成功率(SR),

  • 命中目标的成功率(OSR),

  • 路径长度加权的成功率(SPL)。

实现细节

实验使用GPT-4和GPT-3.5进行评估,图像转换器使用BLIP-2 ViT-G FlanT5XL,对象检测器使用Fast-RCNN,深度信息从Matterport3D模拟器中提取。

结果与分析

推理能力

NavGPT能够执行各种类型的推理和高层规划,包括分解指令为子目标、整合与导航任务相关的常识知识、从观测场景中识别地标、跟踪导航进度以及处理异常情况。

历史和空间相对关系意识

GPT-4能够有效地从冗余的观测描述中提取地标,并生成包含动作的导航历史描述。此外,GPT-4能够全面理解导航历史,并在导航过程中进行必要的进度跟踪。

与监督方法的比较

NavGPT在某些监督基准上表现优于一些模型,并与一些监督智能体兼容。然而,LLM在解决VLN任务中的性能仍然存在显著差距,主要原因是视觉场景的语言描述精度和对象的跟踪能力。

视觉观察描述的粒度

45度视场角(FoV)的视角在导航任务中最为有效,提升了成功率(SR)和标准化逆路径长度成功率(SPL)。

进一步地,通过在BLIP-2描述中加入对象信息和深度估计,NavGPT的SR提高了4.86%,且深度信息的整合显著增强了智能体对环境的理解,进一步提升了导航性能。

总结

论文探讨了利用LLMs进行具身导航任务的潜力,提出了NavGPT系统。

尽管NavGPT在零样本VLN任务中的性能仍不如训练有素的方法,但GPT-4的推理轨迹揭示了LLMs在具身导航规划中的潜在能力。

标签:Prompt,语言,LLMs,模型,NavGPT,管理器,视觉,导航
From: https://blog.csdn.net/weixin_37990186/article/details/144656680

相关文章

  • 大模型微调方法(非常详细),收藏这一篇就够了!
    引言众所周知,大语言模型(LLM)正在飞速发展,各行业都有了自己的大模型。其中,大模型微调技术在此过程中起到了非常关键的作用,它提升了模型的生成效率和适应性,使其能够在多样化的应用场景中发挥更大的价值。前排提示,文末有大模型AGI-CSDN独家资料包哦!那么,今天这篇文章就带大......
  • 引入长思维链!微信基于阿里千问大模型搞出个翻译版o1
    最近,类o1模型的出现,验证了长思维链(CoT)在数学和编码等推理任务中的有效性。在长思考(longthought)的帮助下,LLM倾向于探索、反思和自我改进推理过程,以获得更准确的答案。在最近的一项研究中,微信AI研究团队提出了DRT-o1,将长CoT的成功引入神经机器翻译(MT)。实现这一......
  • 角球数据分析:基于人工智能的角球预测模型
    一、引言在竞技体育数据分析领域,角球预测模型的研究具有重要的实际意义和应用价值。本文旨在探讨一种基于人工智能技术的角球预测模型,通过深度学习和机器学习算法,对角球发生的概率进行精确预测。二、数据处理与特征工程数据采集与预处理在构建角球预测模型的过程中,我们采......
  • 使用vosk模型进行语音识别
    importwaveimportsysimportjsonfromvoskimportModel,KaldiRecognizer,SetLogLevel#Youcansetloglevelto-1todisabledebugmessagesSetLogLevel(-1)wf=wave.open(sys.argv[1],"rb")ifwf.getnchannels()!=1orwf.getsampwidth()!......
  • JVM内存模型、垃圾回收机制及简单调优方式
    JVM内存模型:1.方法区  用来存放类加载的信息,同时存放静态属性和方法(静态方法和普通方法)  jdk1.7之后,取消了方法区名称,改为元空间、方法区也叫元空间也叫永久区  方法区中的数据,可以被多线程共享。访问时会有数据共享的安全问题2.堆区  用来存放对象或数......
  • 智谱开源CogAgent的最新模型CogAgent-9B-20241220,全面领先所有开闭源GUI Agent模型
    在现代数字世界中,图形用户界面(GUI)是人机交互的核心。然而,尽管大型语言模型(LLM)如ChatGPT在处理文本任务上表现出色,但在理解和操作GUI方面仍面临挑战,因此最近一年来,在学界和大模型社区中,越来越多的研究者和开发者们开始关注VLM-basedGUIAgent。2023年12月,智谱发布了CogAgent,第一个......
  • 链表插入(C语言)
    链表的插入操作是链表中非常重要的基本操作之一。在C语言中,链表通常由一个结构体表示,每个节点包含数据和一个指向下一个节点的指针。下面是链表插入的几种常见情况:1.插入到链表的头部当我们需要将一个新节点插入到链表的最前面时,我们只需要让新节点的next指针指向当前的......
  • C语言链表、文件操作 由浅入深练习题(有图示)
    1.链表基础操作题目题目1:创建链表并输出编写一个程序,要求用户输入若干个整数(直到输入-1),并将这些整数存入链表中。最后,遍历链表并输出每个节点的数据。要求:使用单向链表。用户输入以-1结束。#include<stdio.h>#include<stdlib.h>typedefstructNode{intdata;......
  • SQL语言2-MySQL
    1.1VIEW视图视图:虚拟表,保存有实表的查询结果,相当于别名利用视图,可以隐藏表的真实结构,在程序中利用视图进行查询,可以避免表结构的变化,而修改程序,降低程序和数据库之间的耦合度利用视图进行查询操作可以带来以下好处:隐藏表结构:使用视图可以将底层表的复杂性和细节与应用......
  • AT6558R-5N32-00:BDS/GNSS多模卫星导航接收机SOC单芯片数据手册
    AT6558R-5N32-00:高性能BDS/GNSS多模单频卫星导航接收机SOC单芯片,同时支持多个卫星导航系统,BDS(B1I)、GPS、QZSS,集成射频前端、数字基带处理器、32位RISCCPU和电源管理功能,功耗低,封装尺寸小,具备有源天线检测与过流保护,内部集成DCDC,支持2.7~3.6V电源供电......