【论文】【翻译】目标检测中跨金字塔层级的渐进式困难样本挖掘

原文:Progressive Hard-case Mining across Pyramid Levels in Object Detection

字体颜色说明:一般重要、同级区别较为重要、特别关注论证,观点,事实, 做法

一、摘要

在目标检测中,多级预测(例如,FPN、YOLO)和重采样技巧(例如,焦点损失、ATSS)极大地提高了一级检测器的性能。但是,如何通过逐级优化特征金字塔来提高性能仍未探索。我们发现,在训练过程中,正样本与负样本的比率在金字塔级别(级别不平衡)上有所不同,这是当前的一级检测器无法解决的。为了调解级别不平衡的影响,我们提出了一个统一的多级优化范式(UMOP),由两个组件组成:1)独立的分类损失,监督每个金字塔级别,考虑单独的重采样; 2) 一个渐进的困难样本采样损失,定义了金字塔中层的所有损失,没有额外的级别更好设置。使用 UMOP 作为即插即用的方案,现代的单级检测器可以在更少的训练迭代和没有额外的计算开销的情况下获得 ∼ 1.5 AP 的改进。我们最好的模型在 COCO 测试中达到 55.1 AP - dev。代码可在 https://github.com/zimoqingfeng/UMOP 获得。

【白话】 这篇文章提出一个即插即用的模块UMOP,创新点在损失函数方面。能减少迭代也就是训练的快还能提升AP;在COCO上有55.1AP (也没说你跑的啥网络结构,往后看吧~)

二、结论

我们观察了一阶段目标检测器中的水平不平衡问题(这个可能引用的其他文章,等等再看吧)。为了调解水平不平衡,我们提出了一种新的分类损失,以在训练期间逐步调整困难样本挖掘。我们提出的方法做了一个在平均精度方面对普通的一阶段检测器进行了稳定的改进,训练迭代次数更少,并且没有额外的计算开销。

【白话】 面临一个水平不平衡问题,提出新的分类损失,提升了平均精度,减少计算、迭代次数。

三、引言

图 1:差异和相似之处。 (a) 多阶段检测器对具有不同 IOU 阈值的提案进行重新采样,在 head 中显示为 U。 (b) 一阶段检测器利用各种金字塔级别进行密集预测,对所有潜在样本,使用单一的重新加权损失形式。 (c) UMOP 使用动态超参数调整策略优化所有样本,基于它们在哪个水平的收敛情况。

图 2:水平不平衡的统计分析。 P3 到 P5 被定义为来自 FPN 的级别索引,表示来自不同金字塔级别预测的结果。在每次训练迭代中,每个金字塔级别的正样本与总样本的比例都被记录下来,并总结为箱线图。由上四分位数和下四分位数包围的每个框的高度表示每个金字塔级别记录的比例的方差,平均值绘制为点并用虚线连接。 

一级目标检测器在实际应用中很受欢迎,因为与多级检测器相比,它具有更高的效率和更低的计算成本(Zou et al. 2019)。最近,单级检测器逐渐赶上多级检测器,受益于模型架构、损失函数、目标分配策略等方面的深入研究。

配备特征金字塔网络 (FPN) 和焦点损失,一级检测器可以提供更准确的预测与密集的候选。 FPN 为密集的候选者提供了不同的感受野。它通过解决感受野和目标尺度之间的不匹配问题来提高性能。 Focal loss 根据分配的标签与其自身概率之间的差距重新加权所有潜在的提议。它通过启用在线困难样本挖掘来提高性能。这两种技术已广泛应用于领先的研究,包括基于锚的检测器无锚检测器

尽管他们各自做出了贡献,但焦点损失和 FPN 之间的协同作用尚未得到充分探索Focal loss是从全局优化的角度设计的,使用两个超参数来控制hard-case挖掘程度来调解类不平衡。相比之下,FPN 通过捕获具有不同金字塔级别的不同对象尺度,通过其分而治之的解决方案提高了性能。

然而,如图 2 所示,正样本与负样本的比率可能会在金字塔中层之间变化,我们将其称为水平不平衡。因此,似乎单一的全局焦点损失设置可能会误导单个金字塔级别的优化

多阶段检测器可以根据定位质量通过对不同阶段应用不同的重采样机制来缓解不平衡(Cai and Vasconcelos 2018)。这样的框架可以通过细化位置和置信度分数来逐步提高性能。此外,多级检测器,例如 Cascade R - CNN(Cai and Vasconcelos 2018) 和 HTC (Chen et al. 2019) 在考虑匹配质量的情况下受益于不同阶段的重采样机制。一个自然的问题出现了:我们能否在多级一阶段检测器上利用这些重采样机制,通过分而治之的优化检测头来避免水平不平衡现象?

 在本文中,我们首先进行统计分析,以验证正样本与负样本的比率在金字塔层级之间存在差异,即层级不平衡现象广泛存在。受多阶段检测器架构的启发,我们提出了统一多级优化范式(UMOP)来解决水平不平衡并提高整体性能。如图 1 所示,UMOP 由两部分组成:1)独立的分类损失监督每个金字塔级别,并考虑单独的重新采样; 2) 一个渐进的困难样本挖掘损失定义了金字塔级别的所有损失,在没有额外阶段设置的情况下解决水平不平衡。我们在以下部分提供了详细的方法描述、消融研究和比较结果。

我们的主要贡献是:

1、据我们所知,我们是第一个通过实验证明 FPN 的性能在一定程度上受到水平不平衡问题的限制。

2、使用我们提出的调节水平不平衡的方法,现代单阶段检测器可以通过更少的训练迭代和没有额外的计算开销来获得约 1.5 AP 的改进

3、我们最好的模型在 MS COCO test-dev 上达到了 55.1 AP,这是迄今为止一级检测器中的 SOTA。

 4、相关工作

多阶段检测器中的重采样方法

源于滑动窗口方法,两级检测器继承了先定位后细化的固有范式,以获得更好的性能。从滑动窗口方法到选择性搜索,再到区域提议网络,很明显,ROI(感兴趣区域)提取方法的发展显着提升了检测器的性能。

从我们的角度来看,Region Proposal Network可以看作是一个数据驱动的重采样调度器,根据匹配质量,丢弃大量低质量的负样本来缓解优化过程中的目标不平衡。此外,多级检测器的头部可以逐步消除低质量的预测,以解决训练和推理过程中的质量不匹配问题。最近,关于重采样方法的进一步研究仍然有很多新的视角。在训练过程中,已经提出了 Iou 平衡抽样,以根据每个金字塔级别的匹配质量分配样本。

从模型设计的角度来看,很多研究尝试将识别和定位任务解耦,通过分别从主干中采样解耦特征来提高性能。 IoU-guided NMS方法深入研究高质量的目标检测,可以将定位质量的预测引入NMS,以便更好地进行后处理校准。

一级检测器中的重采样方法.

对重采样机制的研究使一级探测器与二级探测器相当。受到 OHEM 的启发,Focal loss (Lin et al. 2017) 被提出来使模型自动更多地关注困难案例,通过极低的加权简单案例的损失和稍微降低困难案例的权重,这有最近被广泛使用。

由于多级架构提供了更密集的候选(Liu et al. 2016; Lin et al. 2017; Redmon and Farhadi 2017),重新加权被认为是稳定实现更好性能的关键方法。这样的设计还可以对各种目标分配策略保持稳健的贡献,从而导致无锚检测器的爆炸式增长(Zhu、He 和 Savvides 2019;Tian 等人 2019)。

此外,在这一突破的影响下,很多研究都更深入地考虑了这种在线困难样本挖掘思想。例如,已经提出了一种基于focal loss的减小惩罚像素级逻辑回归损失来优化Center Net中中心点的预测,并且相对于目标IoU的focal loss的改进也可以得到稳定的改进。

此外,提出了一种梯度协调机制,以确保训练过程中的优化鲁棒性。同时,仍然有很多基于焦点损失的研究,以更好地估计检测器提议的质量,也带来了显着的改进。 

目标分配中的重采样方法。

 从anchor-based检测器和anchor-free检测器的统一角度来看,目标分配问题近年来逐渐受到关注。在 ATSS (Zhang et al. 2020) 中,已经证明 Retina Net 和 FCOS 之间的关键区别在于目标分配策略,它导致训练过程中目标分布的差异并导致性能差距。相应地,具有动态 Io U 阈值的新目标分配策略已在每个金字塔级别上进行了精心设计,以获得更好的性能。此外,Auto Assign (Zhu et al. 2020) 通过一种完全数据驱动的方法提高了性能,尽可能少的手工设置。通过将其定义为优化问题,PAA (Kim and Lee 2020) 和 OTA (Ge et al. 2021) 在每次训练迭代期间分别设定特定目标并找到合适的在线策略

5、水平不平衡的统计分析 

 多级架构广泛用于单级检测器,极大地提高了检测性能。在 SSD 和 YOLO 系列中,多级预测框架通过提供更密集的候选者来提高检测器性能。与 SSD 和 YOLO 不同,后者直接在特征图的每一层进行预测,用于特征组合的自上而下路径和横向连接。在我们的工作中,我们分析了基于锚的检测器和无锚检测器,以从一般的角度确认水平不平衡问题。

水平不平衡的实验设置。

没有失去一般性,我们基于两个基于锚的检测器和两个无锚检测器进行分析:Retina Net、ATSS、FCOS 和 VF Net。我们使用 MS COCO (Lin et al. 2014) 数据集进行所有分析,其中包含用于训练一个 epoch 的 trainval35k 中的 115 K 图像。我们应用 FPN 作为 C3 到 C5 的模型颈部,从主干生成名为 P3 到 P7 的五种不同分辨率的特征图(如图 1 (b) 和 (c) 所示)。此外,我们修复了所有其他设置以进行公平比较。

水平不平衡的统计分析

在我们的分析中,我们仔细观察了目标分布跨级别的影响,同时保持图像分辨率和模型的复杂性固定。有很多方法可以分配训练目标。对于没有特定情况的一般分析,在整个训练时期内对四个不同的检测器进行了统计分析:在每次训练迭代期间,记录每个金字塔级别的正样本占总样本的比例,并总结如图 2 中的方框图。

如图 2 所示,很明显每个金字塔层级之间的目标分布是完全不同的。根据所有四个检测器,P7 中的每个候选者在训练期间匹配正样本的概率更高结果清楚地揭示了多级别探测器中的水平不平衡现象,无论在什么情况下。因此,我们怀疑具有固定超参数设置的焦点损失不能同时为所有金字塔水平做出良好的权衡。

统一多级优化范式

我们提出了一种 UMOP调节一级检测器中的水平不平衡。所提出的方法由两部分组成:1) 逐级重采样范式(LRP),它设置一个独立的分类损失来监督每个金字塔级别,并考虑单独的重采样;2) 一个 渐进性焦点损失,它基于每个金字塔层级的正样本预测,逐步调整困难样本挖掘程度

智慧水平的重采样范式 

多级检测器通过使用迭代重采样机制进行优化来缓解不平衡现象在建议重新评分和位置细化之间交替。这种机制可以排除容易出现的低质量样本并防止质量不匹配问题,从而改进高质量预测。我们提出了 Level wise Resampling Paradigm ,这是一种类似的范式,用于基于不同的高质量预测的单阶段检测器金字塔级别之间的困难样本度量。

LRP 是一种多级优化范式,可解决不同金字塔级别的样本不平衡问题。如图 1 (c) 所示,我们在训练期间独立计算每个金字塔级别的分类损失。以下等式。 (1) 是总分类损失,定义为所有水平分类损失的平均值。 

 在等式中。 (1), L 是单级检测器中用于预测的金字塔层数,Pl是仅从第 l 层生成的逐层预测结果,Yl 表示通过特定目标分配策略分配的标签. Lossl表示第l个级别的总损失。这个水平的损失项赋予每个金字塔级别的灵活性,以适应它在优化过程中面临的特定样本不平衡。

渐进性焦点损失 

 对于没有任何不必要设置的级别优化,我们提出了渐进式焦点损失 (PFL),以根据每个金字塔级别中正样本的预测自动调整困难样本挖掘的程度。另外,关于收敛情况的度量,所提出的损失可以保持困难样本的有效梯度。

对于二元分类,sigmoid 焦点损失为 (2):
 

在等式。 (2),pi是模型的最终预测结果。 yi ∈{0, 1} 是为每个金字塔级别的每个网格中的特定预测分配的标签。在原始的损失函数中,超参数α是一个经​​过良好调整的常数值以保持正负样本之间的梯度平衡,而γ旨在缓解简单样本和困难样本之间的不平衡,通过一种根据模型预测概率的动态抽样方法 。

通过适当的α和γ,大量容易和负样本的梯度被显著压缩。在实践中,较低的 α 始终对应于较高的 γ以在更容易的负样本被大幅降低权重时调整对正样本的强调(Lin et al. 2017),并保持模型收敛的所有损失之间的平衡。 

从分而治之的角度来看,我们提出了一种新颖的 α 和 γ 动态超参数调整策略。所提出的策略可以根据每个金字塔层级的自身收敛情况动态调整困难样本挖掘的强度由于金字塔层级之间的不平衡多样性,不同层级应用的实际超参数是完全不同的

在训练过程中,案例一般前期训练难度较大,后期相对容易一些。对于优化过程中的相应指南,具有我们提出的调整策略的超参数可以根据每个金字塔级别的收敛情况独立地自动调整。 PFL 可以显示在以下等式(3)中 除了对 αad 和 γad 提出的调整计划外,所有原始设置都被保留了。

作为一个困难样本挖掘设置,γad的设计考虑了正样本在每个金字塔级别的预测质量。同时,受前人实验分析的启发(Lin et al. 2017),αad被设置为及时跟随γad调整,这样可以保持正样本和负样本之间的平衡。详细的定义可以在方程式中显示。 (4) 和等式。 (5)。 

 

图 3:渐进式 Focal Loss 和 Focal Loss 之间的比较。在训练过程中,案例一般前期训练难度较大,后期相对容易一些。 Progressive Focal Loss 可以逐步加强困难样本挖掘的程度。 

算法一:统一多级优化范式

输入:P、Y 。【P:是一组预测结果;Y: 是对应于预测的一组真实框】

输出:Loss(cls) 是总分类损失

1、将 P 拆分为 Sp = [P1, P2, . . . ] 每个金字塔级别。

2、将 Y 拆分为 Sy = [Y1, Y2, . . . ] 每个金字塔级别。

3、For 预测 Pl ∈ Sp 和基本事实 Yl ∈ Sy Do

4、        由 yi ∈ Yl 和 pi ∈ Pl 根据 (4)方程计算 γad。

5、        由 γad 根据公式(5)计算 αad。

6、         根据公式 (3) 计算 PFL(l)作为第 l 级损失。

7、结束循环

8、根据公式(1)计算 Loss(cls)。

9、返回 Loss(cls)。

 γad 的函数类似于交叉熵(CE)损失,自然反映了金字塔级别的收敛情况。在等式 (4)对于γad调整,从水平优化的角度设计的策略:yi表示一个样本在特征金字塔级别的分配标签,pi定义为对应的概率结果。因此,yi·pi 表示正样本的概率,定义为负样本的概率为0N 定义为每个金字塔级别的总样本数n(pos) 表示每个金字塔级别的总正样本数。为了确保训练的稳定性,调整后的超参数被限制在有效区间 γad ∈ [γ - δ, γ + δ] 内,其中 δ 也设置为所有实验的常数

在等式 (5),  \alpha _{ad}的调整计划设计为跟随 \gamma _{ad} 的趋势。具体而言,w是使由\gamma _{ad}从负相关计算出的\alpha _{ad}的常数

 此外,作为一种水平重采样方法,需要注意的是,\alpha _{ad}\gamma _{ad} 是即时计算的,并且在训练期间不会产生任何额外的推导操作。

 因此,\gamma _{ad} 反映了整个层次的收敛情况,开始时的值较大,然后随着优化的进行逐渐减小。如图 3 所示,这样的动态调整时间表可以使模型一开始就强调困难样本,当困难样本和简单样本的判别力不够时,逐渐提高区分能力。

 UMOP 的整个过程在算法 1 中描述。我们将整个范式作为一个统一的形式引入,以便轻松地部署到任何具有多级结构的单阶段检测器中

6、实验

实施细节

基于大规模检测基准 MS COCO (Lin et al. 2014),我们遵循之前工作中的常见做法 (Ren et al. 2015; Tian et al. 2019) 设置 COCO trainval35k split (115 K images)用于训练和最小分割(5K 图像)作为验证。在消融研究中,尽可能详细地列出了许多条件下的评估结果。为了与最先进的技术进行公平比较,我们还通过将最终结果上传到评估网络服务器来报告我们在测试 - 开发拆分(20K 图像)上的主要结果。

网络设置

我们在训练期间将所有现有设置保留为已发布代码中的默认设置,包括模型架构和相关的模型设计设置。如果未另行指定,我们将使用 Image Net (ILSVC) 预训练的权重初始化我们的骨干网络。此外,我们还遵循 Retina Net 和 ATSS 中与锚点相关的设置(即锚点数量、锚点尺度、锚点纵横比等),保持原始目标分布以进行公平比较。对于消融研究中的单尺度训练,我们将图像的较短边调整为 800,将较长边调整为小于或等于 1333,保持纵横比。对于多尺度训练,我们将较短的边随机设置在 640 到 800 之间。

优化

PFL 设置为独立优化每个金字塔级别。在 PFL 中,对于我们的主要结果,w 设置为 α · γ (0.5),δ 设置为 0.5。此外,保留所有其他原始设置。如果未指定,则使用随机梯度下降 (SGD) 对相同时期的模型进行训练,初始学习率为 0.01,批量为 16 个图像。

在前 500 次迭代中采用了线性预热训练,预热比率为 0.001。权重衰减设置为 0.0001,动量设置为 0.9。对于边界框回归,ATSS 采用 GIoU Loss,Retina Net 分别采用 L1 Loss。 

消融研究 

我们对 Retina Net 和 ATSS 进行评估,以分析对常用检测器的总体改进。我们还比较了使用或不使用我们的方法的 ATSS 的收敛速度

不同探测器的全面推广 

我们首先调查我们对不同检测器的一般贡献。所提出的范例可以作为即插即用组件轻松部署在几乎所有单级检测器中。基于不同的主干,对 Retina Net 和 ATSS 的总体改进如表 1 所示。ATSS 与我们的方法之间的定性比较如图 4 所示。 

表 1:COCO minival 的平均精度 (AP) 改进。 “R”:Res Net,“X”:Res NeXt - 64x4d。我们展示了仅应用 PFL 和整个方法时的性能改进。为了获得更强的基线,我们可以选择在两个检测器上应用多尺度训练和可变形卷积层。 

 根据可视化结果,我们的方法可以解决范围广泛的难题,包括模糊对象(如 3 - 香蕉所示)、高度重叠的物体(如 5 - 飞机、7 - 瓶子、8 - 长凳)、小型物体(如图 1 - 风筝)和具有极高纵横比的物体(如图 2 - 红绿灯,4 - 冲浪板)。

根据表 1,对于 Retina Net,原始工作报告的 Res Net - 50 骨干网的 AP 值为 35.7,Res Net - 101 骨干网的 AP 值为 38.9(为更大的骨干网配备了多尺度训练)。仅使用 PFL,AP 值分别增加 1.0 和 0.8。应用 LRP 后,AP 值进一步增加 0.2 和 0.8。对于 ATSS,原始工作报告了 Res Net - 50、Res Net - 101 和 Res Ne Xt - 64x4d - 101 的 AP 值分别为 39.3、46.1 和 47.7(配备多尺度训练和 DCN - v2对于 Res Net - 101 和 Res Ne Xt - 64x4d - 101)。仅使用 PFL,AP 值分别增加 0.8、0.6 和 0.7。应用 LRP 后,AP 值进一步增加 0.3、0.9 和 0.4。这些结果清楚地表明,我们的方法可以提高具有不同主干的不同检测器的性能

 收敛速度分析

在本节中,我们将我们的方法与不同主干(Res Net - 101 和 Res Ne Xt - 101)上的原始 ATSS 进行比较。为了公平比较,我们的工作和基线都配备了相同的多尺度训练策略和可变形卷积层(DCN-v2)。基于COCO test-dev,性能对比如表2。

 带有 Res Net - 101 和 Res Ne Xt - 101 的原始 ATSS在收敛之前需要 24 个 epoch。训练时期配备我们的方法后,性能提高了 1.4 AP。此外,通过我们的方法,AP50、AP75 和具有不同对象尺度的 AP 也得到了改进。

 图 4:COCO minival 的一些检测结果。 Res Net - 50 用作主干,可视化的分数阈值为 0.3。如图所示,UMOP 适用于广泛的对象,包括拥挤、高度重叠和极小的对象。

表 2:COCO test - dev 的收敛速度分析,我们的方法以更少的迭代实现了更好的性能。
 

与最先进技术的比较

我们在 COCO test-dev 上使用 UMOP 评估 ATSS,并与最近的最先进模型进行比较,包括一级探测器和二级探测器。表 3 列出了我们的结果以及近年来一些流行模型的性能。在这里,我将我们的方法与一些更高级的工作、更密集的计算和最佳超参数设置相结合,以实现更具竞争力的最终结果。

我们在表 3 中的所有结果均采用多尺度训练策略,训练 epoch 设置为 24 以确保收敛。对于使用 Swin Transformer 进行训练,4 个补丁和 7 个窗口保持默认作为其内部结构设置。第 2 列中的“1 K”表示主干网络是从 Image Net - 1 K 数据集预训练的,“22 K”表示相应的 Image Net - 22 K。

我们最好的单一模型采用了多尺度测试。在这种策略下,图像会相应地调整大小,最终结果的短边从 800 到 1200 不等。我们所有的实验都是在 8 Tesla - V100 - 16 GB 上训练的GPUs,除了 Swin - L - 22 K 的实验使用 8 Tesla - P40 - 24 GB GPUs 和 NVIDIA - Apex 工具包(利用自动混合精度来节省 GPU 内存)进行训练与具有长训练周期和大图像分辨率的高性能检测器相比,我们的模型在 COCO test-dev 上实现了高性能 55.1 AP,具有基本的实验室设置和最常用的图像分辨率。

表 3:在 COCO 测试 - dev 上与最先进检测器的单模型性能比较,'R':Res Net,'X':Res Ne Xt - 64x4d,'R2':Res2 Net,'Hg' : Hourglass, 'Eff Net': Efficient Net 'DCN': Deformable convolution network v2, 960*: 将短边调整为 960,将长边调整为小于或等于 1333,同时保持纵横比,M Strain:训练图像比例范围800* 为 1333×[640:800],960* 为 1333×[480:960]。

【结尾】 从全局损失函数可能影响特征金字塔中每一层的特征图的样本召回情况,以及困难样本挖掘情况为入口,以实验方式验证每一层级的特征图中样本召回和困难样本挖掘情形是不同的,使用统一损失函数对精度造成影响。随后提出两种损失函数设定机制 LRP、PLF 使得整体训练精度有所提升。而且是适用于有锚框和无锚框的一阶段算法中,同时使用消融实验方法要重点掌握。 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瑾怀轩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值