半监督目标检测综述解读
共 5789字,需浏览 12分钟
·
2024-03-30 03:00
Semi-supervised Object Detection: A Survey on Recent Research and Progress
近年来,深度学习技术在目标检测领域得到了成熟的应用,但大多数算法都是基于监督学习。然而,大量标签数据的获取需要大量的人力资源,这导致了低效和局限性。半监督目标检测(SSOD)因其具有较高的研究价值和实用性而越来越受到关注。SSOD旨在利用少量标签数据和大量未标签数据进行信息学习。本文从五个方面对SSOD方法进行了全面而最新的调查。首先简要介绍了几种数据增强方法。然后,我们将主流的半监督策略分为伪标签、一致正则化、基于图和迁移学习的方法,并介绍了一些在具有挑战性的场景中的方法。我们进一步介绍了常用的损失函数,并概述了常用的基准数据集,比较了不同代表性方法之间的准确性。最后,我们总结了本文,并提出了一些有前景的研究方向。
一、引言
深度学习技术在数据挖掘、计算机视觉、自然语言处理、多媒体学习等领域取得了巨大成果。目标检测是计算机视觉中最重要和最具挑战性的分支之一,广泛应用于人们的生活,如监控安全和自动驾驶。随着深度学习网络在检测任务中的快速发展,目标检测器的性能得到了极大的提高。为了执行检测任务,深度学习技术通过提取和分析样本数据的特征来完成目标定位和分类,因此标签样本为目标检测任务提供了大量的数据库。大型数据集(如MS-COCO)在很大程度上推动了深度学习在目标检测领域的繁荣。
然而,据我们所知,目前还没有关于最近出现的基于半监督学习的目标检测方法的综述。本文将对半监督目标检测的最新技术(SOTA)算法进行全面回顾,详细描述其创新点和框架。SSOD系统通常包括三个模块:数据增强、半监督策略和损失函数。我们还构建了一个分类法,从SSOD的过程角度对所有这些方法进行概述(如图1所示)。
本文的后续内容安排如下:相关工作在第二节中介绍,数据增强在第三节中介绍,半监督策略在第四节中介绍,具有挑战性的场景在第五节中介绍,损失概述在第六节中,数据集和比较结果在第七节中,结论和未来方向在第八节中。
二、相关工作
半监督学习是一种结合监督学习和无监督学习的方法,重点关注如何在训练过程中合理利用标签和非标签样本。它通过应用一些假设来建立预测样本和学习目标之间的关系:(1)平滑性假设认为,当两个样本在高密度区域紧密相邻时,它们很可能具有相同的类别标签。(2)聚类假设认为,当两个样本在同一聚类中时,它们很可能属于相同的类别。(3)流形假设认为,当两个样本在低维流形的小局部邻域内时,它们具有相似的类别标签。
基于这些假设,已经有许多在图像分类任务中得到广泛应用的成熟算法,论文[4]-[8]对这些算法进行了全面调查。这些半监督学习方法通常可以分为以下几类:生成方法[9][10];基于图的方法[11][12];一致性正则化方法[13][14];伪标签方法[15]-[18]和混合方法[19]-[21]。
尽管已经有一些关于半监督图像分类和监督目标检测的调查,但据我们所知,本文是第一篇关于半监督目标检测的综述。
三、数据增强
数据增强对于提高模型的泛化能力和鲁棒性至关重要,这是SSOD的第一步。为了提高模型的鲁棒性并合理利用未标签数据信息,一致性正则化用于约束增强数据的输出标签的一致性。增强方法因不同方法之间的差异而有很大不同。
A. 强增强
强增强方法可以丰富数据集并提高模型性能。文章[29][31]中的方法利用颜色抖动、灰度、高斯模糊和裁剪补丁来增强数据。裁剪具有较弱的正则化效果。
B. 弱增强
弱增强通常使用简单的图形变换。随机水平翻转、随机调整大小和多尺度是一些常规的弱增强方法[22][23]。
C. 混合增强
为了避免上述问题,MUM方法[25]在一批未标签图像上同时应用弱增强和强增强。此外,Instant-teaching[24]直接将马赛克应用到基于伪标签的SSOD框架中。STAC[26]探索了不同的变换操作变体,并确定了一组有效组合:1)全局颜色变换;2)全局几何变换;3)边界框级变换。
四、半监督策略
如图1所示,在数据增强之后,下一步是设计一个训练框架,将来自标签和未标签图像的信息进行整合。目前,SSOD方法遵循四种策略。我们将介绍这些策略的一些代表性方法,以及一些经典方法的流程图。
A. 伪标签
第一种策略是基于伪标签的方法,如图2所示,这些方法通过预先训练的模型估计未标签图像的伪标签,然后在增强后将标签和未标签数据一起训练模型。大多数方法都是基于两阶段锚定检测器,如Faster-RCNN[52]。
1) 自训练
自训练使用标签数据训练一个优秀的教师模型,该模型用于预测未标签数据,最后使用所有数据训练一个学生模型。目前,许多SSOD方法利用未标签样本的信息进行伪标签预测的自训练以提高模型性能。研究[27]表明,自训练优于预训练,并展示了自训练的通用性和灵活性。STAC[21]提出了一种基于硬伪标签的SSOD算法。标签数据用于训练教师模型,用于预测未标签数据,使用阈值选择高置信度伪标签,并计算强增强未标签数据的无监督损失和标签数据的监督损失的伪标签。STAC方法的概述如图3所示。
为了解决类别不平衡问题,ACRST[23]提出了一种自适应类别重平衡自训练框架,通过从存储了丰富的实例级注释的裁剪库中提取前景实例来重平衡训练数据。
2) 优化伪标签
STAC仅生成一次性伪标签,但使用初始预测伪标签会限制模型准确性的提高。为了缓解确认偏差问题并提高伪标签的质量,大多数方法在训练阶段纠正伪标签。如图5所示,无偏教师[31]利用伪标签训练区域建议网络(RPN)和RoI头,解决了伪标签偏见问题,并通过使用指数移动平均(EMA)和Focal损失提高了伪标签质量。分类置信度用于筛选检测框架的假标签,这无法反映定位的准确性。RPL[32]将分类置信度的均值与原始检测分类置信度相乘,作为反映分类准确性和定位准确性的指标。
基于双挖掘,为了提高对假伪标签的容忍度,SIOD[33]通过基于相似性伪标签生成模块(SPLG)的潜在实例挖掘和像素级分组对比学习模块(PGCL)提出了一种方法。
Cross Rectify[34]利用检测器之间的不一致性来识别自我错误,并通过交叉纠正机制精细化伪标签质量。
MUM方法[25]在SSOD框架中使混合输入图像平铺和特征空间中的重构。
Instant-teaching[24]提出了一种在每个训练迭代中使用即时伪标签和扩展的弱强数据增强进行教学的纠正方案。
Dense Learning[22]提出了自适应过滤策略和聚合教师,以产生稳定和精确的伪标签,此外,在规模和洗牌补丁之间引入了不确定性一致性正则化项,以提高检测器的泛化能力。Dense Learning的框架如图9所示。
与STAC采用硬标签不同,Humble教师[37]采用软标签,从类别概率的预测分布和所有可能类别的偏移中获取软标签。为了提供更多信息,Humble教师使用大量的区域建议和软伪标签作为学生模型的训练目标。Humble教师的框架如图8所示。
3) 均值教师
均值教师在这些方法[24][30]中被广泛使用,它包含一个教师模型,其权重是从学生模型的EMA获得的,以及一个需要从教师模型学习的对象生成的学生模型。Soft教师[30]提出了一种端到端的半监督目标检测方法,为了充分利用教师模型的信息,未标签边界框的分类损失通过教师网络产生的分类分数加权。此外,它选择具有小于阈值的边界框回归方差作为伪标签,以便更好地学习边界框回归。Soft教师的框架如图6所示。
5) 密集指导
密集学习[22]提出了自适应过滤策略和聚合教师,以产生稳定和精确的伪标签,此外,在规模和洗牌补丁之间引入了不确定性一致性正则化项,以提高检测器的泛化能力。Dense教师[39]引入了区域选择技术,突出关键信息,同时抑制密集标签带来的噪声。为了用更丰富的监督替换稀疏伪标签,密集教师指导(DTG)[39]提出了一种新的“密集到密集”范式,将DTG集成到学生训练中。它还引入了反向NMS聚类和排名匹配,使学生能够从教师那里接收到足够、丰富和密集的指导,从而自然地带来更好的性能。
6) 点标签
点标签可以提供实例的位置信息,大大节省了标注时间。在统一的架构Omni-DETR[ 40]中,不同类型的弱标签可以利用二分图匹配基于过滤机制生成准确的伪标签。Point DETR[41]通过添加点编码器扩展了DETR。如图10所示,基于经典的R-CNN架构,Group R-CNN[42]提出了实例级建议分组和实例级表示学习,通过实例感知特征增强和实例感知参数生成来提高RPN召回率,并实现实例组与实例框之间的一对一对应关系。
五、具有挑战性的场景
除了经典的半监督目标检测方法外,还提出了一些方法以适应具有挑战性的环境。
1.VC学习[57]为每个令人困惑的样本分配一个VC值,使其即使没有具体标签也可以安全地为模型优化做出贡献。它还修改了定位损失,以便为位置回归提供高质量的边界。 2.数据蒸馏方法[36]提出了一种基于提示学习和有界知识蒸馏的自蒸馏算法,利用净化的数据进行训练。 3.开集半监督目标检测方法[58]提出了一种离线开集检测器,基于自监督视觉转换器,表现良好,避免了伪标签的干扰。 4.半监督长尾识别是一种新的研究领域,其尾部类别的数据分布不平衡和样本稀缺导致检测准确性较低。文章[59]提出了一种交替抽样框架,结合模型解耦和不同的数据抽样策略进行监督训练和半监督训练。
这些方法从不同角度解决了半监督目标检测任务中的问题,为未来工作提供了有力的参考。
六、损失函数
根据第一节,在网络中使用数据增强和半监督策略后,下一步是为SSOD设计合适的训练损失。设计的损失对SSOD能从数据中学到什么有很大的影响。本节介绍了一些常用的损失函数。
在大多数SSOD方法中,总体损失被定义为带权重的标记图像的监督损失和未标记图像的无监督损失之和,可以表示为:
L = αL_x + (1-α)L_u
其中L_x和L_u分别表示标记图像的监督损失和未标记图像的无监督损失,α控制无监督损失的贡献。它们都包括分类损失和回归损失。
分类和定位的损失通常分别由加权和的标准交叉熵损失和平滑L1损失[35][41][43]实例化。其他方法选择具有不同特征的损失函数。
七、数据集和比较结果
使用具有挑战性的数据集作为基准对于目标检测任务具有重要意义,因为它们能够对算法进行严格的标准比较。目前,已经有一些高质量的检测数据集在SSOD领域得到应用。
MS-COCO[3]数据集是由微软开发和维护的大规模图像数据集,其标签类型包括目标检测、关键点检测、实例分割、材料分割、全景分割的人关键点、人类密度检测等。它包含超过118k张标记图像和来自80个目标类别的850k个标记对象实例用于训练。此外,还有123k张未标记图像可供半监督学习使用。表1总结了在该数据集上SOTA方法的性能。
PASCAL-VOC[3]由VOC07和VOC12组成,常用于SSOD,包含4个广泛的数据集类别:车辆、家庭、动物和人物。VOC07的训练集包含5011张来自20个小目标类别的图像,用作标记训练数据集。VOC12的训练集包含11540张图像,用作未标记训练数据集。表2总结了在PASCAL-VOC数据集上SOTA方法的性能。
八、结论和未来方向
监督算法和半监督算法都可以应用于目标检测任务。监督算法可以实现良好的性能,但也存在一定的局限性,如需要大量标记数据和对数据质量的高要求。本文介绍的半监督算法只需少量标记数据和大量未标记数据即可提高模型质量,从而在实践中节省标记成本。本文全面回顾了近年来文献中提出的半监督目标检测方法,根据基本原理对相关方法进行了分类,并描述了它们的优缺点,对实践者和学术研究人员都可能感兴趣。
自训练方法可能是解决目标检测中半监督学习的最直观方法,但仍然面临许多挑战。我们对未来发展的一些有趣观察如下:
1.伪标签的准确性:自训练模型的成功表明,使用单个自训练模型学习未标记数据的表示并在半监督领域构建中间标签系统来处理半监督中的不足标签问题是可能的。然而,确认偏差和过度使用的伪标签问题被忽略了。改进的方法需要探索如何更有效地利用未标记数据,同时减轻确认偏差问题并提高伪标签的质量。 2.标签形式:伪标签在SSOD中已被证明是有效的,并在MS-COCO和PASCAL VOC等基准测试中取得了最先进的效果。然而,生成伪标签的过程需要几个额外的步骤,如NMS、阈值和标签分配。密集指导方法是一项开创性的工作,迈出了迈向更简单有效的伪标签形式的第一步。软标签与教师区域建议的平衡数量相结合是实现卓越性能的关键。基于点的标签方法也可以实现更好的成本-准确性权衡。因此,设置各种标签形式以获取更多样本细节是有用的。 3.类别平衡:当前的SSOD方法有助于在平衡数据下有效提高检测准确性和对噪声样本的鲁棒性。然而,在真实场景中,训练阶段需要大量平衡标记数据是很难应用的。将未标记图像中的类别平衡考虑在内,并开发更多资源友好的半监督目标检测方法具有意义。
ps:承接程序代写, 小程序编写 程序应用 深度学习 卷积神经网络 pytorch paddlepaddle 数据结构 机器学习 目标检测 图像处理
有需要的兄弟们可以在我公众号留言。
论文解读的ppt(有备注,可直接讲)可以在知识星球获取:
我正在「目标检测er的小圈子」和朋友们讨论有趣的话题,你⼀起来吧?
https://t.zsxq.com/0cM8tmd4l