打算写一个系列和大家分享一下我们近期在VLN任务上的一些工作~~
(1) 视觉语言导航简介 & HAMT模型 [NeurIPS 2021](本文)
(2) DUET: DUal scalE graph Transformer [CVPR 2022, Winner of ICCV 2021 REVERIE & SOON VLN Challenge]
(3) Airbert: In-domain Pretraining for VLN [ICCV 2021]
我们的模型在多个VLN数据集上取得SoTA性能,所有工作也均已release codes,欢迎大家关注!
导航是智能体(agents)在现实环境中行动的一个基础且关键的能力。传统导航任务主要通过直接给定目的地坐标(point-goal)、目的地或目的物体的图像(image-goal),或目的物体的类别(object-goal)来指挥agents进行导航。但是,这种导航目标并不是我们与机器进行交互的最方便的方式。我们更喜欢直接用自然语言进行交互,例如"Go to the laundry room and dust off the trinkets on the first shelf above the sink"。因此,越来越多的研究开始关注于以语言为导航指导的视觉语言导航任务(Vision-and-Language Navigation, VLN)。
VLN任务的目标是训练自动智能体,使其可以根据自然语言指令在真实环境中进行导航。
要完成VLN任务,agents需要: i) 理解自然语言;ii) 将自然语言与所观测到的视觉信息进行联系,例如在当前的全景图中,"stairs"在哪个方向;iii) 做出行为决策,确定行动的方向,不断地基于指令和视觉信息行动,直到到达目的地。和传统的视觉-文本多模态任务相比,VLN面临着一些新的挑战。首先,agents是在一个动态变化的环境当中,它不断地观察到新的环境并进行决策,过去观测到的环境信息和执行的动作对于agents下一步的行动是重要的,比如agents需要返回过去走过的一个位置;其次,agents所看到的视觉图像(embodied images)是和训练现有视觉模型的互联网图像不太一样的,互联网图片更考虑美观构图等,而embodied images往往会有更多样化的观测角度或者视野范围,这种视觉的domain gap也使得VLN更为挑战;最后,现有训练VLN的监督数据是比较有限的,这使得模型容易过拟合,在seen and unseen environments中的性能表现差异较大。
对VLN感兴趣的同学,推荐大家阅读最近的一篇VLN survey:Vision-and-Language Navigation: A Survey of Tasks, Methods, and Future Directions。
Chen, Shizhe, Pierre-Louis Guhur, Cordelia Schmid, and Ivan Laptev. "History aware multimodal transformer for vision-and-language navigation." NeurIPS 2021. [Project webpage] [Paper] [Code] [Talk]
这是我们在NeurIPS 2021发表的一篇工作。我们提出了一个HAMT模型,这是第一个在VLN中完全基于transformer进行端到端的多模态行为决策的框架。
HAMT模型框架图。模型输入为自然语言指令,完整的历史信息(所有观测到的全景图和执行的动作),当前观测的全景图;输出为在当前观测的全景图中下一步需要行走的方向或停止。
HAMT模型的主要贡献包括:
1)对完整的长期历史信息进行有效编码。前人工作主要使用recurrent unit将之前所有的历史信息变成一个fixed-size vector,这种recurrent unit尤其在长距离的导航任务中容易丢失之前关键的历史信息。因此,我们提出使用transformer将所有历史全景图和行动进行编码以预测下一步行动。但是,对完整历史信息编码的计算代价高昂。为了提高计算效率,我们提出了一个层次化的历史编码方法(hierarchical history encoding),如下图所示:
图(a)为我们所提出的层次化建模。图(b)的方法包含了完整历史信息,但是计算代价大;图(c)以牺牲部分历史信息的方式降低了计算;我们的方法图(a)包含了完整历史信息,并且提高了计算效率。
2)多种proxy task对模型进行有效地端到端训练,同时优化视觉表征和多模态决策。仅仅利用VLN监督数据进行动作预测并不能很好地训练模型。因此,我们提出了多种proxy tasks进行端到端训练,包括了传统V&L中用到的MLM, MRC, ITM任务,以及为VLN设计的single-step action prediction (SAP)和spatial relation prediction (SPREL)任务,其中SPREL旨在更好地学习到全景图中物体的空间关系。
HAMT模型使用了多种proxy tasks进行端到端训练,同时优化visual representation & transformer models。
3)在多种VLN任务中均取得SoTA性能。我们在多种VLN数据集上验证模型的效果,包括VLN with fine-grained instructions (R2R, RxR), VLN with high-level instructions (REVERIE, R2R-LAST), Vision-and-Dialogue navigation (CVDN), Long-horizon VLN (R4R,R2R-Back: 是我们新提出的一个setting,要求agents到达原始目的地以后原路返回)。下图所示,HAMT模型尤其在长距离VLN任务中表现更好,说明了历史信息的重要性。更多的ablation study可以参看我们的论文。
HAMT模型在多种VLN任务上均取得SoTA性能,尤其是在长距离的RxR、R4R和R2R-Back数据集。