COOPERATING RPN’S IMPROVE FEW-SHOT OBJECTDETECTION

2022-09-02 11:44:06 浏览数 (1)

摘要

学习从很少的训练例子中检测图像中的目标是具有挑战性的,因为看到建议框的分类器只有很少的训练数据。当有一个或两个训练例子时,就会出现一个特别具有挑战性的训练方案。在这种情况下,如果区域建议网络(RPN)甚至漏掉一个高相交-联集(IOU)训练框,分类器的目标外观如何变化的模型就会受到严重影响。我们使用多个不同但相互协作的RPN。我们的RPN被训练成不同的,但不是太不同;这样做产生了显著的性能改进的状态的艺术COCO和PASCAL VOC在非常少的样本设置。这种效果似乎独立于分类器或数据集的选择。

1、简介

实现精确的少样本目标检测是困难的,因为一个分类器必须建立一个有用的模型的外观变化很少的例子。本文确定了一个重要的影响,导致现有的检测器有弱于必要的性能在少样本制度。通过纠正这一困难,我们在当前体系结构中获得了性能方面的实质性改进。这种效果最容易解释的是现代目标检测器通常遵循的“脚本”。正如人们所期望的那样,检测器的结构存在变化,但这些变化并不能减轻这种影响。一个现代的目标探测器将首先找到有希望的图像位置;这些通常是框,但不总是框。我们用区域提议网络(RPN)报告的盒子来描述这种效应(Ren等人,2015),但预计它也适用于位置的其他表示。然后,检测器将有希望的位置通过分类器来确定存在什么目标(如果存在的话)。最后,它执行各种清理操作(非最大抑制、包围框回归等),旨在避免在同一位置进行多重预测,提高定位能力。报告有标签的框的评估过程使用相交-并集(IOU)测试作为确定框是否相关的一部分。

一个被训练为少样本检测的检测器被训练为两种类型的类别。基本类别有许多训练示例,用于训练RPN和分类器。新颖的类别每个类别有一个(或三个,或五个,等等)例子。现有的RPN用于查找框,并且对分类器进行了微调,以处理新的类别。现在假设检测器必须学会从单个示例中检测某个类别。RPN已经对其他例子进行了训练。它生成相关框的集合,用于训练分类器。该分类器能够在外观上建立类别变异模型的唯一方法是通过RPN报告多个高欠条框。反过来,这意味着在基本类别上表现良好的RPN可能会给新类别带来严重的问题。想象一下,RPN只报告了训练数据中一些可用的高欠条箱。对于基本类别,这不是问题;许多高欠条箱会传给分类器,因为有大量的训练数据,所以分类器将能够在外观上建立一个类别变异的模型。这种变化将由方面、类内变化和特定RPN对盒子的选择等影响引起。但是对于新颖的类别,RPN必须报告尽可能多的高欠条框,因为否则分类器的外观变化模型会太弱——例如,它可能认为目标必须在框中。这将大大降低准确性。如图1和我们的结果所示,这种效应(我们称之为建议忽略)存在于最先进的少样本检测器中。

我们不能通过简单地报告许多框来避免这种效果,因为这样做需要分类器非常善于拒绝假阳性。相反,一个人希望框的建议过程不要错过高欠条盒子,没有疯狂的猜测。我们提供了一个相对简单的策略。我们将多个RPN训练得有些冗余(这样,如果一个RPN错过了一个高欠条框,另一个会得到它),而不会过度预测。接下来,我们将演示如何做到这一点,以及如何平衡冗余和过度预测。我们的贡献是三方面的:(1)我们发现了一个重要的影响,在少样本目标检测,导致现有的检测器有较弱的必要性能在少样本制度。(2)我们提出利用RPN冗余来克服建议忽略效应。(3)设计了一种RPN集成机制,在同时训练多个RPN的同时,加强了RPN之间的多样性和协作。在非常少样本设置下,我们在COCO和PASCAL VOC上实现了最先进的性能。

2 BACKGROUND

Object Detection with Abundant Data.

性能最好的现代检测器是基于卷积神经网络的。有两类建筑,它们都依赖于一个显著的事实,即人们可以相当可靠地判断一个图像区域是否包含一个独立于类别的物体(Endres & Hoiem, 2010;van de Sande等人,2011)。在串行检测中,建议过程(RPN/s)为分类器提供一个可能包含目标的位置的选择,分类器对它们进行标记,其优势是分类器相当准确地“知道”对象的可能支持。这个家族包括R-CNN及其变体(for R-CNN (Girshick et al.,2014);Fast R-CNN (Girshick, 2015);Faster R-CNN (Ren et al., 2015);Mask R-CNN(他等人,2017);SPP-Net (He et al., 2015);FPN (Lin等人,2017);和DCN (Dai等人,2017))。同时,建议过程和分类过程是独立的;这些方法可以更快,但是分类器对目标可能的支持“知道”很少,这可能会影响准确度。这个家族包括YOLO及其变体(对于YOLO版本(Redmon et al., 2016;Redmon & Farhadi, 2017;2018;Bochkovskiy等人,2020);SSD (Liu et al., 2016);街角网(Law & Deng, 2018);和ExtremeNet (Zhou等,2019))。本文发现了一个建议过程中的问题,当训练数据很少时(少样本情况),它可能会阻碍性能的提高。这种效应在串行检测中描述,但在并行检测中也可能发生。

Few-Shot Object Detection.

少样本目标检测涉及到检测目标,其中只有很少的训练例子。有一个丰富的少样本分类文献(根源于(Thrun, 1998;Fei-Fei等,2006))。Dvornik等人(2019)使用集成程序对少样本进行分类。在检测方面,Chen等人(2018)提出了一种正则化的微调方法,将知识从预先训练的检测器转移到少量的检测器。Schwartz等人(2019年)利用度量学习为每个类建模多模态分布。最先进的少样本检测器通常是串行的(Wang et al., 2019;Yan等人,2019;Wang等人,2020;Fan等人,2020;Wu等人,2020;Xiao & Marlet, 2020)。现有的文献可以看作是标准框架的变体,其中将数据分成两组类别:基类Cb(有许多训练示例)和新类Cn(只有很少)。然后使用基类的实例训练RPN和分类器,生成left|C_{b}right|类别的检测器。结果分类器的最后一层通过插入连接最终特征层和left|C_{n}right| 新类别的随机权值来扩展到分类成left|C_{b}right| left|C_{n}right| 类。现在,模型可以只使用新类实例或包含基类和新类的训练实例的平衡数据集进行微调。Wang等人(2020)表明,简单的两阶段微调方法优于其他复杂方法。许多工作通过应用少样本分类技术寻求改进。Kang等人(2019)设计了一个元模型,该模型在给定少样本数据的情况下学会重新加权预训练特征。Wang et al.(2019)和Yan et al.(2019)通过将元学习分类器附加到Faster R-CNN进一步探索元学习方向。Wu et al.(2020)通过阳性样品提纯改进了少样本检测。

相对来说,调整建议过程的工作很少,因为有许多基本例子,这通常被视为对少量问题的健壮性。一种可能性是引入注意机制,并在提议过程中输入类别感知特征,而不是普通图像特征(Hsieh等人,2019;Fan等人,2020;Xiao & Marlet, 2020;Osokin等人,2020年),以及基于与查询图像的相似性重新排序提案(Hsieh等人,2019年;Fan等人,2020)。RPN类别感知提高了新类提议的质量,但在推理时模型遭受了灾难性的基类遗忘——当前的类别感知特征不能有效或准确地总结大量的基类例子。一个通常表现良好的RPN在微调过程中,由于漏掉了新颖类的高欠条建议,仍然会在少数情况下产生严重的问题——建议忽略效应。我们证明了这个问题在少射击机制中是严重的,并且可以通过一个精心构造的rpn集合来解决,而不会对基类的性能造成实质性的损失。

Evaluating Few-Shot Detectors.

标准程序是为设计用于检测left|C_{b}right| left|C_{n}right| 类的检测器分别计算新类别和基类别的平均精度(AP),通常使用标准测试/列车分割和标准新/基分割(Wang et al., 2020)。这一评估程序与增量少样本检测相同(Yang et al., 2020;Perez Rua等人,2020年)。这个过程很有意义,因为在大多数应用程序中,传入的测试映像可以包含来自基类和新类的实例。此外,标准程序暴露了任何发生的灾难性遗忘。然而,也会出现其他的评估方法,并且有些检测器使用不同的程序进行评估,这使得AP的比较很困难。在一种变体中,检测器只检测left|C_{n}right| 新类或只检测一个新类。在本文中,所有报告的结果均为标准程序;如果有必要,我们会使用标准程序重新实施和评估。

3、我们的方法

我们认为建议忽略效应是通用的,它适用于任何使用类似标准结构的结构的检测器。出于这个原因,我们关注于在标准的、最先进的、少样本的目标检测框架中发现和修复效果,如下所述。

Few-Shot Object Detection Framework.

我们使用Kang等人(2019)引入的少镜头检测设置。我们将数据集分成两组类别:基类Cb和新类Cn。如图2所示,训练过程分为两个阶段:(1)训练基类,(2)使用新类进行微调。在阶段1中,使用基类实例对模型进行训练,从而产生|Cb|-way检测器。基类训练后,随机初始化新类的权值,使分类器a (|Cb| |Cn|)-way分类器。在阶段2中,可以使用一组新颖的类实例或包含新颖类和基类的平衡数据集对模型进行微调。在微调阶段之后,我们通过新类别和基本类别的平均精度(AP)来评估我们的模型。虽然少数镜头检测的重点是新类,因为大多数测试图像包含来自基类和新类的实例,这是必要的,以保持良好的性能基类。

我们采用广泛使用的Faster R-CNN (Ren et al., 2015)作为我们的基础模型。如图2所示,Faster R-CNN是一个串行检测器,它包括一个主干图像特征提取器,一个区域建议网络(RPN),然后是感兴趣区域池化层,在模型的上方是一个边界框分类器和一个边界框回归器。RPN确定一个框是前景还是背景。RPN之后是非最大抑制(NMS),它对建议框进行排名和选择。通过ROI池化层后,预测器的头部对每个盒子进行分类和定位。在阶段1中,整个模型在多个基类实例上进行训练。阶段2用新的类实例微调头分类器和边界框回归器;在提案生成器之前的一切都被冻结了。

Learning Cooperating RPN’s (CoRPNs).

我们希望避免在训练新课程时,RPN丢弃高IOU框。我们的策略是训练多个冗余的RPN。RPN应该是不同的,但要合作——如果一个人漏掉了一个高IOU框,我们希望另一个人找到它。然而,它们不应该如此明显,以至于分类器充斥着假阳性。

如图3所示,Faster R-CNN的RPN由一个特征提取器、一个二值分类器(它决定一个盒子是前景还是背景)和一个边界盒回归器(它与我们当前的目的无关)组成。我们的RPN没有理由使用不同的特征集,而且我们不想产生方差问题,所以我们构建了冗余分类器,同时保持所有RPN之间的特征提取器和边界盒回归器共享。在下面,除非另有说明,对RPN的引用实际上是对RPN分类器的引用。使用交叉熵损失Lcls = LCE训练具有单个分类器的RPN,并产生单个预测。在我们的例子中,我们同时训练N个不同的二值分类器,并且必须确定(1)在测试时做出什么预测,(2)在训练时哪些梯度归哪些分类器。在测试时,一个给定的框从最确定的RPN中获得分数。如果最高前景概率比最高背景概率更接近1,那么框就是前景;否则就是背景。

训练时间更有趣。仅仅采用最佳RPN分数的梯度是不够的,因为我们可能会发现一个RPN得分所有的框,而其他的没有什么有趣的。对于任何一个前景框,我们都希望至少有一个RPN拥有非常强的前景得分,而其他所有的RPN也拥有良好的前景得分(这样就不会错过任何前景框)。我们使用以下策略。对于特定的锚框i,每个RPN j输出一个原始分数r_{i}^{j} ,表明该框是否为前景框: r_{i}=left[r_{i}^{1}, r_{i}^{2}, ldots, r_{i}^{N}right] 。应用sigmoid后,第J个RPN生产前景概率f_{i}^{j}=sigmaleft(r_{i}^{j}right) 锚框i。我们选择的分数第j^* 个RPN

j^{*}=operatorname{argmin}_{j} min left{f_{i}^{j}, 1-f_{i}^{j}right} ,即最确定的RPN产生概率接近边缘的[0,1]区间。在训练时,只有选中的j∗th RPN从锚框i中获得梯度。RPN选择过程是针对每个框的,甚至相邻的框也可以通过不同的RPN。除了标准的交叉熵损失外,我们使用了两个额外的损失术语:多样性损失L_{d i v} 鼓励RPN是不同的,合作损失L_{text {coop }} 鼓励合作并抑制前景的假阴性。最终损失:

mathcal{L}_{c l s}:=mathcal{L}_{C E}^{j^{*}} lambda_{d} mathcal{L}_{d i v} lambda_{c} mathcal{L}_{text {coop }}

,其中lambda_{d}lambda_{c} 是权衡超参数。

Enforcing Diversity.

我们不希望我们的RPN太相似。对于每个正锚框,RPN的响应应该是不同的,因为我们想确保在新类训练时间,如果一个RPN错过了一个高IOU锚框,另一个会找到它。为此,我们提出了一种方法来加强RPN之间的多样性。给定一组N_{A} 锚框,N RPN产生一个概率为mathcal{F}=left[f^{1}, f^{2}, ldots, f^{N}right]^{T} 。协方差矩阵sum(mathcal{F})Sigma(mathcal{F})= mathrm{E}left[left(f^{j}-mathrm{E}left[f^{j}right]right)left(f^{k}-mathrm{E}left[f^{k}right]right)right] 。我们用对数决定损失mathcal{L}_{d i v} 来定义多样性损失mathcal{L}_{d i v}=-log (operatorname{det}(Sigma(mathcal{F}))) 。通过多样性损失,我们鼓励概率矩阵有秩N,所以每个RPN对NA盒的集合有不同的反应。这个过程确保每个RPN是某些箱子中最确定的RPN,以便每个RPN都被选择和训练。忽略这种损失会导致RPN不接受训练或很少接受训练。

Learning to Cooperate.

我们也希望RPN合作,以便他们都同意在一定程度上使用前景框。我们建议合作损失,以防止任何RPN坚决拒绝任何前景框。对于前台框i,对于第j个RPN,我们定义合作损失mathcal{L}_{text {coop }}^{i, j}:=max left{0, phi-f_{i}^{j}right} ,其中φ为常数参数(通常小于0.5),作为每个RPN分配给前台框的概率的下界。如果一个RPN的响应低于φ,那么这个RPN将会受到惩罚。最终的合作损失是所有前台盒子和所有RPN的合作损失的平均值。

4、实验

Datasets and Implementation Details.

我们在两种广泛使用的少样本检测基准上评估了我们的方法:MS-COCO (Lin et al., 2014)和PASCAL VOC (07 12) (Everingham et al., 2010)。 为了进行公平的比较,我们使用了Kang等人(2019)中相同的训练/测试分割和新颖的类实例; Wang et al.(2020)学习和评估所有模型。 关于COCO,我们在样本1、2、3、5、10和30下报告基础/新类AP、AP50和AP75。 在PASCAL VOC中,我们报告了3个不同的基础/新类在1、2、3、5和10分下的AP50。 与最近的作品一致(Yan et al., 2019; Wang et al., 2020),我们主要使用ImageNet预训练(Russakovsky et al., 2015) ResNet-101架构(He et al., 2016)作为所有模型的骨干,除非另有说明。 附录中包含了更多的实现细节。

Baselines and Evaluation Procedure.

为了调查该建议的忽视效应并进行公平比较,我们主要关注于与最先进的TFA基线进行比较(Wang et al., 2020)。 我们的方法将CoRPNs引入到TFA中,同时保持其他模型组件和设计选择不变。 此外,我们彻底比较了各种近期的少样本检测,包括CoAE (Hsieh et al., 2019)、Meta R-CNN (Yan et al., 2019)、FSOD (Fan et al., 2020)、MPSR (Wu et al., 2020)、FSDetView (Xiao & Marlet, 2020)和ONCE (Perez-R´ua et al., 2020)。 这些基线处理的是与我们不同的少样本检测的其他方面(第2节),因此它们的修改很大程度上与我们的努力是正交的。 请注意,我们的评估遵循Wang等人(2020)的标准程序。 如第2节所述,此标准过程为设计用于检测jCbj jCnj类的检测器分别计算新颖类别和基本类别的AP。 为了进行公平比较,我们使用标准程序重新评估CoAE (Hsieh等人,2019年)和FSOD (Fan等人,2020年)。

Main Results.

表1和表2分别总结了基于COCO和PASCAL VOC的新类的结果,表3总结了基于COCO的基类的结果。

Comparisons with the Main Baseline TFA on Novel Classes.

从表1和表2中,我们有以下重要的观察结果。 (I)我们的方法在极少样本(1、2和3样本)的新类别中产生了AP比TFA的显著改善(Wang et al., 2020),而在高样本(1、2和3样本)的新类别中则略有改善或有时略有退化。 这些改进在现有的两个基准测试中都很明显。 有趣的是,在更具挑战性的COCO数据集上,我们对TFA的改进在不同的样本上是一致的(除了在AP75下使用完全连接分类器的30样本中有轻微的退化)。 (II)我们研究了两种类型的分类器:全连接(在表1和2中表示为' fc ')或余弦(在表1和2中表示为' cos ')。注意,我们的方法获得了改进,无论分类器的选择。 这是因为corpn是一种策略,用于控制独立于分类器应用的分类器参数估计中的方差。 任何高IOU盒缺失的RPN输出在训练阶段必须导致变化的少数射击制度。 因为这样的盒子很少,所以不丢失框的效果很明显。 我们在附录中提供了检测结果的可视化比较。

Comparisons with Other State-of-the-Art Approaches.

通过我们对RPN的简单修改,我们也在非常低的射击条件下的两个基准上优于其他复杂的方法,并在更高的射击条件下实现了类似的性能。 特别是,我们显著优于那些引入注意机制来调整提案生成的基线(Hsieh et al., 2019; Fan等人,2020)。 对于其他从不同角度改进少镜头检测的方法,如利用更好的多尺度表示(Wu et al., 2020),我们的方法可以潜在地与它们结合以进一步改进。

Comparisons on Base Classes.

在通过微调改进对新类的检测时,我们在基类上保持了强大的性能,而不会遭受灾难性遗忘,如表3所示。 相比之下,最先进的基线的性能急剧下降,这表明它们不能同时处理新类和基类。

Ablation Studies.

我们进行了一系列的消融,以评估每个组件的贡献和不同的设计选择。 具体地说,我们证明了(1)在我们的新损失条件下,corpn优于朴素RPN集成; (2)企业法人网络优于现有的基于余弦损失的分集方法; (3)我们的合作损失是有益的; (4) RPN的质数。

CoRPNs vs. Naive RPN Ensembles.

我们将corpn与相同数量的单独训练的RPN集合进行比较,每个RPN初始化不同。 在微调阶段,我们将相同的RPN选择机制应用于两种方法。 表4显示,corpn的新型AP50在很大程度上优于原始集成。 这表明,纯粹的冗余不会导致改进,这证实了我们的损失条款加强了多样性和合作。 此外,由于每个模型都是单独训练的,所以在朴素集成中有N组参数。 因此,我们的corpn的参数数量和训练时间比朴素集少N倍。

Avoiding False Negatives.

在我们的合作损失中,Lcoop(推动所有的RPN在一定程度上同意前景框)有一个阈值超参数φ。 表6报告了不同阈值下PASCAL VOC novel split 3微调1-shot novel实例的结果。 除了AP50之外,我们报告了在微调期间假阴性前景框的平均数量(“avg# FN”),以及非最大抑制(NMS)之后的前景样本的平均数量(“avg# FG”)。 从表中可以看出,合作损失项导致假阴性数(即在微调时间没有呈现给分类器的高欠条箱)减少。 此外,网管后前台样本的平均数量也有所增加。

The Number of RPN’s.

正如所料,增加项的数量的生产改进在一定程度上,然后假阳性的数量或方差的RPN参数估计导致性能下降(图4)。这个数字情节基本AP50(第一阶段)和小说AP50帕斯卡VOC小说分裂1和3,1。 请注意,RPN的最佳数量在不同的分割(以及假设的数据集)上是不同的。 如图4所示,拆分为1(左两图)和拆分为3(右两图)的PASCAL VOC的最佳数值是不同的。

5、结论

通过设计一个RPN系统来保证高借据盒的训练图像几乎都能通过RPN系统,可以大幅度提高少镜头的性能。 我们的方法在广泛使用的基准上达到了一种新的技术状态,并且在极少射击的情况下远远超过当前的技术状态。 这是因为,正如消融实验所表明的那样,建议忽视是一个真实的影响。 我们通过使用多样性损失和合作损失来设计我们的RPN集合,这给了我们一些假阴性率的控制。 我们展示了控制建议忽略是建立一个强大的少射目标检测器的一个重要部分,通过展示了最先进的少射检测器可以通过这种方式得到改进。 我们并不是说我们的方法是控制忽视建议的最好方法。 例如,我们φ阈值在合作损失中可能导致假阳性发生相关。 我们计划研究能提供更精确控制假阴性率的方法。 此外,提案忽视很可能适用于YOLO等一级探测器(Redmon & Farhadi, 2018),未来的工作将对此进行调查。

0 人点赞