专栏名称: 智驾实验室
欢迎关注“智驾实验室”!本公众号专注于自动驾驶领域,为您带来世界模型的最新研究,多模态大模型的深入解析,以及多模态大模型在自动驾驶领域的应用与落地。在这里,您可以了解到自动驾驶技术的最新动态,洞察行业趋势,与我们一起探索未来出行的无限可能。
目录
相关文章推荐
51好读  ›  专栏  ›  智驾实验室

炸裂 !轻量化YOLO | ShuffleNetv2与Transformer结合,重塑YOLOv7成就超轻超快YOLO

智驾实验室  · 公众号  ·  · 2024-06-08 00:33

正文

点击下方卡片,关注 「集智书童」 公众号

点击加入👉 「集智书童」 交流群

随着移动计算技术的迅速发展,在移动设备上部署高效的目标检测算法成为计算机视觉领域的一个关键研究点。本研究聚焦于优化YOLOv7算法,旨在提高其在移动平台上的操作效率和速度,同时确保高准确度。

通过结合高级技术,如组卷积、ShuffleNetV2和视觉 Transformer ,本研究有效减少了模型的参数数量和内存使用,简化了网络架构,并加强了在资源受限设备上的实时目标检测能力。

实验结果表明,改进后的YOLO模型表现出色,显著提升了处理速度同时保持了卓越的检测准确度。

1 Introduction

随着计算机视觉领域的迅速发展,目标检测在各种应用中变得至关重要,这些应用范围包括但不限于安全监控、自动驾驶和智慧医疗。尽管传统目标检测方法存在计算复杂度高和实时性能不足的问题,但基于深度学习算法已在准确性和实时性能方面取得了重大突破。其中,YOLO已成为一种经典的实时目标检测算法,它在计算速度和检测精度之间取得了平衡。然而,移动设备通常在计算能力、内存容量和能源消耗方面受限,这复杂化了深度学习模型的部署。

为了将这些YOLO模型适应到这些环境中,需要进一步的改进和优化。本文将深入探讨针对移动部署而优化的增强型YOLO模型的研究,重点关注网络结构优化、模型压缩与加速、鲁棒性增强以及在不同应用场景下的性能评估。

本研究的主要目标包括探索和理解YOLO算法及其变体在目标检测任务中的背景。本工作的重点将放在掌握YOLO算法的基本原理和核心机制,以及它在各种任务和场景下的表现。这包括但不限于对YOLO的网络架构、损失函数、训练策略的深入研究,以及与其他目标检测算法的比较分析。

考虑到移动设备的特性,本研究旨在设计和实施对YOLO模型的增强。针对移动设备的计算能力和内存限制,研究将努力优化YOLO模型的结构和算法。这可能涉及轻量级模型设计、高效算法实现和特定的硬件优化,所有这些都是旨在显著提高模型在移动设备上的性能和效率,同时保持检测精度。在标准数据集上验证和评估改进模型的表现,以及在真实移动设备上的操作效率,也将是重要的。

研究将进一步通过在标准数据集上的实验验证和在实际移动设备环境中的部署测试,来评估增强的YOLO模型的性能和效率。这一综合评估将有助于确保改进后的模型不仅在理论上取得进展,而且在实际应用中也能展示出可行性和有效性。

本文的主要贡献概括如下:

  1. 在增强的YOLO模型中,彻底借鉴并利用了ShuffleNet v2的设计理念。特别是,通道混洗与组卷积的结合有效地平衡了模型的复杂度与性能。这种设计不仅提升了模型的效率,还保持了强大的特征提取能力,使得在移动设备上能够实现实时目标检测。此外,通过融合如跳跃连接和深度可分离卷积等技术,进一步增强了模型的鲁棒性和准确度。

  2. 在针对YOLO模型的改进中,将视觉 Transformer (ViT)作为特征提取的核心组件,不仅增强了模型捕捉整体图像上下文信息的能力,而且显著提高了目标检测的准确性和效率。ViT的长距离依赖捕捉能力及其优秀的迁移学习特性,使该模型在处理复杂场景时更加高效,特别是在移动设备上的应用中,显示出显著的实时性能优势。

2 Related Work

ShuffleNet v2

ShuffleNet v2旨在实现高效的计算和减少模型复杂性的同时保持高性能,这是一项挑战性的任务,因为降低复杂性常常会冒着牺牲准确度的风险。然而,ShuffleNet v2通过几个关键创新成功地解决了这个问题。与前辈利用分组卷积来减少参数和计算量不同,ShuffleNet v2增强了每组内的特征交互,以提高模型的表示能力。

具体来说,它放弃了逐点卷积中的分组限制,允许所有通道参与1x1卷积,简化了网络结构,降低了内存访问成本,并增强了信息流。此外,通过减少瓶颈结构中的通道分割,它避免了与分组卷积相关的潜在信息瓶颈,实现了更平衡的计算负载分布并提升了模型效率。

此外,ShuffleNet v2优化了在ShuffleNet v1中引入的通道混洗机制,采用未分组的逐点卷积、通道分割和改进的特征融合策略,以实现更有效的组间信息交换,通过重新组织输入特征图的通道顺序,从而丰富了特征表示。

Vision Transformer (ViT)

视觉 Transformer (ViT)是一种创新的深度学习架构,专为计算机视觉任务而设计,它通过将最初为自然语言处理开发的Transformer结构适应到视觉领域,标志着一次重大的转变。ViT首先将输入图像分割成一系列的斑块,将这些斑块转换成捕捉局部图像特征的高维嵌入向量。

为了弥补Transformer固有的序列处理能力的不足,在这些嵌入向量中加入了位置编码,使ViT内的自注意力机制能够捕捉不同图像段之间的长距离依赖关系。Transformer编码器处理这些嵌入,关注各种图像方面,为多样的视觉任务提供健壮的特征表示。经过转换的向量,特别是通过一个特殊的“分类”嵌入向量用于分类任务,然后被用来输出最终的特定任务结果,显示了ViT在处理复杂视觉信息方面的适应性和有效性。

You Only Look Once (YOLO)

多年来,YOLO系列一直是最佳的单一阶段实时目标检测类别之一。YOLO将目标检测任务转化为一个回归问题,在一次前向传播中预测多个目标的位置和类别,实现了高速度的目标检测。经过多年的发展,YOLO已经发展成为一系列具有良好性能的快速模型。

基于 Anchor 框的YOLO方法包括YOLOv4,YOLOv5,和YOLOv7,而 Anchor 框自由方法有YOLOX和YOLOv6。考虑到这些检测器的性能, Anchor 框自由方法与基于 Anchor 框的方法表现相当, Anchor 框不再是限制YOLO发展的主要因素。

然而,所有YOLO变体生成了许多冗余的边界框,在预测阶段必须通过NMS(非极大值抑制)过滤掉,这显著影响了检测器的准确性和速度,与实时目标检测器的设计理论相冲突。

3 YOLO Model Architecture

Model Overview

这一章节重点介绍两个关键模块——动态组卷积Shuffle模块(DGSM)和动态分组卷积Shuffle Transformer (DGST)。

DGSM模块用于优化主干网络,通过结合组卷积和通道Shuffle技术,显著提高计算效率同时保持卓越的性能。而DGST模块,用于优化 Neck 网络,进一步融合了视觉 Transformer 、组卷积和通道Shuffle技术,实现了更高的计算效率和适应性。该模块还简化了网络结构,提高了检测效率。

Dynamic Group Convolution Shuffle Module (DGSM)

在DGSM中,图1所示的引入组卷积减少了模型的参数数量和计算需求,同时防止了过拟合,从而保持了网络的鲁棒性和泛化能力。此外,来自ShuffleNetV2的通道混洗技术有助于有效的组间特征信息交换,这对于保持网络的综合性表达能力至关重要。值得注意的是,在减少参数数量的同时,这种交换机制有助于保持特征的多样性和丰富性。

正如表1所示,新的DGSM模块可以根据不同层次的需求精确调整堆叠块的数量和通道数,取代原有的ELAN模块,形成一个新的 Backbone 网络。这种精细调整的控制和优化方法使模型在保持计算效率的同时,更有效地处理各种尺度的特征,显著提高了模型在实际应用中的适用性和性能。

Dynamic Group Convolution Shuffle Transformer (DGST)

动态组Shuffle Transformer (DGST)是一种创新结构,如图2所示,它将视觉 Transformer 与DGSM模块相结合,旨在进一步提高模型的计算效率和性能。DGST模块的核心是一个3:1划分策略,其中一部分进行组卷积和通道Shuffle操作,而卷积操作取代了全连接的线性层以实现相同的效果,用这个模块替换原始的 Neck 模块。这种设计不仅减少了计算需求,而且更好地适应了卷积神经网络的特性,潜在地为模型提供更优越的性能。

为了进一步优化整体网络架构,作者对检测Head(detection heads)的配置进行了调整,将原有的三个检测Head减少到两个,如图3所示。这项修改不仅减轻了模型的计算负担,还提高了检测效率。检测Head数量的减少意味着在后处理阶段有更少的数据需要处理,从而加快了整个模型的推理速度。

4 Experiment

Setups

本次实验所使用的数据集包含了1919张个人图像,包括带口罩和不带口罩的人像。数据集的收集涵盖了多个来源:







请到「今天看啥」查看全文