点击下方“深度学习爱好者”,选择加p"星标"或“置顶”
论文信息
题目:Source-Free Domain Adaptation for YOLO Object Detection
无源域自适应YOLO目标检测
作者:Simon Varailhon, Masih Aminbeidokhti, Marco Pedersoli, Eric Granger
源码:https://github.com/vs-cv/sf-yolo
论文创新点
- 无源YOLO (SF-YOLO) 方法:作者提出了第一个专门针对单阶段YOLO检测器的SFDA方法,为实际实时应用的未来研究建立了基线。这种方法利用了一个教师-学生框架以及一个学习到的、特定于靶域的数据增强模块,允许模型仅使用未标记的靶域数据进行训练,而不需要特征对齐。
- 学生稳定模块 (SSM):为了减轻在没有标记数据的情况下使用均值教师范式进行训练时的不稳定性及相关的准确度下降,作者提出了一个新颖的学生稳定模块(SSM)。这个模块提供了从教师到学生的新通信渠道,增强了训练稳定性,减少了对标记靶域数据进行模型选择的依赖。
- 与现有知识保持技术的兼容性:作者通过广泛的实验展示了SSM与现有知识保持技术的兼容性。SSM特别适用于无源(无监督)学习场景,其中无法访问源数据或靶域的标记数据,以确保模型的稳定性并防止训练过程中的显著漂移。
- 跨不同模型大小的有效性:作者不仅在YOLOv5l上进行了实验,还在较小版本的YOLOv5s上验证了他们的方法,证明了SSM在提高模型性能和稳定性方面的有效性是跨不同模型大小的。
摘要
无源域自适应(SFDA)是目标检测中的一个挑战性问题,其中预先训练的源模型被适配到新的靶域,而出于隐私和效率原因不使用任何源域数据。大多数最先进的SFDA方法都是针对Faster-RCNN提出的,这是一个已知计算复杂度高的检测器。本文关注于实际视觉系统中的域自适应技术,特别是针对以快速基线和实际应用而闻名的YOLO家族的单次检测器。我们提出的SFDA方法——无源YOLO(SF-YOLO)——依赖于教师-学生框架,其中学生接收带有学习到的、特定于靶域的增强的图像,允许模型仅使用未标记的靶域数据进行训练,而不需要特征对齐。在没有标签的情况下使用均值教师架构进行自训练的挑战是,由于噪声或漂移的伪标签,准确度会迅速下降。为了解决这个问题,引入了一种教师到学生的通信机制,以帮助稳定训练并减少对标记靶域数据进行模型选择的依赖。尽管方法简单,但作者的方法在几个具有挑战性的基准数据集上与最先进的检测器具有竞争力,有时甚至超过了使用源数据进行适配的方法。关键词
3 提出的方法
设表示源域中的标记数据,其中表示源域的图像集合,是相应的标签集,包含每个图像中对象的位置和类别分配。表示源图像的总数。靶域是未标记的,表示该域的图像。在SFDA中,最初可用的源预训练模型表示为,以在未标记的靶域上执行适配。然而,由于源和靶域之间的域偏移,当直接将应用于靶域时,映射性能会下降。因此,SFDA的主要目标是学习一个新的映射,通过仅使用未标记的靶数据来适配预训练的源模型。使用均值教师范式,教师定义为,学生定义为模型,从源模型即预训练的YOLOv5架构实例化。因此,训练损失可以表示为:其中和分别表示分类和边界框回归损失,而对应于与对象存在信心相关的客观性损失。项是控制整体检测损失中每个损失组件相对重要性的超参数。我们的框架分为两个步骤。首先,训练一个目标增强模块来学习特定于靶域的数据增强。然后,我们使用增强的图像来训练具有均值教师范式的学生模型。学生模型逐渐将其获得的知识蒸馏到通过指数移动平均(EMA)学习的老师模型。我们还引入了学生稳定模块(SSM),它有效地稳定了训练过程,从而提高了整体性能。该框架在推理期间不会增加基本检测器的复杂性。对于许多实时应用来说,这是一个重要因素。SF-YOLO的整体训练架构如图1所示,详细说明在算法1中。本节的其余部分描述了我们方法的主要组件。(a) 目标增强模块。在典型的自训练中,使用教师-学生框架,教师和学生模型采用不同的图像视图作为输入,以非平凡地最大化互信息。具体来说,教师模型接收弱增强图像作为输入,而学生模型被馈送强增强图像。在这里,我们不是生成随机的强-弱增强对,而是使用一个名为“目标增强模块”(TAM)的网络来学习适当的增强。这种增强模块让人想起LODS方法[37]中的风格增强模块,主要区别在于动机。在我们的情况下,我们使用增强模块来丰富靶域,而在LODS中,他们使用风格增强模块来学习忽略靶域风格。这里我们简要概述了TAM的主要架构。假设我们有一个来自靶域的图像,表示为,和一个风格图像,它代表如果背景相似,所有靶域图像的平均值,或者一个随机靶域图像。TAM根据风格图像统计信息转换输入图像,遵循风格迁移公式[22]:其中和分别是和的VGG-16编码特征。和(\sigma(e_x)e_xe_yF_1F_2xy$的均值和方差的神经网络。我们遵循Li等人[37]的F1和F2架构。TAM通过最小化风格一致性和重建损失进行训练。(b) 与教师知识一致性学习。对于来自靶域的每个数据点,我们从教师模型获得分类分数、边界框回归和置信度,并将其用作伪标签通过反向传播训练学生模型。然而,直接从学习可能导致过拟合到教师模型。为了解决这个问题,我们引入了一个一致性损失,包括三个步骤。首先,我们通过设置分类置信度阈值来过滤教师模型的低置信度预测。这可以防止后续过程受到噪声标签的干扰。接下来,我们使用TAM增强,并训练学生模型与增强样本的硬标签保持一致。第三,学生逐渐将其获得的知识蒸馏到通过指数移动平均(EMA)学习的教师模型:(c) 学生稳定模块。注意,教师从未直接观察增强图像,这些图像可能常常是不切实际的。相反,它只处理真实的目标图像。因此,我们的方法与均值教师和噪声学生范式[52]相似。然而,由于学生模型学习更快,它更容易犯错。在更新教师之后,这些错误反映在伪标签生成中,导致噪声更大的伪标签,这可能会降低其余训练的性能。为了减轻这些错误的影响,我们引入了学生稳定模块(SSM)。正如我们使用目标增强均值教师框架的初始实验所示(见图2),尽管EMA和学习增强有助于提高学生模型的性能,但结果会迅速恶化到学生模型的性能几乎像随机检测器一样的程度。我们假设,由于学生模型在使用SGD后每个批次更新得更快,因此更有可能犯错。尽管EMA更新的教师最初可以防止学生过拟合,但可能不足以稳定训练。作为一种补救措施,我们在每个时代结束时,也使用教师模型的EMA更新学生权重:其中是SSM动量参数。这种方法将学生模型限制在教师模型附近,保持了伪标签的质量,并防止了过大的偏差。(d) 训练和推理。SF-YOLO的整体学习过程总结在图1和算法1中。用于推理的适应教师模型,比未看到任何未经修改的靶域图像的学生模型学到了更鲁棒的靶域表示。最终模型保持了原始YOLO架构的速度和兼容性优势。4 结果和讨论
声明
本文内容为论文学习收获分享,受限于知识能力,本文对原文的理解可能存在偏差,最终内容以原论文为准。本文信息旨在传播和学术交流,其内容由作者负责,不代表本号观点。文中作品文字、图片等如涉及内容、版权和其他问题,请及时与我们联系,我们将在第一时间回复并处理。在「深度学习爱好者」公众号后台回复:Pytorch常用函数手册,即可下载全网第一份Pytorch常用函数手册,涵盖Tensors介绍、基础函数介绍、数据处理函数、优化函数、CUDA编程、多线程处理等十四章章内容。
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~