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

本文分享论文『KD-VLP: Improving End-to-End Vision-and-Language Pretraining with Object Knowledge Distillation』,由上科大&Intel&MSRA联合提出基于知识蒸馏的端到端多模态预训练模型《KD-VLP》。

详细信息如下:

  • 论文链接:https://arxiv.org/abs/2109.10504

  • 项目链接:未开源

导言:

自监督视觉和语言预训练(VLP)旨在从大规模图文数据中学习可迁移的多模态表征,并在微调后在广泛的视觉语言任务中取得优异的表现。以往主流的VLP方法通常是依赖于两步的策略,即先通过外部目标检测器提取视觉特征,然后在多模态Transformer框架中对多模态信息进行编码,这种方法存在着目标概念空间受限、图像上下文受限和计算效率低下等问题。

本文提出了一种面向对象的端到端VLP框架,该框架直接将CNN的图像grid特征送入到Transformer,并联合学习多模态表示。此外,作者提出进行对象知识蒸馏,以便于学习不同语义层次上的跨模态对齐。为了达到这一目的,作者设计了两个新的预训练代理任务,以外部检测器的对象特征及其语义标签作为监督信息:

1)目标引导掩码视觉建模任务(Object-guided masked vision modeling task)的重点是在多模态Transformer中加强目标感知表征学习;2)短语-区域对齐任务(Phrase-region alignment task)旨在利用名词短语对象标签在语言空间中的相似性来提高跨模态对齐。

在视觉语言任务上的广泛实验,证明了本文提出的框架的有效性,并且本文的方法获得了比现有的预训练策略更好的性能。

      01      

Motivation

随着Bert的成功在语言建模中,自监督视觉和语言预训练(VLP)引起了人工智能社区的极大兴趣,其目的是从大规模图文数据中学习可概括的多模态表示。与先训练后迁移的策略相结合,VLP在处理视觉和语言推理任务方面显示出巨大的潜力,如图像-文本检索、视觉问答(VQA)等。这种表示学习中的关键步骤是联合建模语言实体和视觉语义概念(例如,属性、对象和关系)以及它们的对齐。然而,这是具有挑战性的,因为视觉和语言表示(即,像素与文字)的巨大差异,以及在监督中缺乏实体级别的跨模态对应。

为了解决这些挑战,大多数现有的方法采用两步的预训练策略,首先使用现成的检测器将图像解析成一组对象token,然后构建多层Transformer来联合学习视觉和语言嵌入。为了便于多模态学习,这些网络通过一组精心设计的类似BERT的目标函数进行预训练。尽管两步策略有很好的性能,但它有几个局限性:

  1. 有限的视觉对象概念 ,因为外部检测器是在一组预定义的对象类别上训练的;

  2. 缺乏对象区域外的上下文线索 ,这对复杂的推理任务至关重要;

  3. 阶段性训练导致的次优性能

  4. 附加检测模块导致计算效率低下

为了克服这些限制,最近的工作试图以端到端的方式学习联合的视觉-语言表征。这些方法直接从图像中提取密集的grid视觉特征作为多模态Transformer网络的输入,因此在预训练和微调阶段都不依赖于外部目标检测器。这种模型设计极大地简化了整个网络的结构,并允许视觉和语言功能之间的更深层次的集成。然而,使用grid特征使得捕获对象级视觉概念变得困难,这通常会导致多模态表示的表达能力较差,从而在下游任务中的性能较差。

在这项工作中,作者提出了一种面向对象的端到端VLP方法,该方法继承了上述两种预训练策略的优点。本文的核心思想为KD-VLP,是将视觉对象概念结合到端到端的多模态学习中,这是通过在预训练阶段执行从语义对象(来自现成的检测器)的知识提取来实现的。这使得网络能够更好地捕获对象表征,从而便于学习语言实体和视觉概念的对齐。

为了实现这一点,作者引入了两个新的预训练代理任务来执行对象知识提炼:即,获得对象感知特征嵌入的基于对象的掩码视觉建模任务(object-based masked vision modeling task),和建立对象区域和语言实例之间关系的短语-区域对齐任务(Phrase-region alignment task)

具体地说,作者采用典型的CNN主干+多模态Transformer模型进行预训练。在给定图文对的情况下,视觉CNN主干网络首先在图像上计算一组视觉特征。然后,多层Transformer将视觉特征和相应的文本token作为输入,生成它们的多模态嵌入。基于这些嵌入特征,一组特定于任务的head计算相应的目标函数,以端到端的方式训练整个网络。

在这里,除了常用的图文匹配(image-text matching)掩码语言建模(masked language modeling)任务外,作者还提出了基于对象的掩码视觉建模任务(object-based masked vision modeling task)短语-区域对齐任务(Phrase-region alignment task)

基于对象的掩码视觉建模任务(OMVM),其目的是利用周围的视觉上下文和文本描述重建每个对象(来自外部检测器)的RoI特征和语义标签。为了便于跨模态对齐,作者还开发了一种知识引导的掩码策略,该策略根据对应文本中的名词短语与其语义标签之间的相似度得分,对候选对象进行采样以进行重建。(这一步类似MVM,不同的是这里用到目标检测模型,所以mask的区域都是包含对象的区域,使得预测的效率更高;此外,除了预测区域之外,这里还需要预测出对应的语义标签)

短语-区域对齐任务(PRA)的目的是将短语-标签相似度得分与名词短语嵌入和对象区域嵌入之间的跨模态相似度得分进行匹配,以进一步提高跨模态对齐。经过预训练后,所学到的多模态表征可以转移到不同的下游视觉语言任务上。

      02      

方法

本文方法的模型结构如上图所示。

2.1 Problem Definition and Overview

自监督视觉语言处理的目标是从大量的图文数据中学习一种通用的、可迁移的视觉语言表征,从而在下游视觉语言任务中获得较强的泛化性能。设输入图文对表示为,其中代表图片,代表相应的文本。通常,预训练网络由表示网络模块θ 和一组特定于任务的网络head  θ组成,其中s表示预训练代理任务的下标。预训练目标函数如下:

其中和分别是特定于任务的ground truth标签和损失函数。在预训练之后,去除了所有预训练任务的head,并将具有学习到参数θ的表示网络θ应用于下游任务,然后进行特定任务的微调。

2.2 Model Architecture

对于给定的图文对,本文的模型首先分别计算图像嵌入和语言嵌入,然后将它们连接成一个token序列,并将两个额外的token [SEP]和[CLS]作为Transformer的输入,以生成多模态上下文嵌入。

Visual Embedding

对于每幅图像I,作者采用一个cnn主干网络来提取图像特征,其中L是特征的大小,是具有维的特征向量。此外,作者也加入了二维位置编码来获取位置信息。

Linguistic Embedding

对于语言描述D,首先使用WordPiess将它们编码成单词token ,其中是特征向量。类似地,位置编码也加入到每个单词嵌入中以捕获位置信息。

Multi-modal Transformer

在获得图像和语言嵌入后,作者将它们组装成一个token序列,,,,并采用多层Transformer来计算它们,最后一层状态编码表示为,,,,其中和分别代表视觉和语言的特征。最后,将这些特征表示送到每个预训练代理任务的head中。

2.3 Pretext Tasks

对于每个图像,首先基于现成的检测器生成一组对象proposal,表示为,,,其中代表检测框的位置,代表对象的类别,是对象的RoI特征。对于每一个对象,作者引入了一个二进制掩码,这个二进制掩码flatten之后可以表示为。对于相应的文本,作者采用训练好的语言模型来提取名词短语。并计算每个名词短语和对象类别之间的关系,如下所示:

其中代表余弦距离,代表语言嵌入模型(比如BERT)。

Object-guided Masked Vision Modeling (OMVM)

第一个任务的目的是在端到端的预训练中学习更明确的对象概念。具体地说,每次采样一个对象,在Transformer输入中取出其特征并进行avgpool,并强制网络生成对象RoI特征和语义标签。为了便于跨模态对齐,作者提出了一种知识引导的掩码策略,该策略基于归一化的相似度得分α,对与名词短语相关的对象区域进行采样以进行mask。所选对象区域的二进制掩码、分类和RoI特征表示为,,。

作者设计了两个学习目标函数,掩码区域分类(MRC)掩码区域特征回归(MRFR)

为了计算LMRC和LMRFR的损失,首先计算最后一层mask区域的对象表示,这是由mask之后的特征平均池化得到的。

对于MRC,多层FC网络采用最大似然来预测对象类别,即:

对于MRFR,多层FC网络通过最小化L2距离来学习特征空间中的表示,即:

Phrase Region Alignment (PRA)

第二个任务PRA主要是学习对象层面的跨模态对齐,目的是拉近正短语-区域对,推开负对。在这里,作者利用语言空间中名词短语和对象类别之间的相似度α,作为跨模态学习的指导。

具体地说,作者首先计算每个proposal的对象表示和短语表示。对象表示由mask之后的视觉特征进行全局平均池化之后得到,而短语表示的计算如下:

然后,将跨模态相似度定义为:

PRA任务的目标就是最小化短语-标签的相似度和跨模态相似度的KL散度。

将mask集合表示为,PRA损失函数表示如下:

Masked Language Modeling (MLM)

作者采用与Bert相同的掩码策略,即随机mask输入单词token。在这里,MLM的目标是根据整个图像及其周围的语言上下文,通过Transformer来预测每个mask token的原始词索引。因此,采用如下的交叉熵损失:

Image-Text Matching (ITM)

在ITM中,训练多层Transformer,并基于最终层[CLS] token表示来区分输入图文对是否在语义上匹配。为了构造训练样本,以0.5的概率将每个图像-文本对的文本随机替换为数据集中的另一个文本。因此,输出标签可以定义为,,1代表匹配,0代表不匹配。ITM任务的训练目标是将二元交叉熵损失降至最低:

      03      

实验

3.1.  Downstream Tasks

Image-Text Retrieval

从上表可以看出,在一阶段的方法中,基于图文检索任务,本文的方法达到了SOTA的性能,甚至超过了一些二阶段的方法。

Visual Entailment (VE)

如上表所示,基于VE任务,本文的模型在验证集上达到了78.21%的正确率,在测试集合上达到了77.87%的正确率。

Natural Language Visual Reasoning

如上表所示,在Natural Language Visual Reasoning任务上,本文方法的表现明显优于SOHO、Pixel-Bert、Vilt和E2E-VLP。

Visual Question Answering (VQA)

在VQA任务上,与E2E预训练方法相比,本文的方法显示出了明显的性能改善,甚至其表现略高于二阶段预训练方法。

Visual Commonsense Reasoning (VCR)

如上表所示,本文的方法在VCR验证集中取得了较高的准确率,在Q→A设置中达到了76.70%,在QA→R中达到了78.63%,在Q→AR中达到了60.54%。

3.2. Ablation Study & Visualization Analysis

上表展示了不用预训练任务的性能对比,可以看出本文提出OMVM和PRA预训练任务对于模型性能的提升都是重要的。

从上图a中可以看出,本文的知识引导掩码策略总是mask与短语相关的图像区域,这可以促进多模态学习。从b中可以看出,本文模型在进行图文匹配时,attention的定位更加准确。

从上表可以看出,无论模型大小如何,本文的方法都是有效的,且较大的模型甚至比轻量级模型有更明显的性能改进。

      04      

总结

在本文中,作者提出了一种新的自监督VLP方法,该方法在端到端的框架中促进学习对象感知的多模态表示。本文的核心思想是在预训练阶段从外部检测器的语义空间和特征空间中进行目标知识的提取。

因此,作者开发了一个对象引导的掩码视觉建模任务来提取外部对象知识,以及一个短语-区域对齐任务来更好地学习语言实体和视觉概念之间的对齐。与以往的工作相比,本文的模型在下游任务测试中不需要依赖复杂的对象检测器,就可以实现更高的性能。

▊ 作者简介

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

知乎/公众号:FightingCV

END

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

KD-VLP:知识蒸馏和预训练还能这么结合?上科大IntelMSRA提出基于知识蒸馏的端到端多模态预训练模型...相关推荐

  1. AI:2023年6月9日北京智源大会演讲分享之基础模型前沿技术论坛—《工程化打造AI中的CPU》、《构建一个AI系统:在LLM上应用带有RLHF来推进定制》、《多模态预训练的进展回顾与展望》、《扩展大

    AI:2023年6月9日北京智源大会演讲分享之基础模型前沿技术论坛-<工程化打造AI中的CPU>.<构建一个AI系统:在LLM上应用带有RLHF来推进定制>.<多模态预训 ...

  2. 《预训练周刊》第16期:中科院推出全球首个图文音三模态预训练模型、顶会论文探索100层序列推荐模型的加速训练...

    No.16 智源社区 预训练组 预 训 练 研究 观点 资源 活动 关于周刊 超大规模预训练模型是当前人工智能领域研究的热点,为了帮助研究与工程人员了解这一领域的进展和资讯,智源社区整理了第16期&l ...

  3. 《预训练周刊》第25期:HyperCLOVA:数十亿级韩语生成式预训练变换器、GPT-3在生物医学领域不是好的小样本学习器...

    No.25 智源社区 预训练组 预 训 练 研究 观点 资源 活动 关于周刊 超大规模预训练模型是当前人工智能领域研究的热点,为了帮助研究与工程人员了解这一领域的进展和资讯,智源社区整理了第25期&l ...

  4. 《预训练周刊》第36期: 谷歌提出梯度最大化增长方法GradMax

    No.36 智源社区 预训练组 预 训 练 研究 观点 资源 活动 关于周刊 本期周刊,我们选择了11篇预训练相关的论文,涉及优化器.稀疏语言模型.神经网络结构.自增长网络.视频摘要.多模态.机器翻译 ...

  5. PLUS | 包含蛋白质特异性的新型预训练方案

    今天给大家介绍来自首尔国立大学Sungroh Yoon课题组在arXiv上发表的一篇文章.作者指出当前很多方法采用半监督学习来进行蛋白质序列建模,其中的预训练方法主要依赖于语言建模任务,并且常常表现的 ...

  6. 《预训练周刊》第35期:零样本规划器的语言模型:为智能体提取可操作的知识、LaMDA:对话应用的语言模型...

    No.35 智源社区 预训练组 预 训 练 研究 观点 资源 活动 关于周刊 本期周刊,我们选择了13篇预训练相关的论文,涉及动作规划.大模型改进.网络结构.零样本学习.对话模型.视频理解.机器翻译. ...

  7. 《预训练周刊》第11期:全球最大智能模型“悟道2.0”重磅发布、谷歌KELM:将知识图与语言模型预训练语料库集成...

    No.11 智源社区 预训练组 预 训 练 研究 观点 资源 活动 关于周刊 超大规模预训练模型是当前人工智能领域研究的热点,为了帮助研究与工程人员了解这一领域的进展和资讯,智源社区整理了第11期&l ...

  8. 技术实践:大规模知识图谱预训练及电商应用

    本文作者: 张文(浙江大学).黄志文(阿里巴巴).叶橄强(浙江大学).文博(浙江大学).张伟(阿里巴巴),陈华钧*(浙江大学) 接收会议: ICDE 2021 1. 文章导读 本文介绍了浙江大学阿里巴 ...

  9. 技术实践 | ICDE2021-大规模知识图谱预训练及电商应用

    本文作者 | 张文(浙江大学).黄志文(阿里巴巴).叶橄强(浙江大学).文博(浙江大学).张伟(阿里巴巴),陈华钧*(浙江大学) 接收会议 | ICDE2021 转载公众号 | ZJUKG (欢迎转载 ...

最新文章

  1. 记录win10快捷键
  2. 如何一次关闭所有打开的标签?
  3. 面试官:Thread.sleep(0) 有什么用?
  4. OC-@dynamic 关键字
  5. java自学 day8
  6. 洛谷P2015 二叉苹果树【树形dp】
  7. 视频通信原理——NAT介绍
  8. 拆分工作簿为多个文件_如何批将Excel的多个Sheet工作表拆分为独立的工作簿?...
  9. MySql中 DELIMITER
  10. 华为暂停一般性社招;嘀嗒出行系统崩溃;美团和摩拜账号互通 | 极客头条
  11. [20170925]什么是FQDN(关于hostname).txt
  12. 栈的理解以及如何计算程序所需栈的大小并在IAR中设置栈
  13. 【Echarts】地图 中国城市经纬度Json
  14. android优化大师下载最新版,安卓优化大师(正式版)
  15. linux中怎么生成hwaddr,linux 下 hwaddr 和 macaddr的区别
  16. DHCP协议以及其配置
  17. OpenCV4.3 Java 编程入门:离散傅里叶变换
  18. python基于PHP+MySQL的学生社团管理系统
  19. Allegro教学:关于dangling connection的解释
  20. Split Pairs

热门文章

  1. 将rm -f or -rf 删除命令改为放入回收站,并可通过命令将其撤回
  2. 计算机暑期实践相关内容,计算机暑假社会实践报告5000范文
  3. sim7020c功耗_SIM7020C物联网NB-IOT模块 simcom代理
  4. srve0255e尚未定义要怎么办_我的可转债中签了,该怎么办?
  5. as3.0 mysql_RedhatAS3.0上安装Apache2+PHP5+MySQL+Resin+SSL+GD+weba_PHP教程
  6. mysql limit 表的长度_mysql中的limit用法有哪些(推荐)
  7. pythonutf8转gbk,Python实现把utf-8格式的文件转换成gbk格式的文件
  8. Android备份onedrive,三星Note10正将OneDrive集成到Android相册应用中
  9. educoder实训平台java入门_educoder上的实训题目(学习-Java包装类之Byte类)
  10. php sha1漏洞,PHP sha1()函数