论文地址:[2304.05552] DynamicDet: A Unified Dynamic Architecture for Object Detection
代码地址:GitHub - VDIGPKU/DynamicDet: [CVPR 2023] DynamicDet: A Unified Dynamic Architecture for Object Detection
概要
本文提出了一种名为 DynamicDet 的统一动态架构,用于物体检测任务。DynamicDet 通过自适应推理、动态推理策略和变速推理策略来优化物体检测器,旨在实现精度与速度的最佳平衡。通过设计一个动态的检测器架构和自适应路由器,DynamicDet 可在单一检测器中实现精度与速度的广泛权衡,提升了推理速度和准确度。大量的实验结果表明,DynamicDet 在 COCO 数据集上取得了新的精度与速度平衡,相比于 YOLOv7 系列模型,推理速度显著提高。
创新点
-
目标检测器动态推理架构:
- 本文的核心创新之一是提出了自适应路由器(Adaptive Router),该路由器可以根据待检测图像的复杂度,自动选择最适合的早退(early exiting)策略。简单的图像可以通过快速路径进行推理,而复杂的图像则通过更深的网络路径进行处理,从而减少不必要的计算,提高推理效率。
-
无超参数训练策略:
- 文章提出的动态架构没有依赖传统的超参数调整。这意味着架构可以通过自动化策略优化,不需要手动调整训练过程中的多个超参数。这一点使得训练过程更加简化,同时也能提高模型在不同任务上的适应性和通用性。
-
可变时延推理策略:
- 动态目标检测器不仅在推理过程中能够根据图像复杂度自适应调整计算路径,还采用了可变时延推理策略(Variable-speed Inference Strategy)。这一策略允许推理的速度根据不同情况灵活调整,从而在速度和精度之间实现更好的权衡。
Motivation
目标检测是计算机视觉中的核心任务,但现有的检测方法需要在精度和速度之间做出妥协。现有方法往往需要设计多个模型来适应不同的任务需求,导致训练资源的浪费和推理效率的低下。为了解决这一问题,本文提出了一种动态推理框架,DynamicDet,可以通过一个动态检测器在不同任务间灵活调节,从而实现精度和速度的最佳平衡。
人类可以快速识别出左侧“简单”图像上的所有目标,但需要更多的时间识别出右侧“困难”图像上的目标。人类的大脑在处理不同图像时,识别速度会因图像的复杂程度而有所不同。对于简单的图像,我们可以很快地识别出其中的所有目标,而对于复杂的图像,识别目标的过程则需要更多的时间。这种差异通常与图像的“难易程度”相关,例如图像中的细节、物体数量、背景复杂性等因素。
背后的原理:
- 视觉处理的复杂性:人类视觉系统会根据图像的复杂性来调整处理方式。简单的图像(例如单一物体、清晰的边界等)通常容易被大脑快速识别,而复杂的图像(例如物体重叠、模糊或具有较高噪声的图像)则需要更多的时间和处理步骤。
- 分辨率与细节:复杂图像中的细节更多,可能需要分多个阶段来处理,如先识别大致结构,再逐步细化目标位置和边界。
- 认知负担:当图像复杂时,大脑需要在更多的视觉信息中提取重要的特征,增加了认知负担,进而导致处理速度变慢。
系统框架
DynamicDet 由三个主要组件组成:
- 两个级联的检测器:分别处理简单和困难的图像。每个检测器根据图像的难度执行不同的推理任务。
- 自适应路由器:通过分析多尺度特征,评估图像的难度分数,并决定使用哪个检测器。路由器根据图像的复杂度,自动选择适当的检测器进行推理。
- 变速推理策略:动态调整推理过程的速度,通过设置阈值决定是否使用高效的检测器或更精确但计算量大的检测器。
DynamicDet 的架构示意图如上:首先,第一个主干网络(backbone)从输入图像中提取多尺度特征。然后,这些多尺度特征将输入到路由器(router)中,路由器的作用是预测图像的难度并决定推理路径。值得注意的是,“简单” 图像将仅由一个主干网络处理,而 “困难” 图像则将由两个主干网络处理。
理解:
-
多尺度特征提取:首先,图像通过一个主干网络提取多个尺度(不同分辨率或细节层次)的特征。这有助于捕捉图像中不同大小的物体和细节信息。
-
路由器的作用:提取出的多尺度特征被传递到一个路由器(router)。路由器的任务是评估当前图像的“难度”,并根据该评估来决定接下来的推理路径:
- 简单图像:如果图像被认为是简单的,路由器决定只使用一个主干网络来处理图像。这意味着,计算量较小,处理速度较快。
- 困难图像:如果图像被认为是困难的,路由器会将图像的处理分配给两个主干网络。这意味着,计算量增大,推理过程变得更加精细,以确保更高的准确性。
- 动态推理路径选择:该架构通过判断图像的难度,智能地选择不同的计算路径,从而在保证精度的同时提高计算效率。
- 灵活的推理策略:对于简单图像,使用较少的计算资源,而对于复杂图像,使用更多的计算资源进行更精细的处理。这种策略能够有效减少不必要的计算开销,并加速推理过程。
技术细节
- 多尺度特征:DynamicDet 在推理过程中利用图像的多尺度特征,浅层特征适合检测小物体,深层特征适合检测大物体。通过这些信息,自适应路由器能够更准确地评估图像的复杂性。
- 自适应路由器:路由器首先对多尺度特征进行池化,将其压缩为一个维度较小的向量,经过两层全连接层,生成一个难度分数。该分数用于指导路由器决定图像的处理策略。
- 优化策略:为了有效训练动态架构,DynamicDet 引入了一种无超参数优化策略,避免了手动调整参数的繁琐。通过优化检测器之间的损失差异,确保“简单”图像通过快速检测器,“困难”图像通过精确检测器处理。
- 变速推理:通过设置阈值,路由器能够根据难度分数调整推理速度,以优化检测器的精度和速度之间的权衡。
小结
DynamicDet通过提出一个通用的动态架构,并结合自适应路由器、基于损失的优化策略以及变速推理策略,成功地解决了目标检测任务中精度与速度之间的矛盾。实验结果证明了该方法在多个基准数据集上的优越性能,特别是在推理速度和精度的平衡上达到了新的最先进水平。