导读
实时目标检测器如 YOLO 在训练于大型数据集并经过多个 epoch 后表现出色。然而,在数据增量到达的真实场景中,神经网络会遭受灾难性遗忘,导致先前学习到的知识丢失。为了解决这个问题,先前的研究探索了在持续学习目标检测(CLOD)中的类别增量学习(CIL)策略,其中大多数方法集中于两阶段目标检测器。然而,现有工作表明,由于噪声回归输出可能转移被损坏的知识,学习无遗忘(LwF)可能对 YOLO 这类单阶段 Anchor-Free 点检测器无效。在本工作中,作者引入了 YOLO LwF,这是一种针对基于 YOLO 的持续目标检测的自蒸馏方法。作者证明了当结合重放记忆时,YOLO LwF 显著减轻了遗忘现象。与先前的方法相比,它在 VoC 和 CoCO 基准测试上分别实现了和的 mAP 性能提升。
1 引言
目标检测是计算机视觉领域最重要的研究方向之一,其应用范围广泛,从自动驾驶[1]到医疗应用[2]。得益于深度学习,许多目标检测器达到了显著的性能[2-4]。此外,如 RT-DETR[2]和 YOLO[4-6]等架构在准确性和速度之间取得了良好的平衡,实现了实时目标检测。特别是,YOLO 现在已成为大多数应用中广泛使用的基于 CNN 的目标检测器。
另一方面,这些目标检测器是在理想场景下进行训练的,即所有数据一次性提供。这种情况并不反映现实世界场景,在现实世界中,模型需要逐步学习,随着时间的推移获取知识。为此,持续学习方法(CL)旨在促进新知识的获取,避免所谓的灾难性遗忘(CF)[7],即神经网络在接触到新数据时倾向于丢失之前学到的知识。
在考虑持续学习目标检测(CLOD)时,最常见的情况是类别增量学习(CIL),其中目标检测器从一系列任务中学习,每个新任务都呈现未见过的目标类别。然而,与单标签图像分类不同,在 CLOD 中,先前实例可能会在未来任务中以不同的真实标签(新类别)重新出现。这导致了一些额外的问题,如缺失标注问题,如图 1 所示,新图像缺失旧类别的标注。因此,像经验回放这样的综合方法在 CLOD 环境中表现不佳,需要调整才能使其有效 [8]。
CL 文献对于单标签图像分类表明,学习不遗忘(LwF)[9],一种自我蒸馏方法可以是一个有效的方法,尤其是在与如暗经验重放(DER)[10]中的重放缓冲区结合使用时。然而,先前的工作[8, 11]显示,基于蒸馏的方法可能对 YOLO 等单阶段 Anchor-Free 点目标检测器并不有效。
因此,在作者的工作中,作者重新思考了在 YOLO 目标检测器背景下的 LwF,实现了文献中提出的所有 CLOD 基准测试的最佳性能,从而证明了自蒸馏在 YOLO 案例中的有效性,尤其是在与重放缓冲区结合使用时。
因此,作者做出了以下贡献:
- • 作者提出了一种针对 YOLO 架构的 LwF 的改进方案,并将其命名为 YOLO LwF。
- • 作者在 VOC 和 COCO 基准测试上对 YOLOv8 架构进行了广泛实验,展示了 YOLO LwF 如何成为一种有效的 CL 策略。
- • 通过将 YOLO LwF 与重放记忆相结合,YOLO-LwF 在所有竞争方法中表现优异,展示了卓越的性能,并在 VOC 和 COCO 基准测试中分别将 mAP 提升了—+2.1% 和 +2.9%。
2 相关工作
大多数 CLOD 文献集中于两阶段目标检测器,如 Faster R-CNN[12-16]。所有这些工作都通过利用 Faster R-CNN 架构的不同部分来提出一些防止遗忘的解决方案。Faster ILOD[12]为网络中的三个组成部分——特征提取器、区域 Proposal 网络(RPN)以及类级分类和边界框回归网络(RCN)——各自提出了蒸馏损失。[13]通过修改 RCN 的蒸馏损失和 Faster R-CNN 的常规损失来重新审视 Faster ILOD,以解决缺失标注问题。相反,ABR[15]通过保存先前任务的框图像并将它们与当前图像混合使用 MixUp 和 Mosaic 增强来解决这个问题。此外,他们用所谓的注意力 ROI 蒸馏(ARD)替换了[12]中引入的 RPN 蒸馏损失。[16]提出在当前任务上训练一个额外的模型,然后联合蒸馏旧教师的新知识和新教师的新知识。
然而,如今在目标检测领域,趋势是设计快速的目标检测器,允许实时检测。因此,其他研究工作聚焦于一阶段目标检测器。在[11]中,作者指出了单阶段目标检测器中回归输出噪声的问题。他们针对 FCOS 架构[17]提出了一种基于蒸馏的方法,称为 SID。具体来说,他们提出从分类输出和中间特征中进行蒸馏。此外,他们还提出了一种交互相关蒸馏损失,以保持不同训练实例特征之间的交互关系。[18]为 GFLV1[19]和 FCOS[17]引入了弹性响应蒸馏(ERD)。ERD 对分类头进行 L2 蒸馏,对回归部分进行 KL 散度。为了克服 SID 中指出的噪声输出问题,ERD 在分类头和回归部分都选择了候选边界框。这是通过应用所谓的弹性响应选择(ERS)来实现的。[8]为 YOLOv8[6]架构提出了名为 RCLPOD 的方法。RCLPOD 不依赖于输出蒸馏,而是利用标签传播结合平衡重放缓冲区来减轻遗忘。此外,他们还依赖于中间特征蒸馏以提高稳定性。
遵循 RCLPOD,本研究聚焦于 YOLO 目标检测器,但与之前关于单阶段目标检测器的研究不同,作者提出了一种基于 LwF 的方法,充分利用网络输出,即也包括回归输出。
3 方法论
3.1 前言
在此,作者简要描述了现代 YOLO 检测器的核心功能,并说明了在此背景下采用轻量化特征提取(LwF)的必要性。特别是,作者描述了 YOLO 输出在训练和推理过程中的处理方式,以突出为什么 LwF 不应以简单的方式应用。由于在作者的实验中作者测试了 YOLOv8,与 RCLPOD 的做法相同,因此作者重点关注它,但大部分描述的功能在现代 YOLO 的各个版本中都是共有的。
YOLO 的近期版本是一阶段和 Anchor-Free 点目标检测器,即不需要任何区域 Proposal 或先验边界框。从 YOLOv8 到最新版本,损失函数由三个部分组成:用于分类的二进制交叉熵(BCE)损失、用于回归的完整交并比(CIoU)损失[20]和距离 Focal Loss(DFL)[19]。
1. 此向量被划分为四个维度为 L 的块,每个块用于计算从 Anchor 点到边界框四边的偏移量,如图 2a 所示。
2. 由于 YOLOv8 与 YOLOv10 和 YOLOv11 一样,依赖于 DFL 进行回归,因此对于每个偏移量,YOLO 返回一个关于 L 个可能偏移值的分类分布,如图 2b 所示。更多细节请参阅[19]。
3. 实际的偏移量,在推理过程中以及用于计算 CIoU 损失时,都通过计算 softmax 及其对应的期望值直接得出。
3.2 YOLO LwF
鉴于前文所述原因,作者提出对 LwF 进行一些修改,以解决噪声回归预测的问题。
3.2.1 回归输出的交叉熵
由于作者处于多标签设置中,关于分类输出,没有特别的原因偏好交叉熵(CE)损失而不是简单的 logits 之间的均方误差(MSE)。然而,对于回归,通过回忆 YOLOv8 对于给定的 Anchor 点和四个偏移量之一,预测的是 L 个可能距离值的分布,CE 损失与 MSE 之间的选择可能很重要。作者推测,在教师提供的噪声输出存在的情况下,匹配 logits 可能是一个额外的约束,防止了可塑性。此外,作者认为,根据文献[22],通过匹配 logits,教师可能会传递更多被污染的知识,导致在某些情况下遗忘更多。因此,正如 ERD[18]中所做的那样,作者提出对于回归输出使用温度 r=2.0 的 CE 损失。
通过应用回归输出与教师模型之间的交叉熵,模型被鼓励专注于学习可能的边界框偏移的整体分布,而不仅仅是保持相同的 logits。
3.2.2 预测加权交叉熵
然而,教师模型可能产生噪声预测的问题仍然存在。为了解决这个问题,作者提出了一种基于预测的加权交叉熵损失函数(WCE)。根据特定的样本和训练过程中产生的预测,作者提供特定的权重,以限制有害的噪声预测,并更加关注更可靠的预测。与 ERD [18] 不同,作者认为利用分类置信度比从回归输出本身得到的置信度更可靠。
3.3 Mask 重叠目标
最后,根据先前的研究[8],当当前任务的标签提供时,对旧类别进行 Mask 以计算分类损失是合理的。整体损失的计算方法如下:
3.4 结合自蒸馏与经验回放
在大多数关于单标签分类的 CL 文献中,经验回放(ER)是一种非常有效的策略。此外,如 RCLPOD[8]所示,在任务流相当长的实际场景中,回放内存是必要的。因此,作者提出利用回放缓冲区来存储旧任务的样本,并将 YOLO LwF 应用于缓冲区中的样本和新样本。与单标签场景不同,在目标检测中,作者不能天真地利用旧样本的标签,因为可能会出现任务干扰。解决这个问题有几种可能的方法:如 RCLPOD 所做的那样,通过添加伪标签来更新内存,为每个样本保留一个 Mask 以识别感兴趣的类别,或者简单地忽略标签,仅依赖自蒸馏。作者采用最后一种选项,以降低 YOLO-LwF 的复杂性,同时避免如果添加伪标签,模型可能会产生的低质量标签。
如 RCLPOD 所指出的,在多标签 CIL 设置中,平衡每类的样本数量对于保持不同类别的平衡准确率非常有效。因此,作者不是对重放缓冲区进行随机更新,而是应用了 RCLPOD 中已提出的优化内存中类别分布(OCDM)[23]。这种方法采用贪婪策略,仅保留来自内存和新数据的样本,以实现类别间均匀的数据分布。
4 实验设置
4.1 评估协议和指标
如前文所述[11, 14, 24],作者在包含 20 个物体类别的 PASCAL VOC 2017[25]基准测试集以及包含 80 个物体类别的 Microsoft COCO 挑战数据集[26]上测试了所提出的基于 LwF 的方法。由这两个数据集导出的 CIL 场景与为 RCLPOD 提出的场景相同,也与其他先前工作[11, 24]相同。为了澄清,作者在此报告与 RCLPOD 相同的符号表示,以区分不同的场景:NpM 表示第一个任务(i=1)由列表中的前 N 个类别组成(例如,按字母顺序排列),而每个后续任务(i>1)由从 N+(i-2)M 到 N+(i-1)M-1 的类别组成。VOC 的 CL 场景为 15p1、15p5、10p10 和 19p1,而 COCO 的 CL 场景为 40p40 和 40p10。
如[8, 24]中所述,为了评估 YOLOv8 的性能,作者在训练结束时报告了平均精度均值(mAP):以 0.5 IoU 阈值为标准,记为 mAP^{50},用于 VOC;以及在不同 IoU 阈值(从 0.5 到 0.95)下的加权 mAP,记为 mAP^{50-95},用于 COCO。
4.2 YOLO 训练细节
作者在 YOLOv8n(320 万个参数)上测试了 YOLO LwF,这是可用的 YOLOv8 中最小版本。通过这种方式,作者在更具挑战性的场景中测试了 YOLO-LwF,即模型容量尽可能低的情况。作者使用在 ImageNet 上预训练的 Backbone 网络参数进行初始化,这些参数可在[6]中找到,与 RCLPOD 和 CLOD 文献[14]中所述方法一致。作者遵循[4, 6]中建议的训练流程,并在表 6 中报告了训练超参数。特别是,与 RCLPOD 一样,作者将每个任务的 epoch 数设置为 100。
4.3 CL Baseline
首先,作者报告了理想联合训练的结果,以及对于微调,这是一种关于稳定性的下界,但对于塑性来说仍然是一个良好的 Baseline 。由于作者的目标是改进 LwF,因此作者也报告了 LwF 的结果,并且,为了与 YOLO-LwF 结合 OCDM 进行公平的比较,作者测试了 LwF 与 OCDM 的结合(LWF+OCDM)。此外,作者还报告了 RCLPOD [8]的结果,这是当前单阶段 CLOD 的 SOTA。
关于 RCLPOD,如果使用重放缓冲区,其容量固定为整个数据集的约 5%,即 PASCAL VOC 为 800 张图像,COCO 为 6000 张图像。
5 结果
在本节中,作者展示了 YOLO-LwF 与上一节中提出的 Baseline 方法的性能对比结果。表 1 展示了每个 CLOD 场景在最后一个任务结束时获得的最终 mAP。
表 2 从稳定性-塑性角度比较了两种最长 CLOD 场景(即 VOC15p1 和 COCO 40p10)的方法,而表 3 则针对 2 任务场景。在第 5.1 节和 5.2 节中,作者讨论了获得的结果,而在第 5.3 节中,作者展示了一项消融研究,以证明 YOLO-LwF 的合理性。
5.1 双任务场景
当不使用重放缓冲区时,表 1 显示 YOLO LwF 在所有两个任务场景中都优于其他方法,除了 VOC19p1,在该场景下 ERD 表现最佳。特别是,在 VOC 10p10 和 COCO 40p40 场景中,即使不使用任何重放缓冲区,YOLO-LwF 也表现出强大的性能。这可以通过这两个场景的特点来解释,即第二个任务也包含了来自前一个任务的类别实例。在所有四个场景中,YOLO LwF 都提升了标准 LwF 实现的结果。特别是,表 2 显示 YOLO-LwF 受益于更高的可塑性,同时,在四个场景中的三个中,观察到的遗忘更少。唯一一个 ERD 优于 YOLO-LwF 的场景是,新类别的数量远低于前一个场景。事实上,表 2 显示这个差距主要归因于 ERD 通过减少可塑性来减少遗忘的特性。因此,就基于蒸馏的方法而言,作者可以断言,在 YOLO-LwF 中,在两个任务场景中平衡稳定性和可塑性方面表现最佳。
关于使用重放缓冲区,YOLO-LwF 在所有场景中除了 COCO40p40 外,遗忘率最低。与使用 OCDM 的 LwF 和 ERD 与 OCDM 相比,YOLO LwF 使用 OCDM 不受塑性不足的影响,在 VOC 场景中遗忘率低于 RCLPOD,且在塑性方面存在微小差距。即使使用重放缓冲区的朴素 LwF 在 COCO 4Op40 场景中是最稳定的方法,YOLO LwF 使用 OCDM 也相当接近,并且在其他方法中表现出最佳稳定性/塑性权衡。
5.2 场景 VOC 15p1 和 COCO 40p10
如图 4 所示,在两个较长的场景中,使用重放缓冲区发挥着重要作用。实际上,这两个场景对于那些新任务中的数据不包含先前任务中目标示例的应用来说非常相关。
在表 3 中,作者报告了平均性能,包括遗忘(旧)和可塑性(新)。具体来说,在每一个新任务中,作者测量旧类别(来自先前任务)的 mAP 和新型别(新类别)的 mAP,并在表 3 中报告所有任务的平均值。
phenomenon,然而,对于双任务场景,由于 ERD 对遗忘的抵抗力更强,因此表现出更强的性能。正如预期的那样,对于较短的场景,作者认为由于 YOLO-LwF 利用分类置信度来适当地加权更可靠的教师预测,在较长的场景中,由于旧类别的实例较少,YOLO-LwF 容易忘记,因为从教师那里获得的有意义的知识量较少。当额外使用重放缓冲区时,这一事实得到了证实。
当基于蒸馏的方法与重放缓冲区结合时,YOLO-LwF 在两种场景下都优于其他方法,显示出 YOLO-LwF 与重放记忆结合时的适应性。关于 COCO 40p10,与 ERD 不同,YOLO-LwF 在稳定性方面有所提升(从 16.8 提高到 25.1),同时塑性略有下降(从 27.8 降至 27.5)。至于 VOC 15p1,YOLO-LwF 依然表现出色,这得益于其显著的抗遗忘能力。然而,与所有基于蒸馏的方法一样,与 RCLPOD 相比,在塑性方面仍存在重要差距。这一事实突显出,基于蒸馏的方法仍有改进空间,以缩小与联合训练的差距。
5.3 消融
在此,作者讨论了为 YOLO 适配 LwF 所提出的各种技术。关于方程 4 中提出的权重,作者用符号 Cls-IoU 来指代。
在表 4 中,作者报告了在 VOC 10p10 场景下,逐步添加每个组件所获得的 mAP 提升。使用 CE 代替 L2,在稳定性和塑性方面都实现了显著提升,最终提升幅度达到 14.5mAP。通过使用 WCE,如公式 2 所示,作者获得了塑性稳定性的额外提升。在给出新标签时对旧类别进行 Mask ,作者获得了稳定性提升,同时塑性略有下降。最后,Cls-IoU 在稳定性略有下降的情况下恢复了塑性。
此外,作者还研究了在具有重放缓冲区的 YOLO LwF 中,WCE 和 Cls-IoU 在具有挑战性的 VOC 15p1 场景下的作用。如表 5 所示,WCE 在更长的场景中尤为重要,带来了 2.7 mAP 的提升。此外,Cls-IoU 能够在不牺牲过多稳定性的情况下显著提高塑性。因此,这项消融研究展示了 CE 的重要性,并突出了 WCE 和 Cls-IoU 在实现更好的稳定性-塑性权衡方面的有效性。
6 结论
在本工作中,作者提出了一种基于知识蒸馏的现代 YOLO 目标检测器方法,称为 YOLO LwF。如前述 CLOD 工作所示,从回归输出中提取知识以达到良好的稳定性-塑性平衡极具挑战性。在作者的工作中,作者分析了 YOLO 的主要特征,并证明了这一问题的本质。首先,作者展示了使用交叉熵损失进行回归蒸馏的有效性。为了减少噪声回归问题,作者提出将回归蒸馏知识与分类知识相结合,反之亦然,将分类知识与回归相结合。
作者证明了当与重放记忆相结合时,YOLO LwF 显著减轻了遗忘现象。与先前的方法相比,它在 VoC 和 COCO 基准测试中分别实现了最先进的性能,将 mAP 提高了 +2.1%和+2.9%。
参考
[1]. TEACH YOLO TO REMEMBER: A SELF-DISTILLATIONAPPROACH FOR CONTINUAL OBJECT DETECTION
END
作者:小书童
来源:集智书童
推荐阅读
- AI 能看懂细节了!IDEA 研究院多模态目标检测模型 DINO-XSeek,自然语言精准定位目标
- 轻量化+动态上采样,参数减38%、精度升4.1%,边缘设备实时部署
- 详解 vLLM 和 SGLang awq dequantize kernel 的魔法
- 从 DeepSeek MoE 专家负载均衡谈起
欢迎大家点赞留言,更多 Arm 技术文章动态请关注极术社区嵌入式AI专栏欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。