利用知识蒸馏算法优化 YOLOv5 目标检测 !

image.png

这篇论文探讨了知识蒸馏技术在目标检测任务中的应用,尤其是不同蒸馏温度对学生模型性能的影响。

通过将YOLOv5s作为教师网络和较小的YOLOv5s作为学生网络,作者发现,随着蒸馏温度的增加,学生的检测准确性逐渐提高,最终在特定温度下实现了mAP50和mAP50-95指标,这些指标优于原始的YOLOv5s模型。

实验结果表明,适当的知识蒸馏策略不仅可以提高模型的准确性,还可以帮助提高模型在实际应用中的可靠性和稳定性。

本文还详细记录了模型训练过程中准确性曲线和损失函数下降曲线,并显示模型在经过150个训练周期后收敛到稳定状态。

这些发现为优化目标检测算法提供了理论基础和技术参考。

I Introduction

深度学习、大数据和硬件技术的迅速发展使得计算机逐渐替代传统的手动流程,成为信息获取的必备工具。人工智能(AI)被广泛认为是工业创新的驱动器,在AI领域中,计算机视觉已经成为一个受到研究行人高度重视的领域,因为其有可能改变机器如何解释视觉数据的方式。

计算机视觉领域的一个基本任务是目标检测,这推动了相关技术的进步。历史上,目标检测经历了两个关键阶段:基于传统算法的经典技术和现代基于深度学习的技术[2]。这些发展不仅推动了科学研究,而且在各个领域具有实际价值。例如,目标检测在医学影像[3]、文本提取[4-6]和命名实体识别[7]等方面发挥着关键作用,表明其在专业领域的应用。

YOLOv5s所取得的进步体现了目标检测技术在许多领域的更广泛进步,强调了其在众多行业中的重要性。与YOLOv5s等检测算法的持续发展相辅相成的是创建了全面、标注的数据集,这对于训练AI模型至关重要。这些数据集与YOLOv5s在处理大规模检测任务方面的效率相结合,使得可以实现更准确、可靠的目标检测系统。这不仅提高了实时应用中的性能,还在自动驾驶、工业自动化和医疗等领域增强了安全性和运营效率。本文研究深度学习网络,并构建了一个结合提取待检测物体位置信息的定位技术和目标检测算法,以满足不同场景的应用要求。

本文的主要工作包括:

  1. 提出了一种结合位置信息和知识提取的检测算法,用于解决图像任务中物体的定位模糊问题。
  2. 边界框被转换为概率分布,以便教师模型向学生模型提供更丰富的局部定位知识。
  3. 提出了一种基于区域的 selective distillation 策略,根据位置信息在特征图上选择 distillation 区域。

提取特征图中的分类知识与本地化知识,分别独立出来,并将特征图解耦为分类头与本地化头,以进一步改进目标检测的性能。

II related work

深度学习技术的 recent 进步显著影响了目标检测算法,尤其是在优化策略和知识传递机制的开发方面。知识蒸馏 [10-12] 作为一种从大型、经过良好训练的模型向较小模型转移信息的方法,已经出现作为一种改善模型性能同时保持计算效率的有前途的技术 [13]。优化策略的研究已经解决了深度学习模型中常见的降低训练偏差和增强收敛速度等挑战,这两者对于在目标检测中有效应用知识蒸馏至关重要。

深度学习优化的一个关键贡献是关注降低训练过程中的偏差[14]。这些进展使得模型更加可靠和鲁棒,这在应用知识蒸馏到像YOLOv5s这样的小型网络中至关重要。显著增强基于梯度的优化技术显著提高了学生模型的稳定性和性能,确保了从教师模型更有效地传递知识。这直接影响了蒸馏过程的效率,该过程对优化参数(如学习率和动量)非常敏感。

此外,深度学习特征提取方法取得了进展,特别是在卷积神经网络(CNNs)领域,这对于目标检测任务至关重要[15]。有效的特征提取机制使得学生模型能够从教师模型中捕获更多的详细定位和分类知识。近年来,特征提取技术的发展,特别是那些专注于提高空间分辨率的技术,增强了边界框和物体定位的准确性,这是目标检测的一个核心挑战。Yan等人[16]探讨了基于卷积神经网络(CNNs)的图像超分辨率技术,这进一步强调了为增强特征提取而微调深度学习模型的必要性,类似于目标检测模型中定位知识的提取。

将特征提取任务分离为分类和定位任务,这在目标检测模型中得到了探索,与结构化知识蒸馏的创新相吻合[17]。通过隔离这两个方面,学生模型可以获得关于物体放置的更精细的理解,这在实时检测任务中尤为有益。引入选择性蒸馏策略进一步优化了这一过程,通过关注特征图中最有信息量的区域,降低了计算开销,同时最大限度地提高了性能提升。

深度学习领域最近的一项重要工作涉及对比学习(contrastive learning)和混合模型(hybrid models)的应用 [18],这可以增强小型模型的特征表示,并提高其泛化能力 [19]。这些进步有助于更强大的训练过程,使得学生模型可以在更少的资源下实现更高的准确性 [20]。将这些方法应用到知识蒸馏框架中,确保学生模型保留了教师模型中的关键特征,同时保持计算效率。

III Method

在本节中,作者将介绍结合位置信息蒸馏的提出的目标检测算法。这种方法首先在YOLOv5l和YOLOv5s的多层特征图上选择关键的蒸馏区域和可扩展的位置区域,然后将两个模型的多层特征图分别分离为分类检测Head和定位检测Head,并分别提取分类知识和定位知识。对于分类知识,在分类头[21]上进行知识蒸馏;对于定位知识,重新描述特征图定位头的知识传递过程,并将边界框切换为概率分布。这两种知识提取基于单个头的逻辑,而不是深度特征。网络的整体框架如图1所示。

image.png

该模型通过 Backbone 网络处理输入图像,提取多尺度特征。特征金字塔网络(FPN)处理来自YOLOv5l和YOLOv5s模型的多层特征图。在此过程中,通道数增加而特征图尺寸减小。确定了关键蒸馏区域(KDR)和可扩展位置区域(ELR)。接下来,特征图被分为分类和定位检测Head,并在输出处进行自顶向下和自底向上的融合。

在处理特征层时,不同大小的 Anchor 框被配置以预测不同尺寸的目标。接着,输出阶段生成边界框、类别概率和中点,以确定图像内目标的位置和类别。教师和学生模型都应用了非极大值抑制,以消除冗余或重叠的边界框,只保留最可靠的目标预测。教师模型经过知识蒸馏训练以获得最优训练权重。然后,反向传播被用来优化学生网络模型,通过反馈环进行优化。这个过程最终导致了整体蒸馏损失函数的计算,该函数包含了学生模型通过教师模型提供的指导进行优化。

边界框的表示经历了从简单的狄拉克-delta分布到更为精细的高斯分布,再到更为复杂的概率分布的演变过程。这一演变反映了作者对物体形状和位置的变异性的更深入的理解。采用概率分布方法,系统现在可以预测一系列可能性,包括单峰分布、双峰分布,甚至多峰分布。这种高级表示允许同时编码物体的模糊不清的边界和明确的边界。分布的平坦度或尖锐度可以有效地传达物体边缘的不确定性或确定性。因此,位置信息提炼从这种概率方法中受益,因为它现在可以表示模糊的边缘和清晰的边缘,从而为图像中的物体位置提供更丰富、更精确的描述。

对于给定的边界框B,有两种传统的表示方法,分别是{x, y, h, w}和{t, b, l, r}。然而,这两种形式仅关注真实值的位置,无法模拟边界框的歧义。

image.png

本文针对COCO数据集进行了标注。这种结构化的方法不仅便于数据处理,而且确保了关键的目标检测特性得到了很好的组织和获取,以便进行全面分析。特别是,链接数据方法支持了将6000张图像有效地分为各自集合,为评估YOLOv5模型的改进提供了强大的框架。这种系统的方法简化了数据集管理,并增强了精确度(P)、mAP和召回率(R)指标的应用,从而使模型的性能验证更加准确和可扩展。图3展示了数据集的一个示例。

image.png

Experimental Results

为了研究不同蒸馏温度对学生模型检测性能的影响,本章采用YOLOv5l作为教师网络,YOLOv5s作为学生网络。首先,教师模型进行训练,以达到较高的熟练程度。随后,利用知识蒸馏技术将教师模型学习到的知识传递给学生模型。在蒸馏过程中,软标签和注意力图是主要的知识传递工具。相较于硬标签,软标签提供比硬标签更详细的定位和类别信息,帮助学生模型捕捉更广泛的数据细微差别。注意力图帮助学生网络关注目标的最相关特征,从而提高其学习能力和复制教师熟练程度的能力。

为了评估不同蒸馏温度下的有效性,作者通过调整温度参数进行了实验。这些实验将学生模型在不同温度下训练的性能与原始 Baseline 模型(YOLOv5s网络)进行了比较。实验结果详细说明了不同蒸馏温度对检测准确率和总体性能的影响,这些结果汇总在表2中。这种系统方法允许作者深入分析温度调优如何影响学生模型从教师模型中吸收和应用知识的能力。

image.png

根据实验结果,可以看出,在不同蒸馏温度下,作者的模型(Ours-1至Ours-5)与YOLOV5s模型相比,性能得到了显著提升。具体而言,随着蒸馏温度的增加,mAP50从93.21%逐渐提高到96.75%,mAP50-95也从70.21%提高到74.56%,这说明调整蒸馏温度可以有效提高模型识别精度。

在高阈值mAP50-95指数上,作者的模型显示出更强的泛化能力和更稳定的检测效果,比YOLOV5s高出约6.7个百分点,达到67.86%。这一趋势不仅验证了蒸馏策略的有效性,还证明了温度作为超参数的重要性。

总体而言,实验结果表明,通过精确调整蒸馏温度,可以在保持高mAP50的同时,进一步增强模型在不同IoU阈值下的平均准确性,使模型更适合实际应用中的复杂场景,并提供更可靠的检测解决方案。

此外,作者在此提供了训练实验中的相关曲线。

从图4和图5可以看出,作者的模型在大约第150个周期时收敛,这意味着在经过这个训练周期后,模型的性能指标(如损失函数值、准确率等)不再显著改变或改善,表明模型已经学习到了训练数据集中大部分可用的信息。从这个点作者可以推理,在最初的150个周期内:

image.png

经过多次迭代(epochs),模型进入了快速学习阶段,其权重不断调整以最小化损失函数并提高训练样本的预测准确性;在第150次迭代左右,学习率显著降低,即使继续增加训练轮数,模型的性能提升也不会太多。这通常是因为模型开始过度拟合训练数据,或者在当前架构下已经达到最优解。

因此,在第150次迭代时停止训练不仅可以避免过拟合的风险,还可以节省计算资源并提高模型训练的效率。

此外,这也提醒作者在未来的工作中可以考虑使用早期停止策略(Early Stopping),即在验证集上的性能停止提升后过早地终止训练,以进一步优化模型训练过程并确保模型具有良好的泛化能力。

通过分析图4和图5,作者不仅确定了模型收敛的具体迭代次数,还为后续模型优化提供了有价值的指导方向。

V Conclusion

本研究通过引入知识蒸馏方法,成功提高了YOLOv5s在目标检测任务中的性能。

特别是在不同的蒸馏温度条件下,观察到了显著的效果差异。实验显示,随着蒸馏温度的升高,学生模型的mAP50和mAP50-95指标均有所提升,最高分别达到96.75%和74.56%,比没有蒸馏的YOLOv5s模型分别高出5.42%和6.7%。

此外,模型的训练曲线表明,在大约150个周期后,学习速率显著放缓,表明模型已达到最佳状态。因此,合理设置蒸馏温度并及时采用早停策略对于避免过拟合、节省计算资源以及提高模型训练效率至关重要。

作者通过整合定位和分类知识,以及创新的基于区域的选择性蒸馏策略,进一步增强了模型在多样化检测场景中的鲁棒性和适应性。

最终,本研究为推进目标检测技术提供了有力的框架,既提供了理论见解,也提出了部署更准确、高效深度学习模型的实际策略,同时为未来通过知识蒸馏技术优化目标检测奠定了坚实的基础。

参考文献

[0]. Optimizing YOLOv5s Object Detection through Knowledge Distillation algorithm.

END

作者:小书童
来源:集智书童

推荐阅读

欢迎大家点赞留言,更多Arm技术文章动态请关注极术社区嵌入式AI专栏欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。

推荐阅读
关注数
18790
内容数
1342
嵌入式端AI,包括AI算法在推理框架Tengine,MNN,NCNN,PaddlePaddle及相关芯片上的实现。欢迎加入微信交流群,微信号:aijishu20(备注:嵌入式)
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息