论文链接:https://arxiv.org/abs/2211.02213
1、先明确一个定义,论文中的半监督域自适应是什么?
在源数据集中进行监督训练,在目标数据集中进行无监督学习,目标数据集中部分数据标注部分无标注。未标记的目标训练图像在输入教师模型之前与源数据场景进行风格转换。这个流程形成了半监督域自适应SSDA-YOLO。
2、为什么选择YOLOv5
答:1)YOLOv5在工业界部署多,且实时性和准确率很高;2)DAOD这个领域之前的工作主要是基于Faster RCNN开展,对一阶段的YOLO系列探索较少。
目录
4.3 Pseudo Training Images Generation
4.4 Remedying Cross-Domain Discrepancy
Abstract
域自适应目标检测(Domain adaptive object detction, DAOD)旨在缓解跨域差异引起的迁移性能下降。但是当前DAOD主要使用的不是工业界首选的两阶段目标检测方法Faster R-CNN。在这篇论文中,提出了一种新的基于半监督域自适应YOLO ( SSDA-YOLO )的方法,通过将的单阶段强检测器YOLOv5与域自适应相结合来提高跨域检测性能。具体来说,我们将知识蒸馏框架与均值教师模型相结合,以辅助学生模型获取未标注目标领域的实例级特征。我们还利用场景风格迁移来交叉生成不同域的伪图像,以弥补图像级的差异。此外,还提出了一种直观的一致性损失来进一步对齐跨域预测。我们在包括PascalVOC,Clipart1k,Cityscapes和Foggy Cityscapes在内的公共基准上评估了SSDAYOLO。此外,为了验证其泛化性,我们在从各种真实教室收集的打哈欠检测数据集上进行了实验。结果表明,我们的方法在这些DAOD任务中都有相当大的改进,这表明了所提出的自适应模块的有效性。
Method
提出的SSDA-YOLO主要包括4个部分:Mean Teacher Model,the pseudo cross-generated training images , the updated distillation loss, the novel consistency loss。
4.1 Difition of terms
对于跨域目标检测任务,存在源域(source domain)和目标域(target domain)。源域有一系列图像,已经N个bouding box,以及对应的分类标签。目标域有没有标注的图像。因此源域可定义为,目标域可定义为。
使用YOLOv5作为backbone,监督学习的损失函数如下,使用GIoU预测bouding box,是Focal loss。
4.2 Mean Teacher Model
Mean Teacher model最初用于图像分类任务,使用EMA更新权重。和分别是teacher和student的参数,使用下边这个公式更新每个train batch的参数。是一个权重衰减参数。
在这个任务中,无标注的目标域数据作为teacher 的唯一输入。在蒸馏的过程中,从teacher模型预测中选择概率较大的bounding box作为伪标签(pseudo labels)。student倾向于减少目标域上的方差,增强模型的鲁棒性。是增强后的目标域作为teacher的输入,是student的输入。两个模型之间的差异用下边的公式表示,是teacher预测的bounding box,是teacher预测的classes。和是对应的filters。
具体操作步骤:在训练的每个step都把Mean Teacher model设置为评估模式,并用NMS过滤掉低于IoU阈值的bounding box,然后选择出类别得分高于的bounding box。醉蛛pseudo label提供了用于student model的目标域的实例级特征(instance-level features)。
4.3 Pseudo Training Images Generation
目前student仅有来着源域的数据,而teacher由目标域数据所引导。图像级的域偏差会导致两个模型偏向于单调的图像输入,这个问题需要缓解。这篇论文使用CUT同时生成类似于目标域图像的源图像和与源域相似的目标域图像用于训练。是来自源域的图像,是来自源域和目标域相似的图像,是来自目标域的图像,是来自目标域和源域相似的图像。图像对和在训练中是同时出现的。
4.4 Remedying Cross-Domain Discrepancy
为了弥补student的跨域差异,以为输入添加了一个新的监督分支,如图中黄色部分所示,损失用公式4计算。
对于teacher,为了使其学习到和源域类似的全局图像特征,把输入替换为(如图中蓝色所示),用于student的不变。因此,4.2中提到的蒸馏损失损失替换为下边这个公式,即公式5,公式4和公式5以EMA的方式在Mean teacher model中更新。
这样,学习到的教师模型不会剧烈地倾向于只擅长预测目标领域中的对象。此外,学生模型的训练将从( )的过滤预测中逐渐接近具有伪标注弱监督的真实目标域。虽然不够精确,但是这些伪标注对于促进细粒度的实例级适配起到了替代作用。
4.5 Consistency Loss Function
尽管输入到student的图像对具有不同的场景级数据分布,但是它们具有相同的label空间。合理的假设:喂入student的两个域的输入,输出应该是一致的。
为了确保输出一致,有三个选择:1)使用对应特征图之间的中间监督;2)使用预测结果错误限制;3)两个都使用。
这里不希望中间特征是一致的,只需要预测结果尽可能一致,中间监督可能是一种过度约束,这里选择计算输出结果的的距离来进行约束。一致性损失似乎可以纠正客观性和分类的跨领域偏见。其有效性也将通过实验加以证明。
4.6 Overall Optimization
在推理过程中,我们只需要采用训练好的学生模型,将目标图像作为单输入。我们的模型可以通过联合优化所有相关损失以端到端的方式进行训练。 整体损失如下α和β是超参数。
Experiment
5.1 Training Configuration
选择YOLOV5L作为detector,图像被pad和resize为(960,960,3)。在训练期间,每个batch包括两对图像,有标签的,没有标签的。EMA中的γ设置为0.99,α设置为0.005,β设置为2.0。
5.2 Transfer Experiment Design
进行了实验PascalVOC7→Clipart1k来比较真实适应和虚拟适应,并实施了实验Cityscapes7→Foggy Cityscapes来评估正常适应到不利天气的适应性。
5.2.1 Real to Virtual Daptation
用PASCAL VOC2007和2012作为源域,Clipart 1k的1000张划分目标域和源域。
5.2.2 Normal to Adverse Weather Adaptation
使用CItyscape作为源域,Foggy Cityscape作为目标域。
Conclusion
本文提出了一种新的半监督跨域目标检测方法SSDA - YOLO。我们摒弃了目前效率较低的过时Faster R - CNN,在之前的工作中占主导地位,引入了更优越的YOLOv5作为我们的骨干检测器。具体来说,我们的框架包含三个有效的组成部分。首先,基于知识蒸馏结构,我们将YOLOv5分别学习为学生网络和基于均值教师模型的教师网络,以构建鲁棒的训练。接下来,我们对交叉生成的伪训练图像进行风格迁移以缓解全局域差异。最后,我们应用一致性损失函数来修正来自不同域但具有相同标签的图像的预测偏移。我们在公开的基准数据集和自制的打哈欠行为数据集上进行了实验。最终结果证明了我们提出的SSDA - YOLO在实际跨域目标检测应用中的有效性和优越性,同时也揭示了采用先进检测器来推进DAOD研究的必要性。