通过文本生成统一视觉和语言任务.

0. TL; DR

本文提出了一种统一的框架,通过文本生成的方式解决视觉-语言任务。该框架基于T5BART预训练语言模型,通过扩展其文本编码器以包含图像区域嵌入,将多种视觉-语言任务(如视觉问答、指代表达理解、图像描述生成等)统一为多模态条件文本生成任务。在7个流行的视觉-语言基准测试中,该方法达到了与任务特定的最新模型相当的性能,并且在多任务学习设置下,使用单一架构和参数集实现了与单独优化的单任务模型相似的性能。

1. 背景介绍

视觉-语言学习通常需要为每个任务设计特定的架构和目标。例如,视觉问答(VQA)需要一个多标签答案分类器,指代表达理解需要一个区域评分器,图像描述生成需要一个语言解码器等。这些任务所需的推理技能有显著重叠,且其标签都可以用文本轻松表达。然而,现有的方法通常需要为每个预训练或下游任务设计特定的架构,这增加了任务的复杂性。

为了简化这一过程,本文提出了一种统一的框架,通过文本生成的方式解决不同的视觉-语言任务。该框架基于预训练的语言模型T5BART,通过扩展其文本编码器以包含图像区域嵌入,将所有任务统一为多模态条件文本生成任务。

2. 模型介绍

本文提出的框架将视觉和语言问题统一为多模态条件文本生成任务。基于两个预训练的Transformer语言模型T5BaseBARTBase,分别扩展为VL-T5VL-BART。具体来说,通过将图像区域嵌入作为额外输入,扩展了它们的文本编码器。整体架构如图所示。

输入图像$v$通过Faster R-CNN模型表示为$n=36$个目标区域,该模型在Visual Genome数据集上训练,用于目标和属性分类。每个图像区域编码为四种特征的和:(i) RoI目标特征;(ii) RoI边界框坐标;(iii) 图像id;(iv) 区域idRoI特征和边界框坐标通过线性层编码,而图像id和区域id通过学习嵌入编码。图像id用于区分不同图像的区域,区域id用于标记特定区域。

为了适应不同任务,作者在原始输入文本前添加不同的前缀。例如,对于视觉问答任务,输入文本为“vqa: [问题]”,对于指代表达理解任务,输入文本为“visual grounding: [指代表达]”。这些增强后的输入文本被标记化并编码为学习嵌入。

使用Transformer编码器-解码器架构编码视觉和文本输入,并生成标签文本。双向多模态编码器由多个Transformer块组成,每个块包含自注意力层和全连接层。解码器与编码器类似,但每个块额外包含一个交叉注意力层。编码器将文本和视觉嵌入的连接作为输入,并输出它们的上下文化联合表示。然后,解码器迭代地关注之前生成的token和编码器输出,并预测未来文本token的概率。

预训练在多任务设置下进行,包括多模态语言建模、视觉问答、图像-文本匹配、视觉定位和基于区域的描述生成等任务。这些任务的输入和输出格式如表所示。

3. 实验分析

预训练数据从MS COCOVisual Genome图像中聚合而来。这些数据集的标题用于多模态语言建模任务,COCO标题还用于图像-文本匹配任务。此外,还使用了三个视觉问答数据集(VQA v2.0GQA平衡版本和Visual7W)作为预训练任务。预训练数据集包含9.18M图像-文本对,覆盖180K不同的图像。

主要实验结果:

在多任务微调设置下,VL-T5使用单一架构和参数集同时训练7个任务,达到了与单独优化的单任务模型相当的性能。这表明该框架可以有效地进行多任务学习。