ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练

ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练_第1张图片

论文标题:VL-Match: Enhancing Vision-Language Pretraining with Token-Level and Instance-Level Matching

代码:None

单位:中国科学院北京计算技术研究所  中国科学院大学  微软

在VLP种,通常采用两种预训练任务(ITM、MLM)来训练多模态编码器。

ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练_第2张图片

一、IDea

为了进一步增强token level和instance level的ITM,提出了具有两个新的ITM: 视觉语言替代token检测(VL-RTD)通过生成器-鉴别器结构增强token级的匹配,细粒度图像-文本匹配(FG-ITM)通过引入更多的hard负样本来增强实例级的图像-文本匹配任务。

VL-RTD:将多模态编码器视为鉴别器,将文本编码器视为生成器。给定一个原始文本输入,生成器输出一个损坏的文本,然后鉴别器学习区分损坏文本中的每个标记是否被生成器替换。与使用[MASK]破坏原始文本的掩码语言建模相比,VL-RTD使用从词汇表中选择的标记来破坏文本,保留了原始文本的更多语义信息。

FG-ITM:通过引入更细粒度的负样本来增强实例级的图像-文本匹配任务。以前,图像-文本匹配任务的负文本样本要么随机采样,要么根据实例级相似度采样。为了细粒度地呈现正负样本之间的差异,提出了一种新的数据增强方法NegGen。通过在应用语言生成器来合成一个新的文本实例。期望生成的文本在自然语言中是连贯的,但与相应的图像有一些细粒度的差异。

二、Model

1、Vision-Language Replaced Token Detection(VL-RTD

在生成过程中,将文本编码器视为生成器,根据文本上下文学习文本表示并生成损坏的文本(图2中的红色箭头)。与掩码语言建模类似,所选位置的标记被替换为[MASK]标记,将其表示为REPLACE(T,m, [MASK]),其中T为原始文本标记,m为所选位置。给定被屏蔽的文本T被屏蔽,文本编码器学习预测被屏蔽掉的标记的原始标记。pG(T掩码)为预测概率。基于此概率对每个token进行采样,以获得损坏的文本Tcorrupt ,生成过程(就是MLM):

ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练_第3张图片

在判别过程中,将多模态编码器视为判别器,以判别文本中的每个token是否与图像和文本上下文对齐(图2中的绿色箭头)。给定Tcorrupt,文本编码器将文本转换为{Tccls, tc1,…, tcM},被输入到多模态编码器中,与图像{vcls, v1,…, vN}经过cross attention,多模态编码器的输出经过一个二分类层,分类是否匹配:

ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练_第4张图片

因此,该部分损失为:

2、Image-Text Contrastive learning

典型ITC:

ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练_第5张图片

损失为:

3、Fine-Grained Image-Text Matching

对于每个输入的图像-文本对,使用两种类型的负样本:根据式6或7选择的批量hard负样本,以及由NegGen生成的细粒度负样本。使用多模态编码器对[CLS]标记的输出embedding作为图像-文本对的联合表示:

ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练_第6张图片

总体损失为:

4、NegGen

原始文本被mask,然后输入到语言模型中,生成细粒度的负样本。为了屏蔽具有丰富语义信息的token,使用了一个简单的词性标注器来识别原始文本中的名词和形容词,并随机屏蔽其中的50%。生成细粒度负样本的过程形式化如下:

ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练_第7张图片

此外,为了确保生成的文本样本是负的,采用ITM训练的VLP模型作为判别器来预测图像-文本匹配概率并过滤掉潜在的正样本。

三、Experiments

1、Image-Text Retrieval

2、Visual Entailment (VE)
3、Visual Question Answering (VQA)
4、Natural Language for Visual Reasoning (NLVR2)

ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练_第8张图片

5、 Ablations on Pretraining Tasks

ICCV2023 | VL-Match: 使用Token-Level和Instance-Level Matching提升视觉语言预训练_第9张图片

这个想法其实很通用(也想到过,但不是生成,而是制定负样本规则,如果破坏15%-25%-50%等)。在对比学习中,其主要是拉开两类样本的分布,这种细粒度的负样本放到对比学习中,如果这两类样本的粒度很小,肯定更容易实现对齐,效果肯定有提升。其次在结构上,论文不是通用的VLP双塔结构或者CLIP双分支,而是在CLIP Encoder上加Cross-Attention融合特征进行分类(图中是这样的,但是代码就不知道了,没开源,期待开源研究code)。

你可能感兴趣的:(VLP,每日读论文,人工智能,深度学习)