Press "Enter" to skip to content

VinVL:恢复视觉语言模型中的视觉表示

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

在这篇文章中,我们将探讨最近发表的VinVL论文。本文介绍了一种新的目标检测模型,该模型能产生更好的视觉特征。令人惊讶的是,这些更好的视觉功能在七个视觉语言(VL)任务上带来了最先进的性能,如视觉问答(VQA)、GQA、NVLR2、COCO文本图像检索、COCO图像字幕和NoCaps。作者在LINK上发布了代码。 link

 

自然语言处理的前期训练

 

在冒险进入新的令人敬畏的对象检测模型之前,该模型负责生成视觉特征。让我们来了解一下这些视觉功能是如何使用的。新的目标检测模型产生的视觉特征被用于视觉语言预训练(VLP)。VLP本身就是从自然语言处理(NLP)领域借来的一个概念。

 

在NLP中,模型(例如,BERT)在较大的文本语料库数据集(没有标签)上进行预训练,然后在问题回答或语义分类等“下游”任务的较小的标签数据集(这称为微调)上进行训练。预训有几个好处。首先,我们可以从互联网上收集大量未标记的文本数据,如维基百科文章。预训练不仅节省了标注数据的成本,而且发现该模型学习了更好的文本表示,这导致了许多NLP任务中的最新水平。

 

VLP借用了这个概念,在更大的、易于收集的图文数据集上预先训练模型。该预先训练的模型可以在较小的下游任务数据集上进一步训练。

 

一种新的目标检测模型

 

新的目标检测模型为图像生成更丰富的视觉表示,然后用于预训练。图1显示了由经典目标检测模型生成的视觉特征与提出的目标检测模型之间的差异。它在包括COCO、OpenImagesV5、Objects365和Visual Genome在内的四个公共数据集上进行了训练。

有趣的是,新的目标检测模型还采用了类似于VLP的预训练和微调策略。这是因为所有四个公共对象检测数据集都具有不同级别的注释、不同的数据大小和对象词汇表。在所有四个数据集中,只有视觉基因组(VG)数据集包含对象及其属性的详细而丰富的注释。VG数据集通过不同的关系将区域/对象与属性联系起来,如图2所示。首先,对象检测模型在所有四个数据集上进行训练,然后在Visual Genome数据集上进行微调(在较小的数据集上进行训练),并增加一个属性分支,使其具有检测对象和属性的能力。

训练前数据集是所有4个数据集的平衡组合。首先,作者对Object365和OpenImagesV5执行类感知采样,以获得每个类至少2000个图像或实例。这将分别产生2.2M和0.8M的图像。其次,作者将所有四个数据集合并为8个COCO副本、8个VG副本、2个类感知采样Object365副本和1个类感知采样OpenImagesV5副本。如果匹配,则将它们的类组合在一起,否则,如果不匹配,则创建新类。如果您感到困惑,请不要担心,这里所做的基本上是从所有4个数据集中仔细选择图像,以确保它们是平衡的和良好合并的。

作者使用了ResNeXt-152C4的模型体系结构。选择C4而不是FPN。这次选择的原因有两个。首先,研究发现,对于视觉语言(VL)任务,C4比FPN产生了更好的视觉特征。这是因为C4在ImageNet上接受了预先培训,而FPN没有。再一次,我们遇到了预训。

 

(可选)到目前为止,有3个级别的预培训。(1)目标检测模型在ImageNet(比4个目标检测数据集大得多)上进行预训练;(2)目标检测模型在4个目标检测数据集上进行预训练,然后在更详细的Visual Genome数据集上进行微调,从而能够根据其属性预测目标。(3)利用目标检测模型生成的特征对模型进行预训练(VLP),然后将模型微调到后续任务,如图像字幕。我们可以得出结论,任何形式的前期培训至少都是有益的。

 

其次,C4使用的卷积头比FPN使用的MLP头具有更好的感应偏置,而MLP头丢失了空间信息。

 

在预训练期间,作者冻结了第一个Conv层、第一个剩余挡路层和所有批规范层。此外,还采用了水平翻转和多尺度训练等数据增强技术。作者从ImageNet-5K检查点初始化模型主干。该模型被训练为1.8M次迭代,批大小为16幅图像。

 

目标检测模型生成视觉特征,包括:1)检测到的目标名称;(2)区域特征集。区域特征由最后一层检测头的输出、边界框和区域的高度和宽度组成。注意,区域指的是利用图像中对应的边界框检测到的对象。

 

OSCAR+预培训

 

在本节中,我们将探讨名为OSCAR+的多层转换器模型上的视觉语言预培训(VLP)。它是奥斯卡的改良版。我们不会在这篇文章中报道奥斯卡,也不会让读者参考[3]。这一部分是为了证明使用新的目标检测模型产生的视觉特征对下游VL任务是有益的。 [3]

 

VLP对预训和下游VL任务使用相同的模型。目标是学习具有与下游任务目标相关的目标的联合图文表征。首先,我们需要建立一个预训练图文语料库或数据集。训练前数据集由3种下游任务数据集合并而成:

 

前两个数据集可以准备成{标题,图像标签,图像特征}格式。VQA数据集可以准备成{问题、答案、图像功能}。标题、图片标签、问题和答案都是文字。而图像特征是由目标检测模型生成的。

 

造成训练前损失的有两个训练前任务。MTL指的是掩蔽令牌丢失,CL3指的是3向对比丢失。我们将探索这两项培训前的任务。

这是用来为NLP预训Bert的。简而言之,这是一项“填空”的任务。输入文本标记被随机屏蔽,并替换为由[掩码]表示的特殊标记。该模型需要根据周围的令牌和图像特征来预测这些被屏蔽的令牌。

 

2.三向对比损失

 

其概念是图像-文本匹配。该模型预测文本和图像特征是否来自同一图像(即,匹配)。作者污染了训练样本,创造了反面教材。例如,作者用不匹配的文本污染或更改标题和答案。该模型预测样本是否匹配(class=0)、是否包含受污染的标题(class=1)或是否包含受污染的答案(class=2)。这是一个三级多级分类。

 

希望通过对这两个任务的预训练,该模型能够学习输入的文本成分和图像成分之间的关系,并生成更好的联合图文特征,这些特征对后续的视觉语言任务是有用的。

 

结果

 

OSCAR+对下游VL任务进行了微调,在包括VQA、GQA、图像字幕、NoCaps、图像检索、文本检索和NLVR2在内的7个VL任务上优于以前的最先进型号(SOTAS)。

文中给出了相当多的结果和烧蚀研究。我们不会在这里逐一介绍它们。相反,我们将列出一些重要的外卖。

 

总之,新的目标检测模型在不经过预训练的情况下,利用新的目标检测模型的视觉特征,已经导致了性能的提高。在预培训期间使用这些视觉功能可以在所有七个VL任务中实现最先进的技术,而无需设计专门的模块或使用集成模型。

 

参考文献:

 

[1]VinVL:重访视觉语言模型中的视觉表示。https://arxiv.org/abs/2101.00529 https://arxiv.org/abs/2101.00529

 

[2]视觉基因组https://visualgenome.org/ https://visualgenome.org/

 

[3]OSCAR:视觉语言任务https://arxiv.org/abs/2004.06165的对象语义对齐预训练 https://arxiv.org/abs/2004.06165

 

Be First to Comment

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注