关注公众号,发现CV技术之美

 写在前面

基于大规模图文对的视觉-语言预训练(VLP)已经让许多跨模态的下游任务取得了巨大的性能提升。现有的大多数预训练方法主要采用两步 训练过程,即首先使用预训练的目标检测器提取基于区域的视觉特征,然后将图像表示和文本嵌入串联起来作为Transformer的输入进行训练

然而,这些方法面临着使用基于目标检测任务的视觉表示泛化能力弱、以及二阶段pipeline计算效率低下的问题。

在本文中,作者提出了第一个用于V+L理解和生成的端到端视觉语言预训练模型(E2E-VLP),在该模型中,作者建立了一个统一的Transformer框架,用于联合学习视觉表示和图像与文本之间的语义对齐。

通过统一的Transformer编码器-解码器架构将目标检测(Object Detection)图像字幕(Image Captioning) 处理任务整合到预训练中,以增强视觉学习。为了证明这一新的视觉语言范式的有效性,作者在大量的视觉语言下游任务上进行了一系列广泛的实验。

 1. 论文和代码地址

E2E-VLP: End-to-End Vision-Language Pre-training Enhanced by Visual Learning

论文地址:https://arxiv.org/abs/2106.01804

代码地址:未开源

 2. Motivation

自监督的预训练在自然语言理解和生成任务上都取得了很大的成功。目前的工作也开始在视觉和语言任务上,基于大量图文对进行自监督预训练,并在各种下游任务上进行微调,从而达到SOTA的性能。

现有的主流VLP模型大多采用两步的训练方法,首先使用预训练的目标检测模型提取语义视觉特征,然后将视觉特征和文本嵌入作为Transformer的输入进行跨模态预训练。尽管大规模图文对预训练带来了不错的性能,但两阶段解决方案存在以下缺点:

1)第一步中的目标检测模型在特定视觉数据集上训练,并且在第二步中视觉表示没有针对更一般的跨模态理解进行优化。当目标检测模型无法识别某些重要信息时,可能会遇到错误。(即,目标检测的知识受限,导致了整个预训练模型的性能上限

2)使用目标检测模型提取区域特征非常耗时,以至于大多数SOTA模型都是在缓存的视觉特征上直接训练和评估的。这种做法不仅对模型设计施加了不必要的约束,而且在预测阶段还面临着运行低效的问题。(即,目标检测阶段非常耗时,给模型带来了额外的约束

最近,一些研究也已经开始重新审视grid特征来进行跨模态理解,并发现grid特征也可以表现的很好,同时使模型设计和训练过程变得更加简单。但是目标检测提取的对象级特征对于VLP模型来说确实也是非常重要的。

因此,在本文中,作者提出了一种端到端的像素级视觉语言预训练范式,即E2E-VLP,通过细粒度的视觉学习来增强跨模态交互。在预训练过程中,E2E-VLP基于统一的Transformer编码器-解码器结构,直接从图像像素学习视觉区域特征和跨模态表示。

除了掩蔽语言建模(Masked Language Modeling,MLM)图文匹配(Image-Text Matching,ITM) 等典型的预训练任务外,作者还通过细粒度的视觉语义学习来增强视觉语言预训练。具体地说,包括两个端到端的预训练任务:

1) 目标检测 :受DETR模型的启发,作者将目标检测视为一个集合预测问题。通过联合学习跨模态Transformer编码器和图像编码器来融合像素中的跨模态数据,而解码器通过预测目标和ground truth目标的二部匹配来捕捉细粒度的视觉信息;

2) 图像字幕 :为了更好地理解图像内部的语义,作者还使用了成对的文本来指导图像特征的学习。作者使用编码器网络来表示图像,并使用解码器从左到右来生成字幕文本。

这两个任务可以帮助学习高质量的视觉表征,检测任务可以学习对象级的视觉语义,而图像字幕任务可以捕获文本对齐的视觉语义。这两种视觉语义在VLP跨模态融合中具有重要意义。在微调过程中,E2E-VLP可以灵活地应用于基于编码器模块的视觉语言理解任务基于编码器-解码器模块的视觉语言生成任务

作者在多个的视觉语言任务上对E2E-VLP进行了评估,包括VQA、自然语言视觉推理、跨模态检索和图像字幕。使用端到端预训练范式,本文的模型可以在不同的V+L任务上获得不错的性能,并且使用一阶段解决方案可以大大减少推理时间。

 3. 方法

3.1 Model Architecture

E2E-VLP的结构如上图所示,作者提出了Transformer编码器-解码器框架进行跨模态学习,并使用简单的CNN主干网络作为图像编码器,用于从像素中提取视觉表示。整个模型以端到端的方式联合训练,以便同时学习通用的视觉表示和跨模态对齐。此外,作者设计了不同的V+L预训练任务,进一步提高了跨通道的理解和生成能力。

3.1.1 Input Representations

Sentence Embeddings

每个句子首先由WordPiess tokenizer拆分成一个子词序列。然后,类似于BERT,每个被分配三种类型的嵌入:token、segment和position embeddings。对这三个嵌入进行求和并进行层归一化,来将输入语句表示为嵌入向量的序列 ,其中[CLS]和[SEP]是BERT中的特殊token。

Image Representations

在图像特征表示方面,大多数现有的VLP模型遵循自下而上和自上而下的注意(Bottom-Up and Top-Down Attention),通过在Visual Genome数据集上训练Faster R-CNN来提取区域特征。

该检测器通过检测预定义类别下的区域来提取区域特征,然后使用最终分类器之前的特征作为输出。这种方式视觉特征受限于特定数据集的目标检测模型,从而会影响预训练模型的泛化能力。

为了提高图像表示的泛化能力,作者提出了一种新的图像表示方法,用CNN主干网络来从图片中提取低分辨率的特征图。然后在使用一个1x1的卷积将通道维度降低,得到新的特征图。

由于Transformer编码器需要输入一个一维的序列,因此还需要把特征图在空间维度上进行flatten得到。由于Transformer编码器对位置信息不敏感,因此作者还加入了位置信息,得到最终的图像表示。

3.1.2 Cross-modal Encoder Pre-training

给定句子嵌入和序列图像表示,作者采用Transformer编码器来学习图像grid特征和语言token之间的跨模态注意。为了实现细粒度的特征级语义融合,作者将描述的图像特征和文本嵌入直接concat起来构成输入序列,其表达式为:。

用于视觉表征学习的CNN主干网络和用于跨模态语义融合的Transformer被组合成一个可端到端训练的单一模型。这样,学习到的视觉特征表征更适合于一般跨模态理解的预训练任务。为了促进跨模态理解,作者在编码器端进行了两个常用的预训练任务,包括掩蔽语言建模(MLM)和图文匹配(ITM)。

Masked Language Modeling

任务设置与BERT基本相同,即,随机mask文本中15%的token,并要求模型根据输出文本和视觉表示预测这些mask的单词。与BERT中的MLM任务仅依赖文本模态周围的文本进行预测不同,本文中的MLM任务还将借助视觉模态的图像特征映射对被mask的词进行预测,以解决歧义问题。

Image-Text Matching

随机采样50%不匹配的图文对和50%匹配的对,并基于encoder最后一层的[CLS] token,来训练分类器进行预测图像和句子是否相互匹配。

3.1.3 Visual-enhanced Decoder

由于CNN特征图没有对象级语义,很难将CNN特征图与语言嵌入之间的跨模态语义直接对齐。因此,作者进一步增加了Transformer解码器来帮助捕捉视觉特征的细粒度语义,其中结合了目标检测图像字幕生成 两个具体的预训练任务。

解码器采用Transformer的标准结构,具有多头自注意力、交叉注意力和前馈网络(FFN)。两个任务共享相同的解码器注意参数,但使用不同的head。目标检测任务更侧重于理解图像中细粒度的目标信息 ,而图像字幕任务则有助于指导关于文本语义的视觉特征的学习

Enhanced by Object Detection

基于DETR,作者将目标检测定义为集合预测问题,并使用基于集合的全局损失,通过二部匹配强制进行唯一的预测。设代表ground-truth,代表预测的输出,基于集合的损失就是最小化匹配的损失,如下所示:

其中是ground truth和下标为σ的预测之间的成对匹配cost。

与最初的单模态学习DETR相比,本文的带有目标检测的跨模态预训练有两个方面的不同:在编码器端 ,本文将视觉表示和语言嵌入相结合作为输入,重用Transformer编码器进行跨模态融合。在解码器端 ,模型将可学习的位置嵌入作为多个L个Transformer解码器层的输入,在每个解码器层并行检测N个对象。

除了检测框坐标回归和类别预测任务外,作者还加入了Visual Genome数据集的对象属性预测任务,以增强细粒度语义的学习。最终,利用属性、类别预测的负对数似然损失和检测框回归损失来训练该模型,如下所示:

其中,是属性和类别的输出概率,归一化的检测框回归损失。

Enhanced by Image Captioning

为了指导视觉特征在文本语义方面的学习,作者使用语义密集的字幕来学习视觉表征,并使用序列到序列(Seq2Seq)图像到文本生成任务。解码器被预训练以基于来自图像编码器的上下文表示自动回归地生成目标文本。预训练的损失函数定义如下:

其中X表示视觉上下文序列,Y表示要生成的文本集,n是输出文本y中的token长度。

3.2 Joint Training

最终,作者用所有编码器和解码器的预训练任务(即掩蔽语言建模、图文匹配、目标检测、图像字幕)联合对E2E-VLP进行预训练,最小化以下四个损失函数:

 4.实验

4.1. Main Results

上表展示了不同下游任务上本文模型和其他预训练模型的性能对比,可以看出,与基于两步的方法(如OSCAR和Ernie-VIL)相比,E2E-VLP可以获得相当的性能;此外,E2E-VLP方法可以显著地改进端到端的PixelBERT模型的性能。

4.2. Importance of Visual Learning

为了进一步研究本文方法中每个预训练任务的重要性,作者进行了消融研究,以评估不同视觉学习任务对VQA和NLVR2的影响。可以看出每个任务都是非常重要的,并且当他们一起训练时能够达到更好的效果。

4.3. Architecture Selection

上表展示了不同层和不同backbone在各种下游任务上的性能对比,可以看出添加更多的Transformer编码层和使用更复杂的主干网络都有助于提高下游任务的性能。

4.4. Impact of Input Image Size

上表展示了不同输入图片大小对模型性能和速度的影响。

4.5. Object Detection with Paired Text

上表展示了检测的结果,E2E-VLP模型也支持基于文本-图像对的目标检测任务,并且性能上优于DETR。

 5. 总结

在本文中,作者提出了一种端到端的视觉语言预训练范式,用于联合学习图像和文本之间的视觉表示和语义对齐。不同于以往在两阶段pipeline中使用区域特征的方法,作者提出使用了可扩展性更强和更有效的grid特征来进行视觉语言预训练。

此外,作者进一步将目标检测和图像字幕的任务与统一的Transformer编-解码器结构结合,以增强视觉学习。在多个视觉语言下游任务上的实验,证明了E2E-VLP模型的有效性和效率。

本文的重点是去除了以前预训练模型中对目标检测器的依赖,因为目标检测器不仅降低了模型的预测速度 ,目标检测任务中预定义的类别也会成为各种多模态任务的瓶颈 ,此外,区域特征中对于区域外的上下文特征捕获能力也较差

因此作者采用了grid特征,但是采用grid特征就不能获取图像的对象级信息了,所以作者又提出了两个任务来克服这个缺点,即目标检测和图像字幕。目标检测用于捕获对象级的视觉特征,图像字幕用于将不同的对象与文本对齐,以增强跨模态表示。

▊ 作者简介

研究领域:FightingCV公众号运营者,研究方向为多模态内容理解,专注于解决视觉模态和语言模态相结合的任务,促进Vision-Language模型的实地应用。

知乎/公众号:FightingCV

END

欢迎加入「视觉语言技术交流群

扔掉目标检测器,实现真正的端到端多模态预训练!阿里提出E2E-VLP(ACL2021)...相关推荐

  1. ICLR 2023 | StrucTexTv2:端到端文档图像理解预训练框架

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 点击进入->[计算机视觉]微信技术交流群 转载自:CSIG文档图像分析与识别专委会 本文简要介绍ICL ...

  2. 端到端语音翻译中预训练和微调的衔接方法

    ST:speech translation,语音翻译 ASR:automatic speech recognition,自动语音识别 MT:machine translation,机器翻译 TCEN: ...

  3. OW-DETR | 基于 Transformer 的开放世界目标检测器

      欢迎关注我的公众号 [极智视界],获取我的更多笔记分享   大家好,我是极智视界,本文解读一下 基于 Transformer 的开放世界目标检测器 OW-DETR.   开放世界目标检测 (OWO ...

  4. CVPR2021 用更好的目标检测器提取视觉特征!微软提出VinVL,基于更好的视觉特征,达到更强的多模态性能...

    关注公众号,发现CV技术之美 0 写在前面 本文详细研究了视觉语言(VL)任务中更好的视觉表示,并开发了一种目标检测模型,来提供以对象为中心的图像表示.与最广泛使用的bottom-up and top ...

  5. CVPR 2023 | 北大提出DynamicDet:目标检测器的通用动态架构

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 点击进入->[目标检测]微信技术交流群 本文分享 CVPR 2023 论文『DynamicDet: A ...

  6. 2:VX2TEXT基于多模态输入的视频文本生成的端到端

    1.网络大致架构 原始名称为End-to-End Learning of Video-Based Text Generation From Multimodal Inputs 这个框架可以帮助我们,从 ...

  7. FOTS:端到端的文本检测与识别方法的原理应用与优势

    导言: 基于深度学习的可端到端训练的自然场景检测与识别算法(text spotting)由于其简洁高效且统一的结构,逐渐取代了过去将检测与识别分阶段训练然后拼接在一起的方案,成为自然场景文本检测与识别 ...

  8. 完全基于Transformer的目标检测器,ICLR匿名论文实现视觉、检测统一

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源丨机器之心 编辑丨极市平台 导读 一种新的集成视觉和检测 Tra ...

  9. 端到端半监督目标检测框架

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨SuperHui@知乎 来源丨https://zhuanlan ...

最新文章

  1. 商品列表选择尺寸和颜色高亮,并且把选择的数据传递到下一个页面
  2. 常用的 css 样式 记录
  3. JavaScript 数字转汉字+element时间选择器快速选择
  4. TF:tensorflow框架中常用函数介绍—tf.Variable()和tf.get_variable()用法及其区别
  5. github常见操作和常见错误!错误提示:fatal: remote origin already exists.
  6. Increasing Subsequence (easy version)
  7. 【bzoj4009】[HNOI2015]接水果 DFS序+树上倍增+整体二分+树状数组
  8. 大数据Notebook调研信息汇总(持续更新中)
  9. 您真的需要instanceof吗?
  10. java将图片传为设定编码值显示(可做刺绣)
  11. Delphi 解压缩 ZipForge
  12. 路由 命令 linux,linux路由命令
  13. Win10+VS2015下配置OpenCV3.2教程
  14. 13讲项目实战内页滚动图效果实现
  15. 【听课笔记】复旦大学遗传学_10肿瘤遗传学
  16. WebGL-Shader入门(3.着色器语言的限定词-参数限定词/存储限定词/精度限定词)
  17. 智慧书-永恒的处世经典格言:201-240
  18. vue 萤石_Vue 莹石摄像头直播视频实例代码
  19. 美国大学计算机工程专业排名,2018美国大学计算机工程专业排名_美国大学计算机工程排名...
  20. 注册流程(分离HLR/HSS)

热门文章

  1. 对比关系生成模型(Comparative Relation Generative Model)
  2. 网络数据采集技术—Java网络爬虫入门与实战 书稿纠错
  3. TensorFlow十三 LSTM练习
  4. Opencv--CalcOpticalFlowPyrLK实现的光流法理解
  5. NDK编译c包含C++头文件时,出现 error: unknown type name 'class' 的解决方法
  6. 蒙特卡罗方法—举例说明(C++、python)
  7. wx.checkjsapi 一直显示ok_Python下调用json.dumps中文显示问题及解决办法
  8. python 数学公式识别_Python实现基于KNN算法的笔迹识别功能详解
  9. 360安全浏览器兼容模式怎么设置_360浏览器及安全卫士怎么减少广告弹出?
  10. linux没有pigz指令,Linux命令手册