论文速读:基于 YOLO 目标检测的无源域自适应(ECCV2024)

原文标题:Source-Free Domain Adaptation for YOLO Object Detection

中文标题:基于 YOLO 目标检测的无源域自适应

论文地址: https://arxiv.org/abs/2409.16538

代码地址: https://github.com/vs-cv/sf-yolo

1Abstract

无源域自适应(source -free domain adaptation, SFDA)是目标检测领域中一个具有挑战性的问题,即在不使用任何源域数据的情况下,将预训练好的源模型适应于新的目标域,以达到保护隐私和提高效率的目的。大多数最先进的 SFDA 目标检测方法都是针对 Faster-RCNN 提出的,Faster-RCNN 是一种已知具有高计算复杂度的检测器。本文重点介绍现实世界视觉系统的域适应技术,特别是以其快速基线和实际应用而闻名的 YOLO 系列单次检测器。本文提出的SFDA方法-无源YOLO (SF-YOLO) 依赖于教师-学生框架,在该框架中,学生接收可学习的、目标域特定增强的图像,允许模型仅使用未标记的目标域数据进行训练,而不需要特征对齐。在没有标签的情况下,使用 mean-teacher 架构进行自训练的一个挑战是,由于噪声或漂移的伪标签,模型准确性会迅速下降。为了解决这个问题,引入了一种师生交流机制(teacher-to-student communication),以帮助稳定训练并减少模型对带注释目标数据的依赖。尽管它很简单,但我们的方法在几个具有挑战性的基准数据集上与最先进的检测器竞争,有时甚至优于使用源数据进行适应的方法。

2、Introduction

2.1、目标检测实际应用面临的挑战

用于目标检测 (OD) 的深度学习模型通过利用大量标记数据显示出令人印象深刻的性能。然而在现实世界的应用中,由于相机捕捉条件(姿势、照明、分辨率、天气)的变化,通常会在源(实验室)和目标(操作)域之间产生数据偏移,从而降低精度。针对目标域微调 OD 模型是有效的,但由于需要收集和注释数据,成本往往太高。

2.2、无监督域自适应技术

1无监督域自适应(Unsupervised domain adaptation, UDA)是一种利用未标记的目标数据,使在源域上训练好的模型在目标域上表现良好的方法。该方法在不需要对目标数据进行标注的情况下,减轻了域移位引起的精度下降。传统的UDA方法假定可以访问已标记的源数据和未标记的目标数据,但隐私、机密性和后勤方面的挑战可能会阻止对源数据的访问。为了解决这个问题,已经出现了用于OD的无源域自适应(SFDA)方法,允许在没有源域数据的情况下进行自适应,尽管这使得对齐源域和目标域分布更具挑战性。

2第一种针对OD的UDA方法是针对两级检测器Faster-RCNN提出的。与之前的工作相比,大多数方法都遵循了这一开创性的工作,并且仍然依赖于Faster-RCNN。随着新型检测器的普及,一些工作侧重于开发单级检测器的UDA方法,如FCOS和YOLOv5。然而,较新的SFDA方法仍然使用Faster-RCNN,这可能不再是理想的。尽管一些SFDA策略可能适用于其他检测器,但单阶段模型中缺乏有助于对齐实例级特征的区域提议网络 (RPN),可能会使 UDA 复杂化。此外,UDA的进展往往与OD方法和设计的进展同步。然而,Faster-RCNN有些过时,计算密集且不太适合实时应用。下表显示,没有应用 SFDA,在 Cityscapes 上训练 source only 模型,然后在 Foggy Cityscapes 测试集上进行测试的 mAP 准确性。即使没有UDA,YOLOv5l的速度也要快10倍,性能更好,而YOLOv5s的性能相似,但速度要快15倍。

3mean-teacher(MT)框架是OD中SFDA的一个突出方法,使用自蒸馏和自我训练。学生和教师模型从相同的初始模型开始,学生通过教师产生的伪标签更新,教师通过过去学生的指数移动平均线(EMA)更新。MT框架假设教师模型可以随着训练的进行而不断改进,学生可以逐渐接近教师的表现。然而由于领域移位,源预训练的教师在应用于目标领域时引入了固有的偏差。这种偏差加上学生的误差积累,往往会导致不稳定,降低两个模型的性能。调整 EMA 超参数以实现学生和教师之间更加渐进和稳定的知识传递有助于稳定训练。由于现实世界的 SFDA 应用通常具有非常有限的测试集,因此理想的方法应该对超参数具有鲁棒性,并且需要最少的调整。

2.3、本文提出针对YOLO的SFDA方法

在本文中,我们探索了一个与现有SFDA方法不同的方向。受关于使用YOLO的UDA方法的工作的启发,我们将重点放在Faster-RCNN之外的SFDA上,因为Faster-RCNN很复杂,不适合实时视频监控等实际场景。针对YOLO提出了一种不依赖于特征对齐的SFDA方法,该方法基于具有学习目标领域特定数据增强的MT框架。据我们所知,SFDA 尚未提出针对 YOLO 等单级检测器的方法,其中大多数都集中在 Faster-RCNN。此外我们提出了一种新颖的学生稳定模块(Student Stabilisation Module,SSM)来改进 MT 框架的自我训练范例。如下图 1 所示,SSM 在教师和学生模型之间建立了双向通信通道。与以前的方法(仅通过学生模型更新教师)不同,我们提出的方法定期用教师的移动平均值替换学生。

图 1:提出的 SF-YOLO 训练架构。首先,使用训练集中的所有目标域图像来训练 TAM;然后,这些学习到的增强图像将用作学生的数据增强,而教师则接收未修改的目标域图像。学生检测器通过反向传播进行学习,如4节的公式一所示,然后使用 EMA 更新每个批次的教师检测器。最后,以较低的频率,每个 epoch 一次,老师用 SSM 更新学生以稳定训练。

2.4、本文贡献

(1) 我们引入了 Source-Free YOLO (SF-YOLO),这是第一个专门针对单级 YOLO 检测器的 SFDA 方法,为未来针对实际实时应用的研究建立了基线。我们提出的 SF-YOLO 方法利用了一个师生框架,该框架具有可学习的目标域特定增强模块,该模块允许仅使用未标记的目标域数据进行训练,而不需要特征对齐。

(2) 提出了学生稳定模块(SSM),以减轻使用平均教师范式时由于缺乏标记数据而导致的训练不稳定和相关准确性下降。它提供了从教师到学生的新沟通渠道,增强了训练稳定性,从而减少了模型对带注释的目标数据的依赖。

(3) 大量实验表明,我们提出的YOLO SFDA方法在 Cityscapes、Foggy Cityscapes、Sim10k和KITTI数据集的几个具有挑战性的领域适应基准上是有效的。 我们使用YOLOv5模型的两个变体来评估我们的方法(一个更精确但更大的模型和一个更小的效率模型)。我们的方法优于最先进的检测器,并且只需较少的计算资源,可以与需要源数据进行适应的UDA方法取得竞争性能。

3、Related Work

3.1、Unsupervised Domain Adaptation(无监督域适应)

UDA 旨在使用标记的源数据和未标记的目标数据来调整源模型,使其在目标(操作)域中表现良好。用于 OD 的 UDA 方法涵盖分类和定位任务,通常分为对抗性特征学习、领域翻译或自我训练。

1对抗方法使用域鉴别器和对抗训练来混淆源域和目标域之间的模型,从而产生域不变的表示。有研究首先介绍了图像和实例级对抗性特征对齐。有研究通过强局部和弱全局特征对齐来完善这一点,两者都采用对抗性技术。基于这些想法,一些作品专注于实例级对齐,强调包含感兴趣对象的区域。与对抗性图像或实例级对齐方法相比,有人提出了一种使用FCOS检测器的中心感知特征对齐方法。

2领域翻译方法通常使用图像到图像的翻译方法,如 CycleGAN、AdaiN、FDA 或 CUT 通过生成类似目标域的源图像或类似源域的目标图像来学习领域不变表示。

3自训练方法通常使用伪标签策略对目标域中的模型进行监督微调,但不正确的伪标签会降低性能。因此有研究建议使用弱自训练方法来缓解这种情况,有研究使用附加分类器调整带有噪声的注释。为了防止师生崩溃,有研究添加了额外的域对齐损失来区分学生和教师模型。然而上述方法均无法满足日益增长的数据隐私保护需求,SFDA 已成为 UDA 的一个新分支。

3.2、Source-Free Domain Adaptation(无源域适应)

1SFDA 仅使用未标记的目标数据来调整在已标记源数据上预训练的源模型,通过传输模型而不是广泛的源域数据来解决隐私问题。SFDA 的 OD 方法主要使用 MT 和伪标记策略。SFDA 微调方法的一个关键挑战是它们对嘈杂的伪标签的依赖,由于不准确的伪标签会降低模型的准确性,有研究首先通过使用自适应熵最小化方法确定一个可以消除不可靠伪标签的阈值来解决这个问题。有研究通过调整每个类的阈值和提高伪标签的定位质量对其进行了改进。A2SFOD通过检测方差划分目标域来处理噪声标签。有研究使用自监督学习通过历史模型和对比学习来学习特征表示。还有研究采用实例关系图网络和对比损失来增强目标表示。有研究认为现有的 SFDA 方法没有充分利用目标域数据,限制了其有效性。为了解决这个问题,有人提出了 LODS,通过增强目标域图像的风格并使用原始图像和增强图像之间的风格差异作为自适应的自监督信号来减少模型对领域风格的关注。大多数方法依赖于机器翻译架构,该架构容易不稳定,限制了它们所能达到的性能。

2与本文的方法密切相关的是,有人引入了PETS,它在每个时期交换教师和学生模型,同时保持一个额外的EMA教师。然而PETS 需要额外的模型并依赖于加权融合,这增加了复杂性。总的来说,虽然提到的方法使用 Faster R-CNN,但我们引入了一种新的 YOLO SFDA 方法以及我们的 SSM,为实际应用提供更稳定的训练和改进的性能。在本文中,我们关注机器翻译架构,并使用前人提出的可学习数据增强方法,该方法利用目标域数据,而不是典型的强弱增强对。此外,我们通过引入教师与学生的沟通机制来稳定训练,解决了MT在缺乏标记数据的情况下的训练不稳定性,这在缺乏验证数据的SFDA中至关重要。通过我们的消融表明,我们提出的方法显着提高了MT框架的准确性,同时保持简单和直接。

3.3、UDA for YOLO(针对YOLO的无监督域适应)

Faster-RCNN 是一个两阶段目标检测模型,具有用于分类和定位的单独分支。这对于 UDA 来说很方便,特别是对于特征对齐。 然而由于其计算复杂度较高,它很少用于需要实时处理的工业应用中。为了创建更适合实时任务的 UDA 方法,一些工作专注于 YOLO 检测器。SFDA 的 YOLO 方法可分为特征对齐方法和基于数据的方法。

1在特征对齐方法中,MS-DAYOLO使用多尺度图像级自适应但不进行局部对齐,这是有效的。DA-YOLO通过利用图像级和实例级特征对齐来解决这个问题,使用 YOLO 三尺度特征图上的检测层来替换 RPN。有人使用注意力机制来识别应该执行自适应的前景区域,以此取代 RPN。CAST-YOLO 也采用了注意力机制,但只用于在 MT 架构中对齐源特征和目标特征。SSDA-YOLO 使用 MT 框架将图像到图像的转换和特征对齐相结合,利用 CUT 生成类似源的目标图像,反之亦然。来自教师模型的伪标签支持实例级对齐,并且一致性损失可以跨域对齐预测。然而在我们的 SFDA 范式中,由于缺乏源数据,依赖于源域和目标域之间特征对齐的方法(例如对抗性学习)并不直接适用。

2基于数据的方法,更多地关注数据增强。ConfMix 引入了一种样本混合策略,以最高的检测置信度将一个源图像与目标图像的裁剪相结合;他们还在训练过程中使用具有可变阈值的伪标签策略。SimROD 引入了DomainMix,它将标记的源图像与未标记的目标图像及其伪标签混合在一起,由大型教师模型生成。

据我们所知,目前还没有针对SFDA提出基于yolo的方法。因此我们提出了一种方法,该方法也使用数据增强来适应而不是特征对齐,并且不依赖于特定的体系结构,使其更加通用。

4、Comparison with State-of-the-Art Methods(与最先进方法的比较)

下表 2 和表 3 中的结果显示了基于 Faster-RCNN 的最先进的 SFDA 方法的性能。然而,由于我们是第一个针对 YOLO 提出 SFDA 范式并旨在为未来研究建立基线的人,因此将 SF-YOLO 与基于 YOLOv5 的经典 UDA 方法进行了比较。请注意,这些 UDA 方法同时访问标记的源数据和未标记的目标数据,而我们的方法仅使用未标记的目标数据。尽管这种设置更具挑战性,但我们通过 UDA 方法实现了具有竞争力的性能,这表明源数据可能没有得到充分利用。我们还与 PETS 进行比较,PETS 是一种最初基于 Faster RCNN 的 SFDA 方法,我们重新实现了它(因为我们找不到公共代码)。我们在无源列中指出了适应过程中源数据的使用。Source Only 和 Oracle(上限)分别使用带标签的源数据和目标数据进行训练。

2:SF-YOLO 在 C2F 场景中与最先进的 UDA 和 SFDA 方法的比较。我们报告每个类别的 AP50 和 mAP。适应过程中源数据的使用由Source-free列表示。粗体和下划线的结果代表最好和第二好的结果。我们在所有场景中使用默认的 SSM 动量 γ,并且还包括具有优化 γ 的 SF-YOLO†。对于 PETS,我们使用了 YOLO 上的实现,因为我们找不到公开的实现。

表3:我们的 SF-YOLO 和最先进的 SFDA 方法在 K2C 和 S2C 场景下的 AP 准确性。

下图显示了source only模型、CAST-YOLO 和 SF-YOLO 的视觉检测结果。每种颜色代表一个类别,我们的方法在定性上表现出与 CAST-YOLO 相当的性能,但我们在适应阶段没有使用标记的源数据。我们的 SF-YOLO 方法更好地适应特定领域,检测小而模糊的物体。

5、Conclusion

本文提出了首次使用YOLO系列单发探测器的SFDA方法。本文方法采用了一个带有学习的、目标领域特定的增强和一种新的通信机制的师生框架来稳定训练,减少了对模型选择中带注释的目标数据的依赖,这对现实世界的应用至关重要。SF-YOLO 优于所有基于Faster R-CNN的SFDA方法,甚至一些使用源数据的基于UDA yolo的方法。我们提出了SSM,它是 MT 框架的一个简单补充,可以提高性能和稳定性。大量实验表明,SSM与现有的知识保存技术的兼容性。SSM成功背后的主要假设在于学生和教师之间的在线知识蒸馏,这可以防止由噪声伪标签引起的模型漂移。SSM特别适合于无源(无监督)学习场景,与传统的半/弱/无监督学习不同,这些场景既不能访问源数据,也不能访问目标域的标记数据,以确保模型的稳定性,并防止训练过程中出现明显的漂移。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/899268.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

接口测试 —— Postman 变量了解一下!

Postman变量是在Postman工具中使用的一种特殊功能,用于存储和管理动态数据。它们可以用于在请求的不同部分、环境或集合之间共享和重复使用值。 Postman变量有以下几种类型: 1、环境变量(Environment Variables): 环境变量是在…

kubernetes中的微服务详解

华子目录 什么是微服务微服务的类型ipvs模式ipvs模式配置方式注意 微服务类型详解ClusterIP类型Services创建后集群DNS提供解析ClusterIP中的特殊模式:headless无头服务 NodePort类型访问过程NodePort默认端口 LoadBalancer类型访问过程metalLBmetalLB功能部署metal…

百度搜索推广和信息流推广的区别,分别适用于什么场景!

信息流推广和搜索广告,不仅仅是百度,是很多平台的两个核心推广方式。 1、搜索广告: 就是基于用户的搜索习惯,更多是用户有疑问、还有用户当下就要做出行动的广告。 比如上门服务、线上咨询服务、招商加盟、了解产品各种型号和信…

[JAVA]JDBC如何实现写数据?——利用Java新增MySQL中存储的员工字段信息

我们在实现JDBC写数据之前需要先工具类做一些前置准备。—封装DbUtils工具类,是一个用于操作数据库的工具类,它提供了一些便捷的方式来执行SQL语句,获取数据库连接等。简化程序的开发。DbUtils工具类主要帮我们封装,打开连接&…

LabVIEW提高开发效率技巧----插入式架构

随着LabVIEW项目规模的扩大和系统复杂性的增加,传统的单一代码架构难以应对后期维护和功能扩展的需求。插入式架构(Plug-In Architecture)作为一种模块化设计方式,通过动态加载和运行子VI,使系统功能更加灵活、模块化&…

【LLM之Agent】《Tool Learning with Large Language Models: A Survey》论文阅读笔记

概述 背景信息 近年来,基于大型语言模型(LLMs)的工具学习成为增强LLMs应对复杂任务能力的有力范式。尽管这一领域快速发展,现有文献的碎片化以及缺乏系统组织,给新入门者带来了阻碍。因此,本论文旨在对现…

Chrome DevTools 二: Performance 性能面板

Chrome DevTools 第二篇 Performance 主要介绍performance在我们日常开发中所起到的作用,以及如何利用performance 面板进行性能分析和相关优化建议。 性能面板 Performance 记录和分析页面运行中的所有活动,是解决前端性能问题的重要工具。 1. 控制栏…

分布式链路追踪-01初步认识SkyWalking

一 SkyWaling是什么? Skywalking是分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于容器(Docker、K8s、Mesos)架构而设计。SkyWalking 是观察性分析平台和应用性能管理系统,提供分布式追踪、服务网格遥…

idea 无法输入中文 快速解决

idea在某些情况会出现无法输入中文的情况,我们不去深究内部原因,直接上解决方案: 1、点击菜单help->Edit Custom VM Options 2、最后一行,追加: -Drecreate.x11.input.methodtrue 、 3、重启

软件分享丨PDF Shaper

【资源名】PDF Shaper 【地址】https://www.pdfshaper.com/ 【资源介绍】 PDF Shaper Professional是一款功能强大的PDF文档编辑与转换工具,使用它可以对PDF文件进行各种转换、提取、合并、旋转、加密、解密等编辑操作,主要功能有分割和合并PDF文件&…

无人机飞手执照培训为什么需要脱产学习?

无人机飞手执照培训需要脱产学习的原因主要基于以下几个方面: 一、知识体系的系统性与复杂性 无人机飞手培训涵盖的内容广泛且深入,包括无人机基础知识、飞行原理、气象学、法律法规等多个方面。这些知识体系相互关联,需要学员进行系统的学…

排序算法 —— 计数排序

目录 1.计数排序的思想 2.计数排序的实现 3.计数排序的分析 时间复杂度 空间复杂度 稳定性 优点 缺点 1.计数排序的思想 顾名思义,计数排序就是通过计数的方式来排序,其基本思想为: 开辟一个计数数组,统计每个数出现的次…

Windows 10、Office 2016/2019 和 PPTP 和 L2TP协议即将退役,企业应尽早做好准备

关心微软技术和产品的朋友一定对这个网站很熟悉:https://microsoftgraveyard.com/,这里静静的躺着很多微软技术和产品。近日,微软又在准备一场新的“告别仪式”了,这次是 Windows 10、Office 2016/2019 和一些老旧的协议与技术。让…

【Linux】按时间抽取附件

#1024程序员节|征文# 希望互相学习,共同进步 风123456789~-CSDN博客 1.背景 附件表 t_file 中有创建时间,需求是抽取202407-202408 月创建的附件到指定目录,并保持层级目录。 解决方案:由于抽取的附件条数…

2024 睿抗机器人开发者大赛(RAICOM)-【网络安全】CTF 部分WP

文章目录 一、前言二、MICS你是黑客么循环的压缩包Goodtime 三、WEBpy 四、Crypto变异凯撒RSAcrypto3 一、前言 WP不完整,仅供参考! 除WEB,RE,PWN外,其余附件均已打包完毕 也是一个对MISC比较友好的一个比赛~ 123网…

ES6:let和const命令解读以及变量的解构赋值

有时候,我们需要的不是答案,而是一双倾听的耳朵 文章目录 let和const命令变量的解构赋值 let和const命令 let和const命令都是声明变量的关键字,类同varlet特点 用来声明变量,不能再次定义,但是值可以改变存在块级作用…

【Nuvoton干货分享】开发应用篇 5 -- 32bit MCU Flash 操作

在实际开发中,我们都会碰到需要把部分数据存放在不易失存储空间上,比如外部NOR FLASH、EEPROM、SD等存储空间上,针对数据量不大的情况下,可以考虑将数据存放在芯片ROM存储空间。Nuvoton 32bit MCU ROM存储空间包括LDROM、APROM、S…

什么是缓存?

缓存是将文件副本存储在临时位置的过程,以便可以更快地访问这些文件。从技术上讲,缓存是文件或数据副本的任何临时存储位置,但通常是指互联网技术中的缓存。Web 浏览器缓存 HTML 文件、JavaScript 和图像,以便更快地加载网站&…

python 爬虫抓取百度热搜

实现思路: 第1步、在百度热搜页获取热搜元素 元素类名为category-wrap_iQLoo 即我们只需要获取类名category-wrap_为前缀的元素 第2步、编写python脚本实现爬虫 import requests from bs4 import BeautifulSoupurl https://top.baidu.com/board?tabrealtime he…

npm run serve 提示异常Cannot read property ‘upgrade‘ of undefined

npm run serve 提示Cannot read property ‘upgrade’ of undefined 一般是proxy的target代理域名问题导致的,如下: 解决方案: proxy: { “/remoteDealerReportApi”: { target: ‘http://demo-.com.cn’, //此域名有问题,会导致…