题目:《Semi-Supervised Object Detection with Adaptive Class-Rebalancing Self-Training》,AAAI’22, 基于自适应类再平衡自训练的半监督目标检测
日期:2021.7.11(v1),2022.6.28(AAAI’22)
单位:清华大学
论文地址:https://arxiv.org/abs/2107.05031
GitHub:-
王斌,清华大学软件学院副教授,个人主页:https://binwangthss.github.io/
本研究深入研究了半监督对象检测(SSOD),以通过额外的未标记数据来提高检测器性能。最近,通过自我训练实现了最先进的SSOD表演,其中训练监督由GT和伪标签组成。在目前的研究中,我们观察到SSOD中的类失衡严重阻碍了自我训练的有效性。为了解决类不平衡问题,我们提出了一种新的内存模块CropBank的自适应类再平衡自训练(ACRST)。ACRST使用从CropBank中提取的前景实例自适应地重新平衡训练数据,从而缓解类不平衡。由于检测任务的高度复杂性,我们观察到自训练和数据再平衡在SSOD中都受到噪声伪标签的影响。因此,我们提出了一种新的两阶段滤波算法来生成准确的伪标签。我们的方法在MS-COCO和VOC基准方面取得了令人满意的改进。当在MS-COCO中仅使用1%的标记数据时,我们的方法比监督基线提高了17.02mAP,与最先进的方法相比提高了5.32mAP。
大多数真实世界的检测数据集都有偏差的类分布,其中很少的类占据了大多数实例,即前景前景不平衡,如图1(a)所示。而且,为了获得准确的伪标签,自我训练采用了高置信度阈值。该方案导致检测数据中前景实例分布稀疏,即前景-背景不平衡(见图1(b))
Fig1:1%COCO标准中伪标签的类不平衡。GT是标记数据的真实标签,伪标签由教师模型生成。
(a) 前景前景失衡在伪标签中加剧。 (b)前景背景失衡。在Faster RCNN中,背景实例在伪标签的训练目标中占主导地位。
针对这两个问题提出了,前景背景再平衡(FBR)和自适应前景前景再平衡(AFFR)
然而,如图2所示,伪标签的准确性是不可取的(Recall明显低于ACC?)。为了获得准确的伪标签,参考半监督的多标签学习(SSMLL)模块,该模块提供与原始检测置信阈值互补的图像级约束。
v1:因此,我们利用额外的高级语义来过滤有噪声的伪标签。提出了一种半监督多标签分类模块,用于为未标记的数据生成图像级伪标签。
设计了一个两阶段的过滤机制来过滤掉在分类置信度或多标签预测(v1:图像级伪标签)中激活负的伪标签。
Fig2:1%COCO-standard中每类伪标签的准确性和召回率
我们设计了一个名为CropBank的新型存储模块,用于区分检测数据中的前/背景和前/前景实例。通过CropBank,我们进一步提出了自适应类再平衡自我训练(ACRST),以解决SSOD中的前景-背景和前景-前景不平衡问题。
提出了一个半监督多标签分类模块来从未标记的数据中挖掘高级语义。然后,我们提出了一种具有分类置信度和高级语义的两阶段伪标签过滤机制。该机制在伪标签去噪中是有效的,从而进一步促进FBR和AFFR。
所提出的数据再平衡和伪标签过滤算法对于任何基于自训练的SSOD框架来说都是即插即用的。此外,CropBank提供了一种有效的检测专用数据增强算法。
为了解耦这些纠缠,我们引入了一种名为CropBank的新型内存模块,用于在标记/未标记的数据中存储前景实例的GT/伪标签。利用CropBank,我们提出了两种特定于检测的数据再平衡算法:前景背景再平衡(FBR)和自适应前景前景再平衡(AFFR)。将原来的自我训练范式扩展到基于FBR和AFFR的自适应类再平衡自我训练(ACRST)。
FBR解决SSOD中的前背景不平衡问题。FBR首先根据CropBank中存储的GT/伪标签从整个数据集中提取前景实例。此后,前景实例被增强并粘贴到训练图像中的随机位置。利用合成数据,FBR可以提高训练目标中前景实例的比例,缓解前景-背景的不平衡。
针对前景不平衡问题,提出了基于FBR的前景自适应再平衡(AFFR)算法。特别地,我们设计了一个称为伪召回的新标准来判断一个类在SSOD中是否被忽视或过度关注。此后,由于较高的负置信度,被忽略类的伪标签被更频繁地采样。因此,整个数据集的前景重新平衡,从而导致在随后的自我训练中为在线伪标记提供最小偏差检测器。
图3:我们的半监督对象检测框架概述。教师模型从弱增广的未标记数据生成伪标签,学生模型在具有基本事实和伪标签组合的强增广数据上进行训练。为了缓解SSOD中的类不平衡,我们首先设计了一个名为CropBank的内存模块。然后,将前景-背景再平衡(FBR)和自适应前景-前景再平衡(AFFR)应用于基于CropBank的自适应类再平衡自训练(ACRST)。我们还提出了一种两阶段伪标签过滤(TPF)方法和一种选择性监督方案,以帮助ACRST并生成准确的伪标签。
CropBank由两个子库组成,即Label CropBank
和Pseudo CropBank
,其中NL/NU表示Label /Pseudo CropBank的大小,yli / yui表示第i个标记 / 未标记图像的gt / 伪标签。
在训练阶段,ΦL一旦生成就被固定,而ΦU在相互训练中用改进的伪标签定期更新。我们使用CropBank作为解耦实例的基础,并设计自适应类再平衡自训练(ACRST)来解决类不平衡问题。
CropBank的构成是少量的GT和大量的伪标签
foreground-background Rebalancing,前景-背景重平衡
给定训练mini batch
,我们根据采样分布P从每个图像xi的CropBank ΦL和ΦU中获取前景实例
的集合,其中cj是从具有注释yj的原始图像中裁剪的前景实例。此后,如下生成新的训练mini batch:
α:粘贴对象的二进制掩码,ymixi:表示混合注释,xmixi:表示混合图像
cj:基于CropBank中的实例级注释从图像中裁剪的矩形区域
在训练期间,cj被扩充并随后被粘贴到xi的随机位置。这种组合过程增加了前景实例在训练数据中的比例,用于前景-背景重平衡,还从整体角度探索了基本的上下文语义。混合图像准备好后,我们将它们作为Mean Teacher的管道来训练检测器。再平衡过程如图4所示。
Adaptive foreground-foregroundRebalancing,自适应前景前景重平衡
在自我训练过程中被忽视的类中的样本被更频繁地选择。为了测量每一类的被忽略程度,我们提出了一个新的标准伪召回(PR)。对于每个类别k,我们根据经验使用低阈值(0.1)来过滤噪声预测。
μk:选择类k的实例的概率,k:类别的数量。β:用于调整样本概率。
其中的PRk是累积来自教师检测器的针对每个前景实例的检测置信度:
ski:第i个伪标签的检测置信度。
PR定义了一个类在SSOD中被忽略的程度。高的PRk表明检测器对类k是肯定的,甚至是过度自信的。因此,应该将较低的样本概率分配给类k中的样本,以避免过度拟合。低PRk意味着检测器对检测类k的实例缺乏信心。因此,在随后的训练中应该更频繁地选择这些实例。
当类别被类似地忽略时,较低的PR被自适应地分配给尾部类别,并引起人们对它们越来越多的关注。PR的定义不依赖于任何未标记数据的先验信息。
该机制自适应地将较高/较低的采样率分配给被忽略/过度聚焦的实例。AFFR和FBR同时执行。
(v1版本)
提出了一种用于前景前景重平衡的自适应采样概率分布P。在训练过程中,被忽略类中的样本被更频繁地选择。为了衡量一类的被忽视程度,我们提出了一个新的标准pseudo recall伪召回(PR),它量化了伪标签与gt的比例。详细地,我们根据标记数据和未标记数据之间的分布相似性,从标记数据中估计未标记数据的类分布。假设数据集中有K个类{1,2,…K}。我们将第k类的伪召回计算为:
Nku / Nkl:第k类的伪标签和gt的数量
r:未标记数据与标记数据的比率
定义了在SSOD设置下一个类被忽略的程度。高PRk表明检测器对类k是肯定的,甚至是过度自信的。因此,应将较低的采样概率分配给类k中的样本,以减轻过度拟合。相反,低PRk意味着检测器对检测k类实例缺乏信心。因此,我们应该经常选择这些实例。
作为一种解决方案,我们根据伪召回按降序对类进行排序,并设计以下自适应采样策略:
μk:选择第k类实例的概率,β:用于调整采样概率
该机制自适应地将较高/较低的采样率分配给被忽略/过度聚焦的实例。
这种机制的一个潜在问题是,被忽略类中的伪标签的噪声被放大。因此,提出了一种两阶段伪标签过滤机制
两阶段伪标签过滤,pipeline中杏黄和砖红的模块,黄色就是最基础的置信度过滤,红的标明的是高阶语义过滤,其实就是设置一个图像级伪标签,看成一个多标签分类问题,预测图像级伪标签的置信度并进行过滤
半监督多标签分类
针对分类任务,提出了基于Mean Teacher的半监督多标签分类模块。对于每个图像xi,预测其图像级伪标签vi={lk}Kk=1,lk∈{0,1},其中k是总类别数,lk确定图像中是否存在类k的实例。在训练阶段,教师模型的预测被转换为监督学生模型的图像级伪标签。我们利用焦点-二进制-交叉熵(focal–binary–cross-entropy)损失来优化学生模型。
与SSOD相比,SSMLL是一个容易得多的辅助任务,并且能够为两阶段伪标签选择生成可靠的参考。请注意,我们还扩展了ACRST以缓解SSMLL中的类不平衡,并且由于步骤更少、输入大小更小和框架更简化,SSMLL的总训练只需要SSOD的1/5分之一的时间。
两阶段伪标签过滤
对于来自教师模型的预测,我们采用两阶段伪标签过滤方案来获得 置信度得分为s的精确伪标签和图像级伪标签v。在第一阶段, 去除得分为s<τcls 的预测,以获得具有高对象性的伪标签。在第二阶段,去除具有在v中激活为负的类的预测(即激活值小于τml),以获得具有正确类标签的伪标签。请注意,我们使用消极而不是积极的多标签作为参考,因为消极学习比积极学习具有更高的准确性和回忆力。
选择性监督
虽然之前SSOD研究中的边界框回归损失(Liu et al.2021)由于回归不准确而被消除,但它们对我们的框架是有益的。我们将成功归功于CropBank,它减轻了部分检测到的实例的噪声,这些实例在有偏差的预测中占很大比例(在1%COCO标准中为81.2%)。使用这些嘈杂的伪标签盲目学习将严重恶化模型性能。然而,在我们的工作中,当从CropBank中部分检测到的实例被裁剪并粘贴到其他图像时,它们在新的背景中变得独立和完整,从而为回归学习提供了额外的准确监督。
在选择性监督的情况下,方程5中的损失函数Lunsup可以表示如下:
~ yiss:表示源自xiu的CropBank中的实例
dataset:MS-COCO和PASCAL VOC
实验细节
使用带FPN的Faster RCNN和ResNet50,并在Detectron2的基础上构建我们的框架
标记和未标记图像的批量大小均为32。我们使用SGD优化器,lr=0.01,动量率=0.9。
设定λema=0.9996,τcls=0.7,λunsup=4。设置β=0.6,τml=0.2。
对于0.5/1/2/5/10%COCO标准,预训练需要3000/5000/5000/10000步,总训练需要180000步。
对于VOC,预培训需要5000步,总训练需要72000步。
我们对强增强应用颜色抖动、高斯模糊和剪切,对弱增强应用随机调整大小和翻转、剪切。广泛使用的mAP(AP50:95)用作比较的度量。
对于SSMLL,标记图像和未标记图像的批量大小均为64。
对于VOC/COCO-standard/COCO-addition,预训练需要2k/2k/6k步,总训练需要18k/36k/96k步,使用lr=1e-5的Adam优化器。数据扩充与SSOD相同,但图像的大小调整为576*576。
v1:
backbone:FPN Faster RCNN和ResNet-50
ResNet-50使用ImageNet预训练的权重进行初始化。我们设置超参数λunsup=2,β=2。对于两阶段伪标签滤波,我们使用分类置信阈值τcls=0.7和多标签置信阈值τml=0.2。我们使用AP50:95,即mAP作为评估指标。我们用所有训练设置的32个标记图像和32个未标记图像构建每个训练批次。
对于COCO-standard,0.5/1/2/5/10%的COCO-standard的预训练阶段为2500/5000/10000/20000/40000步,整个COCO标准训练阶段为180000步。对于COCOadditional,预训练阶段需要90000个步骤,总共需要270000个训练步骤。
对于VOC07和12,预训练阶段需要12000步,整个训练阶段需要36000步。
表1:在1%到10%的COCO-standard中与SOTA比较实验结果
表2:COCO-addition和0.5%COCO-standard与SOTA的比较。
表3:VOC07&12中与SOTA的比较实验结果。
表4:1%COCO-standard下的消融实验。
来自具有大随机样本范围的Labeled和Pseudo-CropBank的采样实例实现了最高的mAP。
表5:CropBank和样本范围的消融实验。
第k类的数量?
当β=0时,AFFR相当于均匀样品,并降解为FBR。当β=0.6较大时,AFFR可提供1.04mAP的性能提升。注意,当β=0.4或β=0.8时,AFFR获得了类似的增益,这些结果证明了AFFR对唯一的超参数β不敏感
表6:AFFR中不同β值的结果。
如图4(a)所示,在FBR之后,前景实例的分布得到了重新平衡。
图4(b)表明,当使用AFFR时,KL散度从0.00024降低到0.00013。这一结果进一步证实了AFFR在处理伪标签中的前景-前景不平衡和生成无偏数据分布方面的有效性。
图4:FBR(a)和AFFR(b)的消融实验。
Fig5:(a) 具有/不具有两阶段伪标签过滤的伪标签的框精度。(b) 在有/没有选择性监督(SS)的情况下,伪标签和GT之间的框mIoU。
如图5(b)所示,选择性监督不断提高伪标签的mIoU。虽然选择性监督是利用SSOD中部分检测到的伪标签的有效方法,但仍有改进的空间。例如,当对象在伪标签中相互重叠时,当前策略无法处理噪声。
图5:1%COCO-standard中Box准确性和Box mIoU的伪标签改进。
最常见和最罕见类别的消融研究。我们对所提出的模块对图中过度聚焦(最频繁)/被忽视(最罕见)类别的影响进行了另一项消融研究。图6(a)和(b)表明,两阶段伪标签滤波(TPF)和ACRST在过聚焦/忽略类上都表现良好。如(b)所示,ACRST在具有AFFR的被忽略类上实现了显著的改进,而基线在最稀有的类中出现了性能下降。
图6:TPF和ACRST对1%COCO标准中被忽视/过度关注类的影响。
在STAC框架上的消融
表7:1%COCO-standard上的STAC的消融实验
为了验证CropBank的有效性,我们在表8中提供了来自Instant Teaching的结果(Zhou et al.2021)和不同的数据扩充。
在1%COCO-standard的不同数据扩充下的Instant Teaching性能。
具有不同τml和相应SSOD性能的半监督多标签学习(SSMLL)的结果。如表9所示,SSMLL生成准确的图像级伪标签,SSOD性能对τml不敏感。
当使用0.7阈值时,正图像水平的伪标签不太准确,准确度为0.740,召回率为0.325。
表9:1%COCO-standard上图像级负伪标签的准确性和召回率。
阐明了使用否定伪标签而不是肯定伪标签作为参考的原因。我们提供了三种设置的结果:(1)单阶段:过滤检测置信度低的预测。(2) 两阶段过滤:对检测置信度低或激活图像级伪标签中的负样本预测进行过滤。(3) 两阶段挖掘:保留具有高检测置信度的预测或激活图像级伪标签中的正样本预测。
表10:1%COCO-standard伪标签的模型性能、准确性和召回率
本研究提出了一种简单而有效的ACRST来解决SSOD中的阶级失衡问题。通过CropBank,ACRST显著缓解了FBR和AFFR的前景-背景和前景-前景失衡。为了进一步改进FBR和AFFR,我们设计了一种具有检测置信度和高级语义的两阶段伪标签过滤算法。经过对重新平衡的训练数据的迭代,SSOD检测器变得无偏,并逐渐改善模型性能。大量的实验证明了我们方法的有效性。