前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微软提出:多模态视觉语言理解和视觉定位的大一统

微软提出:多模态视觉语言理解和视觉定位的大一统

作者头像
zenRRan
发布2023-03-03 14:39:16
1.1K0
发布2023-03-03 14:39:16
举报
文章被收录于专栏:深度学习自然语言处理
作者:金克丝 (在读博士) 方向:多模态学习 学校:南京理工大学

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

  • 简介
    • 问题
    • 方案
    • 主要贡献
  • 相关工作
    • Localization models
    • Unifying localization and understanding
  • 方法
    • GLIPv2: Unifying Localization and VL Understanding
    • a、 A Unified VL Formulation and Architecture
    • b、GLIPv2 Pre-training
    • c、Transfer GLIPv2 to Localization and VL Tasks
  • 实验
    • One Model Architecture for All
    • One Set of Model Parameters for All
    • GLIPv2 as a Strong Few-Shot Learner
  • 总结

简介

问题 建立一个通用的,可以同时处理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由一个双编码器

Enc_V

Enc_L

以及一个融合编码器

Enc_{Vl}

组成,以图像-文本对(Img, Text)作为输入,提取视觉和文本特征如下,其中

(\mathring{O},\mathring{P})

(O,P)

分别表示VL融合前和融合后的图像/文本特征:

「Vision-Language understanding tasks」 GLIPv2在文本特征

P

的基础上增加了一个两层MLP作为MLM head,用于MLM预训练。「(Language-guided) object detection and phrase grounding」 继GLIP之后,GLIPv2采用classification-to-matching的方法,实现了detection与grounding的统一。具体来说,只需将类别的概率

S_{cls}=OW^T

(其中W是box分类器的权重矩阵)替换为task-agnostic region-word相似度分数

S_{ground}=OP^T

(其中文本特征

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损失

\mathcal{L}_{ground}

region-word对比损失

\mathcal{L}_{inter}

,以及MLM损失

\mathcal{L}_{mlm}

与检测任务中的损失类似,

\mathcal{L}_{ground}

由两部分组成:由边界框监督的

\mathcal{L}_{loc}

,例如RPN损失、box regression损失和centerness损失,

\mathcal{L}_{intra}

本质上是每个区域的语义分类/检索损失。 「Intra-image region-word alignment loss」 给定一个图像-文本对(Img, Text),通过跨模态融合得到图像和文本特征

Q

P

,计算图像内部region-word对齐损失:

其中

OP^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,给定一批图像-文本对

(Img^i, Text^i)^B_{i =1}

和真值

(T_i)^B_{i =1}

,模型跨模态融合前后的图像和文本特征,分别记为

(\mathring{O}^i,\mathring{P}^i)^B_{i=1}

(O^i,P^i)^B_{i=1}

。然后如图2(左),考虑整个batch中的所有图像区域和文本短语,构造一个batch的相似矩阵

S^{batch}_{ground}

和一个batch的目标矩阵

T^{batch}

(i, j)

计算如下:

然后将图像间region-word对比损失定义为应用于该batch所有图像region和phrase的标准双向对比损失:

与单个图像内部的对比损失相比,图像之间对比损失中的负例数量大小要乘以batch大小

B

,要注意的是:1) GLIPv2使用VL融合前的图像文本特征,而不是融合后的特征,避免模型看到成匹配对的信息(因为模型可以很容易地从不匹配的图像文本中剔除负例);2)不像CLIP简单地将所有来自不匹配的图像-文本的区域和文本都归为负例,而是通过label propagation来确定目标矩阵

T^{batch}

中的非对角块。如图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的竞争力。


本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-11-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 深度学习自然语言处理 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 相关工作
  • 方法
  • 实验
  • 总结
相关产品与服务
图像识别
腾讯云图像识别基于深度学习等人工智能技术,提供车辆,物体及场景等检测和识别服务, 已上线产品子功能包含车辆识别,商品识别,宠物识别,文件封识别等,更多功能接口敬请期待。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档