<<计算机视觉NeurIPS>>2022:GLIPv2: Unifying Localization and VL Understanding

在这里插入图片描述

收录情况NeurIPS-2022
论文链接https://arxiv.org/abs/2206.05836
代码链接https://github.com/microsoft/GLIP


简介

问题

建立一个通用的,可以同时处理vision localization任务(image classification、object detection和segmentation等等)和VL understanding任务(VQA和image captioning等等)的vision language systems在过去一两年广为关注,这需要模型能够有效的统一localizationunderstanding任务。

然而,这两种任务有很大的区别:localization是仅视觉的任务,需要细粒度的输出(例如,bounding boxes或pixel masks),而VL understanding强调不同模态信息之间的融合,需要高级的语义输出(例如,answers或captions)。

方案

本论文提出grounded VL understanding模型GLIPv2,既适用于localization任务(例如,对象检测,实例分割),也适用于VL understanding任务(例如,VQA,image captioning)。GLIPv2将localization预训练和视觉语言预训练(VLP)有效的结合,包含三个预训练任务:phrase grounding作为VL任务以重构检测任务,region-word对比学习任务和MLM任务。这种统一不仅简化了以往的多阶段VLP模型,而且实现了localization和understanding之间的互利共赢。

实验表明,无集成的GLIPv2模型(权值共享)在各种localization和understanding任务中都能达到接近SoTA的性能。该模型对open-vocabulary对象检测任务具有很强的zero/few-shot适应能力,对VL理解任务也具有很强的grounding能力。

主要贡献

a、Localization + VL understanding = grounded VL understanding Localization任务包括定位和语义分类,其中分类可以使用classification-to-matching方法将其转换为VL understanding的问题。因此,作者将Localization任务重新定义为VL grounding任务,其中语言输入是一个由类别名称拼接的合成的sentence。大规模的VL understanding数据(图像文本对)可以通过self-training的方式转化为VL grounding数据,因此,GLIPv2具有统一的预训练过程:将所有任务的数据转化为grounding数据,对GLIPv2进行预训练,进行grounded VL understanding

b、A stronger VL grounding task: inter-image region-word contrastive learning 作者引入了图像之间的region-word对比学习任务,利用同一batch中的其他sentences中的phrases作为潜在的负例,这使得GLIPv2能够学习到更多的region-word的判别特征。

相关工作

Localization models

传统目标检测和分割等任务是单个模态的任务,输出bounding box或pixel masked进行分类,这些模型难以泛化到新的类别。GLIPv2建立在MDETRGLIP基础上,使用classification-to-matching技巧将localization任务转换为一个grounded vision-language任务。因此,GLIPv2可以从语义丰富的图文对数据中学习,在open-vocabulary localization任务表现出强大的性能,GLIPv2简化了预训练架构,并支持grounded VL understanding,以获得更好的解释性。

Unifying localization and understanding

Localization任务被视为单模态任务,而VL任务涉及两种模态。GLIPv2将grounded VL understanding定义为localization和理解的meta-task,任务的统一带来了体系结构的统一。GLIPv2 vs GLIP:1)GLIP的grounded pre-training提高了localization的性能和提高了VL understanding的能力,从而形成了localization和VL understanding的统一模型;2)GLIPv2 引入了图像间region-word的对比损失,这是另一个比GLIP中预训练任务更强的grounding任务。

方法

GLIPv2: Unifying Localization and VL Understanding

在GLIP中将目标检测重新定义为广义的phrase grounding任务的基础上,将localization任务和VL understanding任务统一为grounded vision-language任务,将图像和文本同时输入,并输出object-level理解结果(例如,检测、分割)和image-level理解结果(例如,VQA、image captioning)。
在这里插入图片描述

a、 A Unified VL Formulation and Architecture

GLIPv2的关键是classification-to-matching技巧,它将任何task-specific fixed-vocab分类问题重新表述为task-agnostic open-vocabulary视觉语言匹配问题,例如CLIP中将图像分类重新表述为图像-文本匹配,使模型可以直接从原始的大量的图像-文本对数据中学习,实现了强大的zero-shot效果。在GLIPv2中,将传统视觉模型中的语义分类线性层替换为视觉语言匹配点积层。

如图1,GLIPv2由一个双编码器 E n c V Enc_V EncV E n c L Enc_L EncL以及一个融合编码器 E n c V l Enc_{Vl} EncVl组成,以图像-文本对(Img, Text)作为输入,提取视觉和文本特征如下,其中 ( O ˚ , P ˚ ) (\mathring{O},\mathring{P}) (O˚P˚) ( O , P ) (O,P) (OP)分别表示VL融合前和融合后的图像/文本特征:
在这里插入图片描述
Vision-Language understanding tasks GLIPv2在文本特征 P P P的基础上增加了一个两层MLP作为MLM head,用于MLM预训练。
(Language-guided) object detection and phrase grounding 继GLIP之后,GLIPv2采用classification-to-matching的方法,实现了detection与grounding的统一。具体来说,只需将类别的概率 S c l s = O W T S_{cls}=OW^T Scls=OWT(其中W是box分类器的权重矩阵)替换为task-agnostic region-word相似度分数 S g r o u n d = O P T S_{ground}=OP^T Sground=OPT(其中文本特征 P P P是来语言编码器的label嵌入),即原本的目标检测为分类为k个类别,转化为region和word的匹配分数,words里不仅包含原本所有的目标检测类别,同样包含更多的新的视觉概念。
(Language-guided) instance segmentation and referring image segmentation 给定目标检测的结果,添加一个实例分割head,将box内的每个像素分类为一个语义类。同样,GLIPv2使用classification-to-matching的技巧,为标准的实例分割任务和referring图像分割任务生成统一的实例分割head,并利用这两种类型的数据进行预训练。

b、GLIPv2 Pre-training

GLIPv2采用三种预训练损失进行预训练:来自目标检测任务的视觉语言重构的phrase grounding损失 L g r o u n d \mathcal{L}_{ground} Lgroundregion-word对比损失 L i n t e r \mathcal{L}_{inter} Linter,以及MLM损失 L m l m \mathcal{L}_{mlm} Lmlm
在这里插入图片描述
与检测任务中的损失类似, L g r o u n d \mathcal{L}_{ground} Lground由两部分组成:由边界框监督的 L l o c \mathcal{L}_{loc} Lloc,例如RPN损失、box regression损失和centerness损失, L i n t r a \mathcal{L}_{intra} Lintra本质上是每个区域的语义分类/检索损失。

Intra-image region-word alignment loss 给定一个图像-文本对(Img, Text),通过跨模态融合得到图像和文本特征 Q Q Q P P P,计算图像内部region-word对齐损失:
在这里插入图片描述
其中 O P T OP^T OPT单个图像区域与单词之间的相似度分数, T T T为真值注释确定的目标矩阵,损失函数损失通常为两阶段模型的交叉熵损失和一阶段模型的Focal-loss。然而,由于一个caption所能包含的phrase数量有限,这种单个图像内部region-word的对比学习在对比学习的意义上是相当薄弱的。GLIP通过添加几个否定句来形成包含更多(否定)phrase的较长的文本输入,从而缓解了这个问题,但是,受限于文本token的最大长度(GLIP和GLIPv2中为256),只能添加少量的否定句,否定phrase的数量保持在10的数量级,当输入文本不能包含检测数据集(例如Objects365)中的所有类别名称时,在目标检测数据集中也存在这个仅有少量负例的问题。

在这里插入图片描述
Inter-image region-word contrastive loss GLIPv2使用同一batch中的其他图像-文本对中的phrase作为负例,有效地将负例的数量增加到1000数量级,而额外的计算成本几乎可以忽略不计。如图1,给定一批图像-文本对 ( I m g i , T e x t i ) i = 1 B (Img^i, Text^i)^B_{i =1} (Imgi,Texti)i=1B和真值 ( T i ) i = 1 B (T_i)^B_{i =1} (Ti)i=1B,模型跨模态融合前后的图像和文本特征,分别记为 ( O ˚ i , P ˚ i ) i = 1 B (\mathring{O}^i,\mathring{P}^i)^B_{i=1} (O˚iP˚i)i=1B ( O i , P i ) i = 1 B (O^i,P^i)^B_{i=1} (OiPi)i=1B。然后如图2(左),考虑整个batch中的所有图像区域和文本短语,构造一个batch的相似矩阵 S g r o u n d b a t c h S^{batch}_{ground} Sgroundbatch和一个batch的目标矩阵 T b a t c h T^{batch} Tbatch ( i , j ) (i, j) (i,j)计算如下:
在这里插入图片描述
然后将图像间region-word对比损失定义为应用于该batch所有图像region和phrase的标准双向对比损失:
在这里插入图片描述
与单个图像内部的对比损失相比,图像之间对比损失中的负例数量大小要乘以batch大小 B B B,要注意的是:1) GLIPv2使用VL融合前的图像文本特征,而不是融合后的特征,避免模型看到成匹配对的信息(因为模型可以很容易地从不匹配的图像文本中剔除负例);2)不像CLIP简单地将所有来自不匹配的图像-文本的区域和文本都归为负例,而是通过label propagation来确定目标矩阵 T b a t c h T^{batch} Tbatch中的非对角块。如图2(左),如果一个region被标注为“person”,那它应该与检测类型文本中的所有“person”短语为正匹配。
Pre-training with both detection and paired-image-text data GLIPv2预训练数据是图像-文本-目标三元组格式(Img, Text, T),其中目标矩阵T包含box-label localization注释。作者还使用大量的图像-文本对数据(Img, Text)对进行预训练,极大地提高了GLIPv2的视觉概念多样性。
Second-stage pre-training of the segmentation head GLIPv2在实例分割和图像引用分割数据上进行二次语言引导的分割head的预训练,同时固定模型的所有其他部分。

c、Transfer GLIPv2 to Localization and VL Tasks

One model architecture for all 通过使用(可选的)task-specific的head对模型进行微调,GLIPv2可以迁移到下游任务:1)检测和分割任务,不需要额外的head,因为预训练架构本身就可以执行检测和分割;2)VL任务:对于VQA,添加一个分类头即可;对于caption生成,使用单向语言模型进行训练,在跨模态融合层中,使用单向attention mask来防止图像关注到文本。

One set of weight for all GLIPv2可以在zero-shotprompt-tuning中迁移到localization任务,其中每个任务只保留少量或不保留参数,对于prompt-tuning的所有localization任务,所有输入图像的文本prompt都是相同的。

Grounded VL understanding GLIPv2还支持grounded VL understanding,在对模型进行下游VL任务微调时,保留了执行grounding的能力,增加了模型的可解释性。

实验

One Model Architecture for All

在这里插入图片描述
在表1中,GLIPv2与现有的对象检测和视觉语言预训练方法进行了广泛的比较,在8个不同的下游任务上微调模型。

One Set of Model Parameters for All

在这里插入图片描述
预训练的GLIPv2可以在任何对象检测任务和visual grounding任务上直接推理,而无需进一步微调。表2中对COCO、ODinW、LVIS和Flickr30这4种定位任务进行了评估。

GLIPv2 as a Strong Few-Shot Learner

在这里插入图片描述

总结

本文提出了一个统一的VL表示学习框架GLIPv2,它既适用于localization任务,也适用于VL理解任务,实验验证了统一模型和region-word对比学习的有效性,与现有的方法相比,GLIPv2在各种localization和understanding任务上具有接近SoTA的竞争力。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值