点击下方卡片,关注「集智书童」公众号
本文主要解决了什么问题
特征错位问题 :传统FPN类范式在多尺度检测中通过逐点融合不同层级的特征图,容易导致特征错位问题,从而影响模型性能。
空间信息损失 :下采样过程中,传统方法可能导致显著的空间细节损失,削弱了模型对小目标的检测能力。
轻量级模型优化 :如何在有限计算资源下实现高效的目标检测,同时保持较高的准确性与速度平衡。
本文的核心创新是什么
独立层级金字塔架构(IHP) :设计了一种无 Neck 特征融合的独立层级金字塔架构,验证了未融合特征金字塔结构的有效性,从根本上规避了特征错位问题。
软最近邻插值(SNI) :引入带有权重下缩放因子的软最近邻插值方法,以减轻不同层级特征融合的影响,同时保留关键纹理。
扩展空间窗口中的特征自适应选择(ESD) :提出一种增强下采样阶段空间特征保留的方法,通过非线性和线性分支的结合,减少信息损失。
轻量级卷积技术增强(GSConvE) :简化并增强了GSConv轻量级卷积技术,为资源受限的边缘设备提供更具成本效益的选项。
二次特征对齐解决方案(SA) :整合上述方法形成SA解决方案,用于实时目标检测,在Pascal VOC和MS COCO数据集上取得了最先进的结果。
结果相较于以前的方法有哪些提升
精度提升 :
- • 在Pascal VOC和MS COCO数据集上,所有测试检测器均超越了原始性能,达到当前最佳结果。
- • 例如,SNI将YOLOv7的AP提升了0.9个百分点,且没有任何额外的计算或内存成本。
计算效率提升 :
- • ESD和GSConvE方法显著减少了下采样过程中的信息损失,同时降低了计算复杂度。
- • SA解决方案在优化轻量级模型时,既提高了准确性又降低了推理延迟。
实际应用性能提升 :
- • 考虑到实际使用中的置信度阈值设置,SA解决方案提供了更符合真实场景需求的评估结果,避免了虚高的评估精度。
局限性总结
适用范围限制 :虽然IHP架构在耦合头检测器中表现良好,但在解耦头检测器中未能产生同样的积极效果,表明其对不同检测器架构的适配性仍有待进一步研究。
复杂性权衡 :尽管SA解决方案整体上简化了模型结构,但某些组件(如ESD-II)仍需增加一定的计算成本,可能不适用于极端资源受限的场景。
特征融合挑战未完全解决 :虽然SNI缓解了特征错位问题,但特征融合过程中的错位挑战尚未完全解决,需要进一步的研究投入。
导读
多头检测器通常采用特征融合金字塔结构进行多尺度检测,并在工业界得到广泛应用。然而,当强制将特征金字塔不同层级上的表示进行逐点融合时,这种方法会面临特征错位问题。
为解决此问题,作者设计了一种独立层级金字塔(IHP)架构,以评估特征未融合金字塔结构(features-unfused-pyramid-neck)在多头检测器中的有效性。随后,作者引入了带有权重下缩放因子的软最近邻插值(SNI),以减轻不同层级特征融合的影响,同时保留关键纹理。此外,作者提出了一种用于扩展空间窗口(ESD)下采样的特征自适应选择方法,以保留空间特征并增强轻量级卷积技术(GSConvE)。这些进展最终形成了作者的二次特征对齐解决方案(SA),用于实时检测,并在Pascal VOC和MS COCO数据集上取得了最先进的结果。
代码: https://github.com/AlanLi1997/rethinking-fpn
1 引言
目标检测的边界框回归和实例分割的像素级边界回归是关键且具有挑战性的视觉任务。与基本的图像分类[4]不同,检测或分割任务通常涉及具有不同尺度的多个物体场景。早期的基于深度学习的目标检测模型开始探索实时多尺度目标检测。RCNN[9]采用选择性搜索提取大量区域建议
尽管图像块(区域建议)数量庞大可能有助于多尺度检测,但在实践中,大多数场景并不包含如此多的待识别物体。这种方法后来被认为效率低下[8],因为建议的区域是从图像中提取的而非特征,需要卷积神经网络(CNN)提取特征并对每个建议进行分类预测。
图1(a)所示简化RCNN架构将不同尺度的图像转换为目标检测的特征图,很大程度上忽略了模型的实时检测能力。YOLO[29]引入了首个实时基于深度学习的目标检测模型,该模型并未特别关注多尺度检测,其简化结构如图1(b)所示。SSD[25]有效地结合了RCNN和YOLO的优势,强调了多尺度检测的概念。它是首个使用多尺度特征实现实时多尺度目标检测的模型,其架构类似于图1(c)。SSD高效地利用了VGG-16主干网络[32]不同尺度的特征图来预测不同尺度的物体。
早期基于深度学习的目标检测模型的探索为该领域提供了重要见解:高效利用多尺度特征对于提升检测器整体性能(准确性与速度的权衡)至关重要。因此,FPN[21]引入了基于特征金字塔的多尺度特征融合概念,该概念逐渐成为检测器的结构范式。这催生了众多增强多尺度特征融合的代表性工作,如PANet[24]、ASFF[23]、BiFPN[34]和RFPN[28]。随着特征融合策略的实施,实时检测器的性能得到了提升。然而,这些技术的日益复杂阻碍了进一步的进步。在FPN引入之前,目标检测器主要依赖无融合的结构[9,25,29],如图1(a)-(c)所示。随着FPN的出现,这些检测器转向基于FPN的范式或更复杂的改进方法[8,20,29-31],如图1(e)-(g)所示。
值得注意的是,FPN类策略不应被视为所有检测器的必选组件。表征学习表明,模型最终需要精细的表征而非大量复杂的表征。在FPN类范式下,不同层次和不同分辨率的特征图在元素 Level (点对点)进行融合,需要将低分辨率、高层特征图扩展以匹配低层特征图的分辨率。然而,不同层次的特征图存在固有的表征偏差:低层特征图倾向于保留小物体的表征(小感受野中的局部特征),而高层特征图更倾向于大物体的表征(大感受野中的全局特征),如图1(i)所示。这些具有表征偏差的特征图直接进行元素级融合可能导致表征的部分破坏,并加剧融合过程中的特征错位问题。
在视觉模型中,特征图的分辨率从特征金字塔的低层到高层逐步降低,这是通过逐步下采样实现的。通常,下采样以平方根速率降低特征图(宽度×高度)的分辨率,无论特征数量(通道数)是否保持不变或增加,都会不可避免地过滤掉部分空间信息。值得注意的是,特征信息从空间维度到通道维度的转换主要发生在下采样阶段,这突显了该阶段的重要性。传统下采样方法通常采用单一模式,例如步长为2的卷积(可学习)或步长为2的平均池化和最大池化(不可学习)。这些单一模式方法自ResNet[12]引入以来一直未发生重大变化,值得进一步研究。此外,FPN的最初目的不仅是为了展示特征融合在解决多尺度检测挑战中的优势,也是为了适当降低模型复杂度。在硬件资源有限的行业,复杂模型往往不切实际[2][10]。因此,作者增强了GSConv[18]的轻量级卷积技术,以在实时检测模型中实现准确性和速度之间的良好权衡。
本文的主要贡献可以总结如下:
-
- 作者重新思考了基于表征学习的现代实时检测器中FPN类范式的有效性,并识别了在元素级融合过程中特征错位的问题。
-
- 作者设计了一种无 Neck 特征融合的独立层级金字塔架构(IHP)以验证作者的发现。IHP取得了先进的结果。
-
- 作者引入了软最近邻插值(SNI)用于上采样,以减轻融合过程中的特征错位问题。
-
- 作者提出了一种在扩展空间窗口中进行下采样(ESD)的特征自适应选择方法,以增强下采样阶段的空间特征保留。该方法即插即用,且以低成本优化性能。
-
- 作者简化并增强了GSConv轻量级卷积(GSConvE),为在资源受限的边缘设备上运行的模型提供更具成本效益的选项。
-
- 作者在Pascal VOC和COCO数据集上验证了rethinking-fpn,并提出了SA解决方案。现有的轻量级实时检测模型可以通过SA解决方案进行优化,无需额外的功能。
2 相关工作
2.1 多头检测与特征融合
第一代深度学习通用检测模型由 Backbone 网络和检测Head两个主要组件构成[9, 29]。这些模型通常使用最终特征图进行预测。SSD[25]引入了多尺度特征图在目标检测中的应用,开启了多头检测的先河,并对后续实时检测器设计产生了影响[31]。在SSD模型中,每个检测Head直接使用 Backbone 网络不同层级的原始特征图,无需任何融合。多头检测方法的关键优势在于能够利用具有不同感受野的特征图预测不同尺度的目标。高层特征图凭借其宽泛的全局感受野,有利于识别大型目标,而低层特征图凭借精细的局部感受野,有助于识别小型目标。
FPN引入了多尺度特征图的融合方案以提升检测精度,为特征融合设定了趋势并成为常用实践。这促成了 Backbone - Neck - Head 的架构发展。基于FPN的更复杂变体,如BiFPN[34]和PANet[24],随后被提出,使得预测可以使用更多特征。然而,随着预测精度的提升,由于额外的融合层,网络变得越来越复杂。一些方法尝试通过探索多尺度检测挑战的新视角来绕过特征融合方案,例如优化多尺度训练策略[33]或使用扩张卷积来捕获多尺度感受野[19]。但这些方法随着分类- Backbone 特征提取能力的持续优化和特征融合技术的不断发展,逐渐失去了竞争力[1]。
2.2 轻量级
模型在云计算与边缘计算之间的选择取决于其参数数量和浮点运算量(FLOPs)。因此,减少参数数量或FLOPs是轻量级模型研究的主要焦点。直接轻量化方法包括减少模型的深度(层数)或宽度(神经元/滤波器数量),例如YOLO-fast、tiny和nano模型[1,14-16,31,35]。此外,Sparse计算技术,如MobileNets[13]和ShuffleNet[39]中使用的深度可分离卷积,也可被采用。然而,低深度网络常因非线性表示能力不足而出现欠拟合问题。因此,减少网络层数并不总是轻量化模型的成本有效方法。
3 二次特征对齐解决方案
本节详细描述了本工作的主要内容。具体而言,包括通过放弃融合来直接展示特征不匹配问题的IHP结构,通过逐点方式缓解特征融合过程中的不匹配问题的SNI,在降采样阶段增强空间特征捕获的ESD,以及提高轻量级模型在准确性和速度之间性能的GSConvE。
3.1 独立层次金字塔架构
FPN的引入使所有实时检测器进入了特征融合的领域。然而,作者识别出由不同层级的特征点对点融合产生的一个重大问题——部分局部特征变得不对齐。当不对齐的特征被组合时,融合过程类似于添加噪声,因为与目标空间无关的特征被强行集成,导致空间混乱。例如,如图2所示,将小狗的 Head 特征添加到屁股上,当输入到检测Head时,会产生一个未定义的品种。这种情况在小狗占据的像素较少时尤为明显。
通常,使用最近邻插值快速提高High-Level特征图的分辨率以匹配Low-Level特征图的分辨率,然后通过元素逐项相加、通道级联或加权求和等方法进行融合。然而,下采样通常是非线性且不可逆的,导致上采样生成的附加特征在空间特征上存在不一致性。尽管BiFPN [34]提供了一种可学习的融合方法,但由于其复杂性增加,且在这些模型中尚未证明具有全面的性能提升,因此并未被最近的先进实时检测器(如YOLOv7 [35]或YOLOv8 [15])广泛采用。
IHP采用激进的方法,通过放弃 Neck 所有融合,从根本上规避了特征错位问题,并简化了结构。通过利用多头检测模式的固有优势,IHP直接使用不同层级的特征图预测不同尺寸的物体。需要注意的是,IHP与SSD架构之间存在显著差异:SSD直接使用 Backbone 网络的不同层级特征进行目标检测,而IHP在预测前引入了一个 Bottleneck 卷积模块来过滤特征。这种方法的优点在于它允许模型独立地为特定尺度分支学习特征,而不会影响其他层级的特征。在 Backbone 网络的不同层级直接堆叠卷积块会导致不同层级之间的干扰,作者认为这可能是使用非常深的 Backbone 网络在目标检测模型中导致性能下降的主要原因。例如,DSsD [6]在SSD检测器中使用ResNet101作为 Backbone 网络时,性能出现了下降。
在表1的第一部分中,所有耦合头YOLOs的 Baseline 在使用IHP时都取得了改进的结果。特征融合往往在增强预测语义丰富性的同时忽略了引入噪声的潜在风险。虽然IHP看似减少了语义信息,但它有效地利用了多头检测的优势来规避错位问题。这种对多头检测的策略性利用是IHP取得竞争性结果的关键因素。不幸的是,与定位-分类-耦合头检测器[14, 29-31, 35]不同,IHP对定位-分类-解耦头检测器[15, 16]没有产生同样的积极反应。
解耦头检测器解决了耦合头检测器面临的一个关键挑战:分类和定位任务之间兴趣的差异,这两个任务通常使用同一层进行预测[36]。这种方法类似于强行融合错位特征进行预测。解耦头检测器通过独立的分支分别预测分类和定位任务来克服这一限制。这使得它们能够从冗余特征中学习有益的表示,这是耦合头检测器无法做到的。因此,虽然FPN策略在一定程度上仍然适用于解耦头检测器,但特征错位问题仍然需要解决。
3.2 Soft最近邻插值
在检测或分割模型中,不同层级的特征融合通常发生在特征图的上采样之后,其中最近邻插值和转置卷积是流行的上采样方法。然而,检测或分割中的上采样所导致的分辨率扩展与生成或超分辨率等任务有显著差异。在检测中,扩展后的特征图代表抽象的High-Level语义特征,而非原始图像细节信息。转置卷积引入了更高的计算量和延迟。
为了以最小成本解决特征错位问题,同时保持最近邻插值的速度,作者探索了一种解决方案。最近邻插值类似于平均反池化,但被视为一种"硬"操作。通过软化这一操作,类似于SoftMax到Max函数的转换,作者旨在缓解"硬"特征错位问题。为此,作者为上采样过程中的最近邻插值引入了一个软因子,记为
:
在公式(1)中,High-Level特征图(
)和Low-Level特征图(
)的分辨率分别表示为Resolution
和 Resolution
。最近邻插值操作,用
表示,如图2所示。SNI(语义特征调整网络)根据特征图的缩放因子调整High-Level语义特征对Low-Level特征的影响。具体来说,随着缩放因子的增加,High-Level语义特征对Low-Level特征的影响减弱。与SoftMax不同,SNI不会将输出转换为概率,而是在通过点对点融合将High-Level特征与Low-Level特征集成时,以额外成本减少错位。SNI软化特征权重,同时保留关键纹理,从而在融合过程中减少不同层级特征之间的相互影响,如图3定性地所示。
这种方法实现了次级(辅助)特征对齐(SA),并降低了模型从融合表示中学习的复杂性。相比之下,直接合并不同层级特征的传统方法由于表示偏差可能导致不稳定的竞争效应,增加模型的学习难度。例如,如果图1(i)中的三个 Heatmap 直接融合,红色区域是否覆盖整个图像?显然,答案是否定的。如果出现这种情况,表明先验特征提取失败,因为模型的目标是捕获和关注有用特征。这也是为什么FPN类范式下的模型通常需要在融合后、预测前增加几个额外的卷积块来进一步过滤特征的原因。
在表1的第二部分中,所有测试的当前最佳模型仅通过结合SNI就展示了准确率的提升,这证实了基于FPN的模型中存在特征错位问题。值得注意的是,对于YOLOv6[16]——一种配备多种针对行业应用定制技术的检测器,仅采用SNI就能将AP提升高达2个百分点,同时降低计算成本和推理延迟。通过在原始YOLOv6中仅将转置卷积替换为SNI,作者取得了显著的优化结果,突显了该方法的效能。
3.3 扩展空间窗口中的特征自适应选择
特征下采样是深度学习视觉模型中的关键技术,涉及特征图分辨率的逐步降低。在视觉表征学习领域,模型通常依赖低分辨率、High-Level特征图进行预测,而非直接处理高分辨率原始图像。然而,过度下采样会导致显著的空间细节损失[12]。近期检测器通常将下采样操作次数限制在不超过五次,导致空间分辨率降低至
倍,以YOLOs[1,7,14-16, 31, 35, 37]和Swin Transformer[26]为例。常见的下采样方法包括卷积和池化,模型通常仅采用其中一种。
作者提出了扩展空间窗口下采样(ESD)中的特征自适应选择方法,以增强空间信息保留能力。ESD包含两个非线性分支和一个线性分支。在非线性分支中,范数卷积层和扩展窗口最大池化层增强局部特征捕获,而扩展窗口平均池化增强全局特征捕获。随后,线性特征与非线性特征进行融合。针对轻量级和规范模型,分别设计了ESD-I和ESD-II两种融合模式。差异在于特征融合阶段,如图4所示。ESD-I采用逐元素相加进行特征融合,具有低计算成本,适合轻量级模型;而ESD-II采用可学习的线性自适应融合,略微增加计算成本,适合规范模型。重要的是,通过简单的池化技术对扩展窗口的局部和全局特征进行采样,显著保留输入信息,减少下采样过程中的信息损失,使后续层能够从前一层学习部分表征,类似于间接实现ResNet[12]中的隐式快捷连接。
3.4 轻量级GSConv增强
GSConv [18] 被引入以解决深度可分离卷积的通道交互限制,通过融合来自普通卷积和深度卷积的特征。原始的GSConv由三个基本组件构成:一个3×3的普通卷积、一个5×5的深度卷积以及一个特征重排操作。在此基础上,作者提出了GSConv的两个进化版本,即GSConvE-I和GSConvE-HI,分别针对规范模型和轻量级模型进行优化。GSConvE-I专为规范模型设计,其中辅助分支上的中间特征图由密集线性映射导出,而输出特征图则源自Sparse线性映射。这种方法在保持特征丰富性的同时,并未显著增加计算成本。
另一方面,GSConvE-II面向轻量级模型。它集成了三个深度卷积辅助分支,其 Kernel 尺寸分别为9×9、13×13和17×17。通过采用更大的 Kernel 尺寸,该变体能够直接捕获更大的感受野和全局特征,且所需层叠更少,为优先考虑减少FLOPs和层数的轻量级模型提供了高性价比。在GSConvE-I中,作者探索了移除深度卷积分支上的批量归一化层,同时保留主分支上的批量归一化层,类似于ConvNeXt [27]。这一调整避免了梯度消失问题,简化了计算,从而提升了预测精度。
4 实验
实时检测器因其硬件友好性和在准确性与速度之间取得的最佳平衡而在工业中备受青睐。在作者的研究中,作者选择了流行的YOLO模型-YOLOv3 [31]、YOLOv4 [1]、YOLOv5 [14]、YOLOv6 [16]、YOLOv7 [35]和YOLOv8 [15]作为 Baseline ,以评估SA解决方案在实时检测场景(SYOLO)中的有效性。
4.1 数据集
作者在Pascal VOC数据集[5]和MS COCO数据集[22]上进行了试验。Pascal VOC 07+12数据集用于消融实验,其中模型在train&val07+12集上进行训练,然后在test07集上进行评估。另一方面,MS COCO数据集用于对比实验,模型在train2017集上进行训练,并在val2017集上进行评估。为确保公平性和一致性,所有发布的模型均使用默认的超参数集进行训练,且未使用预训练权重。超参数的更多细节在支持材料中。
4.2 消融实验
在表1中,作者展示了针对六个 Baseline [1, 14-16, 31, 35]进行的消融实验结果,重点关注IHP、SNI和ESD的影响。GSConvE的轻量级实验结果报告在表2中。所有 Baseline 都保留了其原始的 Neck 架构,因为作者相信原始工作中的竞争性 Neck 已被仔细选择。绿色突出显示的性能指标表示性能提升,而红色突出显示的表示性能下降。
在验证过程中,有一个经常被忽视的方面至关重要:报告的评估精度与实际使用之间的不一致性。通常,检测器使用非常低的置信度阈值进行评估,例如0.001,这会导致大量预测框和虚高的评估精度。然而,在实际的检测场景中,置信度阈值通常设置得更高,大约在0.25或更高。这种过滤过程确保了使用高质量的目标框进行实际应用。
评估设置与实际使用之间的差异可能会造成对精度的误导性印象。因此,在评估和应用之间保持配置的一致性至关重要。虽然这可能导致评估精度显著下降,如表3所示,但它提供了对模型性能更现实的评估。
4.3 对比实验
在表4和表5中,作者在Pascal VOC和COCO基准测试上比较了最先进的实时检测器和SYOLO(表7中的架构)。
在表6中,作者提供了在COCO [22]上对最先进检测器的额外比较,包括实时(CNN)和非实时(Transformer/CNN)模型。参数和FLOPs指标显著高于实时检测器模型的数值以红色突出显示。
在表4中,SNI将YOLOv7的AP提升了0.9个百分点,且没有任何额外的计算或内存成本。SYOLO利用SA解决方案,在Pascal VOC基准测试中取得了竞争模型中的最高精度。在表5中,SYOLO在输入分辨率为416×416和640×640时,在MS COCO基准测试中也取得了竞争模型中的最高精度。在不同基准测试中的积极性能提升表明SA解决方案对于实时目标检测的有效性。
5 结论
作者探讨了表征学习的本质,并发现不同层次特征图的融合面临着特征错位的问题。为此,作者引入了SNI。此外,作者提出了ESD以减轻下采样过程中的空间信息损失,并进一步优化轻量级卷积方法以提高轻量级模型中的计算效率。基于这些进展,作者提出了SA解决方案用于实时检测,其中所有测试检测器均超越了原始性能,并达到了当前最佳结果。
近年来,目标检测领域显著受益于FPN类似范式。然而,近期发展表明,包括创新架构和训练策略在内的新技术可能为现代检测器提供更优越的性能,使得FPN类似范式可能存在局限性。在很多情况下,通过应用SNI来处理特征错位问题,可以增强FPN类似范式的有效性。在现有视觉模型中,为了完全解决特征融合过程中的错位挑战,需要进一步的研究投入。
参考
[1]. Rethinking Features-Fused-Pyramid-Neck for Object Detection
扫码加入👉「集智书童」交流群
(备注:方向+学校/公司+昵称)