识别和定位图像中的目标是一项基本挑战,已经有很多努力通过尝试不同的架构和优化训练策略来提高模型准确性。然而,现有模型普遍存在的一个主要局限性是过于强调当前输入而忽视了整个数据集的信息。 作者引入了一种创新的 Retriever-Dictionary (RD) 模块来解决这个问题。 这种架构使得基于 YOLO 的模型能够有效地从包含数据集洞察力的字典中检索特征,该字典由视觉模型(VM)、大型语言模型(LLM)或视觉语言模型(VLM)的知识构建而成。 灵活的 RD 模块使模型能够整合这样的显性知识,从而在像素 Level 从多个任务中受益,特别是分割、检测和分类。 实验表明,使用 RD 模块可以显著提高模型性能,在目标检测方面实现了超过 3% 的平均精确率增加,而模型参数仅增加了 1%。 对于 1 阶段目标检测模型,RD 模块提高了 2 阶段模型的有效性,以及基于 DETR 的架构,如 Faster R-CNN 和 Deformable DETR。
在计算机视觉领域,目标检测模型起着关键作用,这些模型旨在精确地在图像中定位物体。它们在医学图像分析和自动驾驶等应用中得到应用。此外,它们还可以作为下游任务,如多目标跟踪和人群计数的基础模型。为了支持这些扩展任务,目标检测模型必须将高精度和低延迟结合在一起,以便下游任务能够利用前人的研究成果。
在目标检测模型中,YOLO、FasterRCNN和DETR尤为突出。YOLO系列主要采用卷积神经网络(CNN),在推理速度和准确性之间实现平衡。从YOLOv1到YOLOv10,一直专注于优化架构和训练方法,以降低模型的参数,同时提高准确性。除了主要的YOLO系列,如YOLOR采用隐性知识和其他技术,以进一步提高模型性能。
如图1所示,尽管CNNs和Transformers都专注于输入图像,但CNNs受到局部输入数据的限制,而Transformers尽管考虑了各种输入之间的交互,但仍受限于给定的输入或其他模型分支。然而,上述模型往往忽视了显性知识的一个关键方面——全面的数据集信息。另一方面,一些对比方法,如SimCLR、DINO(Caron等人,2021年)已经证明了跨参考数据的益处。
此外,在自然语言处理领域,一些模型采用了检索增强生成(RAG)架构(Lewis等人,2020年)。这些模型将知识存储在预先构建的数据库中,并在推理过程中检索这些信息,传递给生成器进行编码。这使得模型能够从大型预先确立的数据集获取外部信息。尽管这种方法通常需要大量的计算资源,但它极大地增强了大型语言模型的能力。然而,将这种技术应用于目标检测或其他计算机视觉任务仍然面临巨大的挑战,特别是在准备和获取外部数据方面。目标检测模型在处理外部信息时,必须谨慎地权衡准确性、模型参数和延迟。
为解决这些问题,作者提出了一种紧凑的外部模块,包括一个 Retriever 和一个 Dictionary,旨在在计算机视觉模型训练过程中提高数据集利用率。该模块可以有效地过滤掉不相关信息并放大关键数据。
其中,Retriever 将区域特征聚合为 Query ,而 Dictionary 则包含全面的数据集信息,使得 Query 可以筛选出相关原子。值得注意的是,这个预先构建的 Dictionary 不仅扩展了 YOLO Backbone 网络,还集成了数据编码器,如 VLMs 或 LLMs,这些模型带来大量的训练数据和知识,以便提供更精确、更全面的信息。
该模块允许模型在正向过程中增强数据,不仅有益于区域级任务(如目标检测),还有益于像素级任务(如分割)和全图像级任务(如分类)。此外,作者的模块可以扩展到各种模型架构,如Faster R-CNN中的FPN网络和Detection Transformers中的 Backbone 编码器区域,在降采样过程中提供更高质量的信息,最终实现更好的性能。
在这篇论文中,作者做出了以下几个关键贡献:
这些改进极大地提高了目标检测模型的能力,并表明作者的模块具有全对全的特性,允许其利用外部知识在多个任务和模型架构上实现性能提升,而无需增加额外的参数。
实时目标检测。实时目标检测是计算机视觉领域的一个基础问题,重点在于实现低延迟和高精度。传统方法主要关注卷积神经网络(CNN)架构,具有里程碑意义的工作包括OverFeat 和Faster R-CNN。自视觉 Transformer (ViT)[Dosovitskiy等人,2021年]引入以来,出现了不少后续工作,包括DETR(Carion等人,2020年)和RT-DETR。然而,基于CNN的YOLO系列模型在实时检测领域占据重要地位,原因在于其易于从头训练、轻量级设计和能够实现高速推理的能力。
每一版本的YOLO模型都引入了不同的架构和训练策略。例如,YOLOv7(Wang等人,2023a)采用ELAN和可训练的袋装免费技术来提高性能,而YOLOv9 则结合了通用高效层聚合网络(G-ELAN)和可编程梯度信息,以提高效率和学习能力。YOLOv10(Wang等人,2024a)进一步引入了紧凑的反向模块,以优化模型大小和计算。在理论方面,像YOLOR(Wang等人,2023b)利用多个计算机视觉任务之间的共享特征,使模型可以学习隐性知识并放松预测头,从而将YOLO架构泛化到各种任务。
尽管这些架构和策略存在差异,但所有YOLO模型都共享一个概念框架,包括三个核心模块:一个降采样Backbone、一个特征融合Neck(例如FPN)和一个最终预测头。
在本论文中,作者还利用Backbone作为图像编码器。
字典学习。字典学习是信号处理和机器学习中的基本技术,旨在学习一组可以有效表示信号的基本函数(或原子)。这种技术在稀疏编码的背景下得到了广泛探索,其中信号被近似为字典原子的稀疏线性组合。此外,人们发现自然图像可以有效利用稀疏编码模型(Olshausen和Field,1997)进行表示,为字典学习算法的进一步发展奠定了基础。
许多算法已经被提出来优化字典和稀疏系数。其中,K-SVD(Aharon等人,2006年)由于其在图像去噪、压缩和修复等应用中的有效性而成为标准。随着CNN的兴起,字典学习也出现了新的发展,例如设计卷积块和定义损失函数以实现字典学习目标。此外,字典学习已经被应用于内容相关图像检索(CBIR)等任务,如Saban Ozturk(2021年)和Tarawneh等人(2019年)。在本论文中,作者专注于字典学习,而不是稀疏字典学习,并强调能够健壮地表示信息并保留关键、相关信号的字典。
检索增强生成(RAG)检索增强生成(RAG)(Lewis等人,2020年)是一种最初出现在大型语言模型中的技术。它主要涉及三个步骤:索引,其中数据库被分成块,编码为向量,并存储在向量数据库中;检索,根据与输入的相似度检索相关信息;生成,将原始输入和检索到的信息一起输入到模型中进行进一步处理。这种方法使得LLM能够处理未见信息,并已成功应用于T5(Raffel等人,2020年),或某些版本的ChatGPT(Achiam等人,2023年)。
由于检索过程耗时较长,以及大多数计算机视觉任务对实时性的要求,RAG在基于视觉的模型中的应用受到了限制。最近,一些工作已经针对Wu和Xie (2024); Kim et al. (2024); Liu et al. (2023)中的 Bottleneck 进行了缓解。例如,RALF (Kim et al., 2024)利用LLM嵌入大量词汇集,并找到相似意义的单词来优化特征;REACT (Liu et al., 2023)利用全球网络作为信息来源来扩展模型知识。然而,它们仍然需要一个难以察觉的巨大数据集或语言模型,导致训练和推理加载非常高。在这项工作中,作者为基于视觉的模型提供了不仅轻量级数据库,还具有可调优特征的解决方案。
在本工作中,作者提出了一个名为 Retriever-Dictionary 的模块,如图2所示,该模块使计算机视觉模型能够快速利用综合数据集知识,且所需的额外参数最小。该插件将来自各种模型的编码信息存储起来,从而增强模型确定输入数据中哪些特征应该被强调或减弱的能力,从而提高整体性能。RD-模块由两个主要组成部分: Retriever 和 Dictionary 组成。 Dictionary 由 个元素组成,每个元素表示为 向量,称为原子 。 Retriever 根据输入生成每个像素的 系数的值。 Dictionary 可以使用 YOLO Backbone 网络生成,也可以初始化具有视觉语言模型 CLIP(Radford 等,2021)和大型语言模型 GPT(Radford 等,2018)等多样化模型。这种方法使模型能够对视觉和语言表示进行对齐,导致原子分布更加平衡和有价值。此外,引入语言知识有助于该模块保留关键信息。主要目标是调整 Dictionary 的分布,并使 Retriever 核心找到每个输入像素的最佳原子权重。
《Retriever》核心旨在有效地生成字典中每个的系数。受Chollet(2017年)的逐点卷积启发的启发,作者将《Retriever》分为两个部分:系数生成器和全局信息交换器。《系数生成器》,记作,基于输入特征图计算粗略系数,其中是输入特征维度,和分别表示特征图的宽度和高度。粗略系数计算如下:
其中 是 的投影矩阵, 是空间位置 的特征向量。
《全球信息交换器》(Global Information Exchanger),用符号表示:,在相邻像素之间精炼和交换信息,其定义为:
深度卷积滤波器 具有核大小 ,其中 索引 的通道。 表示第 个通道的空间特征图。
和 的联合运算为每个像素生成最终系数向量 :
这种任务分离最小化了每个像素位置的系数向量的直接计算,显著减少了参数数量,同时保持了高性能(参见实验4.3和附录A.7进行进一步讨论)。
为了防止系数向量 简单地复制输入特征,导致字典矩阵成为单位矩阵,作者对每个 进行归一化。作者应用一种相当于位置归一化(PONO)的归一化过程。
该过程定义为:
其中,均值和方差的计算如下:
采用 表示固定空间位置的第 个特征,并学习 、 这两个参数。尽管 PONO 最初设计用于在生成网络中保持结构信息,但在这里它确保特征向量 得到适当的缩放和居中,防止字典矩阵塌陷为零矩阵。
然后,归一化系数被用来从字典中选择原子,以增强或减弱特定特征。这种选择是对原子和输入残差进行加权求和,以产生最终输出。
为了保持字典的学习动力学,在训练期间,每个原子都被归一化为单位长度。结果公式如下:
在论文中,对于所有 α,有 α,且 是残差权重。如方程 5 所示,字典中 Dictionary 原子权重的求和在数学上等价于一个核大小为 1,步长为 1,且没有偏置项的卷积层。为了确保每个原子组件的和等于 1,如在字典学习中所需的一样,作者采用权重归一化(Salimans 和 Kingma,2016)。这消除了强制满足此条件的必要的外部目标函数。权重归一化定义如下:
最后,作者将_Retriever_核心(和)、_字典_以及残差连接相结合,表达整个 Retriever 字典过程如下:
通过预初始化 Dictionary ,作者将知识嵌入到 Dictionary 的模块原子中。更具体地说,作者使用选定的编码器将整个数据集映射到高维空间,并从各种模态模型中获取洞察,如图3所示。这个高维空间与原始YOLO Backbone 层具有相同的维度。显然,这将有许多向量,并在高维空间中呈现多个组,作者使用-means(Macqueen,1967)留下代表向量,最终作为 Dictionary 原子。通过这些操作,作者可以在短时间内将数据集对映射到高维空间(这个操作相当于以推理速度遍历整个数据集),并找到可以代表大部分数据集的向量。对于不在 Dictionary 中的特征,作者可以通过模块中的残差机制使用特征,并利用 Retriever_ Dictionary 将同一类别原子靠近到异常特征。
接下来,作者讨论使用不同的模态模型作为编码器来编码知识:视觉模型。在YOLO架构中, Backbone 层设计用于将原始图像转换为高维嵌入,为FPN提供丰富的区域信息,使其成为理想的图像编码器。
因此,作者使用现代预训练 YOLOv9 作为视觉模型编码器。这个模型用于遍历整个训练集,将所有数据集的数据转换为特征维分布。
视觉语言模型。作为视觉语言模型,CLIP具有对输入图像特征的强大理解能力,可以将这些特征映射到语义相关的空间进行比较。因此,作者使用CLIP进行视觉语言初始化。
然而,根据 DenseCLIP ,尽管CLIP的输出嵌入是图像的全局表示,但CLIP的ViT块的输出仍然保留了对应区域的有关信息。CLIP主要使用第一块作为嵌入,省略了其他块的局部信息。因此,作者利用CLIP图像编码器的所有输出块来嵌入数据集,以更全面地表示数据集。
大型语言模型。对于从LLM初始化的初始化,由于语言模型不能直接将图像转换为特征嵌入,并且图像描述通常描述整个图像而不是特定区域,因此作者使用MSCOCO 和ImageNet-21k 的类别名称,以及MSCOCO的图像描述作为GPT(Radford等人,2018年)的 Prompt 。
然而,由于某些特征维度与单位区间有显著偏差,作者为每个维度应用标准正则化,以调整每个维度的值,同时保留向量的相对位置。
设计《Retriever字典》(RD)的目标是保留数据集中的最核心信息。然而,在训练之后,字典中的原子数量可能超过所需的数量,其中一些原子使用频率较低或与特定数据集领域无关。
受到知识蒸馏和教师-学生模型(Hinton等人,2015年)的启发,作者将原始《Retriever字典》D压缩为一个小而高效的新版本,表示为d。为了使d的输出特征与D的输出特征对齐,作者使用对比学习(Chen等人,2020年)。在这个过程中,模型 Backbone 和RD被冻结,优化主要关注较小的《Retriever字典》模块d。目标函数定义如下:
在论文中, 表示 在位置 的第 个批次的输出特征, 是批次大小, 是温度参数, 表示两个向量的余弦相似度。
该浓缩过程确保在特定领域内,中的原子可以有效地逼近原始_Dictionary_中发现的各种潜在线性组合。
通过选择性从RD中移除与数据集领域无关的原子,作者实现了原子数的大幅减少——至少减少了50%。这种减少不仅提高了模型的效率,而且保持了目标领域内的性能和表达能力。
实验设置。作者主要在Microsoft COCO数据集(Lin等人,2014年)上验证了该方法,在COCO 2017训练集上进行训练,并在COCO 2017验证集上进行评估。对于目标检测和分割,作者分别使用mAP和mAP@.5作为评估指标,在YOLOv7,YOLOv9,Faster RCNN和Deformable DETR上进行测试。对于分类任务,作者使用CIFAR-100数据集,采用YOLOv9-classify模型,使用top-1和top-5准确率作为指标。
实现细节。所有实验均使用8块Nvidia V100 GPU完成。主要实验系列中,作者训练了一个修改后的YOLOv7模型,包括添加了一个 Retriever-Dictionary 模块,在3天内的300个周期内完成。
基于YOLOv9的模型在5天内训练了500个周期。作者还基于mm-detection框架训练了一个修改后的Faster RCNN,在3天内的120个周期内完成。
对于Deformable DETR,作者在7天内训练了大约120个周期。在CIFAR-100(Krizhevsky等人,2009)上的分类任务在单个Nvidia 4090 GPU上需要2小时,在100个周期内完成。
将所提出的模块应用于最先进的检测器。如表1所示,作者在YOLOv7上评估所提出的模块,并将它与基础模型和最先进实时目标检测模型相结合。
字典由三个不同的模型分别初始化:使用YOLOv7 Backbone 的视觉模型(VM),使用CLIP的视觉语言模型(VLM)和基于GPTv2的大型语言模型(LLM)。在这些模型中,CLIP提供了最显著的改进,这可能是因为它在视觉和语言领域表现出平衡的性能。
在YOLOv7和YOLOv9中,引入该模块后,参数数量增加了不到1%,但关键指标的性能有了显著提升。这种改进与将模型大小升级(例如,YOLOv7-x,YOLOv9-e)所需的参数增加100%相当。对于更传统的架构,作者将RD模块集成到Faster R-CNN中,采用ResNet-50 Backbone He等人(2016)。尽管参数增加了2%,但采用ResNet-101 Backbone 的模型性能超过了Faster R-CNN。此外,作者将模块扩展到基于 Transformer 的架构,特别是使用ResNet-50 Backbone 的Deformable DETR(Zhu等人,2020)。与之前的结果类似,RD模块带来的改进相当于升级到ResNet-101 Backbone 。
这些实验充分证明了,利用数据集信息并结合来自VM、VLM和LLM的知识,可以显著提高一系列基础模型的性能,而仅需添加少量额外参数。
应用于其他任务 Retriever Dictionary (RD)模块增强了像素级特征,其潜在效益不仅限于检测任务,还包括其他视觉任务,如分割和分类。为了验证这一点,作者在MSCOCO数据集上进行了分割实验,在CIFAR-100数据集上进行了分类实验,结果表明RD模块在像素级和图像级任务上的有效性。表2比较了包含作者提出的模块的原YOLO多任务结构。结果 clearly 显示,_Retriever Dictionary_模块在分类、检测和分割任务上提升了性能,证明了其在提升整体多任务性能方面的有效性。
对比YOLO中知识集成方法。表3比较了RD与将外部知识集成到YOLO的多种方法。具体而言,知识蒸馏使用YOLOv9-e作为教师模型和YOLOv9-c作为学生模型,表示为KD。另一种方法,YOLO-World(Cheng等人,2024年)将CLIP的视觉语言概念集成到YOLO中,以增强其对两个领域的理解。此外,RALF(Kim等人,2024年)利用CLIP的文本编码器在基于RAG的方法中创建了一个词汇集作为数据库。 "+Params"列表示知识提供者或监督模型相对于 Baseline 引入的额外参数。总体而言,RD不仅提供了最轻的解决方案,只有0.2M的额外参数,而且提供了最佳性能,使其成为高度高效和有效的方法。
Fuse coefficient generator and global information exchanger. 在第3.1节中,作者讨论了将_Retriever_核心分割为逐点卷积 和逐通道卷积 可以显著减少参数数量。如果没有分割 _Retriever_核心,1阶段系数生成的过程如下:
其中 是卷积矩阵, 是1阶段生成过程。此操作需要额外的 个参数。计算复杂度为 ,与 和 相比,它们的复杂度为 ,《R^{\prime}}$ 需要大量的操作和参数,但只获得略微更好的性能,如表4所示。
不同的字典构建策略。表5展示了针对构建字典采用更多不同策略的消融研究。对于VM,作者使用VAE(Kingma和Welling,2014)来捕获数据集的一般分布并构建字典。在VLM中,作者利用整个CLIP(Radford等人,2021)的图像编码器来获取全局嵌入,如第3.2节所述。
此外,作者探索使用数据集特征分布的凸包来处理异常值,尽管这限制了RD模块表示常见特征的能力。对于LLM,作者应用了如tanh和标准正则化等技术来管理异常值。虽然tanh可以压缩大的特征距离,但标准正则化在处理异常值方面更为有效。
最后,作者将LLM和VLM的特征分布相结合,创建了一种混合表示。尽管这些方法产生了积极的结果,但它们未能生成均匀分布,并且在与方法中描述的策略相比表现不佳。
在本节中,作者使用可视化方法来展示RD模块对目标检测模型的影响,并可视化Retriever 从 Dictionary 中选择原子。
图3(b)显示了在正向传播过程中,原子系数及其分布。X轴表示与当前输入相关的相关性,以及每个,而Y轴显示每个原子的对应系数。与当前输入相关的数据集中的周围点在图中用 Token 。通过这种可视化,作者可以更深入地理解 Retriever 和 Dictionary 核心的行为。
利用图3(a)中的边界框区域作为输入,作者生成了相关系数图。如图3(b)所示,大部分高相关和高系数对(图3(c)、3(d))对应于交通标志,而低相关和低系数对(图3(e)、3(f))则没有。这种可视化展示出 Retriever Dictionary 有效地选择了相关的原子来增强输入特征,同时抑制非相关的原子,从而加强了输入的关键特性。
为了展示模型背部的输出结果,作者使用与模型输入相同的交通信号(如图4(a)所示)。作者分别展示了原始背部网络生成的特征图(如图4(b)所示)以及包括RD模块在内的背部输出(如图4(c)所示)。在图4(c)中,交通信号图案明显保留,背景信息得到保留。相比之下,图4(b)仅保留了部分围栏和输入照片填充块。这一对比表明,RD模块有助于模型保留重要信息,同时消除不重要的细节。
《Retriever字典模块》提供了一种轻量级且高效的方法,将数据集知识整合到YOLO中,通过各种模态模型。
通过利用字典中的预存储显式知识,Retriever可以有效地检索相关信息,而字典学习机制则实现了原子的微调。
此模块展示了其灵活性,不仅提高了基于YOLO的任务性能,还涵盖了各种基础目标检测模型和更广泛的计算机视觉任务。
作者认为,这项工作为实时计算机视觉模型进一步探索提供了基础,这些模型可以整合显式或外部知识源。
[0]. YOLO-RD: Introducing Relevant and Compact Explicit Knowledge to YOLO by Retriever-Dictionary.
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有