本文介绍了一种新的基于区域的视觉语言预训练方法,该方法通过学习图像区域与其描述之间的对齐,提高了在开放词汇目标检测中的性能。该方法通过构建区域描述并利用预训练的CLIP模型对齐区域和文本,从而无需人工标注即可进行区域级对齐。实验结果显示,该方法在COCO和LVIS数据集上的开放词汇目标检测任务中取得了显著的性能提升,并在零样本推理中也表现出良好的结果。该方法为视觉区域理解的视觉语言预训练提供了新的视角。
本文提出了一种新的方法,通过匹配图像区域和文本描述来学习视觉区域表示,从而在开放词汇目标检测中提高性能。
通过构建区域描述并利用预训练的CLIP模型对齐区域和文本,该方法无需人工标注即可进行区域级对齐。
实验结果显示,该方法在COCO和LVIS数据集上的开放词汇目标检测任务中取得了显著的性能提升。
该方法在零样本推理中也表现出令人鼓舞的结果,支持使用大量词汇识别图像区域。
本文的工作为视觉区域理解的视觉语言预训练提供了新的视角和启示。
摘要
使用图像-文本对的对比语言-图像预训练 (CLIP) 在零样本和迁移学习设置下都取得了令人印象深刻的图像分类结果。 然而,我们表明,由于领域差异,直接将此类模型应用于识别用于目标检测的图像区域会导致性能下降:CLIP 的训练目标是将整个图像与文本描述匹配,而没有捕捉图像区域和文本片段之间的细粒度对齐。 为了缓解这个问题,我们提出了一种名为 RegionCLIP 的新方法,该方法显著扩展了 CLIP 以学习区域级视觉表示,从而实现图像区域和文本概念之间的细粒度对齐。 我们的方法利用 CLIP 模型将图像区域与模板标题匹配,然后预训练我们的模型以在特征空间中对齐这些区域-文本对。 将我们预训练的模型迁移到开放词汇表目标检测任务时,我们的方法在 COCO 和 LVIS 数据集上分别超越了现有技术水平 3.8 AP50 和 2.2 AP(针对新类别)。 此外,学习到的区域表示支持目标检测的零样本推理,在 COCO 和 LVIS 数据集上都显示出令人鼓舞的结果。 我们的代码可在 https://github.com/microsoft/RegionCLIP 获取。
1引言
视觉语言表示学习的最新进展创造了 CLIP [37] 和 ALIGN [26] 等卓越的模型。 此类模型使用数亿个图像-文本对进行训练,方法是将图像与其标题匹配,从而实现了识别大量概念(无需人工标注)的令人印象深刻的结果,并能够迁移到许多视觉识别任务中。 继图像分类取得成功之后,一个自然而然的问题是这些模型能否用于对图像区域进行推理,例如,用于目标检测等任务。
为了回答这个问题,我们使用预训练的CLIP模型构建了一个简单的R-CNN风格的[16]目标检测器,类似于对预训练的卷积网络进行适配。 该检测器从输入图像中裁剪候选目标区域,并通过将裁剪区域的视觉特征与目标类别的文本嵌入相匹配来应用CLIP模型进行检测。 图1(a-b)显示了在LVIS数据集[19]上的结果。 当使用目标建议[42]作为输入区域时,来自CLIP的分数往往无法捕捉定位质量(图1a)。 即使使用真实的目标框,使用CLIP的分类精度也从ImageNet上的60%显著下降到LVIS上的19%,而类别数量相似(图1b)。 因此,当应用预训练的CLIP模型进行目标检测时,性能会大幅下降。 我们如何才能使预训练的视觉语言模型能够对图像区域进行推理?
我们认为主要差距在于这些视觉语言模型的训练。 包括CLIP在内的许多现有的视觉语言模型都是为了将图像与其图像级文本描述相匹配而进行训练的。 训练没有考虑局部图像区域和文本符元之间的对齐。 因此,这些模型无法精确地将文本概念与图像区域联系起来。 此外,裁剪图像区域并将它们与文本符元匹配在很大程度上忽略了对于目标识别至关重要的周围视觉上下文,更不用说高昂的计算成本了,例如在现代GPU上每张图像几秒钟。
在本文中,我们探索了通过视觉语言预训练学习用于目标检测的区域表示。 我们的关键思想是 在预训练期间明确对齐图像区域和文本符元。 然而,出现了两个关键挑战。 首先,图像区域和文本符元之间细粒度的对齐在图像-文本对中是不可用的。 其次,其配对图像的文本描述通常不完整,即许多图像区域没有被文本描述。 为了解决这些挑战,我们提出从预训练的视觉-语言模型中自举,以对齐图像区域和文本符元,并填充缺失的区域描述,如图1c所示。
具体来说,我们的方法从文本语料库中解析出的对象概念池开始,并通过将这些概念填充到预定义的模板中来合成区域描述。 给定一个输入图像及其来自对象建议或密集滑动窗口的候选区域,使用预训练的CLIP模型来对齐区域描述和图像区域,从而创建区域-文本对齐的“伪”标签。 此外,我们使用“伪”区域-文本对和真实图像-文本对,通过对比学习和知识蒸馏来预训练我们的视觉-语言模型。 虽然“伪”区域-文本对存在噪声,但它们仍然为学习区域表示提供了有用的信息,从而弥合了与目标检测的差距,这已通过我们的实验得到验证。
我们在字幕数据集(例如Conceptual Caption)上预训练我们的模型,主要在开放词汇目标检测的基准测试(COCO和LVIS数据集)上评估模型。 当转移到开放词汇目标检测时,我们的预训练模型在COCO和LVIS上取得了新的最先进(SoTA)结果。 例如,在COCO上,对于新类别,我们的模型在AP50上比已发表的SoTA相对提高了37.7%。 此外,我们的模型支持零样本推理,并且明显优于基线。
我们的贡献总结如下: (1) 我们提出了一种新方法,该方法无需人工标注即可对齐图像区域及其描述,从而实现视觉-语言预训练以学习视觉区域表示。 (2) 促进我们预训练的一个关键技术创新是一种可扩展的区域描述生成方法,既不依赖人工标注,也不局限于与图像配对的文本。 (3) 我们的预训练模型在转移到开放词汇目标检测时表现出强大的结果,并在目标检测的零样本推理方面展现出良好的能力。
2相关工作
图像的视觉表示学习。 早期视觉表征学习工作侧重于通过训练图像分类器从密集的人工标注中学习[30, 46, 50, 22, 13]。 这些分类器可进一步用于标注未标注的图像,以便在半监督学习中训练学生模型[36, 55, 57]。 为了减少标注负担,提出了自监督学习[20, 6, 17, 5],以匹配来自同一图像的不同视图的视觉表征。 最相关的工作是从自然语言中学习,例如图像标签[25, 3, 12, 8, 28]和文本描述[53, 23, 43, 11, 61]。 结合从互联网收集的数百万图像-文本对,最近的视觉-语言预训练[37, 26]学习将图像与图像描述匹配,并在零样本推理和图像分类的迁移学习方面展现出令人印象深刻的性能。 然而,这些工作侧重于图像表征,目标是图像分类。 在本文中,我们提出学习用于图像区域的视觉表征,该表征支持针对区域推理任务(例如,目标检测)的零样本推理和迁移学习。
图像区域的视觉表征学习。 通过利用[14, 33, 29, 19]贡献的人工标注,在对图像区域进行推理方面取得了重大进展,例如目标检测[42, 41, 52, 4]。 利用在这些人工标注上训练的目标检测器作为教师模型,半监督学习[56, 65, 48]反过来为图像区域创建伪标签以训练学生检测器。 除了目标标签之外,从物体属性的附加标签[29, 1, 60]学习的区域表征在视觉-语言任务[58, 9, 31, 51, 62, 34]上也表现出显著的改进。 然而,这些工作严重依赖于昂贵的人工标注,并且仅限于预定义的类别。 为了降低标注成本,自监督学习的思想被扩展到区域表征学习[40, 24],方法是最大化图像区域增强视图之间的表征相似性。 与这些工作不同,我们受CLIP[37]的启发,提出通过视觉-语言预训练来学习区域表征。 学习到的区域表征支持使用大量词汇识别图像区域。
零样本和开放词汇表目标检测。 零样本目标检测旨在检测在检测器训练期间未见过的新的目标类别[2, 39, 59, 18, 64, 38]。 Bansal 等人. [2] 使用最大间隔损失学习将裁剪图像区域的视觉特征与词嵌入匹配。 Rahman 等人. [38] 提出了极性损失来模拟背景类别并聚类语义相似的类别。 Zhu 等人. [64] 探讨了通过使用生成模型合成视觉特征来提高新类别的定位性能。 这些零样本目标检测器通常依赖于预训练词嵌入的语义空间[35]。 最近,Zareian 等人. [59] 提出了用于开放词汇表目标检测的OVR,其中视觉编码器首先在图像-文本对上进行预训练以学习广泛的对象概念,然后转移到零样本目标检测设置。 另一项密切相关的研究是ViLD[18],它专注于通过从预训练的CLIP模型[37]中提取视觉特征来训练零样本目标检测器。 与OVR和ViLD类似,我们的检测器也利用从视觉语言预训练中学习到的视觉语义空间。 与OVR不同,我们提出从另一个预训练的CLIP模型给出的“伪”区域-文本对中学习视觉区域表示。 因此,我们的方法并不局限于与图像配对的特定文本。 与 ViLD 不同,我们的方法侧重于预训练,生成的区域表示支持零样本推理和迁移学习。
3方法
3.1问题定义
我们的目标是学习一个涵盖丰富物体概念的区域视觉语义空间,以便将其用于开放词汇物体检测。 考虑一段文本描述t,它描述了图像I中区域r的内容。 在视觉语义空间中,从r提取的视觉区域表示𝒱(I,r)应该与文本表示ℒ(t)匹配。 𝒱是一个视觉编码器,它接收图像I和区域位置r,并输出该区域的视觉表示。 ℒ是一个语言编码器,它将自然语言文本转换为语义表示。
识别和定位的解耦。 图像区域理解有两个关键组成部分:定位和识别。 受[47]的启发,我们将这两个组件解耦,使用现有的区域定位器,并通过学习区域视觉语义空间(无需大量人工标注)来关注区域识别。
方法概述。 如图2所示,我们将𝒱t和ℒ表示为预训练的视觉和语言编码器,用于将图像与其描述匹配,例如 CLIP。 我们的目标是训练一个视觉编码器𝒱,使其能够编码图像区域并将其与语言编码器ℒ编码的区域描述匹配。 为了解决缺乏大规模区域描述的挑战,如图2底部所示,我们构建了一个物体概念池,通过将概念填充到提示中来创建区域描述,并利用教师编码器𝒱t将这些文本描述与图像区域定位器提出的图像区域对齐。 给定生成的区域-文本对,我们的视觉编码器𝒱通过对比学习和概念蒸馏学习匹配这些对。 预训练完成后,我们的模型支持区域识别的零样本推理,并且在有人工标注的情况下可以迁移到目标检测器。
3.2基于区域的语言-图像预训练
我们介绍了如何获得区域级别的视觉和语义表示,然后描述了如何建立图像区域和区域描述之间的对齐。
3.2.1视觉和语义区域表示
视觉区域表示。 图像区域可以通过现成的目标定位器(例如,RPN[42])或密集滑动窗口(例如,随机区域)来提出。 默认情况下,我们使用在人工标注的目标边界框上预训练的RPN,不带目标标签。 我们使用RPN为批次中的所有图像提出图像区域,最终获得N个图像区域。 图像区域集合表示为{ri}i=1,…,N。 给定提出的区域,区域ri的视觉表示vi通过特征池化方法(例如RoIAlign[21])从我们的视觉编码器𝒱中提取。 RoIAlign使用插值从全图像的特征图中池化区域视觉特征。 特别地,我们注意到我们的视觉编码器𝒱由教师𝒱t初始化,以便它可以在视觉语义空间中有一个良好的起点。
语义区域表示。 单张图像通常包含丰富的语义,涵盖数千个类别中的一种或多种目标。 在大规模图像文本数据集中标注所有这些类别成本很高。 为此,我们首先构建了一个大型概念池,以穷尽地涵盖区域概念,而不管单个完整图像如何。 如图2底部所示,我们利用现成的语言解析器[27, 44],从文本语料库(例如,从互联网收集的图像描述)中解析出对象概念池。 给定概念池,区域的语义表示通过两个步骤创建:(1)我们通过将每个概念填充到提示模板(例如,CLIP[37]的提示)中来创建一个简短的句子。 例如,“风筝”概念将转换为“一张风筝的照片”。 (2)我们使用预训练的语言编码器ℒ将创建的文本描述编码为语义表示。 最后,所有区域概念都由它们的语义嵌入{lj}j=1,…,C表示,而C表示概念池的大小。
虽然我们的区域描述是基于图像描述构建的,但我们的方法不受与图像配对的特定文本描述的约束。 更重要的是,鉴于强大的语言编码器ℒ已经处理了自然语言中的许多单词,我们可以轻松地定制我们的概念池并将其扩展,这在人工标注中很难实现。 同样,在视觉模式下,视觉识别和定位的解耦使我们的方法能够灵活地采用不同的候选区域提取方式。
3.2.2区域的视觉语义对齐
区域-文本对齐。 我们利用教师视觉编码器𝒱t来创建图像区域和我们创建的文本(表示为语义嵌入)之间的对应关系。 同样,区域ri的视觉表示vit通过使用RoIAlign从教师编码器𝒱t中池化局部图像区域的特征来提取。 然后我们计算vit和每个概念嵌入lj之间的匹配分数。 匹配分数S(v,l)由
选择具有最高匹配分数的对象概念lm并将其链接到区域ri。 最后,我们获得每个区域的伪标签,即{vi,lm}对。
我们的预训练方案。 我们的预训练利用创建的区域-文本对和来自互联网的图像-文本对。 给定对齐的区域-文本对(由{vi,lm}表示),我们使用基于不同图像的图像区域的对比损失和蒸馏损失来预训练我们的视觉编码器。 对比损失计算如下
| Lcntrst=1N∑i−log(p(vi,lm)), |
| (2) |
其中p(vi,lm)由
|
p(vi,lm)=exp(S(vi,lm)/τ)exp(S(vi,lm)/τ)+∑k∈𝒩riexp(S(vi,lk)/τ).
|
| (3) |
τ是一个预定义的温度。 𝒩ri表示区域ri的一组负文本样本,即,与区域ri不匹配但与批次中其他区域匹配的对象概念。 除了对正负区域-文本对进行对比学习之外,我们还考虑对所有对象概念的每个图像区域进行知识蒸馏。 蒸馏损失定义为
| Ldist=1N∑iLKL(qit,qi), |
| (4) |
其中LKL是KL散度损失;qit和qi都是所有对象概念上的概率。 qit是来自教师模型计算的软目标softmax(S(vit,l1)/τ,…,S(vit,lC)/τ)。 qi计算为来自我们学生模型的softmax(S(vi,l1)/τ,…,S(vi,lC)/τ)。
给定从互联网收集的图像-文本对,我们的区域级对比损失Lcntrst可以自然地扩展到图像级对比损失Lcntrst−img。 它可以被认为是一个特例,其中(1)视觉表示是为覆盖整个图像的单个全局框提取的;(2)文本描述是从互联网收集的;(3)负样本是与其他图像一起出现的文本描述。 最后,我们的总体损失函数由
| L=Lcntrst+Ldist+Lcntrst−img. |
| (5) |
零样本推理. 预训练完成后,我们的视觉编码器可以直接应用于区域推理任务。 例如,给定来自RPN的图像区域建议,从我们的视觉编码器中提取的区域表示与目标对象概念的嵌入相匹配,从而预测最可能的类别。 受[47, 63]的启发,我们通过几何平均值融合RPN目标性得分和类别置信度得分。 根据经验,我们观察到RPN得分显著提高了零样本推理性能。
3.3用于目标检测的迁移学习
在预训练中,我们的视觉编码器从由教师模型创建的区域-文本对齐中学习。 这种对齐不需要人工干预,但不可避免地存在噪声和弱点。 当图像区域的强监督可用时(例如,人工标注的检测标签),我们的视觉编码器可以通过简单地替换区域描述来进一步微调,如图2的第3部分所示。
具体来说,我们通过初始化目标检测器的视觉主干来迁移我们预训练的视觉编码器。 为了检测图像对象,与我们的预训练相同,我们使用现成的RPN来定位对象区域,并通过匹配其视觉区域表示和目标对象类别的语义嵌入来识别这些区域(例如,检测数据集中的对象类别)。
开放词汇目标检测的训练 [59]. 在这种设置下,检测器通过基本类别的标注进行训练,同时期望检测在检测器训练中从未见过的新的类别。 特别地,我们应用逐类加权交叉熵损失来训练我们的检测器。 (1) 对于基本类别,受焦点损失[32]的启发,我们应用焦点缩放并计算基本类别的权重为(1−pb)γ,其中pb是该基本类别的softmax后的概率,γ是一个超参数。 根据经验,焦点缩放有效地减轻了预训练中先前学习的对象概念的遗忘,尤其是在数据集中基本类别很少的情况下(例如,COCO)。 我们推测,检测器可能会过度拟合于少量基础类别,从而损害其在新型类别上的泛化能力。 (2) 对于背景类别,我们使用固定的全零嵌入,并根据[59]对背景区域应用预定义权重。
4实验
我们的模型主要在开放词汇目标检测的迁移学习方面进行评估。 我们还展示了目标检测零样本推理的结果。 最后,我们对不同的模型组件进行了消融研究。
数据集。 对于预训练,我们使用来自Conceptual Caption数据集 (CC3M)[45]的图像-文本对,该数据集从网络上收集了300万个图像-文本对。 在进行消融研究时,我们还考虑使用较小的数据集COCO Caption (COCO Cap)[7]来预训练我们的模型。 COCO Cap包含118k张图像,每张图像都由人工标注了5个标题。 我们从COCO/CC3M数据集中解析了目标概念,并过滤掉频率低于100的概念,最终得到4764/6790个概念。
对于开放词汇目标检测的迁移学习,我们分别使用COCO检测数据集[33]和LVIS数据集 (v1)[19]的基础类别来训练检测器。 在COCO上,我们遵循[2]的数据分割,包含48个基础类别和17个新型类别,它们是COCO目标类别的子集。 我们使用[59]中处理过的数据,包含107,761张训练图像和4,836张测试图像。 在LVIS上,遵循[18],我们使用训练/验证图像进行训练/评估,并采用包含866个基础类别(常见和频繁出现的物体)和337个新型类别(稀有物体)的类别划分。
我们评估了COCO和LVIS上目标检测的性能,包括迁移学习和零样本推理。
Visual Encoder Pretraining | Detector Training | COCO |
Novel(17) | Base(48) | Generalized (17+48) |
Method | Dataset | Backbone | Method | Backbone | Novel | Base | All |
Cls-ResNet [22] | ImageNet | RN50 | FR-CNN [42] | RN50-C4 | - | 54.5 | - | - | - |
Cls-IncRN [49] | ImageNet | IncRNv2 | SB [2] | IncRNv2 | 0.70 | 29.7 | 0.31 | 29.2 | 24.9 |
Cls-DarkNet [41] | ImageNet | DarkNet19 | DELO [64] | DarkNet19 | 7.60 | 14.0 | 3.41 | 13.8 | 13.0 |
Cls-ResNet [22] | ImageNet | RN50 | PL [38] | RN50-FPN | 10.0 | 36.8 | 4.12 | 35.9 | 27.9 |
OVR [59] | COCO Cap | RN50 | OVR [59] | RN50-C4 | 27.5 | 46.8 | 22.8 | 46.0 | 39.9 |
OVR [59] | CC3M | RN50 | OVR [59] | RN50-C4 | 16.7 | 43.0 | - | - | 34.3 |
CLIP [37] | CLIP400M | ViT-B/32 | ViLD* [18] | RN50-FPN | - | - | 27.6 | 59.5 | 51.3 |
CLIP [37] | CLIP400M | RN50 | Ours | RN50-C4 | 22.5 | 53.1 | 14.2 | 52.8 | 42.7 |
Ours | COCO Cap | RN50 | Ours | RN50-C4 | 30.8 | 55.2 | 26.8 | 54.8 | 47.5 |
Ours | CC3M | RN50 | Ours | RN50-C4 | 35.2 | 57.6 | 31.4 | 57.1 | 50.4 |
Ours | CC3M | RN50x4 | Ours | RN50x4-C4 | 43.3 | 61.9 | 39.3 | 61.6 | 55.7 |
表1: COCO数据集上的开放词汇目标检测结果。 通过我们预训练的视觉编码器初始化,我们的检测器在所有指标上都以显著的优势超越了已发表的作品,并在新类别上超越了未发表的作品ViLD*。 ViLD* 使用复制粘贴[15]的数据增强和更长的训练时间表 (16倍)来训练检测器。 符号说明:Cls表示在ImageNet [10]上的图像分类预训练,RN50表示ResNet50,IncRNv2表示Inception-ResNet-V2。
Visual Encoder Pretraining | Detector Training | LVIS |
---|
Method | Dataset | Backbone | Method | Backbone | Training Strategy | Supervision | APr | APc | APf | mAP |
---|
- | - | - | Mask RCNN [21] | RN50-FPN | 16x+Copy-paste [15] | Base+Novel | 13.0 | 26.7 | 37.4 | 28.5 |
---|
Cls-ResNet [22] | ImageNet | RN50 | Mask RCNN [21] | RN50-C4 | 1x+Standard | Base+Novel | 11.9 | 22.0 | 29.7 | 23.3 |
---|
CLIP [37] | CLIP400M | ViT-B/32 | ViLD* [18] | RN50-FPN | 16x+Copy-paste [15] | Base | 16.7 | 26.5 | 34.2 | 27.8 |
---|
Ours | CC3M | RN50 | Ours | RN50-C4 | 1x+Standard | Base | 17.1 | 27.4 | 34.0 | 28.2 |
---|
CLIP [37] | CLIP400M | ViT-B/32 | ViLD* [18] | RN152-FPN | 16x+Copy-paste [15] | Base | 19.8 | 27.1 | 34.5 | 28.7 |
---|
Ours | CC3M | RN50x4 | Ours | RN50x4-C4 | 1x+Standard | Base | 22.0 | 32.1 | 36.9 | 32.3 |
---|
表2: LVIS数据集上的开放词汇目标检测结果。 在没有复杂的训练策略的情况下,我们的检测器仍然在大多数指标上优于ViLD*。 使用相同的训练策略,我们的开放词汇检测器在所有指标上都优于完全监督的Mask RCNN。评估协议和指标。 我们采用标准的目标检测指标:平均精度均值 (AP) 和 AP50(联合交集为 0.5 时的 AP)。 我们在两个开放词汇目标检测基准上评估我们的模型,包括COCO和LVIS。 在COCO上,我们报告AP50并遵循[59]中的评估设置:(1) 只预测和评估新类别(Novel),(2) 只预测和评估基础类别(Base),(3) 预测和评估所有类别的广义设置(Generalized)。 在LVIS上,我们遵循[18]的基准,其中罕见物体被定义为新类别。 我们分别报告新类别的AP (APr)、基础类别的AP (APc, APf) 和所有类别的AP (mAP)。
实现细节。 在预训练期间,默认的学生模型和教师模型都是预训练CLIP的ResNet50 [22]。 预训练中使用的RPN使用LVIS数据集的基本类别进行训练。 我们的默认模型在CC3M数据集上进行了预训练,其中使用了从COCO Cap中解析的概念。 使用SGD,图像批次大小为96,初始学习率为0.002,最大迭代次数为600k,每张图像100个区域。 对于目标检测的迁移学习,我们的检测器是在Detectron2 [54]上使用具有ResNet50-C4架构的Faster RCNN [42] 开发的。 迁移学习中使用的RPN由目标数据集的基本类别训练(例如,在COCO上进行迁移学习使用了在COCO上训练的RPN)。 使用SGD,图像批次大小为16,初始学习率为0.002,并使用1x调度。 背景类别的权重在COCO/LVIS上设置为0.2/0.8。 焦点缩放特别应用于COCO训练,γ设置为0.5。 对于目标检测的零样本推理,RPN与预训练阶段相同,NMS阈值设置为0.9。 对于所有实验,温度 τ 为0.01。
4.1目标检测的迁移学习
我们展示了在COCO和LVIS数据集上进行开放词汇目标检测的迁移学习结果。 此外,我们报告了完全监督设置的结果,其中在训练期间使用了所有类别。
Visual Encoder Pretraining | Detector Training | COCO | LVIS |
---|
Train: 80, Test: 80 | Train: 1203, Test: 1203 |
---|
Method | Dataset | Backbone | Method | Backbone | AP50 | mAP | APr | APc | APf | mAP |
---|
Cls-ResNet [22] | ImageNet | RN50 | FR-CNN [42] | RN50-C4 | 55.9 | 35.7 | 11.9 | 22.0 | 29.7 | 23.3 |
CLIP [37] | CLIP400M | RN50 | Ours | RN50-C4 | 56.3 | 36.4 | 16.0 | 25.0 | 32.0 | 26.2 |
Ours | CC3M | RN50 | Ours | RN50-C4 | 59.8 | 38.8 | 18.6 | 27.8 | 34.8 | 29.0 |
Ours | CC3M | RN50x4 | Ours | RN50x4-C4 | 64.4 | 42.7 | 24.5 | 32.0 | 36.5 | 32.5 |
表3: COCO和LVIS数据集上的完全监督目标检测结果。 我们由预训练视觉编码器初始化的检测器收敛速度更快,并且在 1x 调度下,在所有指标上均显著优于 ImageNet 和 CLIP 的预训练主干网络。
Visual Encoder Pretraining | RegionProposals | COCO | LVIS |
---|
Method | Dataset | Backbone | Novel | Base | All | APr | APc | APf | mAP |
---|
OVR [59] | COCO Cap | RN50 | GT | 46.7 | 43.7 | 44.5 | - | - | - | - |
CLIP [37] | CLIP400M | RN50 | GT | 58.6 | 58.2 | 58.3 | 40.3 | 41.7 | 43.6 | 42.2 |
Ours | CC3M | RN50 | GT | 60.5 | 61.7 | 61.4 | 40.7 | 43.5 | 47.0 | 44.4 |
Ours | CC3M | RN50x4 | GT | 65.2 | 65.6 | 65.5 | 50.1 | 50.1 | 51.7 | 50.7 |
OVR [59] | COCO Cap | RN50 | RPN | 24.6 | 17.9 | 19.6 | - | - | - | - |
CLIP [37] | CLIP400M | RN50 | RPN | 29.7 | 24.0 | 25.5 | 11.6 | 9.6 | 7.6 | 9.2 |
Ours | CC3M | RN50 | RPN | 31.4 | 25.2 | 26.8 | 10.9 | 10.4 | 8.2 | 9.6 |
Ours | CC3M | RN50x4 | RPN | 34.6 | 27.9 | 29.6 | 13.8 | 12.1 | 9.4 | 11.3 |
表 4: 在 COCO 和 LVIS 数据集上使用真实框 (GT) 或 RPN 框进行零样本推理。 所有模型都使用 RoIAlign 来提取所提出图像区域的视觉表示。 我们的预训练模型在各个数据集上均以明显的优势超过基线模型。4.1.1 开放词汇目标检测
设置。 检测器在基础类别上进行训练,同时在基础类别和新颖类别上进行评估(例如,在 COCO/LVIS 上分别为 48/866 个基础类别和 17/337 个新颖类别)。 为了与 ViLD [18] 进行比较,在 LVIS 上的所有实验还使用掩码标注来训练检测器。
基线模型。 我们考虑以下几个基线模型:
∙
零样本目标检测器(SB [2],DELO [64],PL [38]):零样本目标检测是与开放词汇目标检测最接近的领域。 这些检测器通常依赖于目标类别的预训练词嵌入,以便泛化到新颖类别。
∙
开放词汇目标检测器(OVR [59],ViLD [18]):这些检测器利用从图像文本对中学习了大量词汇的预训练视觉语言模型。 OVR 是我们强劲的竞争对手,因为我们都预训练视觉编码器并将其用作检测器初始化。 ViLD 是一项最近未发表的作品,它专注于通过蒸馏预训练模型(来自 CLIP)的视觉特征来训练检测器。 ViLD 特别使用了复制粘贴[15]的数据增强方法,并采用了 16 倍的训练计划。
∙
全监督检测器:在 COCO 数据集上,我们包含了来自 OVR 的监督基线,这是一个 Faster RCNN[42],它使用基本类别进行训练,训练计划为 1 倍。 在 LVIS 数据集上,我们包含了来自 ViLD 的监督基线,这是一个 Mask RCNN[21],它使用基本类别和新颖类别进行训练,并使用了与 ViLD 相同的特殊数据增强方法。 我们还报告了使用 Detectron2[54]以标准 1 倍训练计划训练的 Mask RCNN。
∙
我们的检测器变体:我们考虑使用不同的预训练视觉编码器初始化我们的检测器,包括 CLIP 和我们基于 COCO Cap 预训练的模型。
结果。 表格1和表格2分别显示了在 COCO 和 LVIS 数据集上的结果。
在 COCO 数据集上,通过我们预训练的主干网络初始化,我们的检测器在所有指标上都显著优于先前发布的最佳方法 OVR[59](例如,在新的类别上为 31.4 对比 22.8)。 与我们基于区域的预训练所使用的 CLIP 主干网络相比,我们的模型在所有指标上都有显著的提升,尤其是在新类别上 AP50 提升了 +17.2。 与 ViLD(一种具有复杂训练策略的未发表的最佳方法)相比,我们的模型在基本类别和所有类别上的性能仍然相当,而在新类别上则明显更好(例如,31.4 对比 27.6),而新类别是开放词汇检测的主要关注点。 在 LVIS 数据集上,在主干网络大小相当的情况下(我们的 RN50x4-C4:83.4M,ViLD 的 RN152-FPN:84.1M),我们的检测器大幅超越了 ViLD(例如,+2.2 APr 和 +3.6 mAP)。 请注意,这些在 COCO 和 LVIS 数据集上优越的检测结果是通过使用单个预训练主干网络,以及标准数据增强和 1 倍训练计划实现的。 这些结果表明,我们基于区域的视觉语言预训练学习到了图像区域和对象概念之间更好的对齐,从而促进了开放词汇目标检测。
4.1.2全监督目标检测
设置。 在训练和评估期间使用了所有目标类别的检测标注。 再者,所有在LVIS上的实验都额外使用掩码标注来训练检测器。
基线。 我们考虑以下基线:(1)Faster RCNN [42],由ImageNet预训练主干初始化:这是社区中常用的目标检测器。 (2)我们由预训练CLIP初始化的检测器。 此基线用于验证我们提出的预训练方法。
结果。 在表3中,由我们预训练的视觉主干初始化的检测器大大优于由ImageNet和CLIP主干初始化的基线(例如,在COCO上+2.4 mAP,在LVIS上+2.8 mAP)。 这些结果表明,我们提出的预训练方法有助于完全监督的检测器更快收敛并在1x调度下取得更好的性能。 同样,当使用RN50x4作为教师模型和学生模型的主干时,性能得到显著提高(例如,在COCO上为38.8 vs. 42.7 mAP,在LVIS上为29.0 vs. 32.5)。
4.2 目标检测的零样本推理
设置。 在不针对检测标注进行微调的情况下,直接使用预训练的视觉语言模型来识别提出的区域。 我们使用与迁移学习实验相同的评估数据集和指标。 我们考虑两种类型的区域建议:(1)地面真实边界框用作区域建议。 此设置旨在通过消除定位误差来评估识别性能。 (2)区域建议来自RPN,该RPN也用于预训练。 此设置下的性能取决于RPN的质量和识别能力。
基线。 我们考虑两个基线:(1)OVR [59] 在COCO Cap的图像-文本对上预训练视觉主干,COCO Cap与COCO检测数据集具有相近的对象概念。 我们评估了其代码库中提供的预训练模型。 (2)CLIP [37] 在4亿个图像-文本对上进行预训练。 OVR和CLIP都对图像-文本对进行预训练,而我们的预训练利用创建的区域-文本对来学习视觉区域表示。
结果。 表 4 总结了结果。 使用理想的区域建议,我们的预训练模型在各个数据集上都明显优于CLIP基线(例如,COCO上的All AP50为61.4对58.3,LVIS上的mAP为44.4对42.2)。 与OVR相比,我们的模型表现出更大的优势(例如,COCO上的All AP50为61.4对44.5),更不用说OVR是在与评估相同的数据集上进行预训练的。 即使使用RPN建议,我们的模型仍然明显优于CLIP和OVR(例如,COCO上为26.8对19.6和25.5,LVIS上为9.6对9.2)。 这些令人鼓舞的结果表明,我们具有区域-文本对齐的预训练方法提高了图像区域的视觉识别能力。 使用RN50x4架构作为教师模型和学生模型的主干,零样本推理性能在各个数据集和不同类型的区域建议上进一步提高(例如,LVIS上使用GT框提高了+6.3 mAP,COCO上使用RPN框提高了+2.8 All)。
Region-textPairs | Image-textPairs | COCOZero-shot Inference | COCO |
Generalized (17+48) |
All (RPN) | All (GT) | Novel | Base | All |
✓ |
| 26.7 | 60.4 | 21.4 | 55.5 | 46.6 |
✓ | ✓ | 28.0 | 62.8 | 26.8 | 54.8 | 47.5 |
表5: 预训练监督的消融研究。 所有模型都在COCO Cap上进行预训练。
Region Type | COCOZero-shot Inference | COCO |
Generalized (17+48) |
Random | RPN | All (RPN) | All (GT) | Novel | Base | All |
✓ |
| 27.1 | 60.8 | 25.2 | 54.5 | 46.9 |
| ✓ | 28.0 | 62.8 | 26.8 | 54.8 | 47.5 |
表6: 预训练期间使用的区域类型的消融研究。 所有模型都在COCO Cap上进行预训练。4.3 消融研究
本节的评估使用COCO数据集和与零样本推理和迁移学习相同的指标。
预训练监督。 表5研究了不同预训练监督的影响。 因此,尽管使用区域-文本对已经获得了合理的成果,但来自图像-文本对的额外监督可以进一步提高性能(例如,零样本推理中使用GT框时AP50提高+2.4,迁移学习中Novel AP50提高+5.4)。 我们怀疑图像-文本对提供了来自全局图像描述的额外上下文信息,这弥补了我们创建的区域描述的不足。
图像区域类型。 表6研究了预训练期间区域建议质量的影响。 我们用随机位置和随机纵横比采样相同数量的图像区域来替换RPN建议。 随机框损害零样本推理(使用GT框时AP50降低2.0),同时在迁移学习中保持相当的性能(46.9 vs. 47.5 全AP50)。 这些结果表明,我们的预训练对区域建议的质量具有鲁棒性。 零样本推理受益于更高质量的建议,但当可以使用人工监督来微调模型时,差距会变小。
预训练数据集和概念池。 在表7中,使用COCO Cap数据集或COCO概念可获得更好的零样本推理性能(使用GT框时AP50分别为62.8、61.4和60.8)。 我们假设COCO Cap与COCO检测数据集的域差距较小。 然而,在CC3M上预训练的模型在迁移学习方面取得了显著提升(47.5 vs. 50.4 全AP50)。 我们推测该模型从CC3M中更多数量的图像中学习到更通用的视觉表示。
预训练损失。 表8研究了不同损失的影响。 使用对比损失和蒸馏损失,模型在零样本推理上取得了与仅蒸馏模型相近的结果(例如,使用GT框时为62.8 vs. 63.1 AP50),同时在迁移学习上取得了最佳性能(例如,26.8 新颖AP50)。 这些结果表明两种损失发挥着不同的作用。 蒸馏损失有助于继承教师模型中的视觉语义知识,而对比损失则增强了迁移学习的判别表示。
PretrainingDataset | ConceptPool Source | COCOZero-shot Inference | COCO |
---|
Generalized (17+48) |
---|
All (RPN) | All (GT) | Novel | Base | All |
---|
COCO Cap | COCO Cap | 28.0 | 62.8 | 26.8 | 54.8 | 47.5 |
CC3M | COCO Cap | 26.8 | 61.4 | 31.4 | 57.1 | 50.4 |
CC3M | CC3M | 26.5 | 60.8 | 29.1 | 56.0 | 49.0 |
表7: 预训练数据集和概念池来源的消融研究。
Pretraining Loss | COCOZero-shot Inference | COCO |
---|
Generalized (17+48) |
Contrastive | Distillation | All (RPN) | All (GT) | Novel | Base | All |
✓ |
| 25.2 | 58.2 | 21.8 | 54.2 | 45.8 |
---|
| ✓ | 27.8 | 63.1 | 24.1 | 54.6 | 46.7 |
✓ | ✓ | 28.0 | 62.8 | 26.8 | 54.8 | 47.5 |
表8: 预训练过程中损失函数的消融研究。 所有模型都使用在 COCO Cap 上预训练的图像级对比损失。教师模型和学生模型。 表格 9 研究了使用不同教师模型和学生模型的影响。 与第一行的默认设置相比,使用 ResNet50x4 作为教师模型可以大幅提高零样本推理性能(使用 GT 框时 AP50 提高了 +4.2)。 然而,在迁移学习设置中,使用更强的教师模型的性能大致相同(所有类别 AP50 均为 50.4)。 当我们进一步将学生模型替换为 ResNet50x4 时,迁移学习性能显著提高(所有类别 AP50 提高了 +5.3),但零样本推理性能保持不变(使用 RPN 框时为 29.6 对比 29.3 AP50)。 基于这些结果,我们推测零样本推理性能依赖于指导区域文本对齐的教师模型,而迁移学习更可能受学生模型容量的限制。
TeacherBackbone | StudentBackbone | COCOZero-shot Inference | COCO |
Generalized (17+48) |
All (RPN) | All (GT) | Novel | Base | All |
RN50 | RN50 | 26.8 | 61.4 | 31.4 | 57.1 | 50.4 |
RN50x4 | RN50 | 29.3 | 65.6 | 30.8 | 57.3 | 50.4 |
RN50x4 | RN50x4 | 29.6 | 65.5 | 39.3 | 61.6 | 55.7 |
Focal Scaling | COCO |
---|
Generalized (17+48) |
Novel | Base | All |
| 22.6 | 58.5 | 49.1 |
---|
✓ | 31.4 | 57.1 | 50.4 |
---|
焦点缩放。 表格 10 研究了迁移学习过程中焦点缩放的影响。 使用焦点缩放,微调后的检测器在 COCO 数据集上实现了新类别和基础类别之间更好的平衡。 我们推测检测器过度拟合了COCO中少量基础类别(例如,48个基础类别),这损害了其在新型类别上的泛化能力。 焦点缩放有效地减轻了潜在的过拟合。
4.4讨论
可视化。 图3显示了使用真实边界框和COCO数据集中的65个类别进行零样本推理的结果。 与CLIP相比,我们的模型预测了更合理的类别(例如,第一列和第二列的蓝色区域被我们的模型正确预测为“雨伞”和“人”)。 这些结果表明,我们提出的基于区域的视觉语言预训练可以帮助精确识别图像区域。
此外,预训练模型可以通过简单地替换目标类别的语言嵌入来预测自定义对象概念。 图4显示了使用真实边界框和LVIS数据集中的1203个类别进行零样本推理的结果,而不是COCO数据集中的少量65个类别。 我们显示了每个区域的前三个预测及其置信度分数。
如图4中的成功案例所示,我们的预训练模型可以正确识别图像区域,而CLIP模型经常无法预测正确的标签(例如,“泰迪熊”由我们的模型预测,置信度分数高达99.5%)。 有趣的是,除了最自信的类别外,我们的模型还可以预测具有前三名分数的合理类别(例如,第一个例子中的“熊”和第二个例子中的“松露巧克力”)。 即使在CLIP和我们的模型都未能将狗识别为最自信类别的情况下,我们的模型仍然可以识别图像区域为视觉上相似的概念(例如,“雪貂”和“幼兽”)或细粒度的狗类型(例如,“牧羊犬”)。 相反,CLIP预测的视觉相似度较低的概念,例如“灰熊”和“大猩猩”。
局限性 我们的工作有一些局限性,可以进一步研究。 (1)我们专注于学习物体概念,而没有明确地关注自然语言中的其他信息,例如物体属性和物体关系,这些信息对某些视觉任务(例如,视觉定位)是有益的。 学习全面的区域表示可以作为未来的工作。 (2)我们的方法依赖于CLIP的视觉语义空间,并且没有更新语言编码器。 当给定与CLIP相同规模的数据时,解冻语言编码器可能会在我们的基于区域的语言图像预训练中带来更大的收益。
5结论
在本文中,我们提出了一种新颖的基于区域的视觉语言预训练方法,该方法学习匹配图像区域及其描述。 我们的关键创新是一种可扩展的方法,用于关联区域文本对,超越配对文本数据中呈现的符元,无需人工标注。 从这种区域级对齐中学习,我们的预训练模型在转移到COCO和LVIS数据集上的开放词汇物体检测时,取得了新的最先进水平。 此外,我们的预训练模型在物体检测的零样本推理中也表现出了令人鼓舞的结果。 我们希望我们的工作能够为视觉区域理解的视觉语言预训练提供启示。