导读
为了解决这个问题,我们引入了通用的图像-文本表示(UNITER),这是一种大规模的多模态嵌入的预训练模型。我们采用Transformer作为我们模型的核心,利用其简洁的自我注意力机制,设计学习协同文本的表示。受BERT 的启发,通过大规模的语言建模成功地将Transformer应用于NLP任务,我们通过三个预处理任务对UNITER进行预处理:(i)基于图像的掩码语言建模(MLM);(ii)基于文本的掩码区域建模(MRM);(三)图像文本联合匹配(ITM)。为了进一步研究MRM的有效性,我们提出了三种MRM变体:(i)掩码区域分类(MRC);(ii)掩码区域特征回归(MRFR);(iii)用KL散度(MRC-KL)掩码区域分类。
如图1所示,UNITER首先通过图像嵌入器和文本嵌入器分别编码图像区域(视觉特征和边界框特征)和文本单词(令牌和位置)到一个共同的嵌入空间,然后应用Transformer模块通过上述的预训练任务,学习每个区域和单词的可概括的上下文化嵌入。与LXMERT和ViLBERT使用双流(每种模式一个Transformer)相比,我们的UNITER模型可以通过单个Transformer学习图像区域和文本单词的联合上下文的表示。此外,我们的掩码语言/区域建模整个的图像/文本基础上的,不同于其他同时对两种模式应用联合随机掩码的预训练模型。结果表明,条件掩码策略可以有效地消除图像与文本之间的失配,并为后续任务提供更好的联合嵌入。详细的消融研究也表明,MLM+ITM+MRC-kl+MRFR组合预训练的效果最好。
为了证明UNITER的能力,我们评估了9个数据集上的6个V+L任务,包括:(i) VQA;(ii)视觉常识推理(VCR);(iii)NLVR 2;(iv)视觉含义;(v)图文检索(含零样本设置);(vi)引用表达理解。我们的UNITER模型是在一个由四个子集组成的大型V+L数据集上训练的:(i) COCO;(ii)视觉基因组(VG);(iii)概念说明(CC);及(iv) SBU说明。实验表明,UNITER在所有6个下游任务中都取得了显著的性能提升,达到了新的技术水平。此外,对附加的CC和SBU数据(包含下游任务中不可见的图像/文本)的训练后能进一步提高了模型的性能,而不是只在COCO和VG上进行训练。
我们的贡献总结如下:(i)我们引入了UNITER,一种强大的通用图像-文本表示,用于视觉和语言任务。(ii)我们在多个V+L基准上实现了新的技术水平(SOTA),大大超过了现有的SOTA和同时进行的多模态预训练的方法。(iii)我们提供了大量的实验和分析,为多模态编码训练的每个预训练任务/数据集的有效性提供有用的见解。
自监督学习利用原始数据作为自己的监督来源,已经应用于许多计算机视觉任务,如图像着色,拼图游戏破解、图片修复、旋转预测和相对位置预测。最近,如ELMo、BERT、GPT2 和XLNet在NLP任务方面显示出了巨大的进步。他们的成功有两个关键:通过大型语言语料库进行有效的训练前任务,使用Transformer 学习上下文的文本表示。
最近,有一些关于多模态任务的自监督学习的工作,通过对大量的图像/视频和文本对进行预训练,然后对下游任务进行调优。例如,VideoBERT应用BERT从视频文本对中学习基于量化的视频帧特征和语言标记的双向联合分布。ViLBERT和LXMERT介绍了双流架构,其中两个Transformer分别应用于图像和文本,将由后期的第三个Transformer进行融合。另一方面,VisualBERT、Unicoder-VL 、VL-BERT和B2T2 提出了单流架构,其中一个Transformer应用于图像和文本。具体来说,LXMERT模型与下游任务一起预训练,如VQA 和GQA,而其他模型仅在图像-文本对上预训练。我们的UNITER模型属于第二类。UNITER和其他方法的一个关键区别就是预训练任务的掩码方法。而不是选择随机掩码图像区域和句子中的单词,我们使用的是条件掩码,即只掩码其中的一种模式,而保持另一种不受污染。此外,我们通过深入研究每个预训练任务和数据集对下游任务的影响,来研究预训练任务的最佳组合。
UNITER的模型架构如图1所示。给定一对图像和句子,UNITER将图像的视觉区域和句子的文本标记作为输入。我们设计了一个图像嵌入器和一个文本嵌入器来提取它们各自的嵌入。然后,将这些嵌入信息输入到一个多层自我注意力机制的Transformer中,以了解视觉区域和文本标记之间的交叉模式上下文的嵌入。其中由于Transformer中的自我注意力机制是无序的,因此有必要明确地将标记/区域的位置编码作为为附加的输入。
具体来说,在图像嵌入器中,我们首先使用 Faster R-CNN 来提取每个区域的视觉特征(池化ROI特征)。我们还通过一个7维向量对每个区域的位置特征进行编码。然后,视觉特征和位置特征都输入到一个全连接(FC)层,映射到相同的嵌入空间。每个区域的最后的视觉嵌入是将两个FC输出相加,然后再通过一个归一化(LN)层得到的。对于文本嵌入器,我们按照BERT并将输入的句子拆分标记为 WordPieces。每个子单词标记的最终表示是通过单词嵌入和位置嵌入相加,然后再通过另一个LN层得到的。
我们介绍了三个主要的预训练我们的模型的任务:基于图像区域的掩码语言建模(MLM)、基于输入文本(有三个变体)的掩码区域建模(MRM)、基于文本文本匹配(ITM)。正如图1所示, 我们MRM和MLM和BERT类似,我们从输入中随机掩码一些单词或区域,并学习将这些单词或区域恢复作为Transformer的输出。具体来说,通过用一个特殊的标记[MASK]替换标记来实现单词掩码,通过用所有的0替换视觉特征向量来实现区域掩码。请注意,每次我们只掩码其中的一种模式,而保持其他模式不变,而不是随机掩码两种模式,如ViLBERT和LXMERT。当掩码区域碰巧由掩码的单词描述时,这可以防止潜在的错误对齐。根据经验,我们证明使用条件掩码,我们的模型能够更好地学习嵌入。最后,我们还通过ITM学习了整个图像和句子之间的实例级对齐(而不是标记/区域级)。在训练过程中,我们对正样本和负样本的图像-句子对进行抽样,并学习它们的匹配分数。
掩码语言模型 (MLM) 我们将图像区域表示为v = {v_1,…, v_k},将输入单词表示为w = {w_1,…,w_T},掩码指数为m属于 N_M。在MLM中,我们随机掩码输入中15%的单词,用特殊的标记[MASK]代替w_m。目标是通过观察掩码单词的周围的单词w_\m和整个图像区域v,通过最小化负对数似然来预测这些掩码单词:
其中theta是训练参数,每一对(w,v)都是从整个训练集D抽样得到的。
图像-文本匹配( ITM) 在ITM中,一个附加的特殊标记[CLS]要输入到我们的模型中,它表明了两种模式的融合表示。我们在[CLS]的Transformer输出上应用FC层,记录输入图像和文本之间的匹配程度。得分函数表示为sθ(w, v)。在训练过程中,我们在每一步都从数据集D中抽取一个正样本对或负样本对(w,v)作为样本。负样本对是通过将成对样本中的图像或文本替换为从其他样本中随机选择的一个来创建的。我们将标签表示为:y属于{0,1},表示采样对是否匹配。然后利用二元交叉熵损失进行优化:
掩码区域建模(MRM)与MLM类似,我们也对图像区域进行采样,并以15%的概率掩码其视觉特征。该模型经过训练,在给定剩余区域v_ \m和所有单词w的情况下,重构掩码区域v_m。与用离散标签表示的文本标记不同,视觉特征是高维且连续的,因此不能通过类别概率进行监督。相反,我们提出了掩码区域建模的三种变体,它们共享相同的基本目标函数:
1)掩码区域特征回归(MRFR) MRFR学习将每个掩码区域v (i) m的Transformer输出回归到其视觉特征。具体来说,我们应用一个FC层将其Transformer输出转换为一个向量hθ(v (i) m)的相同维度作为输入ROI池特性(v (i) m)。然后我们在两者之间应用L2回归:
2)掩码区域分类(MRC) MRC学习预测每个掩码区域的对象语义类。我们首先把Transformer输出掩码地区v (i) m输入一个FC层去预测K个对象类别,然后进一步通过softmax函数转化为标准化分布。注意,这里不存在真值标签,因为没有提供对象类别。因此,我们使用 Faster R- CNN的对象检测作为输出,通过检测到的对象类别(具有最高的置信度)来设置掩码区域的标签,并将其转换为一个独热向量c(v (i) m) R K。最终目标函数是使交叉熵(CE)损失最小化:
3)用KL-散度 (MRC-KL)对掩码区域进行分类,MRC将目标检测模型中最有可能的对象类作为硬标签(w.p.0或1),也可以将其软标签作为监督信号,即检测器的原始输出,即一个对象类c(v (i) m)的分布。MRC-KL的目的是通过把这些知识在UNITER进行蒸馏,然后最小化两个分布之间的KL散度:
我们基于现有的4个V+L数据集构建训练前数据集:COCO 、Visual Genome (VG) 、Conceptual Captions (CC)和SBU Captions。
为了研究不同数据集对预训练的影响,我们将四个数据集分为两类。第一种是由来自COCO图像字幕数据和来自VG密集字幕数据。我们称之为“域内”数据,正如大多数V+L任务都是建立在这两个数据集之上的。为了获得一个“公平”的数据分割,我们合并来自COCO的原始训练集和验证分割集,并去掉下游任务中出现的所有验证和测试图像。我们还排除了所有的共发生通过URL匹配的Flickr30K图像,即COCO和Flickr30K图像来自Flickr,可能有重叠。同样的规则也适用于视觉基因组。通过这种方式,我们获得了5.6M对用于训练的图像-文本对,131K对用于训练的图像-文本对内部验证,由于只对重叠图像进行过滤和使用图像-文本对,所以只有LXMERT数据集大小的一半。我们也使用附加的领域外的数据来自概念字幕和SBU字幕用于模型训练。表1提供了清洗后的拆分的统计数据。
我们评估UNITER的6个V+L任务(见表2),将预训练的模型转移到每个目标任务,并通过端到端训练进行细化。我们报告了两个模型尺寸的实验结果:12层的UNITER-base和24层的 UNITER-large。
在VQA、VCR和NLVR 2任务中,给定一个输入图像(或一对图像)和一个自然语言问题(或描述),模型根据图像中的视觉内容预测答案(或判断描述的正确性)。对于视觉含义,我们在SNLI-VE数据集上求值。目标是预测给定的图像在语义上是否包含输入语句。采用包含、中立和矛盾三个类别的分类精度来衡量模型的性能。对于图像-文本检索,我们考虑两个数据集(COCO和Flickr30K),并在两种设置下评估模型:图像检索(IR)和文本检索(TR)。引用表达式(RE)理解要求模型根据给定的查询描述从一组图像重建建议中选择目标。对目标真值和检测到的候选进行评估。
对于VQA、VCR、NLVR2、视觉嵌入和图像-文本检索,我们通过多层感知器(MLP)从[CLS]标记的表示中提取输入图像-文本对的联合嵌入。为了重新理解,我们使用MLP来计算区域对齐分数。这些MLP层是在微调阶段学习的。具体来说,我们将VQA、VCR、NLVR2、视觉含义和重新理解作为分类问题,并将基于基本事实的答案/响应的交叉熵损失最小化。对于图像-文本检索,我们把它作为一个排序问题来考虑。在调优过程中,我们对三对图像和文本进行采样,从数据集中选取一对正的图像,并通过随机地将其句子/图像替换为其他的图像来选取两对负的图像。我们计算了正样本对和负样本对的相似度评分(基于联合嵌入),并通过三对损失使它们之间的距离最大化。
我们以VQA、NLVR 2、Flickr30K和RefCOCO+作为代表性的V+L基准,通过消融研究分析不同预训练设置的有效性。除了每个基准测试的标准度量(表2中列出),我们还使用 Meta-Sum (所有基准测试的所有分数的总和)作为全局度量。
首先,我们建立了两个基线:表3中的第1行(L1)表示不涉及预训练,L2显示了使用Devlin等人(2019)的预训练权重初始化的MLM的结果。虽然在预训练MLM只训练文本没有吸收任何图像信息,我们看到了约+30 Meta-Sum超过了L1。因此,我们使用L2中预先训练好的权值来初始化我们的模型,以进行接下来的实验。
其次,我们通过一个完全的消融研究来验证每个预训练任务的有效性。比较L2和L3, MRFR (L3)只在NLVR 2上比MLM (L2)取得更好的结果。另一方面,当只接受ITM (L4)或MLM (L5)的预训练时,我们观察到L1和L2基线上所有任务的显著改善。当结合不同的预训练任务时,MLM + ITM (L6)在单一ITM (L4)或MLM (L5)的基础上进行了改进。当 MLM,ITM和MRM共同训练(L7-L10),我们在所有基准测试中都观察到一致的性能提升。在MRM (L7-L9)的三种变体中,我们观察到,当与MLM + ITM相结合时,MRC-KL (L9)表现最好(397.09),而MRC (L7)表现最差(393.97)。当结合MRC-KL和MRFR与MLM和ITM (L10)时,我们发现它们是互补的,并获得最高的Meta-Sum得分。我们将此作为进一步实验的最佳预训练设置。
此外,我们通过比较研究验证了条件掩码的贡献。当我们在预训练同时对两种模式进行随机掩码时,即在条件掩码条件下(L11),我们观察到与条件掩码条件下(399.97)相比,Meta-Sum得分(396.51)有所下降。这表明条件掩码策略启用了模型能有效地学习更好的图像-文本联合表示。
最后,我们研究了训练前数据集的效果。到目前为止,我们的实验都集中在在域数据。在这项研究中,我们在领域外数据(概念说明+SBU Captions)上预训练我们的模型。与域内数据训练的模型相比,性能下降(L12中的395.45)(COCO + Visual Genome) (L10中的399.97)表明,虽然域外数据包含更多在预训练接触到类似的下游图像,模型仍然会受益更多。我们进一步在域内和域外数据上对模型进行预训练。在两倍数据量的情况下,模型性能持续提高(L13中的402.50)。
表4给出了UNITER对所有下游任务的结果。我们的基准和大型模型都是在域内+域外数据集上进行预训练,最佳的预训练设置是:MLM+ITM+MRC-kl+MRFR。每个任务的实现细节在附录A.2中提供。我们比较了每个下游任务的特定任务模型和并行预训练模型。SOTA任务特定模型包括:用于VQA的MCAN、用于NLVR 2的MaxEnt 、用于VCR的B2T2、用于图像文本检索的SCAN、用于SNLI-VE的EVE-Image和用于RE理解的MAttNet(RefCOCO, RefCOCO+和RefCOCOg)并行预训练模型包括:LXMERT, Unicoder-VL, VisualBERT和VLBERT。
结果表明,我们的UNITER-large模型在所有基准上都达到了新的水平。除了VQA之外,UNITER-base模型在所有任务上的性能都大大优于其他模型。具体来说,我们的(UNITER-base模型在VCR上的性能比SOTA高出约2.8%Q→AR, NLVR 2 +2.5%, SNLI-VE +7%, R@1图像检索+4% (+15%)),以及+2%的RE理解。注意,LXMERT用下游VQA (+VG+GQA)数据进行预训,这可能有助于适应模型到VQA任务。然而,当评估看不见的任务,如NLVR2,UNITER-large 比LXMERT增加3%。此外,在所有的模型中,对图像-文本对进行了预处理只是我们的UNITER-base在VQA上比其他的好1.5%。
值得一提的是,VilBERT和LXMERT都观察到双流模型out-执行单流模型,而我们的结果表明,经验与我们的预训练集单流模型能够以更少的参数获得最新的结果(UNITER-base:86M,LXMERT:183M,VilBERT:221M)
对于VCR,我们提出了两阶段的预训练方法:(i)在标准的预训练数据集进行预训练;然后(ii)对下游VCR数据集进行预训练。有趣的是,VLBERT和B2T2观察到,在VCR上,预训练不是很有帮助,我们发现,第二阶段的预训练可以显著提高模型的性能,而第一阶段的训练仍然有帮助(结果如表5所示)。这表明本文提出的两阶段方法在我们的预训练模型中是非常有效的,在预训练数据集中看不到的新数据。
与其他任务不同的是,NLVR2以两幅图像作为输入。因此,直接调整机组使用图像-句子对进行预先训练可能不会产生最佳的性能,就像交互作用一样在训练前的阶段,不能学习成对的图像之间的关系。因此,我们进行了实验NLVR2的三种修改设置:(i)三重:图像对和查询标题的联合嵌入;(ii)成对:单个嵌入每个图像和每个查询标题;和(iii)配对:a在成对模型中加入双向注意力机制,学习成对图像之间的相互作用。
比较结果见表6。该对设置的性能优于三个一组,即使没有图像对之间的交叉注意力机制。我们假设这是由于事实是我们的单位是预先训练的图像-文本对。因此,很难在三重输入上对基于配对的预训练模型进行细化。然而对偶-双向注意机制设置弥补了图像之间缺乏交叉注意力的缺陷,因此获得了最佳效果业绩有较大的余量。这表明在UNITER的顶层进行最小的操作,我们的预训练模型可以适应与预训练任务非常不同的新任务。
在本文中,我们提出了一种大规模的预训练模型UNITER,它为视觉和语言任务提供了通用的图像-文本表示。通过广泛的融合研究,提出并评估了三个主要的预训练任务。经过域内和域外数据集的训练,UNITER在多个V+L任务上的性能显著并优于最先进的模型。未来的工作包括研究原始图像像素和句子标记之间的早期交互,以及开发更有效的预训练任务。
原文链接:
https://www.zhuanzhi.ai/paper/985d49f20391b09747e78b8a03c0ccca
后台回复“UNITER” 就可以获取《 UNITER: L EARNING UN IVERSAL
I MAGE -TE XT R EPRESENTATIONS》的完整版PDF下载链接~