Oscar: Object-Semantics Aligned Pre-training for Vision-Language Tasks 解析+总结

paper: 2004.06165.pdf (arxiv.org)

code:  microsoft/Oscar: Oscar and VinVL (github.com)

多模态学习初入门

最近,视觉和语言预训练(Vision-Language Pretraining, 简称VLP)在解决多模态学习方面已显示出巨大的进步。这类方法最有代表性地通常包括如下两步:

预训练:是以自监督的方式在海量 "图像-文本"数据(Image-Text Pair,或者叫做“图文对”)上训练大型的基于Transformer的模型(例如根据上下文预测被掩盖掉的语言或者图像的元素)

微调:可以对预训练模型的跨模态表示进行微调,以适应各种下游视觉和语言任务

摘要

关键问题:现有的VLP方法只是将图像区域特征和文本特征连接起来作为模型的输入以进行预训练,并不为模型提供任何线索,希望模型能利用Transformer的自我注意机制,使用蛮力来学习图像文本语义对齐方式。

解决方法:一种新的多模态预训练方法Oscar,它使用在图像中检测到的物体标签作为锚点,从而显著简化了路线的学习。在650万个文本-图像对的公共语料库上预先训练了Oscar模型,并在下游任务上对其进行了微调,从而在六种完善的视觉语言理解和生成任务上创建了最新的技术。

关键字: 对象语义,视觉和语言,预训练

1 Introduction

VLP:可从大量图像-文本对中学习有效学习通用表示形式,并对VLP模型针对特定任务进行微调实现SOTA。

Oscar: Object-Semantics Aligned Pre-training for Vision-Language Tasks 解析+总结

通过使用诸如Faster R-CNN之类的预训练物体检测器 (object detector),可以将图像表示为一组视觉区域特征,每个视觉区域特征都与一个物体标签关联。因此,可以使用诸如BERT的预训练语言模型将句子表示为一系列单词嵌入。重要的是,在Oscar中,我们使用来自预先训练的BERT的对应词嵌入来构造物体标签的表示。

Oscar: Object-Semantics Aligned Pre-training for Vision-Language Tasks 解析+总结

相关工作

视觉语言预训练 针对现有的V+L问题(视觉问答,图文检索和图像描述),采用类似BERT的目标学习来自语言标记嵌入和视觉区域特征拼接好的序列的跨模态表示。他们在很大程度上依靠Transformer的自我注意机制来学习联合表征,这些表征在两种模式下都有适当的上下文。例如,早期的努力,如[22,38]提出了一个基于two-stream and three-stream Transformer的框架,分别用co-attention来融合这两种模式。Chen等人[5]对不同的预训练目标对所学通用表征的影响进行了全面研究。Zhou等人[46]提出了第一个统一的模型来处理理解和生成任务,只使用VQA和图像字幕作为下游任务。本文将Oscar模型应用于更广泛的下游任务,包括理解和生成任务,并在大多数任务中实现了新的SoTA。与现有的 VLP方法相比,所提出的Oscar最突出的区别是使用了 对象标签来对齐两种模式中的元素。它缓解了VLP模型必须从头开始计算跨模态语义对齐的挑战,从而提高了学习效率。事实上,我们的基础模型已经在大多数V+L任务上已经超过了现有的大型VLP模型。

物体标签 Anderson等人[2]引入了自下而上的机制,通过Faster R-CNN[28]将图像表示为一组视觉区域,每个区域都有一个相关的特征向量。它使得注意力可以在物体层面上被计算出来并迅速成为细粒度图像理解任务的事实上的标准。在本文中,我们建议使用对象标签来调整[2]中的对象-区域特征。[2]中的对象-区域特征在预先训练好的语义空间中对齐。利用对象标签的想法已经被探索用于图像理解[42,43,46]。Wu等人[42]基于CNN的网格区域特征,采用预测的物体标签作为LSTM的输入,而You等人[43]同时考虑标签和区域特征。则同时考虑标签和区域特征。基于由物体检测器提出的突出区域。Zhou等人[46]基于物体检测器提出的突出区域,将物体预测概率向量与区域特征连接起来,作为视觉上的输入。遗憾的是,这些工作中的标签并没有同时与物体区域和文本的词嵌入,导致缺乏基础。我们构建的物体标签与其相应的区域特征和词嵌入产生了更加完整和翔实的对象表征,特别是当语言实体嵌入是预先训练过的,如下所述。

多模态嵌入 已有研究表明,V+L任务可以从共享的嵌入空间中获益,以调整图像和文本之间的模式间对应关系。Socher等人[33]的早期尝试是利用核化的冠状相关将单词和图像区域投射到一个共同的空间,使用核化的典型相关分析,并在注释和分割方面取得了良好的效果。类似的想法被用于图像说明[14]和基于文本的图像检索[29]。特别是,开创性的工作DeViSE[8]提出了使用从无序的语义信息中收集的视觉对象,从未经注释的文本中收集的语义信息来识别视觉对象。这种语义信息被用来预测在训练期间没有观察到的图像标签,并在成千上万个从未见过的新标签中极大地改善了零点预测。视觉模型从未见过的新标签。这个想法已经被 观点在[34,15,25]中得到了扩展,表明利用预先训练好的语言学知识 对于调整语义和提高跨模式转移学习的样本效率非常有效。在这一研究思路的启发下,我们重新审视了这一想法并 建议在神经语言模型预训练的时代,利用从学习到的词嵌入中获得神经语言模型预训练时代的丰富语义。事实上,我们对novel objects的结果表明,Oscar有助于提高预训练模型的可扩展性和通用性。

Oscar训练方式

Oscar: Object-Semantics Aligned Pre-training for Vision-Language Tasks 解析+总结

 

Oscar输入数据:将图文对表示为三元组(橙色单词序列,蓝色物体标签,绿色图片区域特征)。Oscar提出用物体来堆砌跨域语义;删除物体的话,Oscar退化为以前的预训练方法。此三元组可以从两个角度理解:模态视角和字典视角

  • 输入表示。将每个(图像-文本)样本定义为一个三元组(单词序列,物体标签,区域特征)。

  • 预训练目标。根据三元组中三个项目的分组方式,我们从两个不同的角度查看输入:模态视角和字典视角。每一种视角都允许我们设计一个新颖的预训练目标:1)字典视图的掩盖码恢复损失,它衡量模型根据上下文恢复丢失元素(单词或对象标签)的能力; 2)模态视角的对比损失,它衡量模型区分原始三元组及其“污染”版本(即原始物体标签被随机采样的标签替换)的能力。

在六个任务上进行微调和评估:

整体预训练+微调的流程:  Oscar以三元组作为输入,以两个损失函数为目标进行预训练(在单词和标签上掩盖恢复损失,以及在标签和其他标签之间的对比损失),然后对其进行微调以实现五个理解和两个生成任务。

Oscar: Object-Semantics Aligned Pre-training for Vision-Language Tasks 解析+总结

实验效果

为了考虑参数的利用效率,我们在下表中比较了不同大小的模型。Oscar在六项任务上均达到了最新水平。在大多数任务上,我们的基本款模型 (base model)要优于以前的大型模型(large model),通常情况下会大大提高。它表明Oscar具有很高的参数利用效率,我们认为部分原因是物体的使用大大简化了图像和文本之间语义对齐的学习。在这里,VLP基线方法是从UNITERVilBERTLXMERTVLPVL-BERTUnicoder-VL, 和 12-in-1收集的。请注意,Oscar接受了650万对的预训练,这比UNITER的918万对和IXME的960万对都少,这也说明了Oscar的数据利用率很高。

Oscar: Object-Semantics Aligned Pre-training for Vision-Language Tasks 解析+总结

 Oscar: Object-Semantics Aligned Pre-training for Vision-Language Tasks 解析+总结

结论

在本文中,我们提出了一个新的预训练方法Oscar,该方法使用对象标签作为锚点,将图像和语言模式统一在一个共享语义空间。我们在一个有650万个文本-图像对的公共语料库上进行预训练来验证该模式。这些预训练的模型在六项既定的V+L理解和生成任务上归档了新的先进技术。

上一篇:【转载】 vscode如何在最新版本中配置c/c++语言环境中的launch.json和tasks.json?


下一篇:.Net 多线程,异步且控制并发数量