odps抽取数据原理(DDOD:分解稠密目标检测器)
odps抽取数据原理(DDOD:分解稠密目标检测器)1 简介首先进行了一系列试点实验来展示如何解开这些组件以带来持续的性能改进,根据发现,提出了分离密集物体检测器(DDOD),设计了简单有效的解缠结机制并将其集成到当前最先进的密集物体检测器技术中。在 MS COCO 基准上的大量实验表明,方法可以在 RetinaNet、FCOS、ATSS 上提升2.0 mAP、2.4 mAP ,具有可忽略的额外开销。最好的模型在 COCO 测试集上达到 55.0 mAP,在WIDER FACE 的hard达到 93.5 AP,在这两个竞争基准上实现了新的最先进的性能。https://arxiv.org/pdf/2107.02963.pdf摘要基于深度学习的密集物体检测器在过去的几年中取得了成功,并已应用于众多多媒体应用,如视频理解。然而,当前密集检测器的训练pipeline在许多可能不成立的组件中受到损害。在本文中,研究了三个这样重要的组件:1)仅分配分类
论文收录与ACM 2021
论文标题:
Disentangle Your Dense Object Detector
论文地址:
https://arxiv.org/pdf/2107.02963.pdf
摘要
基于深度学习的密集物体检测器在过去的几年中取得了成功,并已应用于众多多媒体应用,如视频理解。然而,当前密集检测器的训练pipeline在许多可能不成立的组件中受到损害。在本文中,研究了三个这样重要的组件:1)仅分配分类头中的正样本用于训练回归头; 2)并行头架构分类和回归共享相同的输入特征;3)分布在不同特征金字塔层的样本在计算损失时同等对待。
首先进行了一系列试点实验来展示如何解开这些组件以带来持续的性能改进,根据发现,提出了分离密集物体检测器(DDOD),设计了简单有效的解缠结机制并将其集成到当前最先进的密集物体检测器技术中。在 MS COCO 基准上的大量实验表明,方法可以在 RetinaNet、FCOS、ATSS 上提升2.0 mAP、2.4 mAP ,具有可忽略的额外开销。最好的模型在 COCO 测试集上达到 55.0 mAP,在WIDER FACE 的hard达到 93.5 AP,在这两个竞争基准上实现了新的最先进的性能。
1 简介
随着深度学习的最新进展,视觉对象检测在性能和速度方面都取得了巨大进步 。它已成为广泛传播多媒体应用程序的基础,例如动画编辑和交互式视频游戏。与开创性的两级目标检测器相比,单级密集检测器越来越受到关注,因为它们简单而优雅的pipeline。直接输出检测到的边界框,这确保了快速的推理速度,使其更适合部署在边缘计算设备上。一个典型的密集物体检测器由三部分组成:1)一个骨干网络,通常在 ImageNet上进行预训练,从输入图像中提取有用的特征并输出多尺度用于检测各种尺度对象的特征图;2)特征金字塔网络(FPN),通过特征融合进行映射进一步改进了多尺度特征,其中浅层特征由更深层的高级语义特征提升;3) 一个检测头通常包含两个分支来输出输入特征图中的每个锚点对应的分类和边界框回归结果。
自从第一个密集检测器 DenseBox被提出以来,数百项工作提高了性能,无论是在准确性还是速度。例如,Focal loss 是最突出的损失方法之一。它降低了分类良好样本的梯度幅度,因此迫使模型专注于困难样本。最近,已经提出了几种无锚检测器来消除劳动强度大的锚设计过程。其他技术专注于标签分配,其中经典的 IoU阈值被更细致的策略所取代。在最近的一次方法,一个定位质量估计分支被添加到检测头有助于在非最大抑制(NMS)期间保持高质量的框。
尽管已经提出了许多算法来改进密集探测器的性能,进一步提升的空间仍然很大。具体来说,我们注意到在密集检测器的训练过程中有几个组件可能导致性能恶化。这些组件用于工程实现,似乎是合理的,但之前没有深入研究过。
首先,回归损失只应用于正样本的分类分支,这个设计听起来是正确的,因为我们只关心前景物体的定位,将其他样本有利于回归头的训练?
其次,不管最终的边界框是什么样子,由几个连续的卷积操作定义的感受野,用于分类和回归任务是完全相同的。然而,正如相关研究中指出的,这两个任务有不同的偏好:分类需要具有丰富语义信息的区域,而回归更喜欢关注边缘部分。因此,相同的感受野不能保证最佳性能。
最后,金字塔中存在不平衡问题层,因为对所有训练样本的监督相同。具体来说,3 级别的训练样本数为 7级别的256 (28) 倍,因此,将它们连接在一起以计算训练损失会导致监督极度不平衡,因为浅层接收比 7 等更深层的监督要多得多。
综上所述,上述组件可分为三类:1) 只使用分类分支中的正样本训练回归分支的标签分配;2)分类和回归之间的空间特征结合,其中特征图的同一区域相同的感受野构成模型;3)金字塔监督FPN 的不同层之间的连接,不同的层被展平并进行损失计算,导致对所有层的相同监督。
在本文中,首先进行了一系列精心设计的试验性实验表明,分解这些组件可以显着提高整体检测性能。提出了一种新的密集对象检测器训练pipe,称为DDOD (Disentangled Dense Object Detector) 具有出色的性能,如图 1 所示,具体而言,为分类和回归设计了分离的标签分配器,使我们能够挑选出最合适的训练样本。至于空间特征联合,基于自适应特征解缠结模块可变形卷积被提出来自动关注有利于分类和回归的不同特征。最后,对于金字塔监督联合,设计了一种新颖的重新加权监管力度基于不同FPN层自适应调整机制。
这项工作的主要贡献有三方面:
• 进行了详细的实验来研究三种类型密集对象检测器中的训练连接,它们是
通常被以前的工作忽略,但可能会导致性能恶化。
• 建议在一个称为 DDOD 的统一检测框架中解耦这些组件,该框架由标签组成分配解缠结、空间特征对齐解缠结和金字塔监督解缠结。
• 通过大量实验,验证了所提出的 DDOD 在两个竞争密集对象上的有效性并在COCO 和 WIDER FACE 数据集上实现最先进的性能。
2 相关工作
2.1 目标检测中的标签分配
选择哪些锚点被指定为正或负标签是一项至关重要的任务,极大地影响了检测器的性能。一个普通的做法是分配 锚点与目标的IoU 大于某个阈值。随着anchor-free模型的进步,FCOS提出了一种定义标签的新策略,它直接设置点在 GT 内作为正样本。FreeAnchor 构造了一个每个 GT 的锚候选并将标签分配解决为检测定制似然优化问题。ATSS 提出一个自适应锚分配,由每个 GT 的一组锚点IoU 值的均值和标准差的统计数据。PAA提出一种分配标签的概率方式。然而,这些方法不讨论分类和回归分支。
2.2 目标检测中的特征对齐
更好的特征对齐总是意味着更好的性能。CascadeRPN、GuidedAnchor 和 AlignDet 采用级联方式通过重新对齐特征来改进特征表示。通过在前回归边界处重新提取特征框,可以预测更精确的分类分数和回归框。此外,还有多种方法可以讨论分类中的特征表示结合和两阶段检测器的回归任务。DoubleHead是第一个发现这种现象并提出单独的分类和回归头。TSD改进了“用于分类和定位的共享头”(sibling head),首先在 Fast RCNN 中通过采用不同的用于分类和回归的 RoIAlign 偏移量。虽然联合已经在两个阶段得到验证和很好的解决,这个问题是否存在于密集检测器中仍然是一个开放问题。
2.3 目标检测中的不平衡学习
对于许多对象检测框架,不平衡学习存在于各个方面,缓解这种不平衡问题对检测结果至关重要。RetinaNet提出 Focal loss 来克服正负样本的数量两者之间的极端不平衡问题,在没有采样策略的情况下训练密集对象检测器。Libra r-cnn注意到检测性能通常受到训练过程中的不平衡限制,一般包括三个方面,即样本层、特征层和目标层,针对上述问题,提出了 Libra-RCNN通过 IoU 平衡采样、平衡特征来缓解这种差距。此外,类别不平衡是也是对象检测中的一个重要主题。EQL 发现来自负样本的反向梯度的累积是大于来自稀有类别的正样本,导致稀有样本的培训不足,所以,提出了一种均衡损失来缓和这种现象。相比之下,我们的工作旨在在最先进的密集物体检测器中解开这三个重要的组件,以最低的成本获得更高的精度。
3 试点实验
在本节中,通过进行试点来展示我们的动机,实验证明稠密对象中三个组件存在的问题
3.1 标签分配组件
标签分配组件是指回归的情况,损失仅适用于分类中的“前景”样本任务。实际上,这个是出于历史原因,边界框回归的概念最早是在2014年的一篇论文中引入的,其中使用平滑的 L1 损失来训练回归分支,仅将回归损失应用于正样本,其 IoU当 GT 框大于阈值时,确保网络从特征图中获得足够的信息来估计物体的实际位置。验证我们的假设,我们训练不同的 RetinaNet 模型各种分类和回归 IoU 阈值,范围从0.4 到 0.6 并在表 1 中报告结果,可以看出,最佳性能,mAP 为 36.5,IoU 为分类头为 0.5,回归头为 0.4。因此,在DDOD,通过采用分解标签分配,分类和回归分支上的相应标签分配器以获得更好的检测精度。
3.2 空间特征连接
在一个典型的密集物体检测器中,两个平行的分支与相同的结构用于分类和回归,意味着它们在特征图中对应的感受野是相同的。然而,正如 TSD 中所指出的,在两级检测器中,这两个任务应该集中在:语义信息丰富的区域有助于分类,而轮廓区域对于定位至关重要。我们认为这一原则也适用于密集检测器。在图 2 中,我们使用 GradCAM 可视化分类和回归敏感区域,发现它们确实不同,这验证了解开它们的接受区域的必要性。在 4.2 节中,将描述一个简单的设计,通过在两者中添加自适应特征解缠结模块分支结构来实现这个目标。
3.3 FPN中的监督组件
在密集检测器普遍采用的基于特征金字塔的实现中,不同层的预测“扁平化”用于损失计算。然而,不同层之间的样本分布显著不平衡,因为特征大小随着特征分辨率增加。因此,训练样本将以低层次的样本为主,使得高层次的样本缺乏监督,这将损害大物体性能。克服这个问题的一个简单想法是分配一个更大的权重给高层样本以补偿监督。在表 2,我们利用不同的重新加权策略,其中只有设置最低和最高层的权重,其余的是线性插值的。最好的策略是线性增加权重从 1.0 到 2.0,最糟糕的是线性减少权重从 3.0 到 1.0。这个结果验证了我们的假设并且启发我们提出一种有效的重新加权方法,称为FPN 分层损失来解开监督组件
4 方法论
在本节中,详细描述提议的 DDOD,一个方法概述如图 3 所示。
4.1 标签分配分解
标签分配中最广泛接受的做法之一是只回归在分类分支中被指定为正的样本。然而,正如第 3.1 节所说,两个分支之间的这种结合是次优的,根据观察结果,设计了不同的标签分配策略分别用于分类和回归。在早期的工作中,候选anchor和ground truth之间的IoU是唯一的前景-背景分配的标准。最近,一些好的尝试表明,用损失值替换 IoU 是一种更适合标签分配的方法。因此,我们采用一个FCN中提出的干净和有效的成本公式,以挖掘更多适合不同任务的样本。给定一张图片,假设有预测 基于预定义锚点和 个目标。对于每个候选(锚点或中心点), 前景概率^()和回归边界框^()是关于每个类别的输出,成本矩阵可以表述为:
其中 () ∈ [0 1] 表示 ()-th 的匹配质量,Ω表示-th ground truth 的候选预测集。为了稳定训练过程并使模型收敛更快,只有候选其中心落入ground truth被认为是可能的前景样本。在分配过程中,从每个 FPN 中选择top k最大成本值的预测,然后,候选被分配为前景样本,如果它们的匹配质量超出了计算的自适应阈值使用 ATSS 等批量统计信息。
为了解耦分类的标签分配和回归,我们引入一个超参数 ∈ [0 1] 来平衡他们之间的贡献。直观地说,具有较高前景概率应优先用于分类,回归分支更关注回归质量,一个详细的关于 的消融研究在第 5.4.1 节中详细说明。这样做,分类和回归任务成功解开,通过它以更好的方式实现这两个目标。
4.2 空间特征解缠结
试点实验显示了分类和回归的信息特征。这些特征在可变形卷积的帮助下,描述一种简单但有效的空间分离方法。相似的想法已在两级检测器中被证明是成功的,在这里,将它们扩展到密集检测器,要点是让模型参与决策最重要的特征,在可变形卷积的帮助下,模型能够参加输入特征图中的不同空间字段使用相同的卷积数。受此启发,引入自适应特征解缠结模块,其中一个可学习的卷积在每个位置上预测偏移量以自适应地选择当前任务的功能空间。对于每个位置 特征图,有
代替在输入特征上使用常规网格进行采样,让模型学习最佳拟合位置 Δ 为每个任务进行卷积。在这个范式中,分类分支更多地关注类别区分特征,例如,人类人的脸或汽车的车轮。另一方面,回归分支更关注边界特征,由于偏移量应该与当前位置的信息相关联,偏移量 Δ 是用额外的过滤器预测的,在实际实现中,这个操作是通过deformable卷积来实现的。在分类和回归子网中直接将第一个卷积替换为可变形卷积,因此,在给定的情况下,可以动态提取 FPN 的特征,不同的任务同时进行,不会相互竞争。
4.3 金字塔监督解开
位于特征金字塔不同层次的样本纠缠在一起,如第 3.3 节所述,这种做法没有考虑来自不同训练样本的不平衡贡献。具体来说,位于3级别的对象由于其上的大量训练样本而受到更多关注,相反,落入7级的对象由于缺乏训练样本不太可能训练好。缓解这一现象的一个自然办法是加强深层次的监管,在实践中,这可以通过分配轻松实现具有较大权重的较深层中的样本。为此,在原始监督之上提出 FPN 分层损失,梯度不平衡问题背后的原因是落入不同层的样本各不相同。因此,直接选择样本数作为指标来指示我们是否训练期间应该减重/增重监督,位于层 上的样本的重新加权系数 关于损失 被表述为
当重新加权因子 的范围从 1.0 到 2.0 时,凭经验发现在 3 水平上的样本总是得到 1.0 的因子,并且7级的总是2.0。从梯度平衡的角度来看,这样的结果有利于大对象的学习。采用移动平均的方式来缓解分布图像之间的标签差异并稳定训练过程。
5 实验
在本节中,在 COCO 和 WIDER FACE数据集上构建了广泛的实验来研究提出的 DDOD。首先介绍方法的有效性和通用性,其次,展示了不同模块的消融结果,第三,进行实验来讨论一些有趣的方面以更深入地了解 DDOD,最后,比较一下与其他最先进的模型相结合,并展示我们的优势。
5.1 实施细节
大多数实验都是在 COCO 基准上进行的,在 trainval35k 上用 115K 图像训练模型并报告使用 5K 图像在 minval 上的性能,报告了来自评估服务器的 20K 图像在 test-dev 上的最终结果。除了 test-dev 上的结果,所有的实验都在基于 ResNet-50的标准 1x 设置,默认MMDetection中采用的参数,为了适应基于成本函数的标签分配,用 IoU 预测分支替换中心分支。除了COCO,也验证了在 WIDER FACE 上的方法,这是目前的最大的人脸检测数据集。该模型是用批次为 24在6 台 Titan V100 训练的,学习率的时间表是每 30 个 epoch 使用余弦从 7.5e-3 下降到 7.5e-5,此过程重复 20 次,表示总共600。为了使我们的基线与其他人脸检测器对齐,可变形卷积块、SSH 模块和 DIoU损失被采纳。
5.2 密集物体检测器的结果
我们在三个不同的代表性密集检测器上实现 DDOD:RetinaNet、FCOS 和 ATSS。表 3 中报告了 mAP 性能。我们的 DDOD 将所有基线提升超过2.0 mAP,验证了算法的有效性。仔细观察结果,我们发现AP 在所有三个检测器中被提升最多。首先,大物体图像简单,所以我们的空间解缠模块更容易加入重要部分,其次,我们的FPN层次损失被提出来弥补高层特征监管不足,所以大物体的mAP直接受益。
5.3 消融研究
为了了解 DDOD 中的每个组件如何促进检测性能,我们独立测试基线检测器 ATSS 中每个组件并在表 4 中报告其 AP 性能。基线的整体 AP 从 39.4 开始,当标签应用了分配解缠结,AP 提高了 1.0 并且在各种尺寸的物体上都可以看到这种改进。这个结果表明我们在第 4.1 节中的发现,即解耦编码分类和边界框回归之间的组件是有必要的,然后,我们添加空间特征解缠结,为我们带来了 1.2 AP 增强,具体来说,AP 受益多,这验证了我们在第 4.2 节中的第一个假设。其他有趣的发现是空间特征解缠结对 AP75 的改进达到 1.5,表明正确参与的接受区域和准确的边界框定位之间存在潜在联系。当金字塔监督添加了解缠结,精度提高了0.6,AP提高了3.0。这一大改进是在对应与我们在第 4.3 节中的分析和潜在的直觉。最后,当应用所有三个解缠结,AP 达到 41.6,获得 2.2 的绝对改进。
5.4 讨论
在本节中,将深入研究我们的 DDOD 以研究 mAP 如何实现了改进,并加深了对底层机制的理解。对于所有实验,我们采用基于 ResNet-50 的 ATSS,与第 5.1 节中的设置相同。
5.4.1 什么是最好的标签分配解缠结?
我们进行实验以研究编码解缠结的最佳策略,即找到最佳的分类和回归。如表 5 所示,结果非常简单:对于回归分支, = 0.5 效果更好,而 = 0.8 最适合分类。虽然多了一个为标签分配引入了超参数,我们发现这个设置( = 0.8, = 0.5)在将其应用于 WIDER FACE 数据集时对其他场景具有鲁棒性。最优之间的区别 值验证分类和回归分支应该有自己的标签分配标准。我们还观察增加将有利于准确性,这表明锚点和真实框之间的 IoU 对于设置分类目标是决定性的。另一方面,减少是对于 AP 性能更好,表明回归编码应考虑实时分类结果。
5.4.2 给定计算的最优空间特征解缠结
经验上,用可变形卷积替换一些卷积操作可以在一定程度上带来性能提升,但寻求这种替换的最佳方式,因为我们想避免难以忍受的额外计算成本和给许多 DCN 层带来的优化难度。因此,我们在每个中只用 DCN 替换一个卷积分支,并研究替换的最佳方式。具体来说,我们通过用其替换每个卷积来进行实验可变形版本独立并检查最终性能。从表 6 中,我们发现解开特征表示在第一阶段效果最好,COCO 验证的 mAP 为 40.6。一个有趣的现象是,在检测头中将特征解缠结移动到后一层时性能降低,表明直接解开特征FPN 简化了学习过程。
5.4.3 寻求最稳健的重新加权策略
在这部分,检查了不同的重新加权方案,以表明我们提出的线性插值重新加权效果最好。消融结果如表 7 所示,首先,测试 Linear-Reweight,其中从线性增加的因子1.0 到 2.0 分配给每个 FPN 级别。其次,考虑大多数负样本被focal loss极大地抑制了损失,提出了一个普通的重新加权策略,其中的权重每个 FPN 层与正样本的数量成正比,这表示为 Sum-Reweight。此外,由于正样本的数量可能会根据输入批次而有很大差异,我们扩展了 Linear-Reweight、Sum-Reweight 和我们提出的线性插值到权重,在训练期间移动平均优化,这个扩展可以稳定训练过程,根据表 7 略微提高准确度。从结果来看,我们可以得出结论,我们的线性插值优于其他两个策略,在 COCO val 子集上实现 40.0 mAP。
5.5 与最新技术的比较
如表 8 所示,将 DDOD 与最先进的COCO test-dev 上的方法比较。按照惯例,采用多尺度训练来提高模型的鲁棒性,为了公平比较,单模型和单尺度测试结果,短边尺寸800。使用相同的主干网络,DDOD 击败了所有其他方法,包括最近的GFL 和 PAA 。此外,先进的 Res2Net-101-DCN 主干,DDOD 在单尺度测试中实现了 52.5 mAP,表明其在各种应用中的巨大前景。最后,多尺度测试、Soft-NMS 和更强大的数据增强等技术以进一步提高性能,达到 55.0mAP,在此基础上建立了新的最先进的性能竞争基准。
5.6 WIDER FACE 数据集的结果
除了一般的目标检测,我们的方法也适用在人脸检测等其他场景中。我们评估 DDOD WIDER FACE benchmark,目前最大的开源人脸检测数据集。它提供了许多困难和逼真的场景,具有遮挡、比例和照明的多样性。在那些复杂和拥挤的场景,我们的模型非常健壮,甚至优于为人脸检测设计的几个检测器,在表 9 中。为了在 WIDER FACE 上获得更好的性能,与 COCO 不同的是,采用 DCN ,SSH 模块 ,和 DIoU 损失 在原始 ATSS 模型上,达到整体 AP93.0。虽然这个结果超过了几个竞争的人脸检测器,但 DDOD 仍然能够将它提高大约 0.5 AP。更重要的是,我们的ResNet-50 主干的 DDOD Face 在简单、中等和困难设置达到了 97.0%、96.4%、93.5%,达到最先进的水平。
6 结论
在这项工作中,开发了 DDOD,一种新的训练密集物体检测器范式。DDOD 通过标签分配解缠结、空间特征解缠结和金字塔监督的单阶段检测器解开,本文中的发现可以潜在地用于提高检测精度并应用于各种密集物体检测器,我们已经证明 DDOD 实现了COCO 和 WIDER FACE 基准测试的最新结果,并验证了它的有效性和泛化性。此外,我们的方法可能有助于提高两级检测器的性能,因此,如何将 DDOD 嵌入到类 RCNN 中检测器将是推广 DDOD 的重要下一步。
总结
1、论文的前两个改进点之前也想到过,实验了一下好像没效果,一方面调参不充分,另一方面通过论文实验来看,效果提升不多,只有0.几个点,不好好实验真看不出效果,想法和实验同样重要。
2、目标检测中的pipeline其实有很多的不合理的地方,只是大家习惯了这样用,值得大家实验和探究。