OV-DINO:统一开放词汇检测与语言感知选择性融合

news2024/9/20 16:25:29

文章目录

  • 摘要
  • 1、引言
  • 2、相关工作
  • 3、方法
    • 3.1、概述
    • 3.2、统一数据集成
    • 3.3、语言感知选择性融合
    • 3.4、以检测为中心的预训练
  • 4、实验
    • 4.1、预训练数据和评估指标
    • 4.2、实施细节
    • 4.3、主要结果
    • 4.4、消融研究
    • 4.5、定性结果
  • 5 、讨论

摘要

开放词汇检测(Open-vocabulary Detection, OVD)是一项挑战性任务,因为它要求基于包括在训练过程中未遇到的类别名称在内的类别名称来检测对象。现有的方法通过在多样化的大规模数据集上进行预训练和伪标签生成,展示了强大的零样本检测能力。然而,这些方法面临两个主要挑战:(i)如何有效消除伪标签生成中的数据噪声;(ii)如何高效利用语言感知能力进行区域级跨模态融合和对齐。为了应对这些挑战,我们提出了一种名为OV-DINO的新型统一开放词汇检测方法,该方法在统一框架中通过语言感知选择性融合在多样化的大规模数据集上进行预训练。具体来说,我们引入了一个统一数据集成(Unified Data Integration, UniDI)流程,通过将不同数据源统一为以检测为中心的数据格式,实现端到端训练,并消除伪标签生成中的噪声。此外,我们提出了一个语言感知选择性融合(Language-Aware Selective Fusion, LASF)模块,通过语言感知查询选择和融合过程增强跨模态对齐。我们在流行的开放词汇检测基准测试上评估了所提出的OV-DINO的性能,在零样本情况下在COCO基准测试上达到了50.6%的AP,在LVIS基准测试上达到了40.1%的AP,展示了其强大的泛化能力。此外,在COCO上微调的OV-DINO达到了58.4%的AP,超越了许多具有相同骨干网络的现有方法。OV-DINO的代码可在https://github.com/wanghao9610/OV-DINO获取。

1、引言

传统的目标检测方法,如Fast RCNN [4]、Faster R-CNN [5]、Mask R-CNN [6]、DETR [7]和DINO [8],通常在封闭集类别的数据集上进行训练,这限制了它们检测预定义类别之外对象的能力,这对于现实世界的应用是一个显著的限制。为了解决这一限制,提出了一种称为开放词汇检测(Open-Vocabulary Detection, OVD)的新任务,引起了学术界和工业界的广泛关注。开放词汇检测要求能够使用类别名称检测任何对象,甚至包括在训练过程中从未遇到过的对象。OVD的发展可以追溯到Bansal等人[9]引入的零样本检测(Zero-Shot Detection, ZSD),其中模型在有限类别集上进行训练,并在新类别上进行评估。在ZSD的基础上,Zareian等人[10]通过利用从图像-文本数据中派生的视觉语义空间,进一步扩展了OVD的概念,从而增强了类别泛化能力。
在这里插入图片描述

最近的研究表明,开放世界视觉方法的发展,如[1]、[3]、[14]-[16],使得检测预定义类别之外的对象成为可能。它们通常在大规模检测和定位数据集上对模型进行预训练,然后为图像-文本数据生成伪标签。这引入了两个不同的挑战:

  • (i)图像-文本数据上伪标签生成的数据噪声。这归因于检测数据的有限词汇概念,用此类数据训练的模型泛化能力较差,导致在图像-文本数据上进行伪标签生成时预测不准确,如图1(a)所示。当前的方法,如GLIP [1]、GLIPv2 [2]和G-DINO [3],将检测视为定位任务。这些方法使得在大规模检测和定位数据集上对模型进行预训练,然后为图像-文本数据生成伪标签。然而,这两类数据集涉及的类别仍然有限。预训练模型生成的伪标签在处理图像-文本数据中的新类别时不可避免地引入噪声。
  • (ii)对象特征与类别描述之间的对齐。OVD方法旨在基于特定类别描述检测相应对象。图像中的对象通常表现出多样化的特征,这在检测/对齐它们与特定类别描述时提出了挑战。例如,给定类别描述“一张猫的照片”,模型预期将类别描述与不同品种、大小、颜色等的猫对齐。为了应对这一挑战,GLIP [1]引入了复杂的深度融合,将视觉特征整合到文本特征中。G-DINO [3]提出了基于双向交叉注意力的轻量级特征增强器,以改善文本嵌入表示。这些方法利用图像特征动态增强文本嵌入,以实现更好的模态对齐。然而,当图像包含同一类别的多个对象时,这些对象的视觉特征在单一文本嵌入中混淆,使得将文本嵌入与每个对象对齐变得困难。
    在这里插入图片描述

为了应对这两个关键挑战,我们引入了一种名为OV-DINO的新型方法进行开放词汇检测。对于第一个挑战,我们提出了一个统一数据集成(UniDI)流程,将不同数据源整合为统一的以检测为中心的数据格式,并在大规模数据集上以端到端方式对模型进行预训练,如图1(b)所示。为了实现这一点,我们将图像大小的边界框视为图像-文本数据的注释框。检测名词、定位短语和图像标题作为以检测为中心统一的类别。通过这样做,UniDI不仅消除了在图像-文本数据上生成伪标签的要求,而且在预训练阶段增强了词汇概念。对于第二个挑战,我们提出了一个语言感知选择性融合(LASF)模块,用于区域级跨模态融合和对齐。如图2(b)所示,LASF模块通过选择与文本相关的对象嵌入来增强嵌入表示。然后,它将与文本相关的对象嵌入注入查询中,以改善模态对齐。LASF允许模型动态地将类别描述与图像中的多样化对象对齐,从而实现更准确的预测。此外,我们提出了一种简单的监督训练过程的改进,用于DINO [8],以促进开放词汇检测的单阶段端到端训练,仅需对现有框架进行最小修改。为了验证其有效性,在流行的开放词汇检测数据集COCO [19]和LVIS [20]上进行了广泛的实验,无论是在零样本还是微调设置下,结果都证明了OV-DINO在两个数据集和设置上都实现了最先进的性能。为了突出我们模型的特点,我们在表1中将OV-DINO与最近的方法在方法类型、模态融合和伪标签生成方面进行了比较。
在这里插入图片描述

总之,我们的主要贡献如下:

  • 我们提出了OV-DINO,这是一种新型的统一开放词汇检测方法,为实际现实世界应用提供了优越的性能和有效性。
  • 我们提出了一个统一数据集成流程,用于端到端预训练整合多样化数据源,以及一个语言感知选择性融合模块,以改善模型的视觉-语言对齐。
  • 与以前的方法相比,所提出的OV-DINO在COCO和LVIS基准测试上显示出显著的性能提升,在零样本评估中与G-DINO相比,COCO上相对提高了+2.5% AP,LVIS上相对提高了+12.7% AP。预训练模型和代码将开源,以支持开放视觉发展。

2、相关工作

视觉-语言预训练。传统的监督视觉方法[21]-[25]通常依赖于人工注释,从而限制了模型的泛化能力。此外,为罕见类别定义一个全面的类别列表并收集足够的样本数据是具有挑战性的[14]、[26]、[27]。昂贵的标记成本限制了视觉模型在开放世界场景中的广泛应用。为了克服数据注释的限制,提出了视觉-语言预训练,它是自然语言处理(NLP)[28]、[29]和计算机视觉[30]领域成功预训练然后微调方案的自然扩展和发展。双流方法如CLIP [11]和ALIGN [12]通过在大规模图像-文本对数据(例如CC12M [31]、YFCC100M [32]、Laion5B [33])上进行跨模态对比学习,展示了出色的零样本分类能力。单流方法[34]-[36]通过两个独立的基于变换器的编码器直接对视觉和文本嵌入进行建模,它们在图像-文本[37]-[39]和VQA[40]-[42]等任务中表现良好。最近,VLMo [43]、BLIP [44]和BLIPv2 [45]进一步探索了结合单流和双流架构的混合架构,以促进更紧密的视觉-语言理解和生成方式。然而,这些模型主要关注学习整幅图像的视觉表示,不能直接应用于更复杂的核心计算机视觉任务,如分割和检测,这些任务需要细粒度的语义理解。

开放词汇检测。传统的目标检测方法[4]-[6]在监督场景中取得了成功,但在适应具有大量类别的开放世界场景时面临挑战。探索获取更多语义概念的方法对于开放词汇检测(OVD)相关任务是具有挑战性的。最近的方法,如RegionCLIP [46]、Baron [46]和ViLD [47],专注于提取复杂的语义对应关系和信息,以提高新类别的包容性。然而,这些方法基于预训练的CLIP模型,限制了它们的泛化能力。此外,最近的方法如GLIP [1]、GDINO [3]和GLIPv2 [2]旨在整合多种数据源以丰富模型的概念库。这些方法将目标检测视为定位任务,并为图像-文本数据生成伪标签。然而,以定位为导向的统一限制了文本的输入长度,伪标签生成为模型引入了噪声。同时,DetCLIP [17]提出了一种字典丰富的视觉概念并行预训练方案,以并行方式预训练模型。DetCLIPv2 [48]进一步通过利用不同数据源的不同损失,努力以可扩展的预训练方法统一所有数据源,牺牲了架构的效率。

因此,本文提出了一个统一框架,将所有数据类型整合到目标检测数据格式中。所提出的方法旨在在克服文本长度限制和伪标签生成的必要性的同时,为模型提供更准确的监督信息。这个统一框架旨在增强模型的泛化能力并提高开放词汇检测的性能。

模态信息融合和对齐。视觉-语言模型(VLM)具有两种不同的视觉和语言模态,有效地融合和对齐模态信息对于VLM至关重要。在图像级VLM中,CLIP [11]和ALIGN [12]直接使用对比损失[49]对视觉和语言模态进行对齐,FILIP [13]进一步在细粒度规模上对齐模态信息。为了有效地对齐和融合跨模态信息,ALBEF [50]提出了先对齐后融合的方法,该方法利用多模态编码器通过跨模态注意力融合图像特征和文本特征,并使用中间图像-文本对比损失对模态进行对齐。Flamingo [51]通过GATED XATTN-DENSE层桥接仅限视觉模型和仅限语言模型,实现了在众多基准测试中的惊人结果。对于细粒度的跨模态理解,图像级模态融合和对齐对于细粒度视觉-语言理解是不够的。在区域级VLM中,RegionCLIP [46]直接通过区域-文本预训练将区域表示与区域描述对齐,VLDet [52]将区域-文本对齐视为二分图匹配问题。DetCLIP [17]和DetCLIPv2 [48]进一步通过大规模预训练扩展了区域-文本对齐方案,实现了出色的开放词汇检测性能。然而,这些方法主要集中于对齐模态信息,而忽略了区域-文本模态融合。为了将语言信息与区域表示融合,GLIP [1]最初在编码器阶段使用交叉注意力模块整合跨模态信息,然后使用区域-词对齐损失进行对齐。G-DINO [3]进一步在解码器阶段整合模态。尽管先前的方法已经考虑了融合和对齐以促进跨模态信息交互,但它们并未有效地平衡融合和对齐之间的关系。本文旨在平衡模态信息的融合和对齐,以增强模型在语言输入指导下捕捉精确图像细节的能力。

3、方法

本文旨在开发一个统一的预训练框架,将不同数据源整合到适合开放词汇检测任务的标准化格式中。为了实现这一目标,我们提出了一个名为OV-DINO的新型模型,该模型利用多样化的数据源在统一的预训练框架内提高开放词汇检测器的性能(第3.1节)。为了促进不同数据源之间的统一预训练,我们开发了一个适用于各种数据源的统一数据集成(UniDI)流程(第3.2节)。为了融合和对齐文本嵌入和特定区域视觉嵌入之间的细粒度语义,我们引入了一个语言感知选择性融合(LASF)模块,以动态选择和融合区域级视觉-语言信息(第3.3节)。为了支持以检测为中心的预训练,我们还开发了一个简单的预训练框架,其设计简单,与封闭集检测器DINO [3]的训练目标相似(第3.4节)。

3.1、概述

OV-DINO的整体框架如图3所示,包括文本编码器、图像编码器和检测解码器。给定一张带有提示的图像,使用特定模板将检测类别名词或定位短语提示到标题中,以创建通用文本嵌入的统一表示。随后,使用专用的图像和文本编码器提取普通的图像和文本嵌入。在嵌入提取之后,将普通的图像嵌入连同位置嵌入输入到变换器编码层,以生成精细的图像嵌入。为了提高图像嵌入与文本嵌入之间的相关性,在检测解码器中采用了语言感知查询选择模块,以选择与文本嵌入相关的对象嵌入。所选的对象嵌入作为动态上下文嵌入,并与解码器中的静态可学习内容查询一起使用语言感知查询融合模块进行合并。最终解码层的输出查询然后用于分类投影和框回归,以预测相应的分类分数并回归对象框。
在这里插入图片描述

该模型在多样化的数据源(例如检测、定位和图像-文本数据)上进行预训练,以端到端的方式将特定区域的图像嵌入与相关文本嵌入对齐。它使用分类(对齐)损失和框回归损失进行优化。

3.2、统一数据集成

在OV-DINO的预训练阶段,我们利用多种数据源来丰富语义概念,包括检测、定位和图像-文本数据。这些数据以不同的格式进行注释。例如,检测数据用类别标签和框坐标进行注释,定位数据包括带有标记正面索引和框坐标的标题注释,而图像-文本数据仅包含图像的文本描述。通常,不同类型的数据需要不同的处理方法,例如为不同数据源设计不同的损失函数,并为图像-文本数据生成伪标签。这增加了模型优化的复杂性,阻碍了模型达到最佳性能。为了解决这个问题,我们提出了统一数据集成(UniDI),在数据准备过程中将所有数据源转换为统一的以检测为中心的数据格式,从而实现不同类型数据的无缝集成,并将来自多样化来源的数据协调用于端到端训练。将检测和定位数据集成相对直接,因为定位数据可以视为特定类型的检测数据,每个图像具有多个定位短语。挑战在于将大规模图像-文本数据无缝转换为检测数据格式。借鉴Detic [53]的灵感,我们认为图像的标题描述可以被视为图像的独特类别。此外,图像的注释框可以用作图像大小的边界框。这种称为标题框的创新方法,使得这三种类型的数据能够合并为以检测为中心的数据格式。

为了处理各种数据源,我们建立了一个标准化格式来表示数据的三元组 ( x , { b i } i = 1 n , y ) \left(x,\left\{b_{i}\right\}_{i=1}^{n}, y\right) (x,{bi}i=1n,y) ,其中 x ∈ R H × W × 3 x \in \mathbb{R}^{H \times W \times 3} xRH×W×3 代表图像输入, { b i ∈ R 4 } i = 1 n \left\{b_{i} \in \mathbb{R}^{4}\right\}_{i=1}^{n} {biR4}i=1n 代表边界框, y ∈ R C y \in \mathbb{R}^{C} yRC 代表语言文本输入。这里, H H H 代表图像高度, W W W 代表图像宽度, n n n 代表对象实例的数量。边界框 b i b_{i} bi 用作检测和定位数据的注释框,而对于图像-文本数据,它们代表图像大小的边界框。语言文本输入 y y y 根据数据类型而变化。对于检测数据,它由预定义的类别名称组成,对于定位数据,它代表实体的定位名词或短语,而对于图像-文本数据,它是整个标题。为确保语言文本嵌入的一致表示,我们使用简单的模板来提示检测和定位数据的文本(例如,一张 { c a t e g o r y } \{category \} {category} 的照片。),而保留图像-文本数据的文本输入不变,因为它已经作为标题。这种方法称为统一提示,使所有文本输入都能以标题的形式表示。

通过统一数据集成流程(标题框和统一提示),我们可以通过结合来自不同数据源的训练数据,包括检测、定位和图像-文本数据,来预训练模型。因此,它消除了在图像-文本数据上生成伪标签的必要性,并在预训练阶段增强了词汇概念。

3.3、语言感知选择性融合

开放词汇检测模型的目标是通过将给定的文本输入与图像的区域级语义上下文对齐来识别图像中的对象。然而,图像中的对象经常展现出多样化的语义上下文,这在将文本输入与这些各种语义上下文对齐时提出了挑战。为了克服这一挑战,我们提出了语言感知选择性融合(LASF)模块。该模块动态选择与文本相关的对象嵌入,并将它们注入查询中以改善模态对齐。LASF的详细架构如图4(a)所示。它包括两个基本组件:语言感知查询选择和语言感知查询融合。
在这里插入图片描述

语言感知查询选择组件通过评估图像嵌入和文本嵌入之间的相似性来选择对象嵌入。它计算多尺度图像嵌入 E enc  E_{\text {enc }} Eenc  和文本嵌入 E t E_{t} Et 之间的相似性,然后选择最相关的提议嵌入 E s p E_{s p} Esp 和对象嵌入 E s o E_{s o} Eso 。所选的提议嵌入用于初始化参考锚点,所选的对象嵌入 E so  E_{\text {so }} Eso  被转发以进行后续的查询融合。语言感知查询选择可以表述如下:

E s o , E s p = RankTop ⁡ ( E e n c ⊗ E t T ) E_{s o}, E_{s p}=\operatorname{RankTop}\left(E_{e n c} \otimes E_{t}^{T}\right) Eso,Esp=RankTop(EencEtT)

其中 E t T E_{t}^{T} EtT 表示 E t E_{t} Et 的转置, ⊗ \otimes 表示克罗内克积 [54],RankTop 是一个无参数操作,它按降序排列元素,然后选择前 Q Q Q 个元素, Q Q Q 是查询的数量。

语言感知查询融合组件在保留内容查询原始语义的同时逐步融合语言感知对象嵌入。这个组件是解码器层的重要组成部分,并重复 M M M 次。每个解码器层包括多个子层,包括自注意力、交叉注意力、门控交叉注意力、门控前馈和前馈层。最初,它以多尺度图像嵌入 E enc  E_{\text {enc }} Eenc 、选定的对象嵌入 E so  E_{\text {so }} Eso  和可学习的内容包括查询 Q l c Q_{l c} Qlc 作为输入,然后动态更新内容包括查询 Q l c Q_{l c} Qlc 。语言感知查询融合可以表述如下:

Q l c 0 i = Φ A t t n ( q k v = Q l c i − 1 ) Q l c 1 i = Φ A t t n ( q = Q l c 0 i − 1 , k v = E e n c ) Q l c 2 i = Q l c 1 i + tanh ⁡ ( α a ) ∗ Φ A t t n ( q = Q l c 1 i , k v = E s o ) Q l c 3 i = Q l c 2 i + tanh ⁡ ( α b ) ∗ Φ F F W ( Q l c 2 i ) Q l c i = Φ F F W ( Q l c 3 i ) \begin{aligned} Q_{l c_{0}}^{i} & =\Phi_{A t t n}\left(q k v=Q_{l c}^{i-1}\right) \\ Q_{l c_{1}}^{i} & =\Phi_{A t t n}\left(q=Q_{l c_{0}}^{i-1}, k v=E_{e n c}\right) \\ Q_{l c_{2}}^{i} & =Q_{l c_{1}}^{i}+\tanh \left(\alpha_{a}\right) * \Phi_{A t t n}\left(q=Q_{l c_{1}}^{i}, k v=E_{s o}\right) \\ Q_{l c_{3}}^{i} & =Q_{l c_{2}}^{i}+\tanh \left(\alpha_{b}\right) * \Phi_{F F W}\left(Q_{l c_{2}}^{i}\right) \\ Q_{l c}^{i} & =\Phi_{F F W}\left(Q_{l c_{3}}^{i}\right) \end{aligned} Qlc0iQlc1iQlc2iQlc3iQlci=ΦAttn(qkv=Qlci1)=ΦAttn(q=Qlc0i1,kv=Eenc)=Qlc1i+tanh(αa)ΦAttn(q=Qlc1i,kv=Eso)=Qlc2i+tanh(αb)ΦFFW(Qlc2i)=ΦFFW(Qlc3i)

其中上标 i i i 表示模块索引, Φ Attn  \Phi_{\text {Attn }} ΦAttn  表示注意力层, Φ F F W \Phi_{F F W} ΦFFW 表示前馈层, α a \alpha_{a} αa α b \alpha_{b} αb 是可学习参数,初始化为零。这种初始化确保了训练与原始解码器框架的一致性,同时逐步将语言感知上下文融入内容包括查询。
在这里插入图片描述

为了方便理解,我们在算法1中展示了语言感知选择性融合(LASF)的伪代码。我们研究了三种LASF变体,这取决于对象嵌入的位置:后期LASF、中期LASF和早期LASF,如图4所示。此外,还考虑了G-DINO [3]中提出的典型跨模态融合(Typical-CMF)进行比较。

3.4、以检测为中心的预训练

在本节中,我们提出了一个一阶段端到端预训练范式,该范式整合了多种数据源。具体来说,我们利用所提出的UniDI流程将不同类型的数据转换为以检测为中心的数据格式。这个流程整合了来自多个来源的数据,包括检测数据、定位数据和图像-文本数据,便于使用广泛的语义理解进行检测模型的预训练。所有数据源遵循一致的模型前向过程和优化损失,从而以端到端的方式实现一阶段以检测为中心的预训练。

模型前向。OV-DINO接收三元组数据 ( x , { b i } i = 1 n , y ) \left(x,\left\{b_{i}\right\}_{i=1}^{n}\right. , y) (x,{bi}i=1n,y) 作为输入。图像编码器 Φ I \Phi_{I} ΦI 是一个图像主干,用于从输入图像 x ∈ R H × W × 3 x \in \mathbb{R}^{H \times W \times 3} xRH×W×3 中提取图像嵌入 E i ∈ R P × D E_{i} \in \mathbb{R}^{P \times D} EiRP×D,其中 P P P 代表展平图像嵌入的空间尺寸, D D D 代表嵌入的维度。文本编码器 Φ T \Phi_{T} ΦT 接收语言文本 y ∈ R C y \in \mathbb{R}^{C} yRC 作为输入,并获得文本嵌入 E t ∈ R C × D E_{t} \in \mathbb{R}^{C \times D} EtRC×D。OV-DINO的检测头包括一个变换器编码器、一个语言感知查询选择模块和一个带有语言感知查询融合模块的变换器解码器。变换器编码器 Φ E n c \Phi_{E n c} ΦEnc 接收编码后的图像嵌入 E i E_{i} Ei 作为输入,并输出精细的多尺度图像嵌入 E e n c E_{e n c} Eenc。语言感知查询选择模块根据文本嵌入 E t E_{t} Et 选择最相关的图像嵌入作为对象嵌入 E so  ∈ R Q × D E_{\text {so }} \in \mathbb{R}^{Q \times D} Eso RQ×D。变换器解码器接收可学习的内容包括查询 Q l c ∈ R Q × D Q_{l c} \in \mathbb{R}^{Q \times D} QlcRQ×D 作为输入,并与精细的图像嵌入 E e n c E_{e n c} Eenc 和选定的对象嵌入 E s o E_{s o} Eso 进行交互,这使得查询根据语言文本内容进行分类。在解码器之后,分类投影层 F c F_{c} Fc 将查询嵌入投影到分类查询logits O ∈ R Q × D O \in \mathbb{R}^{Q \times D} ORQ×D,回归层 F r F_{r} Fr 预测边界框坐标 B ∈ R Q × 4 B \in \mathbb{R}^{Q \times 4} BRQ×4。这里, Q Q Q C C C 分别表示查询的长度和提示标题的数量。分类对齐分数矩阵 S ∈ R Q × C S \in \mathbb{R}^{Q \times C} SRQ×C 通过计算 O O O E t T E_{t}^{T} EtT 的相似性获得。模型前向的整个过程可以表述如下:

E i = Φ I ( x ) , E t = Φ T ( y ) , E e n c = Φ E n c ( E i ) E s o = Φ Q S ( E e n c , E t ) , Q s f = Φ Q F ( E e n c , E s o , Q l c ) O = F c ( Q s f ) , B = F r ( Q s f ) , S = O ⊗ E t T \begin{aligned} E_{\mathrm{i}} & =\Phi_{\mathrm{I}}(x), E_{\mathrm{t}}=\Phi_{\mathrm{T}}(y), E_{\mathrm{enc}}=\Phi_{\mathrm{Enc}}\left(\mathrm{E}_{\mathrm{i}}\right) \\ E_{\mathrm{so}} & =\Phi_{\mathrm{QS}}\left(E_{\mathrm{enc}}, E_{\mathrm{t}}\right), Q_{\mathrm{sf}}=\Phi_{\mathrm{QF}}\left(E_{\mathrm{enc}}, E_{\mathrm{so}}, Q_{\mathrm{lc}}\right) \\ O & =F_{c}\left(Q_{\mathrm{sf}}\right), B=F_{r}\left(Q_{\mathrm{sf}}\right), S=O \otimes E_{\mathrm{t}}^{T} \end{aligned} EiEsoO=ΦI(x),Et=ΦT(y),Eenc=ΦEnc(Ei)=ΦQS(Eenc,Et),Qsf=ΦQF(Eenc,Eso,Qlc)=Fc(Qsf),B=Fr(Qsf),S=OEtT

其中 E t T E_{t}^{T} EtT 表示 E t E_{t} Et 的转置, ⊗ \otimes 表示克罗内克积 [54], E s p E_{\mathrm{sp}} Esp 为了简洁起见省略了。

模型优化。分类真值 G T c l s ∈ { 0 , 1 } Q × C \mathrm{GT}_{\mathrm{cls}} \in \{0,1\}^{Q \times C} GTcls{0,1}Q×C 是一个矩阵,指示预测区域和提示文本之间的匹配关系。边界框真值 G T box  ∈ R Q × 4 \mathrm{GT}_{\text {box }} \in \mathbb{R}^{Q \times 4} GTbox RQ×4 是一个矩阵,包含相应的框坐标,它们是使用[7]、[8]中描述的二分图匹配算法构建的。分类损失 L cls  \mathcal{L}_{\text {cls }} Lcls  是使用预测对齐分数 S S S 和真值分类真值 G T c l s \mathrm{GT}_{\mathrm{cls}} GTcls 计算的。回归损失 L reg  \mathcal{L}_{\text {reg }} Lreg  是使用回归的边界框 B B B 和边界框真值 G T box  \mathrm{GT}_{\text {box }} GTbox  计算的。回归损失包括框损失 L box  \mathcal{L}_{\text {box }} Lbox  和广义交并比 (GIoU) 损失 L giou  \mathcal{L}_{\text {giou }} Lgiou 。除了分类和回归损失外,还引入了去噪损失 L d n \mathcal{L}_{d n} Ldn [55] 以增强训练过程的稳定性。这个损失函数有助于提高模型在训练期间的鲁棒性。为了保持以检测为中心框架的简单性,预训练阶段的优化目标与DINO [8]保持一致。整个优化目标 L \mathcal{L} L 表示为不同损失组件的组合,可以写为:

L = α L c l s + β L box  + γ L giou  + L d n \mathcal{L}=\alpha \mathcal{L}_{c l s}+\beta \mathcal{L}_{\text {box }}+\gamma \mathcal{L}_{\text {giou }}+\mathcal{L}_{d n} L=αLcls+βLbox +γLgiou +Ldn

这里, α , β \alpha, \beta α,β γ \gamma γ 分别代表 L cls  , L box  \mathcal{L}_{\text {cls }}, \mathcal{L}_{\text {box }} Lcls ,Lbox  L giou  \mathcal{L}_{\text {giou }} Lgiou  的权重因子。 L c l s \mathcal{L}_{c l s} Lcls 通过一个sigmoid focal损失 [56] 实现。 L box  \mathcal{L}_{\text {box }} Lbox  通过一个L1损失实现。 L giou  \mathcal{L}_{\text {giou }} Lgiou  通过一个GIoU损失 [57] 实现。 L d n \mathcal{L}_{d n} Ldn 代表标签和框的去噪损失 [55] 的总和。

4、实验

在本节中,我们通过在两个广泛使用的开放词汇检测基准测试:COCO [19] 和 LVIS [20] 上进行广泛的实验,来展示所提出的OV-DINO的有效性。我们在第4.1节中提供了预训练数据集和评估指标的概述,并在第4.2节中深入探讨了实现细节。我们在大规模多样化数据集上对OV-DINO进行预训练,并在COCO和LVIS基准测试上进行零样本评估。随后,我们在COCO数据集上对预训练模型进行微调,并在第4.3节中讨论其在封闭集检测方面的性能。为了展示我们模型设计的有效性,我们在第4.4节进行了消融研究。此外,我们在第4.5节中展示了与其他方法的定性结果比较,清晰地展示了检测结果。

4.1、预训练数据和评估指标

预训练数据。在我们的实验中,我们使用了多个数据集,如[1]、[3]、[59]中引用的。这些数据集包括Objects 365检测数据集[58]、GoldG定位数据集[59]和Conceptual Captions图像-文本数据集[31],详见表2。我们的模型是按照GLIP [1]中概述的方法使用检测和定位数据集进行训练的。然而,图像-文本数据集包含大量的低质量图像-文本对,如图5所示。左侧样本的标题有效地描述了图像内容,而右侧样本的标题与图像内容不太匹配。为了减轻图像-文本数据集中的噪声,我们使用CLIP-Large [11]从原始CC 3 M数据集中过滤出100万个图像-文本对。过滤过程首先计算300万对的相似性,然后根据它们的图像-文本相似性排名选出前100万。第4.4节中的消融研究证实了数据过滤器的有效性。
在这里插入图片描述

评估指标。预训练后,我们在COCO [19]和LVIS [20]基准测试上,在零样本设置下评估所提出的OV-DINO的性能。此外,我们通过在COCO数据集上对预训练模型进行微调,进一步分析持续微调的有效性。按照先前的方法[1]、[3],我们使用标准的平均精度(AP)指标来评估COCO的性能,并在LVIS上使用固定AP [62]指标进行公平比较。

4.2、实施细节

模型架构。由于模型训练的高成本,我们特别使用Swin-T [21]作为图像编码器进行模型预训练,与其他方法相比,它表现出了更优越的性能。为确保公平比较,我们使用了HuggingFace [63]的BERT-base作为文本编码器,这与GLIP [1]和G-DINO [3]使用的方法一致。为了在预训练期间将检测中的类别名称和定位数据中的名词短语纳入图像-文本数据,我们采用了CLIP [11]中的统一数据集成管道,通过特定模板提示所有类别名称或名词短语。遵循DINO [8],我们在4个尺度上提取了多尺度特征,范围从 8 × 8 \times 8× 64 × 64 \times 64×。此外,我们将提示文本的最大数量设置为150,包括图像中存在的正面类别或短语,以及从所有其他数据源中随机选择的负面文本。对于文本嵌入提取,我们采用了最大长度填充模式,并使用均值池化沿长度维度聚合文本嵌入。我们集成了一个线性投影层,将文本嵌入投影到与查询嵌入相同的嵌入空间。默认情况下,我们将查询数量设置为900,在编码器和解码器层中均设置了六层变换器。

模型训练。为了保持模型的简单性,我们遵循了原始DINO设置[8]的类似训练程序。我们采用AdamW [61]优化器,权重衰减为1e-4。总批量大小为128,所有模型参数的基础学习率为 2 × 1 0 − 4 2 \times 10^{-4} 2×104,除了文本编码器,其学习率为基础学习率的0.1倍(特别设置为 1 × 1 0 − 5 1 \times 10^{-5} 1×105)。在COCO上的微调阶段,基础学习率调整为 1 × 1 0 − 5 1 \times 10^{-5} 1×105,而其余超参数与预训练阶段相同。预训练和微调均进行了24个周期(2x计划),使用步进学习率计划,在第16个和第22个周期时,学习率分别降低为基础学习率的0.1和0.01。分类损失、框损失和GIoU损失的权重分别为2.0、5.0和2.0。匹配成本组件的权重与损失相同,除了分类成本,其权重为1.0。OV-DINO在预训练和微调阶段使用的超参数详见表3。
在这里插入图片描述

4.3、主要结果

LVIS基准测试。在表4中,我们提供了所提出的OV-DINO与LVIS基准测试上的最近最先进的方法的全面比较。LVIS数据集专门设计用于解决长尾对象问题,包含1000多个类别进行评估。我们在零样本评估设置下对LVIS MiniVal和LVIS Val数据集进行了OV-DINO的评估。OV-DINO在各种预训练数据设置中都超越了以前的最先进方法。特别是,OV-DINO在Objects365 (O365)数据集[58]上预训练,与GLIP相比,获得了+5.9% AP的优越结果。结合定位数据,OV-DINO展示了性能提升,与G-DINO和DetCLIP相比,分别获得了+13.8% AP和+5.0% AP的优越结果。此外,当与图像-文本数据集成时,OV-DINO在使用Swin-T图像编码器的公平预训练设置下取得了最高的AP结果,在LVIS MiniVal上创下了40.1% AP的新纪录,在LVIS Val上创下了32.9% AP。值得注意的是,OV-DINO仅使用图像-文本注释就获得了+0.7% AP的增益,而其他方法需要伪标签进行实例级注释。OV-DINO以更少的参数实现了优越的性能,展示了其在检测多样化类别方面的有效性和能力。
在这里插入图片描述

COCO基准测试。在表5中,我们在COCO基准测试上比较了所提出的OV-DINO与最近最先进的方法在零样本和微调设置下的性能。在零样本设置中,我们的模型在各种大规模数据集上进行预训练,并直接在COCO数据集上进行评估。首先,我们在O365数据集上对模型进行预训练,并以零样本方式进行评估,其中OV-DINO在零样本评估设置中超越了所有以前的模型,与GLIP和G-DINO相比,分别获得了+4.6% AP和+2.8% AP的优越结果。值得注意的是,当与GoldG [59]数据结合时,OV-DINO在零样本迁移设置中取得了最佳结果,达到了50.6% AP,超越了YOLO-World +7.8% AP和GDINO +2.5% AP。此外,我们进一步在COCO数据集上对预训练模型进行微调,使用仅Swin-T [21]作为图像编码器,在COCO2017验证集上取得了58.4% AP的新纪录。显著的是,OV-DINO仅进行了24个周期的预训练,这少于其他方法的预训练计划。尽管如此,OV-DINO在零样本和微调设置中都实现了最先进的性能。在COCO数据集上取得的杰出性能表明,OV-DINO在实际应用中具有重要的潜力。有趣的是,添加图像-文本数据对COCO带来了负面改进,可能由于COCO数据集中有限的类别名称所致。尽管如此,我们发现图像-文本数据对于发现更多样化的类别至关重要,正如LVIS实验所展示的。
在这里插入图片描述

4.4、消融研究

为了分析所提出的OV-DINO的有效性,我们进行了广泛的消融研究。为了减少使用完整数据集训练的成本,我们从原始O365v1 [58]数据集中随机抽取了100,000张图像,以及从过滤后的CC3M [31]子集中抽取了100,000张图像,用于所有消融研究。我们将批量大小设置为32,训练计划设置为12个周期。除非特别指明,我们在抽样的O365-100K和CC-100K数据集上预训练OV-DINO,并在LVIS MiniVal数据集上评估零样本性能。
在这里插入图片描述

统一数据集成。在表6中,我们对UniDI进行了消融研究,它通过统一提示和标题框协调不同的数据源。统一提示使用特定模板提示类别名称,而标题框将图像-文本数据转换为以检测为中心的数据格式。前者在检测上实现了+0.6% AP增益(第1行与第0行相比),在图像-文本数据上实现了+1.4% AP增益(第5行与第4行相比),后者通过整合图像-文本数据实现了+1.4% AP增益(第4行与第2行相比)。

语言感知选择性融合。在表6中,我们还对LASF进行了消融研究,它涉及动态选择和融合与文本相关的对象嵌入,以实现区域级跨模态融合和对齐。LASF带来了+0.9% AP增益(第2行与第0行相比),证明了LASF的有效性。作为OV-DINO的核心模块,LASF能够与UniDI一起持续提高LVIS MiniVal上的性能。
在这里插入图片描述

LASF的变体。在表7中,我们将所提出的LASF变体与G-DINO [3]中的典型跨模态融合(Typical-CMF)进行了比较。图4展示了基于对象嵌入插入位置的三种LASF变体:后期LASF、中期LASF和早期LASF。此外,还提供了典型跨模态融合的架构供比较。通过广泛的实验验证了LASF的有效性。所有消融模型都使用Swin-T作为图像编码器在抽样的O365-100K子集上进行预训练。结果表明,我们的LASF模块在捕获语言感知上下文方面比典型跨模态融合模块更有效。此外,后期LASF变体在LVIS MiniVal基准测试中展示了优越的零样本迁移能力,被采用为我们的默认架构。
在这里插入图片描述

文本嵌入池化。在表8中,我们评估了不同文本嵌入池化方法的影响,例如文本嵌入的均值池化和最大值池化。均值池化方法计算文本嵌入沿长度维度的平均值,而最大值池化方法确定文本嵌入中的最大值。我们在O365-100K和CC-100K上使用这两种池化方法进行预训练,观察到均值池化在应用于组合数据集时展现出更优越的性能。均值池化方法有效地捕获了提示文本的全面表示,使其适合于UniDI。
在这里插入图片描述

图像-文本数据源。在表9中,我们比较了不同图像-文本数据源的性能。我们通过选择基于CLIP图像-文本相似性的底部和顶部100K样本,以及随机100K样本进行了比较。结果显示,rank_top数据源提供了最佳性能,而rank_bottom性能最差。这突出了图像-文本数据集中不可避免的噪声,并强调了我们过滤操作的必要性。

4.5、定性结果

COCO上的可视化。我们将预训练的OV-DINO得到的可视化结果与其他方法进行比较。图6展示了在COCO数据集上零样本推理的可视化结果,其中仅显示置信度超过0.5阈值的框预测。此外,与GLIP [1]和G-DINO [3]的预测进行了比较。第一列描绘了带有真实值的图像,第二和第三列分别展示了GLIP-T(B)和G-DINO-T的预测,最后一列代表了OV-DINO的预测。从可视化结果可以看出,OV-DINO产生了更精确的预测,置信度更高,并且擅长检测足够的对象。这些发现证明了OV-DINO在成功检测基于语言文本输入的所有对象方面的鲁棒零样本迁移能力。
在这里插入图片描述

LVIS上的可视化。我们同样展示了预训练的OV-DINO得到的可视化结果。图7展示了在LVIS数据集上零样本推理的可视化结果。LVIS数据集是一个长尾数据集,包含1000多个类别,这可能导致图像中有许多预测。为了清晰的可视化,我们仅显示分数高于0.5的框预测。OV-DINO在检测多样化类别方面展现出卓越性能,结果高度精确。
在这里插入图片描述

5 、讨论

结论。在本文中,我们提出了OV-DINO,这是一个鲁棒的统一开放词汇检测器,旨在提高开放词汇检测的性能。我们提出了一个统一数据集成流程,有效地整合各种数据源,实现了一致性和连贯性的统一检测框架的端到端训练。此外,我们引入了一个语言感知选择性融合模块,选择性地融合跨模态信息,从而提高OV-DINO的整体性能。实验结果表明,OV-DINO在具有挑战性的COCO和LVIS基准测试上评估时,超越了以前的最先进方法。

局限性。尽管OV-DINO作为一种统一的开放词汇检测方法表现出色,但至关重要的是要认识到需要解决一些特定的挑战和局限性。一个潜在的局限性是通过整合更大的编码器和使用更广泛的数据集来扩展OV-DINO。扩展展示了提高开放词汇检测模型性能和适用性的潜在愿景。然而,不可避免地要承认预训练阶段需要大量的计算资源,这可能成为可扩展性的障碍。因此,优化训练过程以促进开放词汇任务的发展至关重要。

更广泛的影响。在我们的研究中,我们探索了以检测为中心的开放词汇检测(OVD)的预训练,这与传统的为各种数据源定制设计的方法不同。此外,我们引入了语言感知跨模态融合和对齐的概念,标志着从简单的区域-概念对齐的传统方法的转变。因此,我们的研究为OVD提供了一个创新的视角。我们期望OV-DINO将鼓励进一步探索如何有效地利用语言感知跨模态信息进行开放词汇视觉任务的方法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2145628.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

滑动窗口(6)_找到字符串中所有字母异位词

个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 滑动窗口(6)_找到字符串中所有字母异位词 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记,欢迎大家在评论区交流讨论&#x1f4…

《SmartX ELF 虚拟化核心功能集》发布,详解 80+ 功能特性和 6 例金融实践

《SmartX ELF 虚拟化核心功能集》电子书现已发布!本书详细介绍了 SmartX ELF 虚拟化及云平台核心功能,包含虚机服务、容器服务、网络服务、存储服务、运维管理、工具服务、数据保护等各个方面。 即刻下载电子书,了解如何利用基于 SmartX ELF …

助力电商升级,智象未来(HiDream.ai)开启未来商业新篇章

近日,智象未来(HiDream.ai)凭借其创新性的“秩象™大模型”,在业界掀起了一场跨行业的创意革命,对视觉设计、运营商服务、品牌营销以及文旅传媒等领域的创新发展产生了深远影响。致力于全球领先的多模态生成式人工智能…

neo4j节点关联路径的表示、节点的增删改查

目录 核心概念节点的增删改查(1)增(2)查(3)删(4)改 neo4j文档:https://neo4j.com/docs/ https://neo4j.com/docs/cypher-manual/current/introduction/ 核心概念 节点 ne…

【从计算机的发展角度理解编程语言】C、CPP、Java、Python,是偶然还是应时代的产物?

参考目录 前言什么是"computer"?计算机的大致发展历程计算机系统结构阶段(1946~1981)计算机网络和视窗阶段(1982~2007)复杂信息系统阶段(2008~today)人工智能阶段 越新的语言是越好的吗、越值得学习吗? 前言 最近读了 《Python语言程序设计基础》 这本书…

Linux运维篇-服务器简介

目录 前言服务器分类(按服务器的机箱结构来划分)台式服务器机架式服务器刀片式服务器 外观部件内部结构前面板前面板组件前面板接口说明前面板指示灯和按钮前面板指示灯/按钮说明 后面板后面板组件后面板接口说明后面板指示灯后面板指示灯说明 主板和 iB…

C#|.net core 基础 - 值传递 vs 引用传递

不知道你在开发过程中有没有遇到过这样的困惑:这个变量怎么值被改?这个值怎么没变? 今天就来和大家分享可能导致这个问题的根本原因值传递 vs 引用传递。 在此之前我们先回顾两组基本概念: 值类型** vs 引用类型** **值类型&a…

适合金融行业的银行级别FTP替代升级方案

在数字化办公日益普及的今天,金融领域对数据传输的需求日益增长,场景也变得更加多样化和复杂。这不仅包括内部协作,还涉及金融服务、外部合作以及跨境数据流动等方面。因此,金融行业对数据传输系统的要求越来越高,传统…

LeetCode 算法笔记-第 04 章 基础算法篇

1.枚举 采用枚举算法解题的一般思路如下: 确定枚举对象、枚举范围和判断条件,并判断条件设立的正确性。一一枚举可能的情况,并验证是否是问题的解。考虑提高枚举算法的效率。 我们可以从下面几个方面考虑提高算法的效率: 抓住…

孙怡带你深度学习(3)--损失函数

文章目录 损失函数一、L1Loss损失函数1. 定义2. 优缺点3. 应用 二、NLLLoss损失函数1. 定义与原理2. 优点与注意3. 应用 三、MSELoss损失函数1. 定义与原理2. 优点与注意3. 应用 四、BCELoss损失函数1. 定义与原理2. 优点与注意3. 应用 五、CrossEntropyLoss损失函数1. 定义与原…

『 Linux 』HTTP(一)

文章目录 域名URLURLEncode和URLDecodeHTTP的请求HTTP的响应请求与响应的获取简单的Web服务器 域名 任何客户端在需要访问一个服务端时都需要一个IP和端口号,而当一个浏览器去访问一个网页时通常更多使用的是域名而不是IP:port的方式, www.baidu.com这是百度的域名; 实际上当浏…

数据结构和算法|排序算法系列(五)|排序总结(时间复杂度和是否稳定)

文章目录 选择排序冒泡排序插入排序快排归并排序堆排序 选择排序 一句话总结,开启一个循环,每轮从未排序区间选择****最小的元素,将其放到已排序区间的末尾。「未排序区间一般也放在后面,已排序区间放在前面」 选择排序 时间复…

2024蓝桥杯省B好题分析

题解来自洛谷,作为学习 目录 宝石组合 数字接龙 爬山 拔河 宝石组合 # [蓝桥杯 2024 省 B] 宝石组合## 题目描述在一个神秘的森林里,住着一个小精灵名叫小蓝。有一天,他偶然发现了一个隐藏在树洞里的宝藏,里面装满了闪烁着美…

Flutter Android Package调用python

操作步骤 一、创建一个Flutter Package 使用以下指令创建一个Flutter Package flutter create --templateplugin --platformsandroid,ios -a java flutter_package_python 二、修改android/build.gradle文件 在buildscript——>dependencies中添加以下内容 //导入Chaqu…

接口幂等性和并发安全的区别?

目录标题 幂等性并发安全总结 接口幂等性和并发安全是两个不同的概念,虽然它们在设计API时都很重要,但侧重点不同。 幂等性 定义:幂等性指的是无论对接口进行多少次相同的操作,结果都是一致的。例如,HTTP的PUT和DELE…

TON基金会与Curve Finance合作:推出基于TON的新型稳定币互换项目

2024年,TON基金会宣布与去中心化金融(DeFi)领域的知名协议Curve Finance建立战略合作,携手推出一个全新的基于TON区块链的稳定币交换项目。这一合作标志着TON生态系统在DeFi领域的进一步扩展,并将通过Curve Finance的核…

玖逸云黑系统源码 v1.3.0全解无后门 +搭建教程

功能带有卡密生成和添加黑名单等,反正功能也不是很多具体的自己看程序截图即可。 搭建教程 完成 1.我们先添加一个站点 2.PHP选择7.3 3.上传源码解压 4.导入数据库 5.配置数据库信息config.php 源码下载:https://download.csdn.net/download/m0_6…

Python包管理工具pip 入门

主要参考资料: 全面解析 python 包管理工具 pip: https://blog.csdn.net/maiya_yayaya/article/details/135341026 目录 pypi社区pip工具安装 piprequirements.txt 记录python包管理工具8.1 什么是 requirements.txt8.2 requirements.txt 格式8.3 示例8.4 pip 安装 …

鸿蒙手势交互(二:单一手势)

二、单一手势 有六种:点击手势(TapGesture)、长按手势(LongPressGesture)、拖动手势(PanGesture) 捏合手势(PinchGesture)、旋转手势(RotationGesture)、滑动手势(SwipeGesture) 点击手势(TapGesture) TapGesture(value?:{count?:number, fingers?:number}) /…

7.7opencv中(基于C++) 翻转图像

基本概念 在OpenCV中,翻转图像指的是沿着一个或多个轴翻转图像。OpenCV提供了一个函数 flip 来完成这个任务。这个函数可以沿着水平轴、垂直轴或者同时沿着水平和垂直轴翻转图像。 函数原型 void flip(InputArray src,OutputArray dst,int flipCode );参数说明 •…