为了让 VL-BERT 模型利用更为通用的特征表示,作者在大规模图片描述生成数据集 ConceptualCaptions 中进行 VL-BERT 的预训练,实验证明此预训练过程可以显著提高下游的视觉-语言任务的效果,包含视觉常识推理、视觉问答与引用表达式理解等。值得一提的是,在视觉常识推理排行榜中,VL-BERT 取得了当前单模型的最好效果。
论文地址:https://arxiv.org/abs/1908.08530
适用于下游任务的通用特征表示预训练是深度网络成功的标志之一。在计算机视觉领域,深度网络在 ImageNet 数据集进行图像分类的预训练过程,被发现可广泛提高多种图像识别任务的效果。在自然语言处理领域中,Transformer 模型在大规模语料库中使用语言模型进行预训练的过程,也被证明可广泛提高多种自然语言处理任务的效果。
但对于计算机视觉和自然语言处理领域交叉的任务,例如图像标题生成、视觉问答、视觉常识推理等,缺少这种预训练的通用多模态特征表示。
一般来说,之前的视觉-语言模型分别使用计算机视觉或自然语言处理领域中的预训练模型进行初始化,但如果目标任务数据量不足,模型容易过拟合从而损失性能。并且对于不同的视觉-语言任务,其网络架构一般是经过特殊设计的,由此很难通过视觉-语言联合预训练的过程帮助下游任务。
由此,在本文中,作者提出了一种可广泛应用于视觉-语言任务的预训练通用特征表示,称为 Visual-LinguisitcBERT,简称 VL-BERT,其架构如下图所示:
VL-BERT 的主干网络使用 TransformerAttention 模块,并将视觉与语言嵌入特征作为输入,其中输入的每个元素是来自句子中的单词、或图像中的感兴趣区域(Region of Interests,简称 RoIs)。在模型训练的过程中,每个元素均可以根据其内容、位置、类别等信息自适应地聚合来自所有其他元素的信息。在堆叠多层 TransformerAttention 模块后,其特征表示即具有更为丰富的聚合与对齐视觉和语言线索的能力。
为了更好地建模通用的视觉-语言表示,作者在大规模视觉-语言语料库中对 VL-BERT 进行了预训练。采用的预训练数据集为图像标题生成数据集,Conceptual Captions,其中包含了大约 330 万个图像标题对。
VL-BERT 的预训练主要采用三个任务:a) 屏蔽语言模型(Masked Language Modeling),即随机屏蔽掉语句中的一些词,并预测当前位置的词是什么;b) 屏蔽 RoI 分类(MaskedRoIClassification),即随机屏蔽掉视觉输入中的一些 RoIs,并预测此空间位置对应 RoI 的所属类别;c) 图像标题关联预测(Sentence-Image Relationship Prediction),即预测图像与标题是否属于同一对。
在预训练结束后,使用微调来进行下游任务的训练。本文中主要在三个视觉-语言下游任务中进行微调,即视觉常识推理(VisualCommonsenseReasoning)、视觉问答(VisualQuestionAnswering)与引用表达式理解(ReferringExpressionComprehension),下面将分别介绍。
视觉常识推理任务即给定图片与相关问题,机器不仅需要回答问题,还需要提供理由来证明答案的正确性。此任务(Q->AR)被分解为两个子任务,即视觉问答(Q->A,给定图片与问题,输出正确答案),以及视觉推理(QA->R,给定图片、问题与答案,输出正确的理由)。
下面以视觉问答子任务为例,此任务的输入为问题、答案与图像的 RoIs,并预测此答案是否为正确答案。除此之外,作者发现微调时增加与预训练类似的 RoI 分类损失也会进一步提升性能,如下:
视觉问答任务即给定图片,回答与图片输入相关的问题。由此模型的输入即为问题与图像,基本元素为单词或 RoI,最终对答案进行预测,如下:
引用表达式理解任务是使用给定的引用表达式来定位图像中的相关对象,由此输入为查询(引用表达式)与图片中的 RoIs,并预测哪个 RoI 为查询输入的引用,如下:
下面将介绍论文中的一些主要实验结果:
a)在视觉常识推理(Visual Commonsense Reasoning)任务中,与当前最好方法的结果比较如下:
b)在视觉问答(Visual Question Answering)任务中,与当前最好方法的结果比较如下:
c)在引用表达式理解(Referring Expression Comprehension)任务中,与当前最好方法的结果比较如下: