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

视觉-和-语言导航的综述:任务、方法和未来方向

22年6月来自UC Santa Cruz、澳大利亚的阿德莱德大学和 USC 的论文“Vision-and-Language Navigation: A Survey of Tasks, Methods, and Future Directions”。

人工智能研究的一个长期目标是构建能够用自然语言与人类交流、感知环境并执行现实世界任务的智体。视觉与语言导航 (VLN) 是实现这一目标的一个基础性跨学科研究课题,并日益受到自然语言处理、计算机视觉、机器人技术和机器学习领域的关注。本文回顾 VLN 这一新兴领域的当代研究,涵盖任务、评估指标、方法等。通过对当前进展和挑战进行结构化分析,重点介绍当前 VLN 的局限性以及未来研究的机遇。

视觉与语言导航 (VLN) (Anderson,2018b;Chen,2019;Thomason,2019b) 是一个新兴的研究领域,旨在构建一个能够用自然语言与人类交流并在真实 3D 环境中导航的具身智体 (embodied agent)。VLN 通过自然语言通信扩展了模拟环境 (Zhu,2017;Mirowski,2019) 和真实环境 (Mirowski,2018) 中的视觉导航。如图所示,VLN 是一项涉及预言机(通常是人类)、智体和环境的任务。智体和预言机使用自然语言进行交流。智体可以请求指引,预言机可以做出回应。智体根据接收的指令和观察的环境进行导航并与环境交互以完成任务。同时,预言机观察环境和智体的状态,并可能与环境进行交互以帮助智体。

请添加图片描述

VLN 任务面临诸多挑战。首先,VLN 面临复杂的环境,需要有效理解和协调来自不同模态的信息。其次,VLN 智体需要一种用于导航过程的推理策略。数据稀缺也是一个障碍。最后,将在见过环境中训练的模型泛化到可见环境也至关重要。根据各自的挑战对解决方案进行分类。(1)表征学习方法,有助于理解来自不同模态的信息。(2)行动策略学习,旨在根据收集的信息做出合理的决策。(3)以数据为中心的学习方法,有效地利用数据并解决数据稀缺等数据挑战。(4)事先探索有助于模型熟悉测试环境,从而提高其泛化能力。

智体能够解读自然语言指令(在某些情况下,在导航过程中请求反馈),这正是 VLN 与视觉导航 (Bonin-Font et al., 2008) 不同之处。在下表中,主要根据通信复杂性和任务目标这两个维度对当前 VLN 基准进行分类。
请添加图片描述

如下表是 VLN 数据集比较:
请添加图片描述

初始指令

在许多 VLN 基准测试中,智体会在整个导航过程中获得自然语言指令,例如“上楼,经过客厅的桌子。左转,穿过中间的门”。

细粒度导航。智体需要严格遵循自然语言指令才能到达目标。Anderson (2018b) 基于 Matterport3D 模拟器 (Chang,2017) 创建 R2R 数据集。R2R 中的实体智体在模拟器中穿过房屋,遍历导航图上的边,跳转到包含全景视图的相邻节点。R2R 经过扩展,创建了其他 VLN 基准测试。Room-for-Room 将 R2R 中的路径连接到更长的轨迹 (Jain,2019)。Yan (2020) 收集 XL-R2R 数据集,以使用中文指令扩展 R2R。 RxR(Ku et al., 2020)包含英语、印地语和泰卢固语指令。该数据集包含更多样本,且其中的指令与这些指令的虚拟姿势做到时间对齐。RxR 的英语拆分进一步扩展,通过融入地标信息构建 Landmark-RxR(He et al., 2021)。

在大多数当前数据集中,智体在预定义的视点处遍历导航图。为了便于将迁移学习应用到真实智体,VLN 任务应提供连续的动作空间和可自由导航的环境。为此,Krantz et al.(2020)在连续环境中重建基于导航图的 R2R 轨迹,并创建 VLNCE。Irshad et al.(2021)提出 Robo-VLN 任务,其中智体在连续的动作空间中以长视域轨迹进行操作。

室外环境通常比室内环境更复杂,包含的物体也更多。在 TOUCHDOWN (Chen et al., 2019) 中,智体按照指令在纽约市街景渲染的模拟环境中导航,以找到隐藏的物体。大多数照片级逼真的户外 VLN 数据集,包括 TOUCHDOWN (Chen et al., 2019)、StreetLearn (Mirowski et al., 2019; Mehta et al., 2020)、StreetNav (Hermann et al., 2020) 和 Talk2Nav (Vasudevan et al., 2021),都是基于谷歌街景提出的。

一些研究使用自然语言来引导无人机。LANI (Misra et al., 2018) 是一个 3D 合成导航环境,智能体按照自然语言指令在地标之间导航。当前无人机导航数据集通常位于 Unity3D 等合成环境中(Blukis,2018/2019)。

粗粒度导航。在现实生活中,由于人类指导者(预言者)可能不了解路线,因此可能无法获得关于路线的详细信息。通常,指令更简洁,仅包含目标信息。RoomNav(Wu,2018)要求智体根据“前往 X”的指令进行导航,其中 X 是预先定义的房间或物体。在 Embodied QA(Das,2018)中,智体在环境中导航以找到给定问题的答案。REVERIE(Qi,2020b)中的指令由人类注释,因此更加复杂和多样化。智体在房间中导航,并从多个竞争候选对象中区分出目标。在 SOON(Zhu,2021a)中,智体会收到一条长而复杂的、由粗到细的指令,该指令会逐渐缩小搜索范围。

导航+目标交互。对于某些任务,目标对象可能被隐藏(例如抽屉里的勺子),或者需要改变状态(例如请求一片苹果,但只有一整个苹果可用)。在这些情况下,需要与对象交互才能完成任务(例如打开抽屉或切苹果)。交互式问答 (IQA) 要求智体进行导航,有时还需要与对象交互来回答给定的问题。基于 AI2-THOR (Kolve et al., 2017) 中的室内场景,Shridhar et al. (2020) 提出 ALFRED 数据集,其中为智体提供了粗粒度和细粒度的指令,使其在交互式视觉环境中完成家务任务。CHAI (Misra et al., 2018) 要求智体进行导航并与环境进行简单的交互。

预言机导航

在导航 VLN 任务中,智体可以在导航过程中从预言机接收进一步的自然语言指导。例如,如果智体不确定下一步该做什么(例如,进入厨房),它可以发送[求助]信号,预言机就会响应“向左走”来提供帮助 (Nguyen et al., 2019)。

细粒度导航。初始的细粒度导航指令在复杂环境中可能仍然不明确。来自 Oracle 的指导可以澄清可能产生的混淆。Chi(2020 年)推出 Just Ask——一项智体可以在导航过程中向 Oracle 寻求帮助的任务。

粗粒度导航。如果一开始只给出粗粒度的指令,智体往往会更加困惑,并花费更多时间探索。进一步的指导可以解决这种歧义。VNLA(Nguyen,2019 年)和 HANNA(Nguyen & Daumé III,2019 年)都训练智体在室内导航寻找物体。智体可以向 Oracle 请求帮助,Oracle 会通过提供子任务来帮助智体取得进展。VNLA 中的 Oracle 使用预定义脚本进行响应,而 HANNA 中的 Oracle 使用神经网络生成自然语言响应。 CEREALBAR(Suhr,2019)是一项领导者和追随者之间的协作任务。两个智体在虚拟游戏环境中移动,以收集有效的卡组合。

导航+物体交互。VLN 尚处于起步阶段,目前尚无支持引导和物体交互的 VLN 数据集。

人机对话

使用自然语言请求帮助对人类来说非常友好 (Banerjee,2020;Thomason,2019b)。例如,当智体不确定人类想要什么水果时,它可以问:“你想要什么水果?冰箱里的香蕉还是桌子上的苹果?”,人类的回答将提供清晰的导航方向。

细粒度导航。没有数据集属于此类别。目前,带有可能指导的详细路线指示可以帮助智体在大多数模拟环境中实现相对较好的性能。期望为此类开发数据集,用于复杂环境中的超长距离导航任务,尤其是在动态丰富的环境中,对话对于消除困惑至关重要。

粗粒度导航。CVDN (Thomason et al., 2019b) 是一个人与人对话的数据集。除了解释自然语言指令并决定下一步行动外,VLN 智体还需要用自然语言提问以获得指导。了解最佳后续步骤的预言机需要理解并正确回答这些问题。

对话在复杂的户外环境中非常重要。de Vries et al. (2018) 推出 Talk the Walk 数据集,其中导游掌握地图知识并引导游客到达目的地,但不知道游客的具体位置;而游客则通过离散动作在二维网格中导航。

导航+对象交互。Minecraft 协作建筑(Narayan-Chen,2019)研究智体如何通过与预言机通信将块放入建筑物中。TEACh(Pad-makumar,2021)是一个研究目标交互和导航与自由形式对话的数据集。跟随者与指挥官交谈并与环境互动以完成各种家务,例如煮咖啡。Dial-FRED(Gao,2022)通过允许智体主动提问来扩展ALFRED(Shrid-har,2020)数据集。

如图所示,将现有方法分为表征学习、行动策略学习、数据中心学习和先验探索。表征学习方法帮助智体理解这些模态之间的关系,因为 VLN 涉及多种模态,包括视觉、语言和动作。此外,VLN 是一项复杂的推理任务,任务结果取决于累积的步骤,而更好的行动策略有助于决策过程。此外,VLN 任务在训练数据方面面临挑战。一个严重的问题是稀缺性。为 VLN 收集训练数据既昂贵又耗时,而且现有的 VLN 数据集相对于 VLN 任务的复杂性而言相对较小。因此,数据中心方法有助于利用现有数据并创建更多的训练数据。先验探索有助于智体适应以前未见过的环境,提高其泛化能力,缩小见过环境与未见过环境之间的性能差距。
请添加图片描述

表征学习

表征学习帮助智体理解指令中的单词与环境中感知到的特征之间的关系。

预训练

视觉或语言。使用预训练模型初始化视觉或文本编码器,可以为智体提供单模态知识。预训练视觉模型可以使用 ResNet (He et al., 2016) 或 Vision Transformers (Dosovitskiy et al., 2020)。其他导航任务 (Wijmans et al., 2019b) 也可以提供视觉初始化 (Krantz et al., 2020)。大型预训练语言模型,例如 BERT (Devlin et al., 2019) 和 GPT (Radford et al., 2019),可以对语言进行编码并提升指令理解能力 (Li et al., 2019),这些模型可以在 VLN 任务中进行微调之前,使用 VLN 指令 (Pashevich et al., 2021) 进行进一步预训练。

视觉与语言。视觉和语言预训练模型为文本和视觉提供了良好的联合表征。一种常见的做法是使用预训练模型(例如 ViLBERT (Lu et al., 2019))初始化 VLN 智体 (Kim et al., 2021)。该智体可以使用 VLN 特定的特征(例如物体和房间)进行进一步训练 (Qi et al., 2021)。
VLN。下游任务受益于与预训练任务的紧密关联。研究人员还探索了直接在 VLN 领域进行预训练。VLN-BERT(Majumdar,2020)预训练导航模型,以衡量路径和指令之间的兼容性,从而将 VLN 格式化为路径选择问题。PREVALENT(Hao,2020)基于图像-文本-动作三元组从头开始训练,以学习 VLN 任务中的文本表征。基于 BERT 的预训练模型中 [CLS] token 的输出嵌入可以循环方式利用来表示历史状态(Hong,2021;Moudgil,2021)。Airbert(Guhur,2021)在大规模领域数据集上进行预训练后,在小样本设置下取得了良好的性能。

语义理解

VLN 任务的语义理解融合了 VLN 中重要特征的知识。除了原始特征之外,高级语义表示也能提升在未见环境中的性能。
模态内特征。视觉或文本模态可以分解为许多特征,这些特征在 VLN 中的作用不同。神经模型提取的整体视觉特征可能并不重要,在某些情况下甚至可能损害性能 (Thomason et al., 2019a; Hu et al., 2019; Zhang et al., 2020b; Schumann and Riezler, 2022)。因此,找到最能提升性能的特征至关重要。诸如视觉外观、路线结构和检测的物体等高级特征的表现优于 CNN 提取的低级视觉特征 (Hu et al., 2019)。指令中不同类型的 tokens 也发挥着不同的作用 (Zhu et al., 2021c)。提取这些 tokens 并对对象 tokens 和方向 tokens 进行编码至关重要 (Qi et al., 2020a; Zhu et al., 2021c)。
跨模态:不同模态之间的语义联系:动作、场景、观察的对象、方向线索以及指令中提到的对象,可以被提取出来,然后利用注意机制进行软对齐 (Qi et al., 2020a; Gao et al., 2021)。软对齐还能突出显示指令中与当前步骤相关的部分 (Landi et al., 2019; Zhang et al., 2020a)。

图表征

构建图以整合来自指令和环境观察的结构化信息,可以提供明确的语义关系来指导导航。图神经网络可以编码文本和视觉之间的关系,以更好地解释上下文信息 (Hong et al., 2020a; Deng et al., 2020)。图可以记录导航过程中的位置信息,用于预测最可能的轨迹 (Anderson et al., 2019a) 或动作空间的概率分布 (Deng et al., 2020)。结合先前的探索,可以构建一个关于可导航环境的概览图 (Chen et al., 2021a),以改进导航解释。

记忆增强模型

信息在智体导航过程中不断积累,直接利用这些信息效率不高。记忆结构有助于智体有效地利用导航历史。一些解决方案利用诸如长短期记忆(LSTM)之类的记忆模块,或循环利用信息状态(Hong et al., 2021),这些方案相对容易实现,但随着路径长度的增加,可能难以记住路径起始处的特征。另一种解决方案是构建单独的记忆模型来存储相关信息(Zhu et al., 2020c;Lin et al., 2021;Nguyen and Daumé III, 2019)。值得注意的是,通过对单个视图、全景图以及历史记录中的所有全景图进行分层编码,HAMT(Chen et al., 2021b)成功地利用完整的导航历史记录进行决策。

辅助任务

辅助任务帮助智体在无需额外标签的情况下更好地理解环境及其自身状态。从机器学习的角度来看,辅助任务通常以附加损失函数的形式实现。例如,辅助任务可以解释其先前的操作,或预测未来决策的信息 (Zhu et al., 2020a)。辅助任务还可以涉及当前任务,例如当前任务的完成情况,以及视觉与指令的协调 (Ma et al., 2019a; Zhu et al., 2020a)。值得注意的是,辅助任务在调整用于 VLN 的预训练表示时非常有效 (Huang et al., 2019b)。

动作策略学习

面对众多可能的动作选择和复杂的环境,动作策略学习提供了多种方法来帮助智体确定最佳动作。

强化学习

VLN 是一个顺序决策问题,可以自然地建模为马尔可夫决策过程。因此,强化学习 (RL) 方法被提出来学习针对 VLN 任务的更优策略。RL 方法面临的一个关键挑战是 VLN 代理仅在场景结束时接收成功信号,因此很难知道哪些动作应该归因于成功,哪些动作应该受到惩罚。为了解决不适定反馈问题,Wang (2019, 2020c) 提出 RCM 模型,以目标导向的外部奖励和指令保真度的内部奖励,在局部和全局上强化跨模态基础。He (2021) 建议利用指令和关键地标之间的局部对齐作为奖励。诸如 CLS (Jain,2019) 或 nDTW (Ilharco,2019) 等评估指标也可以提供信息丰富的奖励信号 (Landi,2020),自然语言也可以提供奖励建议 (Fu,2019)。

为了对环境动态进行建模,Wang (2018) 利用基于模型的强化学习来预测下一个状态,并提升在未知环境中的泛化能力。Zhang(2020a) 发现,递归交替使用模仿学习和强化学习的学习方案可以提高性能。

导航过程中的探索

在导航过程中探索和收集环境信息有助于更好地理解状态空间。学生-强制是一种常用的策略,其中智体根据采样动作持续导航,并由最短路径动作进行监督 (Anderson et al., 2018b)。

探索与利用之间存在权衡:探索越多,智体的性能越好,但代价是路径更长、持续时间更长,因此模型需要确定何时以及探索的深度 (Wang et al., 2020a)。在收集到局部信息后,智体需要决定选择哪个步骤,或者是否回溯 (Ke et al., 2019)。值得注意的是,Koh et al. (2021) 设计 ​​Pathdreamer,这是一个视觉世界模型,用于合成视觉观察的未来视角,而无需实际展望未来。

规划未来的导航步骤可以制定更好的行动策略。从视觉方面来看,预测航点 (Krantz et al., 2021)、下一状态和奖励 (Wang et al., 2018)、生成未来观测 (Koh et al., 2021) 或整合邻近视图 (An et al., 2021) 已被证明是有效的。识别并在正确的位置停止也可以降低导航成本 (Xiang et al., 2020)。自然语言指令还包含地标和方向线索,以规划详细步骤。Anderson (2019b) 根据指令预测即将发生的事件,该指令用于通过语义空间图预测动作。(Kurita and Cho, 2020) 将 VLN 表述为一种生成方法,其中使用语言模型来计算所有可能指令的分布。该指令还可用于标记智能体需要逐步完成的导航和交互里程碑 (Raychaudhuri,2021;Song,2022)。

寻求帮助

智体在不确定下一步行动时会寻求帮助 (Nguyen,2021a)。可以利用行动概率或单独训练的模型 (Chi,2020;Zhu,2021e;Nguyen,2021a) 来决定是否寻求帮助。使用自然语言与预言机对话比发送信号涵盖的问题范围更广。目前,基于规则的方法(Padmakumar,2021)和基于神经网络的方法(Roman,2020;Nguyen,2021a)都已被开发用于构建具有对话能力的导航智体。同时,对于没有提供预言机的智体,来用自然语言回答问题的任务(Thomason,2019b;Padmakumar,2021),研究人员也需要构建基于规则的预言机(Padmakum,2021)或基于神经网络的预言机(Roman,2020)。DialFRED (Gao et al., 2022) 使用语言模型作为预言机来回答问题。

以数据为中心的学习

与之前讨论的专注于构建更佳 VLN 智体结构的研究相比,以数据为中心的方法能够最有效地利用现有数据或创建合成数据。

数据增强

轨迹-指令增强。增强后的路径-指令对可直接用于 VLN。目前,常见的做法是训练一个说话人模块,根据给定的导航路径生成指令 (Fried et al., 2018)。生成的数据质量参差不齐 (Zhao et al., 2021; Huang et al., 2019a)。因此,对齐评分器 (Huang et al., 2019b) 或对抗性鉴别器 (Fu et al., 2020) 可以选择高质量的对进行增强。风格迁移模块还可以通过调整源域中的指令来提升指令质量 (Zhu et al., 2021d)。

环境增强。生成更多环境数据不仅有助于生成更多轨迹,还能缓解已知环境中的过拟合问题。在不同视角下随机遮罩相同的视觉特征 (Tan et al., 2019)、分割房屋场景并重新混合 (Liu et al., 2021) 或更改风格和物体 (Li et al., 2022) 可以创建新的环境,并进一步用于生成更多轨迹-指令对 (Fried et al., 2018)。训练数据也可以通过将某些视觉特征替换为反事实特征 (Parvaneh et al., 2020) 来增强。

课程学习

课程学习 (Bengio et al., 2009) 在训练过程中逐渐增加任务难度。指令长度可以作为任务难度的指标。BabyWalk (Zhu et al., 2020b) 在训练过程中不断增加训练样本的指令长度。轨迹中的属性也可用于对任务难度进行排序。Zhang et al. (2021) 使用每条路径经过的房间数量重新排列 R2R 数据集。他们发现课程学习有助于平滑损失图景并找到更好的局部最优解。

多任务学习

不同的 VLN 任务可以通过跨任务知识迁移相互受益。Wang et al. (2020d) 提出一种与环境无关的多任务导航模型,适用于 VLN 和基于对话历史导航任务 (Thomason et al., 2019b)。 Chaplot (2020) 提出一个注意模块来训练多任务导航智体遵循指令并回答问题 (Wijmans,2019a)。

指令解释

以不同方式多次解释的轨迹指令可能有助于智体更好地理解其目标。LEO (Xia,2020) 利用一组共享参数对所有指令进行编码,以增强文本理解。LWIT (Nguyen,2021b) 解释指令,使其明确与哪一类目标进行交互。与较长且语义纠缠的指令相比,更短、更简洁的指令可以为智体提供更清晰的指导,因此 Hong (2020b) 将长指令分解为更短的指令,使智体能够跟踪进度并分别关注每个原子指令。

先验探索

在已见过环境中的良好表现通常无法泛化到未知环境 (Hu,2019;Parvaneh,2020;Tan,2019)。先验探索方法允许代理观察并适应未知环境,从而弥合已经过环境与未知环境之间的性能差距。Wang (2019) 引入一种自监督模仿学习,用于学习智体自身过去的良好行为。匹配评判者确定的与指令最匹配的最佳导航路径将用于更新智体。Tan 等人 (2019) 利用测试环境对路径进行采样和扩充,以实现自适应。Fu (2020) 提出基于环境的先验探索,其中智体只能探索其部署的特定环境。当利用图时,先前的探索可以构建关于未见环境的图或概览,从而为导航提供明确的指导 (Chen et al., 2021a; Zhou et al., 2021)。

http://www.xdnf.cn/news/7259.html

相关文章:

  • Python编程从入门到实践 PDF 高清版
  • 【深度学习基础】损失函数与优化算法详解:从理论到实践
  • A3B和AWQ 是什么;Safetensors 是什么?
  • 解决 Linux Bash 脚本因换行符问题导致的 “bash^M: No such file or directory“ 错误
  • 在CentOS系统上部署GitLabRunner并配置CICD自动项目集成!
  • ubuntu下配置vscode生成c_cpp_properties.json
  • 【大数据】MapReduce 编程-- PageRank--网页排名算法,用于衡量网页“重要性”-排序网页
  • 展锐Android14及更新版本split_build编译方法
  • 百度OCR:证件识别
  • Python将Excel单元格某一范围生成—截图(进阶版—带样式+批量+多级表头)
  • 《黑马前端ajax+node.js+webpack+git教程》(笔记)——ajax教程(axios教程)
  • 确保高质量的音视频通话,如何最大化利用视频带宽
  • win10 上删除文件夹失败的一个原因:sqlYog 备份/导出关联了该文件夹
  • 【QT】一个界面中嵌入其它界面(二)
  • 星云智控v1.0.0产品发布会圆满举行:以创新技术重构物联网监控新生态
  • 线程池模式与C#中用法
  • 解决服务器重装之后vscode Remote-SSH无法连接的问题
  • Vue百日学习计划Day33-35天详细计划-Gemini版
  • 基于tar包安装,创建两个tomcat实例
  • CLIP:论文阅读 -- 视觉模型
  • 【MySQL成神之路】MySQL常用语法总结
  • Django 项目中,将所有数据表注册到 Django 后台管理系统
  • 从纸质契约到智能契约:AI如何改写信任规则与商业效率?​——从智能合约到监管科技,一场颠覆传统商业逻辑的技术革命
  • Ubuntu 20.04 postgresql
  • 通用简洁工作汇报项目评估营销策划工作总结年终汇报PPT模版8套一组分享
  • 什么是子网委派?
  • 一文了解VR拍摄制作
  • 数据库性能调优:索引设计、缓存配置与查询计划优化
  • 《告别低效签约!智合同如何用AI重构商业“契约时代”》​​——解析智能合约技术的爆发与行业变革
  • 企业智慧业务中台规划建设与应用全景解析