当前位置: 首页 > news >正文

AAAI-2024 | 大语言模型赋能导航决策!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在具身导航规划中的潜在能力。

相关文章:

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

作者:Gengze Zhou, Yicong Hong, Qi Wu 单位:阿德莱德大学,澳大利亚国立大学 论文链接: NavGPT: Explicit Reasoning in Vision-and-Language Navigation with Large Language Models (https://ojs.aaai.org/index.p…...

Scala迭代更新

在Scala中,迭代器(Iterator)是一种用于遍历集合(如数组、列表、集合等)的元素而不暴露其底层表示的对象。迭代器提供了一种统一的方法来访问集合中的元素,而无需关心集合的具体实现。 在Scala中&#xff0c…...

算法练习——位运算

前言:位运算的方法大多比较抽象,很难想到。 一:判断字符是否唯一 题目要求: 解题思路: 法一:使用hash的思想,统计每一个字母出现的次数,再通过一次循环遍历查询是否有超过1的字母&…...

“文件夹管理”与“标签管理”如何合理使用

在现代信息化的工作与生活环境中,文件夹管理与标签管理是两种常见的信息组织方法。合理使用文件夹与标签管理、提高信息检索效率、优化工作流程是实现高效信息管理的关键。其中,提高信息检索效率尤为重要,因为在海量的数据和文件中&#xff0…...

【学习总结|DAY023】Java高级技术

大家好,今天我们来聊聊 Java 中的几个高级技术:单元测试、反射、注解和动态代理。这些技术在源码、框架和架构师层面发挥着重要作用,掌握它们能让我们更深入地理解 Java 的底层原理,并提升代码质量和开发效率。 单元测试&#xf…...

java 对mongodb操作封装工具类

在 Java 中,封装 MongoDB 操作的工具类是非常常见的做法。使用 MongoDB 官方的 Java 驱动程序,结合常用的工具类封装,可以使得与 MongoDB 的交互更加方便和清晰。下面是一个简单的 MongoDB 操作封装工具类的示例代码。 前提 首先&#xff0…...

Spark-Streaming集成Kafka

Spark Streaming集成Kafka是生产上最多的方式,其中集成Kafka 0.10是较为简单的,即:Kafka分区和Spark分区之间是1:1的对应关系,以及对偏移量和元数据的访问。与高版本的Kafka Consumer API 集成时做了一些调整,下面我们…...

最大似然检测在通信解调中的应用

最大似然检测(Maximum Likelihood Detection,MLD),也称为最大似然序列估计(Maximum Likelihood Sequence Estimation,MLSE),是一种在通信系统中广泛应用的解调方法。其核心思想是在给…...

Bert各种变体——RoBERTA/ALBERT/DistillBert

RoBERTa 会重复一个语句10次,然后每次都mask不同的15%token。丢弃了NSP任务,论文指出NSP任务有时甚至会损害性能。使用了BPE ALBERT 1. 跨层参数共享 可以共享多头注意力层的参数,或者前馈网络层的参数,或者全部共享。 实验结果…...

力扣周赛T2-执行操作后不同元素的最大数量

给你一个整数数组 nums 和一个整数 k。 你可以对数组中的每个元素 最多 执行 一次 以下操作: 将一个在范围 [-k, k] 内的整数加到该元素上。 返回执行这些操作后,nums 中可能拥有的不同元素的 最大 数量。 示例 1: 输入: nums [1…...

uniapp 3分钟集成轮播广告图

先上效果图 顶部广告栏为 移动app常见需求,今天主要演示如何快速实现.这里还是基于 《星云erp-移动版》演示版 (自行下载 导入 Hbuilder, 后端接口可以直接使用我演示接口,不需要修改) 第一步: 组件选择 我们直接使用uni-swipe…...

图像修复和编辑大一统 | 腾讯北大等联合提出BrushEdit:BrushNet进阶版来了

文章链接:https://arxiv.org/pdf/2412.10316 项目链接:https://liyaowei-stu.github.io/project/BrushEdit 亮点直击 提出了BrushEdit,这是先前BrushNet模型的高级迭代版本。BrushEdit通过开创基于修复(inpainting)的图…...

极狐GitLab 17.7正式发布,可从 GitLab 丝滑迁移至极狐GitLab【二】

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 学习极狐GitLab 的相关资料: 极狐GitLab 官网极狐…...

Python基础知识回顾

数据类型 Python可以区分整数(integers、下文简写为int)、浮点数(float)、字符串(string)和布尔值(Boolean)等数据类型。 1)int是可正可负的整数 2)float包…...

SpringCloud2023集成Nacos2.4.3

基本都是最新版,踩了两天的坑终于集成上了,实现了多环境配置。 使用版本 关键应用版本备注Java21Oracle OpenJDK 21.0.5Spring Boot3.2.4Spring Cloud2023.0.1Spring Cloud Alibaba2023.0.1.3Nacos2.4.3单机模式 nacos安装 我学习过程使用的是windows…...

数势科技指标平台, 让数据产生最大价值

近来,指标体系和指标平台的重要性正被越来越多的业界同仁所认可。作为行业领先的数据智能产品提供商,数势科技最早推出了统一指标开发管理平台这一突破性产品(2021年获得软著),并首家完成了中国信通院数据指标管理平台…...

【玩转MacBook】Maven安装

下载Maven 官网: https://maven.apache.org/download.cgi 下载 Zip 类型的压缩包: 配置环境变量 以管理员身份编辑配置文件。注意,由于 MacBook 上使用了 zsh 命令行,所以需要编辑~/.zshrc文件而不是~/.bash_profile文件&am…...

OpenGL笔记(1)

GLFW的函数说明 GLFW: Window guide 窗口创建提示 在创建窗口和上下文之前,可以设置多个提示。有些提示影响窗口本身,另一些则影响帧缓冲区或上下文。这些提示每次通过 glfwInit 初始化库时都会被重置为默认值。 整数值的提示可以通过 glfwWindowHint …...

前端Python应用指南(二)深入Flask:理解Flask的应用结构与模块化设计

《写给前端的python应用指南》系列: (一)快速构建 Web 服务器 - Flask vs Node.js 对比 书接上文,这一篇将会深入了解下Flask,这个轻量级的Web框架,非常适合用来构建小型应用和快速原型开发。但是&#x…...

前端Python应用指南(三)Django vs Flask:哪种框架适合构建你的下一个Web应用?

《写给前端的python应用指南》系列: (一)快速构建 Web 服务器 - Flask vs Node.js 对比(二)深入Flask:理解Flask的应用结构与模块化设计 在上一篇博文中,我们深入探讨了Flask框架,…...

Unity3D Huatuo技术原理剖析详解

前言 在游戏开发领域,Unity3D凭借其强大的跨平台能力和丰富的功能,成为了众多开发者的首选工具。而在Unity3D的生态系统中,Huatuo作为一款重要的插件,为游戏开发带来了极大的便利。本文将深入剖析Huatuo的技术原理,并…...

复习打卡大数据篇——Hadoop HDFS 03

目录 1. HDFS元数据存储 2. HDFS HA 高可用 1. HDFS元数据存储 HDFS中的元数据按类型可以分为: 文件系统的元数据:包括文件名、目录名、修改信息、block的信息、副本信息等。datanodes的状态信息:比如节点状态、使用率等。 HDFS中的元数…...

宠物行业的出路:在爱与陪伴中寻找增长新机遇

在当下的消费市场中,如果说有什么领域能够逆势而上,宠物行业无疑是一个亮点。当人们越来越注重生活品质和精神寄托时,宠物成为了许多人的重要伴侣。它们不仅仅是家庭的一员,更是情感的寄托和生活的调剂。然而,随着行业…...

使用Turtle库实现,鼠标左键绘制路径,用鼠标右键结束绘制,小海龟并沿路径移动

使用Turtle库实现,鼠标左键绘制路径,用鼠标右键结束绘制,小海龟并沿路径移动 Turtle库是Python标准库的一部分,它提供了一种基于命令的图形绘制方式。Turtle模块通过一个“海龟”(Turtle)对象在屏幕上移动…...

海格通信嵌入式面试题及参考答案

计算电路的最高工作频率如何计算? 计算电路的最高工作频率主要考虑电路中的关键路径延迟。关键路径是指在整个电路中,信号传播延迟最长的路径。电路的最高工作频率的倒数就是时钟周期,而时钟周期必须大于关键路径的延迟时间。 首先要确定电路中各个模块的延迟。比如对于组合…...

3D几何建模引擎Parasolid功能解析

一、什么是Parasolid? Parasolid是由Siemens PLM Software开发的高精度精密几何建模引擎。它全面评估CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAE(计算机辅助工程)、PLM(产品生…...

AI的进阶之路:从机器学习到深度学习的演变(四)

AI的进阶之路:从机器学习到深度学习的演变(三) 五、深度学习的应用领域 深度学习的应用领域广泛,涵盖了计算机视觉、自然语言处理、语音识别和推荐系统等多个方面。以下将详细探讨这些关键应用领域,展示深度学习在不同…...

【ES6复习笔记】rest参数(7)

什么是 rest 参数? rest 参数是 ES6 引入的一个特性,它允许我们将一个不定数量的参数表示为一个数组。使用 rest 参数可以更方便地处理函数的参数,尤其是在参数数量不确定的情况下。 如何使用 rest 参数? 在函数定义中&#xf…...

安装MongoDB,环境配置

官网下载地址:MongoDB Shell Download | MongoDB 选择版本 安装 下载完成双击打开 点击mongodb-windows-x86_64-8.0.0-signed 选择安装地址 检查安装地址 安装成功 二.配置MongoDB数据库环境 1.找到安装好MongoDB的bin路径 复制bin路径 打开此电脑 -> 打开高级…...

ubuntu 网络管理

1 查看ip地址 rootu22-tools-20:~# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever…...

flask后端开发(1):第一个Flask项目

目录 一、Helloworddebug、host、port的配置 gitcode地址&#xff1a; https://gitcode.com/qq_43920838/flask_project.git 一、Helloword 一般是会创建两个文件夹和app.py app.py from flask import FlaskappFlask(__name__)app.route(/) def hello_world():return Hello…...

详解下c语言中struct和union的对齐规则

接触过c语言的同学应该都知道字节对齐。有些时候我们很容易弄错字节对齐的方式&#xff0c;特别是涉及到struct&#xff08;结构体&#xff09;和union&#xff08;联合体&#xff09;时。今天我们通过详细例子来说明下struct和union的对齐规则&#xff0c;以便了解各种struct和…...

虚拟机桥接模式网络连接不上解决方法

可能是桥接模式自动配置网络地址的时候没配好&#xff0c;自己手动配置一下。先看看windows里的wifi的ip 把虚拟机的网络设置打开ipv4把地址、子网掩码、网关输进去&#xff0c;然后再连接...

MySQL用表组织数据

用表组织数据 文章目录 用表组织数据一.四种完整性约束二.数值类型2-1三.数值类型2-2四.字符串.日期类型五.设置1.设置主键2.设置标识列3.设置非空4.设置默认值 六.主外键建立后注意事项 一.四种完整性约束 1.域完整性 列 域完整性约束方法:限制数据类型,检查约束,外键约束,默…...

基于python 微信小程序的医院就诊小程序

标题:基于 Python 微信小程序的医院就诊小程序 内容:1.摘要 基于 Python 微信小程序的医院就诊小程序旨在解决传统医院就诊流程繁琐、排队时间长等问题。通过小程序&#xff0c;患者可以在线预约挂号、查询医生信息、在线支付等&#xff0c;提高就诊效率。本小程序采用 Python…...

VUE3+django接口自动化部署平台部署说明文档(使用说明,需要私信)

网址连接&#xff1a;http://118.25.110.213:5200/#/login 账号/密码&#xff1a;renxiaoyong 1、VUE3部署本地。 1.1本地安装部署node.js 1.2安装vue脚手架 npm install -g vue/cli # 或者 yarn global add vue/cli1.3创建本地项目 vue create my-vue-project1.4安装依赖和插…...

【MySQL】十三,关于MySQL的全文索引

MySQL的全文索引用于搜索文本中的关键字&#xff0c;类似于like查询。 演示 建表 CREATE TABLE demo (id INT(11) NOT NULL,name CHAR(30) NOT NULL,age INT(11) NOT NULL,info VARCHAR(255),primary key(id),fulltext index futxt_idx_info(info) );此表的默认存储引擎为In…...

人工智能学习框架入门教程(一)

人工智能&#xff08;AI&#xff09;学习框架是指为开发、训练和部署人工智能模型提供的结构化工具和环境。它们帮助开发者实现AI项目的高效性、可扩展性、可维护性&#xff0c;并提供了优化算法、模型训练、评估、调优等功能。根据任务的不同&#xff0c;人工智能框架可以分为…...

NNDL 作业11 LSTM

习题6-4 推导LSTM网络中参数的梯度&#xff0c; 并分析其避免梯度消失的效果 先来推个实例&#xff1a; 看式子中间&#xff0c;上半部分并未有连乘项&#xff0c;而下半部分有到的连乘项&#xff0c;从这可以看出&#xff0c;LSTM能缓解梯度消失&#xff0c;梯度爆炸只是不易…...

Git 操作全解:从基础命令到高级操作的实用指南

文章目录 1.基本命令1.初始化仓库2.克隆远程仓库3.查看当前仓库状态4.查看提交日志5.添加文件到暂存区6.提交更改7.查看仓库的配置信息 2.分支操作1.查看所有分支2.创建新分支3.切换名称4.创建并切换到新分支5.删除分支6.查看当前分支 3.合并分支1.合并分支2.解决合并冲突 4.远…...

CSS(四)display和float

display display 属性用于控制元素的显示类型&#xff0c;用的 display 值包括&#xff1a; block&#xff1a;块级元素 使元素成为块级元素&#xff0c;占据一整行&#xff0c;前后有换行宽度默认为父容器的 100%&#xff0c;可以设置宽高&#xff0c;支持 margin、padding、…...

python中使用selenium执行组合快捷键ctrl+v不生效问题

在执行ctrlv进行粘贴时&#xff0c;绑定一个页面上的元素对象&#xff08;无论元素对象是否是引用过期或者是粘贴的目标文本区&#xff0c;但前提需要粘贴的目标文本区获取焦点&#xff09;执行ctrlv后可以生效。执行粘贴组合快捷键&#xff08;ctrlv&#xff09;的示例代码 se…...

数据结构 C/C++(实验五:图)

&#xff08;大家好&#xff0c;今天分享的是数据结构的相关知识&#xff0c;大家可以在评论区进行互动答疑哦~加油&#xff01;&#x1f495;&#xff09; 目录 提要&#xff1a;实验题目 一、实验目的 二、实验内容及要求 三、源程序及注释 实验1代码 &#xff08;折半查…...

非零掩码矩阵邻接矩阵

文章目录 1. 举例&#xff1a;2. python 代码3. 邻接矩阵 1. 举例&#xff1a; 在深度学习过程中&#xff0c;我们经常会用到掩码矩阵&#xff0c;比如我们有一个矩阵A表示如下,希望得到矩阵B&#xff0c;在矩阵A的非零位置表示为1&#xff0c;零位置表示为0&#xff0c; A …...

Docker安装

目录 1. 联网安装 Docker 2. 离线安装 Docker 3. 安装 Docker Compose 4. 卸载 Docker 和 Docker Compose 1. 联网安装 Docker 在 CentOS 上通过 yum 安装 Docker&#xff1a; # 安装 Docker yum -y install docker # 启动 Docker systemctl start docker # 查看 D…...

嵌入式驱动开发详解21(网络驱动开发)

文章目录 前言以太网框架ENET 接口简介MAC接口MII \ RMII 接口MDIO 接口RJ45 接口 PHY芯片以太网驱动驱动挂载wifi模块挂载后续 前言 linux驱动主要是字符设备驱动、块设备驱动还有网络设备驱动、字符设备驱动在本专栏前面已经详细将解了&#xff0c;网络设备驱动本文会做简要…...

2024年12月25日Github流行趋势

项目名称&#xff1a;system-design-primer 项目维护者&#xff1a;donnemartin, cclauss, satob, fluency03, linhe0x0项目介绍&#xff1a;学习如何设计大规模系统。为系统设计面试做准备。包括 Anki 卡片。项目star数&#xff1a;282,387项目fork数&#xff1a;47,226 项目…...

6、mysql的MHA故障切换

MHA的含义 MHA&#xff1a;master high availability&#xff0c;建立在主从复制基础上的故障切换的软件系统。 主从复制的单点问题&#xff1a; 当主从复制当中&#xff0c;主服务器发生故障&#xff0c;会自动切换到一台从服务器&#xff0c;然后把从服务器升格成主&…...

#error: WinSock.h has already been included解决方案

原因&#xff1a; 在工程中使用了 Boot 库之后&#xff0c;使用了socket、tcp 相关的头文件&#xff0c;在其他地方还是包括了头文件<windows.h>&#xff0c;该头文件内包含了<winsock.h>。导致遇到报错问题&#xff1a;WinSock.h has already been included 解决…...

npm淘宝镜像

通过命令行配置npm的淘宝镜像源和官方镜像源&#xff0c;以及如何安装和使用cnpm来解决安装包卡顿或无法安装的问题。通过设置registry和disturl&#xff0c;配合清理缓存&#xff0c;可以优化npm的下载速度。 1、​官方默认镜像 npm config set registry https://registry.n…...