作者丨GangLi知乎(已授权) 来源丨https:zhuanlan。zhihu。comp544346080 编辑丨极市平台 论文链接:https:arxiv。orgabs2203。16317 代码链接:https:github。comligangcsPseCo Preliminary。: 半监督目标检测是研究,在有一部分标注数据的前提下,如何利用大量的无标注数据来提升检测器性能。广泛采用的pipeline是MeanTeacher,即,通过EMA来实时生成teachermodel,然后,让teachermodel生成伪标签,用于监督studentmodel的训练。但是,MeanTeacher的范式,很容易出现overconfidence的问题,studentmodel很容易过拟合teachermodel的预测。为了缓解overconfidende,FixMatch提出了对teacher和student分别使用不同强度的数据增广,具体地,对teacher的输入采用弱数据增广(flip,scalejitter等),保证伪标签的质量;而对student的输入,采用强数据增广(rotate,colorjitter,一些几何形变等),增加student的训练难度,防止过拟合。1。Motivation Pseudolabeling和consistencytraining是半监督学习里面的两个关键技术,但是直接迁移到目标检测上,会出现一些不适配的现象。我们详细分析了一下,具体的不适配有哪些:1。1pseudolabeling pseudolabeling通过设置一个较高的scorethreshold,把Teachermodel预测的置信度较高的检测结果保留下来,作为伪标签(pseudoboxes)。但是在目标检测中,分类score和box的定位质量往往没有强相关,score较高的pseudobox可能定位并不准。所以,Pseudobox中难免存在一些定位不准的box框。那么,定位不准的pseudobox会给半监督训练带来哪些影响呢? 1。会影响IoU如下图1,质量很差的proposal会被错误地assign成正样本,模糊正负样本的分类边界。 2。不准确的PseudoBox不适合用来训练bbox回归的任务。为了缓解这两个影响,我们分别设计了PredictionguidedLabelAssignment(预测引导的标签分配,PLA)和PositiveproposalConsistencyVoting(正样本一致性投票,PCV),来实现比较鲁棒的带噪伪标签学习。其中,PLA根据Teacherprediction来分配正负样本,减少了对IoU的依赖;PCV根据proposal的预测一致性,来反映pseudobox的定位质量,抑制定位不准的pseudobox。 图1coarsepseudobox(黄色框)会误导labelassignment1。2consistencytraining consistencytraining通过在student训练过程中,加入一些扰动,让模型的预测结果对扰动保持鲁棒,从而学到一些重要的不变性。尺度不变性(scaleinvariance)作为目标检测最重要的几个属性之一,一直收到广泛的关注。但是以前的工作,仅仅采用randomresize来学习尺度不变性,对输入图像做比例为的缩放,同时也会对groundtruth做相应比例的缩放,我们把这种一致性叫作labellevelconsistency。 除了这种labellevel的尺度不变性外,其实目标检测网络还有feature层面的尺度不变性。通俗的说就是,对于同一张image,我们把它放缩到两种不同的scale(比如scale1,scale2),如果能让它们的feature拥有一样的shape,即Featscale1的tensor维度和Featscale2的一模一样,那么,Featscale1和Featscale2就可以利用相同的groundtruth监督。 得益于FPN的金字塔结构,feature层面的对齐很容易实现。我们提出了一种MultiviewScaleinvariantLearning(多视角尺度不变性学习,MSL),同时从labelandfeaturelevelconsistency的角度,学习尺度不变性,实现了高效的半监督学习。2。Method 图2PseCo的framework PseCo的framework如图2所示。在unlabeleddata上,我们对输入图像分别做不同的scalejitter,构建出view0和view1,其中,view0是teachermodel的输入,而view1是studentmodel的输入,通过view0view1pair的学习,labellevelconsistency被实现,这也就是之前大家常用的randomresize。接着,我们对view1做2倍下采样,得到view2。由于FPN的特征金字塔,view1的P3P7features和view2的P2P6features,可以实现完美的对齐。我们用相同的PseudoBoxes来监督view1的P3P7层和view2的P2P6层。这个可以理解成FPN的错位训练。至此,我们在一个网络中,通过labellevelandfeaturelevelconsistency,实现了更加全面的尺度不变性学习。关于两种consistency的比较,可参考图3。 图3labellevel和featurelevelconsistency比较。featurelevel的对齐,可以通过移动FPNpyramidlevel来实现 对于Pseudolabeling的改进,我们提出了PLA和PCV,分别从分类任务和回归任务的角度,来实现鲁棒带噪标签学习。PLA(predictionguidedlabelassignment)提出了一种labelassignment的方式,比传统的IoUbased策略,更适合应对带噪的标签。PLA对每个GT,先构造了一个更大的candidatebag,包含了所有的、有潜力成为正样本的proposals(orcandidates),然后根据teachermodel在这些candidates上的预测结果,来评判每个candidate的质量,最后选取质量最高的topN个candidates作为正样本。PLA减少了labelassignment对IoU的依赖,避免了不准确的pseudobox对labelassignment的消极影响。 此外,PCV(positveproposalconsistencyvoting)直接对PseudoBox的定位精度做出了判断,定位准确的PseudoBox会被分配比较大的regressionlossweight,反之,就分配小的reglossweight。细节上,因为在目标检测中,1个GT往往会匹配多个positiveproposals,我们发现这些positiveproposals的回归一致性能够反映出对应的pseudobox的定位精度,更多细节请参考论文。3。Experiments 我们在partiallabeled和fulllabeledsettings下,都取得了SOTA的性能。此外,我们的训练效率也非常高,如图4所示,在5和10标签比例下,我们都仅用了不到一半的训练时长,就达到了SoftTeacher的精度。虽然我们增加了一个view2,但是因为view2的图片分辨率非常小,增加的训练开销很小,每个iteration增加的的训练时长不到20。 图4PseCo收敛速度4。碎碎念unlabeleddata上的strongaugmentation,一方面可以使得模型学习到一些重要的不变性,另一方面,可以增加训练难度,有效缓解overconfidence。如果不加强aug的话,训练后期会出现一个现象:拟合pseudolabel会拟合得越来越好,但是mAP就是不涨。本文提出的MSL,或者叫FPN错位训练,其实也是提供了一种强aug,让studentmodel同时处理两种训练模式,不容易过拟合:1种是高分辨率输入,P3P7训练;另1种是低分辨率输入,P2P6训练。其实,MAE的maskedimage也可以看做强aug,似乎可以融入到半监督中。在实际使用中,unlabeleddata更可能是outofdistribution的,和labeleddata不在同一个domain。如何从ood的unlabeleddata中高效学习出有用的信息,是比较难的。比如,如果做人脸检测,labeledata用WiderFace,unlabeleddata用MSCOCO,可能这个设定下的半监督学习就是无效的。甚至,会因为网络更多地拟合unlabeleddata的domain,导致掉点。现在Teachermodel仅仅提供pseudobox给studentmodel训练,这种pseudobox是比较稀疏的监督信息。在此基础上,我们提出了DenseTeacherGuidance(https:arxiv。orgabs2207。05536),研究如何从Teacherprediction中挖掘出更多的监督信息。