CVPR2021 Oral《Seeing Out of the Box》北科大&中山大学&微软提出端到端视觉语言表征预训练方法

详细信息如下:
  • 论文链接:https://openaccess.thecvf.com/content/CVPR2021/html/Huang_Seeing_Out_of_the_Box_End-to-End_Pre-Training_for_Vision-Language_Representation_CVPR_2021_paper.html

  • 项目链接:https://github.com/researchmm/soho

导言:
目前视觉语言跨模态预训练方法,大多都是提取图片中显著region,然后将region与语言模态的单词进行对齐,通过这样的方式达到预训练的效果。然而,基于region的视觉特征通常代表图像的部分信息,因此现有的视觉语言模型很难完全理解成对自然语言的语义。
本文作者研究了卷积神经网络(CNN)和视觉语言预训练(vision-language pre-training,VLPT)Transformer的联合学习,目的是从数以百万计的图像-文本对中学习跨模态对齐。基于这个思想,作者提出SOHO“See Out of tHe bOx”,以整体图像作为输入,以端到端方式学习视觉语言表征。SOHO不需要边界框标注,这使得推理速度比基于区域的方法快10倍。SOHO通过视觉字典(visual dictionary,VD)提取全面而紧凑的图像特征。
最终,作者按照标准的VLPT设置,在四个视觉语言任务上进行实验。在MSCOCO text retrieval 5k test split上达到了2.0% R@1的绝对性能提升;在NLVR2 test-P split达到了1.5%的绝对性能提升;在SNLI-VE test split上达到了 6.7%的绝对性能提升。

      01      

Motivation
随着Transformer和自监督学习的成功,最近出现了大量关于跨模式学习的研究工作,特别是视觉语言预训练(VLPT)。VLPT模型通过学习大规模的图像-文本对,学习更好的跨模态表示。这个跨模态表示,可以被用到各种多模态的下游任务中。最近的VLPT工作大多是基于region特征,这些特征是由在Visual Genome数据集上预先训练的目标探测器提取的。
然而,直接使用目标检测器提取的region特征会有三个问题 :
  • 首先,region特征关注的是框内的对象,而忽略了框外的上下文信息 ,这些上下文信息对于理解和推理关系非常重要的。(如下图所示,我们可以很容易地在图像中发现“男人”、“女人”和“船”。然而,如果没有这些框外的上下文信息,模型将误解这种关系为“人划船”,导致模型在文本检索或VQA任务中给出错误的答案。)
  • 第二,对图像的视觉信息理解将会被局限在目标检测器预定义的区域类别 。

  • 第三,大部分region特征是通过检测模型提取的,存在质量低、噪声大、过采样 等问题,依赖于大规模的box标注数据 。

除了解决上述的问题,也有一些工作提出了采用弱监督的目标检测、或者采用grid特征,但是这样方法存在性能不高、只针对单个任务设计等问题。
为了克服基于区域的图像特征的局限性,更好地利用图像-文本对进行跨模态理解,作者提出了SOHO,一个端到端视觉语言预训练框架,可以直接从图像-文本对学习图像embedding、语言embedding及其语义对齐。
与现有的VLPT模型相比,SOHO采用了一个简单的pipeline,不需要复杂的视觉backbone进行预训练。相比于现有的基于region特征的方法,SOHO不需要标注类别或框,可以通过更广泛的图像-文本数据直接优化视觉表示来丰富视觉语义。
另外,作者在本文中提出,像素级的视觉表示比语言embedding更加多样化和密集。而缺乏对像素级语言的监督,增加了视觉语言对齐的难度。因此,为了解决上述问题,作者引入了一种视觉词典(VD),在视觉领域中表达了更全面、更紧凑的语义。
在预训练过程中,作者采用了 Masked Vision Modeling (MVM) ,Masked Language Modeling(MLM),Image-Text Matching (ITM)三个任务来优化模型。

      02      

方法

SOHO的框架图如上图所示,SOHO包括一个CNN-based的视觉encoder、视觉字典VD模块、多层的Transformer。
CNN用于提取视觉特征,VD模块利用视觉字典将不同的视觉语义信息 (这里指的是visual feature)聚合成视觉token (这里指的是比较高的视觉语义信息)。(个人觉得这里应该是做了一个压缩特征表示的工作,因为图像的特征通常是非常细粒度的,即使两张非常相似的图片,他们的视觉特征也差别很大。
因此作者就将这些视觉特征进行了分类,属于每一个类的视觉特征,用这个类的聚类中心来表示就可以了,这样就可以大大降低视觉特征的多样性,形成高级的视觉特征 )预训练的时候,作者采用MVM,MLM和ITM三个任务进行预训练,然后通过finetune可以被迁移到Image-Text Retrieval, VQA, NLVR,Visual Entailment等下游任务。

2.1. Trainable Visual Encoder

目前大多数视觉语言的研究都基于BUTD Attention用提取region特征(用的是在Visual Genome 数据集上预训练的Faster R-CNN模型)。这些提取的region特征将受限于预定义的对象和属性类别(即1600个对象和400个属性)的限制)。
为了保留所有的视觉信息,作者提出使用一个可训练的CNN视觉编码器,以整个图像作为输入,产生图像级的视觉特征而不是区域级的特征。由于不受bounding box的限制,视觉编码器可以从预训练的损失函数或下游特定任务的损失函数中进行端到端更新,进而进一步优化跨模态学习。
给定一张图片,提取视觉特征的过程可以表示为:
其中E就是一个ResNet-based网络。

2.2. Visual Dictionary

视觉特征编码器提取的视觉特征V比语言单词符号更加多样化和密集,这将给跨模态理解的学习带来困难。为了弥补其表征与语言token之间的差距,作者提出了一种视觉字典(VD),通过将相似的视觉语义聚合到相同的图像特征中来标记视觉特征。

Visual Dictionary Embedding

这里的视觉词典VD其实就是一个矩阵。对于视觉特征,作者通过在D中搜索最近邻来计算其映射索引,记为:
因此,我们就可以定义为一个映射函数f,它通过以下方式映射到 D:
它使用最近embedding向量来表示视觉特征。
我们将表示为一个逆映射函数,它将索引j映射回一组视觉特征。用表示逆映射组大小,使用表示编码特征。

Momentum Learning for Visual Dictionary Update

视觉字典D被随机初始化,并通过一个mini-batch中的移动平均操作进一步更新,表示为:
这个公式的大致意思就是,下标为j的视觉字典embedding为mini-batch中的视觉特征的平均值,然后在保留一部分()原来的视觉字典embedding )。

Gradient Back Propagation

由于argmin操作(在Visual Dictionary Embedding中用到了)是不可微的,梯度反向传播将被视觉字典停止。为了使视觉特征编码器可训练,作者采用了[1]的方法更新:
其中sg[·]为停止梯度运算符。
视觉词典基于特征相似度对视觉特征图进行在线聚类,并以其聚类中心表示每个特征向量。将具有相似语义的特征向量聚合到同一个聚类中,聚类索引可视为虚拟视觉语义标签。由于聚类会受到视觉语言学习任务的影响,每个embedding向量学习到的语义更适合于跨模态理解和对齐。(简单的说就是聚类之后的特征更适合多模态任务的学习,因为视觉特征被聚类了,同一类的特征具有相似的语义信息,降低了学习的难度 )。
视觉字典面临冷启动问题,将随机初始化字典向量的梯度直接复制到视觉特征图中,会导致模型优化方向错误。因此,作者将前10个epoch的ResNet参数冻结了。

2.3. Pre-training Pipeline

Pre-training Pipeline如上图g所示,为了学习视觉和语言相关任务的通用表示,作者采用自监督方法,用了大量图像文本数据集对模型进行预训练。训练任务除了现有工作提出的MLM和ITM,作者还提出了一种基于视觉词典生成的虚拟视觉语义标签的Masked Visual Modeling (MVM)预训练任务。

Masked Language Modeling

Mask Language Modeling(MLM)鼓励模型构建语言标记和可视化内容之间的映射。MLM的目标是根据其他词token和所有图像特征f(V),通过最小化负对数似然来预测mask的词token:

Masked Visual Modeling

作者提出了基于视觉字典的Masked Visual Modeling(MVM),在将图像特征输入Transformer之前,随机Mask它们。MVM的学习目标记为:
MVM的目标是根据周围图像的特征和所有的语言token,通过最小化负对数似然,预测被mask图像的特征。

Image-Text Matching

为了增强跨模态匹配,作者采用图像文本匹配(ITM)任务进行预训练。作者在[CLS]标记上应用二值分类器φ(·)来预测输入图像和文本是否匹配。ITM任务由以下损失函数驱动:
最终,SOHO的完整的训练前目标是:

2.4. Pre-training Datasets

预训练和下游任务的数据集如下表所示:

      03      

实验

3.1. 下游任务和结果

3.1.1. Task I: Image-Text Retrieval

上表为COCO和Flickr30K数据集上Image-Text Retrieval的结果。
性能的提升表明,SOHO通过端到端预训练体系结构更好地学习图像-文本嵌入,并利用所视觉字典生成全面而紧凑的视觉语义。

3.1.2. Task II: Visual Question Answering

SOHO在VQA上的良好结果表明,端到端预训练方法可以实现对视觉内容的智能问答。

3.1.3. Task III: Visual Reasoning

上表的结果验证了SOHO在应用于组合视觉推理任务时也具有优势。

3.1.4. Task IV: Visual Entailment

结果表明了端到端框架的优势,促进全面的视觉语言对齐。

3.2. Ablation Study

我们观察到,对于大多数任务,在1024到8192的四个大小中,VD大小2048或4096的效果最好。这是合理的,因为VD的设计目的是将类似的视觉语义聚合到相同的图像特征中。有了这样的设计,更大的VD可以学会分组更细粒度和完整的视觉语义,这有利于VL对齐的预期。但是,过于细粒度的视觉语义被划分到不同的图像特征中,从而不利于VL对齐。
与没有VD的baseline相比,VD方法在一定范围(即1024、2048和4096)的几乎所有指标下都有更好的性能。它验证了VD的有效性,并表明VD一般适用于广泛的任务。

3.3. Visualization of Visual Dictionary

为了查看VD学习的内容,作者在上图中可视化了一些具有代表性的VD索引。左图、右图分别以一致的视觉模式反映“头”和“建筑”的语义,上图显示了所学习的VD的强大能力。

      04      

总结
本文为视觉语言模型设计提供了一个新的思路。作者提出了SOHO,这是第一个端到端的视觉-语言预训练模型之一,它学习全面而紧凑的视觉表征以实现跨模态理解。为了生成可以与语言token融合的视觉特征,作者提出了视觉字典VD来将图像转换为具体的语义。
作者采用了三个预训练任务来建立图像和语言之间的联系。在四个下游任务上的performance表明,SOHO模型优于基于区域图像特征的预训练模型。此外,SOHO减轻了对边框标注的要求,减少了人工标注成本。这个端到端框架还将视觉语言任务的推理速度提高10倍,这使得更多的在线视觉语言应用程序成为可能。
[1]. Aaron V an Den Oord, Oriol Vinyals, et al. Neural discrete representation learning. In NeurIPS, pages 6306–6315,2017.

备注:CV

计算机视觉交流群

视觉表征、目标检测、人体姿态估计、手势识别等更多新鲜资讯,若已为CV君其他账号好友请直接私信。

在看,让更多人看到

(0)

相关推荐