VL-BERT:视觉和语言表示的预训练模型

原文地址:https://arxiv.org/abs/1908.08530v4

摘要:我们提出了一种新的用于视觉-语言任务的预训练的通用表示,称为视觉-语言BERT(简称VL-BERT)。VL-BERT以简单而强大的Transformer为主干,并将其扩展为以视觉和语言嵌入特征作为输入。输入的每个元素要么是输入句子中的一个词,要么是输入图片的一个RoI。VL-BERT是为了大多数视觉-语言下游任务设计的。为了更好地利用通用表示,我们在大规模Conceptual Captions数据集和纯文本语料库上预训练VL-BERT。实证分析表明,预训练可以更好地对齐视觉-语言的clues,并有利于下游任务,如视觉常识推理、视觉问答和参考表达理解(referring expression comprehension)。值得注意的是,VL-BERT在VCR benchmark排行榜上获得单一模型的第一名。代码在:https://github.com/jackroos/VL-BERT

1.引言

在一个域中,适用于多种任务的通用特征表示的预训练是深度网络成功的一个标志。首先,在计算机视觉领域,为ImageNet分类而设计和预训练的主干网络可以有效地提高许多图像识别任务的性能。最近,在NLP领域,使用“屏蔽语言模型”(MLM)在大规模语料库上预训练的Transformer在各种NLP任务上表现出色。

同时,视觉和语言交叉的任务,如图像描述、视觉问答、视觉常识推理,缺乏预训练的通用特征表示。先前的工作是将预训练的用于图像识别的基础网络和预训练的NLP基础网络组合起来,模型直接针对特定的任务进行微调,而无需任何通用的视觉-语言预训练。当任务的数据不足时,模型很可能会出现过拟合。此外,由于模型设计是特定任务的,很难从预训练中获益,因为预训练的目标和任务的目标可能完全不同(例如,VQA模型中使用预训练的FasterRCNN,FasterRCNN的目标是检测,VQA的目标是回答提问)。一般来说,视觉语言任务的特征设计和预训练缺乏共同点。

在为不同视觉语言任务设计的各种网络结构中,一个关键的目标是有效地聚合视觉和语言领域的多模态信息。举例来说,为了在VQA任务中选择正确的答案,网络应该能够整合提问和答案中的语言信息,并从输入图像中聚合视觉信息,同时将语言意义与视觉线索对齐。因此,我们寻求能够有效地聚合和对齐视觉和语言信息的通用表示。

同时,我们看到了Transformer注意力在NLP中的成功应用,以及在BERT中基于MLM的预训练技术。注意力模块在聚合和对齐句子中的词嵌入特征方面是强大和灵活的,而BERT中的预训练则进一步提高了这一能力。

受此启发,我们开发了VL-BERT,这是一种视觉语言任务的可预训练的通用表示,如图1所示。VL-BERT的主干是以视觉和语言嵌入特征为输入的(多模态)Transformer注意力模块。其中,每个元素要么是来自输入句子的单词,要么是来自输入图像的RoI,再加上某些特殊元素来消除不同输入形式的歧义。每个元素都可以根据其内容、位置、类别等定义的兼容性自适应地聚合来自所有其他元素的信息。一个词的特征或一个RoI特征是特定于域的,例如WordPiece嵌入作为词特征,FasterRCNN特征作为RoI特征。通过堆叠多层多模态Transformer注意力模块,所导出的表示方法具有丰富的视觉语言线索聚合和对齐能力。对于特定的视觉语言任务,可以在上面添加特定的分支。

图1  预训练VL-BERT的架构。架构中所有的参数,包括VL-BERT部分和FasterRCNN部分,在预训练阶段和微调阶段都是联合训练的。

为了更好地利用通用表示,我们在大型视觉-语言语料库和纯文本数据集上预训练VL-BERT。视觉语言语料库的预训练损失是通过预测随机屏蔽词或roi而产生的。这种预训练提高了VL-BERT对视觉语言线索的聚合和对齐能力。而纯文本语料库的损失属于BERT的标准MLM损失,提高了对长句子和复杂句子的泛化能力。

综合实证结果表明,本文提出的VL-BERT在视觉常识推理、视觉问答和参考表达理解等多种下游视觉语言任务上均达到了最先进水平。特别是在视觉常识推理排行榜上,我们获得了单一模型的第一名。

2.相关工作

计算机视觉的预训练    深度网络时代之前,不同的任务之间共享特征并通过预训练来改进特征还远远不够成熟。各种计算机视觉任务的模型具有太多的设计选择,无法导出通用表示。随着AlexNet在ImageNet分类中的成功,我们看到卷积神经网络在视觉领域的复兴。不久之后,研究人员发现,ImageNet预训练的CNN可以作为各种下游任务的通用特征表示,例如目标检测、语义分割、实例分割。主干网络在ImageNet分类上的改进可以进一步地提升在下游任务上的表现。最近一些研究工作是直接在大规模目标检测数据集上从头开始训练CNN,而不需要在ImageNet上预训练,取得了与ImageNet预训练相当的成绩。同时他们也注意到,对于数据集规模小的任务,在一个合适的大规模数据集上预训练对性能提高至关重要。


自然语言处理预训练(NLP)

有趣的是,NLP中的训练前技术的发展远远落后于计算机视觉。已有关于改进单词嵌入的研究工作(Mikolov等人,2013;Pennington等人,2014;Kiros等人,2015),这是一种低级的语言特征表示。除此之外,还为各种NLP任务设计了许多不同的体系结构。在Transformers的里程碑工作(Vaswani等人,2017)中,Transformer attention模块被提议作为各种NLP任务的通用构建块。在此之后,我们提出了一系列的方法来对通用代表进行预培训,主要基于变形金刚,如GPT(Radford et al.,2018)、BERT(Devlin et al.,2018)、GPT-2(Radford et al.,2019)、XLNet(Yang et al.,2019)、XLM(Lample&Conneau,2019)和RoBERTa(Liu et al.,2019)。其中,BERT可能是最受欢迎的一个,因为它的简单性和优越的性能。

视觉语言任务的预训练。

视觉语言任务模型的发展过程也与计算机视觉和自然语言处理领域的模型非常相似。以前,任务特定模型是设计的,其中从现成的计算机视觉和NLP模型派生的特征以特定任务的特殊方式组合在一起。模型培训仅针对特定任务在数据集上执行。

VideoBERT(Sun等人,2019b)是第一个试图对视觉语言任务进行预训练的工作。其中,视频片段由现成的网络进行处理,用于动作识别,并基于衍生特征对不同的簇(可视词)进行签名。训练前的损失是通过预测屏蔽视频片段的簇id来产生的。由于视频片段的突然聚类,会丢失大量的视频内容信息,阻碍视频网络参数的更新。在CBT的后续工作(Sun等人,2019a)中,这种聚类机制被重新移动。这两部作品都应用在视频上,视频在时间维度上是线性结构,与句子一样。人们非常希望研究基于图像的视觉语言任务。

与我们的工作同时,最近发布的关于Arxiv的多篇文章也试图为视觉语言任务推导出一个可预先训练的泛型表示。附录中的表5对它们进行了比较。我们在这里简要讨论其中一些作品。


在ViLBERT(Lu et al.,2019)和LXMERT(Tan&Bansal,2019)中,网络结构是分别应用于输入句子和图像的两个单模态网络,然后是结合来自两个源的信息的跨模态变压器。交叉模态变压器的注意模式受到限制,作者认为这有助于提高变压器的性能。ViLBERT的作者声称,这种双流设计优于单流统一模型。同时,在提出的VL-BERT中,它是一个基于变换器的统一体系结构,对注意模式没有任何限制。视觉和语言内容作为输入反馈给VL-BERT,在VL-BERT中,它们可以早期自由地交互。我们发现我们的VL-BERT统一模型优于这两种流设计。

VisualBert(Li et al.,2019b)、B2T2(Alberti et al.,2019)和Unicoder VL(Li et al.,2019a)也属于统一的单流架构,它们正在进行或正在审查中。表5比较了这些作品的不同之处。这些研究工作的同时出现的紧急情况表明,为视觉语言任务推导一个通用的可训练表示法是非常重要的。

此外,VL-BERT与其他同时进行的预培训工作有三个显著的区别。其影响在第4.3节中得到验证。(1) 我们发现,在所有其他同时进行的作品中(例如,ViLBERT(Lu et al.,2019)和LXMERT(Tan&Bansal,2019))所使用的句子-图像关系预测任务对视觉语言表征的预训练毫无帮助。因此,这样的任务不包含在VL-BERT中。(2) 我们在视觉语言和纯文本数据集上预先训练VL-BERT。我们发现这种联合预训练提高了对长句子和复杂句子的泛化能力。(3) 改进了视觉表示的调整。在VL-BERT中,快速R-CNN的参数也得到了更新,从而得到了视觉特征。为了避免语言线索掩盖的RoI分类预训练任务中的视觉线索泄漏,对输入的原始像素进行掩蔽操作,而不是对卷积层生成的特征图进行掩蔽操作。

3个VL-BERT

3.1重新审视伯特模型

设x={x1,…,xN}为BERT(Devlin等人,2018)中的输入元素,它具有编码句子词的嵌入特征。它们由多层双向变换器处理(Vaswani等人,2017),其中每个元素的嵌入特征以聚集具有自适应注意权重的其他元素的特征的方式逐层变换。让x l={xl1,…,xlN}作为第l层的特性(x0设置为输入x)。第(l+1)层xl+1的特征由式1中的m在注意头上的索引计算,Am i,j∏exp[(Ql+1 m xli)T(Kl+1 m xlj)]de 注意到第m层中元素i和j之间的注意权重,该权重由PNj=1 Am i,j=1归一化。Wl+1m、Ql+1m、Kl+1m和V l+1m是mth注意头的可学习权重,式3中Wl+11、Wl+12和bl+11、bl+12分别是可学习权重和偏差。注意,等式1∼4中的运算与输入序列的顺序无关,即置换输入的最终BERT表示与相同置换后原始输入的最终BERT表示相同。通过序列位置嵌入,将元素在BERT中的位置编码为其自身的嵌入特征。由于这种解耦表示,BERT模型具有足够的灵活性,可以对各种NLP任务进行预训练和微调。


在BERT预训练中,引入了屏蔽语言建模(MLM)任务。某个输入字的嵌入特征将被随机屏蔽掉(捕获字内容的令牌嵌入通道将被一个特殊的[屏蔽]令牌替换)。通过训练BERT模型,从所有其他未掩蔽元素的语言线索预测掩蔽词。正如Wang&Cho(2019)所解释的,基于传销的BERT整体训练相当于优化以下联合概率分布

其中,φi(x |θ)是第i个输入元素的势函数,参数为θ,Z(θ)是配分函数。每个对数势项对数φi(x)定义为

其中Fi(x\ i ^ thi)表示对应于输入x i i的第i个元素的伯特的最终输出特征,其中x \ i被定义为x\i= {x1,…,席1,[掩码],席+ 1,…,xn}。发生的传销损失为

其中x是来自训练集D的随机抽样句子,i是用于掩蔽单词的随机抽样位置。

第二个训练前任务,下一个句子预测,重点是建立两个句子之间的关系模型。从输入文档中抽取两个句子,模型应该预测第二个句子是否是第一个句子的直接继承者。在BERT中,采样的两个句子连接成一个输入序列,在第一个和第二个句子之前分别插入特殊元素CLS和SEP。在与[CLS]元素对应的最终输出特征上附加一个Sigmoid分类器来进行预测。设x为输入序列,t∈{0,1}表示两句之间的关系。损失函数定义为

其中xL0是[CLS]元素(在第L层)的最终输出特性,g(xL0)是分类器输出。

3.2模型架构

图1说明了VL-BERT的体系结构。基本上,它修改了原始的BERT(Devlin等人,2018)模型,添加了新的元素以适应视觉内容,并在输入特征嵌入中嵌入了一种新的视觉特征。与BERT类似,主干是多层双向变压器编码器(Vaswani等人,2017),支持所有输入元素之间的依赖性建模。与BERT只处理句子词不同,VL-BERT以视觉和语言元素作为输入,分别在图像的感兴趣区域和输入句子的子词上定义特征。roi可以是对象检测器生成的边界框,也可以是特定任务中的带注释的边界框。

值得注意的是,不同视觉语言任务的输入格式各不相同(例如,图像字幕的输入格式为,VQA的输入格式为(Antol等人,2015年;John son等人,2017年;Goyal等人,2017年;Hudson&Manning,2019年)和VCR(Zellers等人,2019年;Gao等人,2019年))。但是,由于变换注意的无序表示性质(例如,句子中单词的位置仅由位置嵌入编码,而不是输入序列中的顺序),只要输入元素和嵌入特征设计得当,就可以导出泛型表示。输入元素包括三种类型,即语言、语言和特殊元素,用于消除不同输入格式的歧义。输入序列总是从一个特殊的分类元素([CLS])开始,然后是语言元素,然后是视觉元素,最后是一个特殊的结束元素([END])。在语言元素的不同句子之间,以及语言元素和视觉元素之间插入一个特殊的分隔元素。对于每个输入元素,其嵌入特征是四种嵌入类型的总和,即令牌嵌入、视觉特征嵌入、分段嵌入和序列位置嵌入。其中,视觉特征嵌入是为了获取视觉线索而引入的,其他三种嵌入都是按照原BERT论文的设计。


令牌嵌入

按照伯特的实践,语言词汇中嵌入了词条嵌入(Wu等人,2016),词汇为30000。为每个特殊元素分配一个特殊标记。对于视觉元素,为每个元素分配一个特殊的[IMG]标记。

视觉特征嵌入

首先分别描述了视觉外观特征和视觉几何em 层理,然后结合它们形成视觉特征嵌入。

对于与RoI相对应的视觉元素,通过应用快速R-CNN(Girshick,2015)检测器(即,快速R-CNN(Ren等人,2015)中的检测分支)提取视觉外观特征,其中每个RoI的输出层之前的特征向量被用作视觉特征嵌入(论文中2048-d)。对于非视觉元素,相应的视觉外观特征是在整个输入图像上提取的特征。它们是通过在覆盖整个输入图像的RoI上应用更快的R-CNN获得的。

视觉几何嵌入的目的是通知VL-BERT图像中每个输入视觉元素的几何位置。每个RoI由一个四维向量表示,如(xLT W,yLT H,xRB W,hRB H),其中(xLT,yLT)和(xRB,yRB)分别表示左上角和右下角的坐标,W,H表示输入图像的宽度和高度。按照关系网的实践(Hu等人,2018),通过计算不同波长的正弦和余弦函数,将四维向量嵌入到高维表示中(文中为2048-d)。

视觉特征嵌入附加在每个输入元素上,它是以视觉外观特征和视觉几何嵌入的连接为输入的全连接层的输出。

段嵌入

定义了三种段A、B、C,将输入元素从不同的源中分离出来,即A和B分别用于第一和第二输入句子中的单词,C用于roi和输入图像。例如,对于的输入格式,A表示问题,B表示答案,C表示图像。对于的输入格式,A表示标题,C表示图像。在每个输入元素中添加一个学习段嵌入,以指示它属于哪个段。

序列位置嵌入

在每个输入元素中添加一个可学习的序列位置嵌入,指示其在输入序列中的顺序,与BERT相同。因为输入视觉元素之间没有自然的顺序,所以它们在输入序列中的任何排列都应该得到相同的结果。因此,所有视觉元素的序列位置嵌入是相同的。


3.3训练前VL-BERT

VL-BERT的通用特征表示使我们能够在大规模数据集上对其进行预训练,并适当地设计预训练任务。我们在视觉语言和纯文本数据集上预先训练VL-BERT。在这里,我们利用概念字幕数据集(Sharma等人,2018)作为视觉语言语料库。它包含大约330万个带有标题的图片,这些图片是从web数据中获取并通过自动管道处理的。概念标题数据集的问题是,标题主要是简单的子句,对于许多下游任务来说,这些子句太短太简单。为了避免在这种短而简单的文本场景中过拟合,我们还对带有长而复杂句子的纯文本语料库进行了VL-BERT预训练。我们利用了书籍语料库(Zhu等人,2015年)和英语维基百科数据集,这些数据集也被用于培训前的伯特。

在SGD培训中,每一小批的样本都是从概念标题和书籍语料库和英语维基百科中随机抽取的(比例为1:1)。对于从概念标题中提取的样本,VL-BERT的输入格式为,其中图像中的roi被预先训练的更快的R-CNN对象检测器定位和分类。利用两个训练前任务造成损失,如下所示。

任务1:具有视觉线索的蒙面语言建模这个任务与BERT中使用的蒙面语言建模(MLM)任务非常相似。关键的区别在于视觉线索在VL-BERT中嵌入,以捕捉视觉和语言内容之间的依赖关系。在预训练期间,输入句子中的每个单词都被随机屏蔽(概率为15%)。对于蒙面字,其标记将替换为一个特殊的标记[MASK]。该模型基于未掩蔽词和视觉特征对掩蔽词进行预测。这项任务不仅推动了网络对句子词中的依存关系进行建模,而且使视觉内容和语言内容对齐。例如,在图1“kitten drinking from[MASK]”中,如果没有输入图像,屏蔽词可以是任何容器,例如“bowl”、“spoon”和“bottle”。表示应该捕捉“瓶子”一词与图像中相应roi的对应关系,以便做出正确的猜测。在预训练过程中,在Softmax交叉熵损失的驱动下,将蒙蔽词对应的最终输出特征输入到整个词汇表的分类器中。

任务2:用语言线索掩盖RoI分类这是任务1的双重任务。图像中的每个RoI被随机屏蔽(概率为15%),训练前的任务是从其他线索预测被屏蔽的RoI的类别标签。为了避免其他元素的视觉特征嵌入造成视觉线索泄漏,在应用快速R-CNN之前,将隐藏的RoI中的像素设置为零。在预训练过程中,将最终的输出特征对应于被屏蔽的感兴趣区域(RoI)输入到具有Softmax交叉熵损失的分类器中进行目标分类。预先训练的快速R-CNN预测的类别标签被设定为基本事实。示例如图1所示。图像中猫对应的感兴趣区域被屏蔽掉,无法根据任何视觉线索预测出相应的类别。但该模型以“小猫从瓶子里喝水”为输入标题,利用语言线索来推断猫的类别。

对于从BooksCorpus和English Wikipedia数据集中抽取的样本,VL BERT的输入格式退化为,其中不涉及视觉信息。图1中的“视觉特性嵌入”是一个可学习的嵌入,可用于所有单词。训练损失来自于标准的蒙面语言建模(MLM)任务,如BERT。

综上所述,视觉语言语料库的预训练提高了视觉和语言内容之间的详细对齐。这种详细的对齐对于许多下游任务至关重要(例如,在视觉基础(Kazemzadeh等人,2014年),模型基于自然语言查询定位图像中最相关的对象或区域)。而对纯文本语料库的预训练则有助于完成涉及理解长句子和复杂句子的下游任务。

3.4微调VL-BERT

VL-BERT被设计成各种视觉语言任务的通用特征表示。对于各种下游任务,微调VL-BERT相对简单。我们只需要给VL BERT提供正确格式的输入和输出,并端到端微调所有网络参数。对于输入,典型的格式覆盖了大多数视觉语言任务。只要引入适当的段嵌入来识别不同的输入源,VL-BERT也能支持更多的句子和更多的图像。通常,在输出端,[CLS]元素的最终输出特征用于句子-图像关系级预测。单词或RoI的最终输出特征用于单词级或RoI级预测。除了输入和输出格式外,还需要调整特定任务的损失函数和培训策略。详细设计选择和设置见第4.2节。

4实验

4.1预培训

如第3.3节所述,我们对VL-BERT进行了联合训练,将概念性字幕(Sharma等人,2018)作为视觉语言语料库,将书籍语料库(Zhu等人,2015)和英语维基百科作为纯文本语料库。由于VL-BERT是通过在原始BERT模型中添加捕获视觉信息的新输入来开发的,因此我们将参数初始化为与中描述的原始BERT相同(Devlin等人,2018)。VL-BERTBASE和VL-BERTLARGE分别表示从origi nal BERTBASE和BERTLARGE模型发展而来的模型。VL-BERT中新加入的参数由平均值为0、标准差为0.02的高斯分布随机初始化。视觉内容嵌入是由更快的R-CNN+ResNet-101产生的,由预先接受视觉基因组训练的参数初始化(Krishna等人,2017年),用于目标检测(见BUTD(Anderson等人,2018年))。

在对概念字幕进行预训练之前,将预训练的快速R-CNN用于提取roi。具体地说,对于每个im 年龄,最多选择100个检测分数高于0.5的ROI。不管检测分数阈值如何,至少从一幅图像中选择10个roi。具体参数设置见附录。

4.2下游任务微调

经过预训练的VL-BERT模型可以很好地适应各种下游视觉语言任务,只需对输入格式、输出预测、损失函数和训练策略进行简单的修改。

4.2.1视觉常识推理(VCR)

视觉常识推理(VCR)侧重于给定图像的高阶认知和常识理解。在Zellers等人的数据集中。(2019)给出了一个图像和一个分类ROI列表,提出了一个认知层面的问题。模型应该选择问题的正确答案,并提供理由解释。对于每个问题,有4个候选答案和4个候选理由。这个整体任务(Q→A R)被分解为两个子任务,研究人员可以在其中训练特定的个体模型:问答(Q→A)和回答理由(QA→R)。发布的VCR数据集包括265k对问题、答案和基本原理,超过10万个独特的电影场景(10万张图像)。它们分为训练、验证和测试集,分别由213k个问题和80k个图像、27k个问题和10k个图像、25k个问题和10k个图像组成。

我们的录像机实验方案遵循R2C中的实验方案(Zellers等人,2019)。该模型在列车分割上进行训练,并在val和测试集上进行评估。在原始工作R2C中,设计了特定任务的“接地”、“语境化”和“推理”模块。在这里,我们简单地采用VL-BERT的泛型表示。图2(a)说明了输入格式,。对于Q→A的子任务,“Q”和“A”分别填入问题部分和答案部分。对于Q A→R的子任务,“Q”和“A”的连接填充到问题部分,“R”填充到回答部分。VL-BERT的输入ROI是数据集中的基本真值注释。将[CLS]元素的最终输出特征输入到Softmax分类器,以预测给定答案是否是正确的选择。在微调过程中,我们采用了两种损失:基于答案正确性的分类和基于语言线索的RoI分类。具体参数设置见附录。


表1给出了实验结果。训练前VL-BERT在最后的Q→AR任务中提高了1.0%的性能,验证了训练前的有效性。与R2C相比,我们不使用特殊任务模块。相反,我们只是采用VL-BERT的泛型表示,并端到端联合训练整个模型。尽管输入、输出和实验协议与R2C相同,但VL-BERT在很大程度上优于R2C,这表明了我们简单的跨模式架构的强大功能。与ViLBERT、VisualBERT和B2T2等并行作品相比,我们的VL-BERT达到了最先进的性能。

4.2.2可视化问答(VQA)

在VQA任务中,给定一幅自然图像,提出一个感性层次的问题,算法应该生成/选择正确的答案。在这里,我们对广泛使用的VQA v2.0数据集(Goyal等人,2017年)进行了实验,该数据集基于COCO(Lin等人,2014年)图像构建。VQA v2.0数据集分为训练集(83k个图像和444k个问题)、验证集(41k个图像和214k个问题)和测试集(81k个图像和448k个问题)。按照BUTD的实验方案(Anderson等人,2018),对于每个问题,算法应该从包含3129个答案的共享集合中选择相应的答案。

图2(b)说明了VQA任务的输入格式,它是。由于可能的答案来自独立于问题的共享池,因此我们只在答案部分填充一个[MASK]元素。与BUTD(Anderson等人,2018年)一样,VL-BERT中的输入ROI是由一个更快的R-CNN检测器生成的,该检测器预先训练过视觉基因组(Krishna等人,2017年)。答案预测是根据[MASK]元素的输出特征从多类分类器中进行的。在微调过程中,网络训练是由多类交叉熵损失驱动的。具体参数设置见附录。

表2给出了我们的实验结果。训练前VL-BERT的性能提高了1.6%,验证了训练前的重要性。VL-BERT与BUTD共享相同的输入(即,问题、图像和ROI)、输出和实验协议,BUTD是一种为该任务专门设计的流行模型。尽管如此,VL-BERT的准确率还是超过了BUTD的5%。除了LXMERT之外,我们的VL-BERT比其他并发工作取得了更好的性能。这是因为LXMERT预先训练了大量的视觉问答数据(聚合了几乎所有基于COCO和视觉基因组的VQA数据集)。虽然我们的模型只是对字幕和纯文本数据集进行了预训练,但与VQA任务仍有差距。

引用表达式是指图像中的对象的自然语言短语。指称表达式理解任务是用给定的指称表达式将对象定位在图像中。我们采用RefCOCO+(Kazemzadeh et al.,2014)数据集进行评估,由COCO数据集中20k个图像中50k个参考对象的141k个表达式组成(Lin et al.,2014)。RefCOCO+中的引用表达式禁止使用绝对位置词,如左犬。因此,引用表达式侧重于纯基于外观的描述。RefCOCO+分为四组,训练集(train)、验证集(val)和两个测试集(testA和testB)。包含多人的Im 年龄在testA集中,而包含其他类别的多个对象的图像在testB集中。培训、验证和测试图像之间没有重叠。

图2(c)说明了引用表达式理解的输入格式,其中输入格式为。模型训练和评估在地面真实感ROI或在MAttNet中的检测盒上进行(Yu等人,2018)。结果分别在地面真值区域和探测区域的轨迹上报告。在训练过程中,我们计算所有输入roi的分类分数。对于每个RoI,应用二值分类损失。在推理过程中,我们直接选择分类得分最高的RoI作为输入引用表达式的引用对象。具体参数设置见附录。

表3给出了我们的实验结果。预先训练的VL-BERT显著提高了性能。与MAttNet相比,VL-BERT在没有特定于任务的体系结构设计的情况下简单得多,但是更好。VL-BERT的性能与ViLBERT的并发工作相当。


4.3消融研究

总体而言,VL-BERT的预训练提高了所有三个下游任务的性能(通过比较设置“w/o pre training”和VL-BERTBASE)。不同任务的改善幅度不同。通过对比设置(a)和“无需预先训练”的设置,我们看到任务1的好处,即使用视觉线索进行蒙面语言建模。通过进一步结合Task#2,使用语言线索屏蔽RoI分类,RefCOCO+的准确性进一步提高,但仍停留在VCR和VQA上。这可能是因为只有RefCOCO+使用与[IMG]标记对应的最终输出特性进行预测。因此,这些特征的预训练是有益的。设置(c)包含了ViLBERT(Lu et al.,2019)和LXMERT(Tan&Bansal,2019)中的句子-图像关系预测任务。这会影响所有三个下游任务的准确性。我们认为这是因为句子-图像关系预测的任务会引入不匹配的图像和标题对作为反例。这种不匹配的样本会妨碍其他任务的训练。设置(d)在训练前添加纯文本语料库。与设置(b)相比,它提高了所有三个下行任务的性能,并且在录像机上最为显著。这是因为VCR的任务比VQA和RefCOCO+2中的任务更复杂和更长的句子。通过进一步微调快速R-CNN的网络参数,生成视觉特征,得到VL-BERTBASE的最终设置。整个网络的这种端到端的训练有助于所有的下游任务。

5结论

本文提出了一种新的视觉语言任务的可训练泛型表示方法VL-BERT。VL-BERT没有使用特定于特定任务的模块,而是采用简单而强大的转换器模型作为主干。它与纯文本语料库一起,在大规模概念字幕数据集上进行预训练。大量的实证分析表明,预训练程序能够更好地对齐视觉语言线索,从而有利于后续任务的完成。在未来,我们希望寻求更好的训练前任务,这可能有利于更多的下游任务(例如,图片标题生成)。

你可能感兴趣的:(VL-BERT:视觉和语言表示的预训练模型)