CVPR-2024 | 具身导航模型大一统!NaviLLM:学习迈向具身导航的通用模型
-
作者:Duo Zheng, Shijia Huang, Lin Zhao, Yiwu Zhong, Liwei Wang
-
单位:香港中文大学,上海人工智能实验室,感知与交互智能中心
-
论文链接:Towards Learning a Generalist Model for Embodied Navigation(https://openaccess.thecvf.com/content/CVPR2024/papers/Zheng_Towards_Learning_a_Generalist_Model_for_Embodied_Navigation_CVPR_2024_paper.pdf)
-
代码链接:https://github.com/LaVi-Lab/NaviLLM
主要贡献
-
论文提出了首个用于具身导航的通用模型NaviLLM,能够执行多种具身导航任务。
-
通过引入基于Schema的指令,将各种任务统一为生成问题,从而整合了来自不同数据集的数据源。
-
在CVDN基准上,NaviLLM相较于之前的最先进方法取得了29%的进步。
-
模型在具身问答和3D字幕生成等未见任务上同样表现出色。
研究背景
研究问题
具身导航要求智能体根据指令在三维环境中进行导航,并提供基于用户查询的文本响应。
本文主要解决的问题是如何构建一个能够与物理世界互动的通用智能体。
研究难点
该问题的研究难点包括:
-
以往的研究主要集中在特定任务的智能体上,缺乏对未见场景的泛化能力;
-
如何将各种任务统一到单个模型中也是一个挑战。
相关工作
该问题的研究相关工作有:
-
利用预训练技术、数据增强和记忆结构等方法的各种模型,但这些模型在特定任务上表现出色,但在跨任务泛化方面存在不足。
-
最近的研究表明,大语言模型(LLMs)在多个领域展示了显著的能力,但将其应用于具身导航任务仍然是一个未充分探索的领域。
研究方法
论文提出了NaviLLM,第一个用于具身导航的通用模型。
场景编码
使用视觉变换器(ViT)从图像中提取视觉特征,并通过多视图融合过程将这些特征整合为场景表示。公式如下:
其中, 是第个视角的视觉特征, 是第个视角的场景表示。
基于Schema的指令
为了将所有任务学习转化为生成问题,论文引入了基于Schema的指令。Schema包括任务、观察和历史三个部分。例如,
-
任务的Schema可以是导航指令,
-
观察的Schema可以是场景表示,
-
历史的Schema可以是过去的视觉观测。
多任务学习
将具身导航的关键任务(如视觉语言导航、对象定位、轨迹总结、3D问答和具身问答)转化为生成问题,并使用统一的交叉熵目标进行优化。每个任务的Schema具体如下:
-
视觉语言导航:任务Schema为导航指令,观察Schema为所有可达视角的场景表示,输出提示为选择移动方向。
-
对象定位:任务Schema为对象定位命令,观察Schema为当前位置的所有可见对象的表示,输出提示为选择对象。
-
轨迹总结:任务Schema为总结风格,观察Schema为历史表示和场景表示,输出提示为总结轨迹。
-
3D问答:任务Schema为室内场景的问题,观察Schema为不同位置的场景表示,输出提示为基于场景回答问题。
-
具身问答:先执行导航任务,再回答问题。
实验设计
数据收集
训练数据来自多个具身导航任务的数据集,包括CVDN、SOON、R2R、REVERIE、ScanQA和LLaVA-23k。还使用了R2R和REVERIE数据的增强数据。
实现细节
模型采用了两阶段训练策略,预训练阶段使用教师强制训练,多任务微调阶段交替使用教师强制和学生强制。
优化器为Adam,学习率为3e-5,预训练阶段训练10000步,多任务微调阶段训练5000步,批量大小为64。
评估指标
-
对于视觉语言导航任务,使用成功率(SR)、路径长度加权成功率(SPL)、Oracle成功率(OSR)、轨迹长度(TL)和目标进度(GP)作为评估指标;
-
对于3D问答任务,使用精确匹配(EM)、METEOR、ROUGE-L、CIDER和BLEU-4作为评估指标;
-
对于具身问答任务,使用成功率(SR)和路径长度加权成功率(SPL)作为评估指标。
结果与分析
与现有方法的比较
NaviLLM在CVDN、SOON和ScanQA数据集上取得了最新的结果,并在R2R和REVERIE数据集上表现与最新方法相当。特别是在CVDN数据集上,NaviLLM的目标进度(GP)显著提高了29%。
未见任务的泛化能力
在排除CVDN、SOON和REVERIE数据集的训练数据后,NaviLLM在所有任务上均优于基线方法,特别是在SOON数据集上的成功率(SR)提高了136%。此外,NaviLLM在未见任务(如具身问答和3D字幕生成)上也展示了令人印象深刻的能力。
消融实验
多任务学习增强了所有任务的性能,随机初始化的LLM显著降低了性能,而预训练在增强数据上的收益有限。
可视化
-
轨迹总结:在图(a)中,展示了模型如何根据给定的轨迹生成准确的逐步指令。这些指令可以用于数据增强。
-
对象导航:图(b)展示了模型在未见过的场景中进行对象导航的能力。
-
EQA:图(c)展示了模型在EQA任务中的表现,即模型能够先执行导航过程,然后到达目标位置后回答问题。
-
3D字幕生成:图(d)展示了模型在3D字幕生成任务中的能力,特别是模型能够根据指令生成不同粒度的字幕。
总结
论文提出了NaviLLM,第一个用于具身导航的通用模型。
通过引入基于Schema的指令和多任务学习,NaviLLM成功地将各种任务统一到一个模型中,并在多个基准数据集上取得了最新的结果。
此外,NaviLLM在未见任务上也展示了强大的泛化能力。