当前位置: 首页 > article >正文

YOLOv8改进,YOLOv8改进主干网络为GhostNetV3(2024年华为的轻量化架构,全网首发),助力涨点


在这里插入图片描述


摘要

GhostNetV3 是由华为诺亚方舟实验室的团队发布的,于2024年4月发布。
在这里插入图片描述

摘要:紧凑型神经网络专为边缘设备上的应用设计,具备更快的推理速度,但性能相对适中。然而,紧凑型模型的训练策略目前借鉴自传统模型,这忽略了它们在模型容量上的差异,可能阻碍紧凑型模型的性能提升。在本文中,通过系统地研究不同训练成分的影响,我们介绍了一种用于紧凑型模型的强大训练策略。我们发现,适当的重参数化和知识蒸馏设计对于训练高性能的紧凑型模型至关重要,而一些常用于训练传统模型的数据增强方法(如 Mixup 和 CutMix)反而会导致性能下降。作者在 ImageNet-1K 数据集上的实验表明,为紧凑型模型设计的专门训练策略适用于各种架构,包括 GhostNetV3、MobileNetV2 和 ShuffleNetV2。具体而言,GhostNetV3 1.3× 在移动设备上以仅 269M FLOPs 和 14.46ms 的延迟实现了 79.1% 的 top-1 准确率,远超其常规训练的对手。此外,还可以扩展到目标检测场景。


理论介绍

GhostNetV3 提供了以下几种常见的模型权重,不同宽度缩放因子(Width Scaling):

  • 0.5x: 较小模型深度,用于资源更受限的场景。
  • 1.0x: 标准模型。
  • 1.3x: 模型深度比1.0x更深。
  • 1.6x: 更大的模型版本,适用于计算资源较多的设备。

大家可以根据不同场景选择合适的模型宽度缩放因子,本文选择 0.5,具体可见第二章的代码。

GhostNetV2 和 GhostNetV3 的架构如下:
在这里插入图片描述

GhostNets(GhostNetV1 和 GhostNetV2)是为在移动设备上高效推理而设计的最先进的紧凑型模型。其关键架构是 Ghost 模块,可以通过廉价操作生成更多特征图来替换原始卷积。在普通卷积中,输出特征 Y 通过 Y = X ∗ W 获得,其中 W ∈ R cout×cin×k×k 是卷积核,X 是输入特征。cin 和 cout 分别表示输入和输出通道维度。k 是核大小,∗ 表示卷积操作。Ghost 模块通过两个步骤减少普通卷积的参数和计算成本。

GhostNetV3 引入了多分支重参数化机制,通过在卷积层中添加额外的平行分支来改善性能。这些分支在训练过程中提供更多的表征能力,最终通过将多个分支重组为一个卷积层来实现推理时的高效性。通过添加配备 BatchNorm 层的重复分支将再参数化引入紧凑型模型。
GhostNetV3 在 GhostNetV2 的基础上进行了进一步的优化,主要体现如下:

  • 重参数化训练 (Training of Convolution):GhostNetV3 引入了重参数化技术,通过多分支的卷积进行训练。
  • 在 3x3 DWConv 的训练中,模型通过多个 3x3 的深度可分离卷积以及 identity
    路径的并行操作来提升模型的表达能力,训练时所有路径共同参与

http://www.kler.cn/news/329629.html

相关文章:

  • C++ STL(3)list
  • 卡夫卡的理解
  • 事务原理,以及MVCC如何实现RC,RR隔离级别的
  • 告别PPT熬夜!Kimi+AIPPT一键生成PPT,效率upup!
  • Docker全家桶:从0到加载本地项目
  • docker 部署 Seatunnel 和 Seatunnel Web
  • 浏览器用户行为集群建设-数仓建模-数据计算
  • 828华为云征文|华为云Flexus云服务器X实例搭建部署H5美妆护肤分销商城、前端uniapp
  • pytorch千问模型源码分析
  • leetcode.每日一题.2516.每种字符至少取 K 个
  • 【C++】C++基础
  • 魔都千丝冥缘——软件终端架构思维———未来之窗行业应用跨平台架构
  • D21【python接口自动化学习】-python基础之内置数据类型
  • Git记录
  • C语言:排序(1)
  • 毕业设计选题:基于ssm+vue+uniapp的家庭记账本小程序
  • 在线远程考试|基于springBoot的在线远程考试系统设计与实现(附项目源码+论文+数据库)
  • 【C++】“list”的介绍和常用接口的模拟实现
  • 进程通信——内存映射
  • Java项目实战II基于Java+Spring Boot+MySQL的智能物流管理系统(文档+源码+数据库)
  • [大语言模型-论文精读] 阿里巴巴-通过多阶段对比学习实现通用文本嵌入
  • 从0开始实现es6 promise类
  • 【可答疑】基于51单片机的体温心率血氧检测系统(含仿真、代码、报告等)
  • I2C-Tools的安装与使用方法(详解,一篇教会你熟练使用)
  • 数据库索引和磁盘的关系大揭秘
  • Leetcode 3307. Find the K-th Character in String Game II
  • 无线通信系统仿真与原型设计:MATLAB实践指南
  • LDRA Testbed(TBrun)软件集成测试(部件测试)_操作指南
  • postgresql僵尸进程的处理思路
  • 一文带你入门客制化键盘,打造专属打字利器