深度学习论文: MobileNetV4 - Universal Models for the Mobile Ecosystem及其PyTorch实现

深度学习论文: MobileNetV4 - Universal Models for the Mobile Ecosystem及其PyTorch实现

MobileNetV4 - Universal Models for the Mobile Ecosystem

PDF: https://arxiv.org/pdf/2404.10518.pdf

PyTorch代码: https://github.com/shanglianlm0525/CvPytorch

PyTorch代码: https://github.com/shanglianlm0525/PyTorch-Networks

1 概述

专为移动设备设计的高效架构MobileNetV4(MNv4)核心在于引入了通用倒置瓶颈(UIB)搜索块和Mobile MQA注意力块,前者融合了多种技术,后者针对移动加速器优化,可大幅提升速度。同时采用了优化的神经架构搜索(NAS)方案。这一系列创新使得MNv4模型在多种设备上实现帕累托最优。此外,还引入了一种新的知识蒸馏技术,提高了模型的准确性。最终,MNv4-Hybrid-Large模型在ImageNet-1K上达到87%的准确率,同时在Pixel 8 EdgeTPU上的运行时间极短。

2 Universal Inverted Bottlenecks

通用倒瓶颈(UIB)块,其设计简洁而高效,如图所展示,它在传统的倒瓶颈块中巧妙地融入了两个可选的深度卷积(DW)操作。这两个DW分别置于扩展层之前以及扩展层和投影层之间,它们的存在与否是通过神经网络架构搜索(NAS)优化过程精心确定的,从而生成出性能卓越的全新架构。

尽管这种改动看似简单,但UIB块却成功地将多个现有的关键组件融为一体,包括经典的IB块、前沿的ConvNext块以及ViT中的FFN块。这种融合不仅保留了各组件的优势,还通过互补效应进一步提升了整体性能。

更值得一提的是,UIB还引入了一种革新的变体------额外的深度卷积IB(ExtraDW)块。这一创新举措为UIB块注入了新的活力,使其在保持高效的同时,进一步提升了模型的表达能力。

在网络的每个阶段,UIB都展现了出色的灵活性,以达成以下三个关键目标:

  • 即时实现空间和通道混合的权衡,优化模型的表达能力;
  • 按需扩大感受野,提升模型对上下文信息的捕获能力;
  • 最大化计算利用率,确保资源的高效利用。

3 Mobile MQA

专门为加速器优化的Mobile MQA注意力块,该块能够显著提升推理速度,达到超过39%的效率提升。

MQA

MQA通过共享键和值简化了多查询注意力机制。与MHSA相比,MQA在保持高质量的同时,实现了显著加速和参数减少。

Spatial Reduction Attention (SRA)

受到MQA非对称计算的启发,进一步将空间缩减注意力(SRA)融入优化后的MQA模块中,以降低键和值的分辨率,同时保持高分辨率的查询。此外使用步长为2的3x3深度卷积替代了AvgPooling,为模型容量的提升提供了一种高效且经济的方案。

通过引入非对称空间下采样,我们可以在保持极小精度损失(-0.06%)的同时,实现超过20%的效率提升。

Mobile MQA

其中 SR代表空间减少,即步长为2的深度卷积(DW),或者在未使用空间减少的情况下表示恒等函数。

4 Design of MNv4 Models

为了有效地实例化UIB块,作者采用了定制的TuNAS方法,该方法针对性能改进进行了优化。为克服TuNAS因参数共享而产生的偏见,作者实施了一个两阶段搜索策略。这一策略旨在解决UIB深度层与其他搜索选项之间参数数量差异的问题,确保搜索结果的公正性和有效性。

在搜索过程中,作者首先进行了粗粒度搜索,集中于确定最佳的滤波器大小,同时保持其他参数如扩展因子(设为默认值4)和深度可分核(使用3x3)不变。这一阶段的目的是快速筛选出可能的滤波器大小范围。

随后,基于粗粒度搜索的结果,作者进行了细粒度搜索。在这一阶段,作者进一步探索UIB的两个深度可分层的配置,包括它们的存在与否以及核大小(3x3或5x5)的选择。同时,扩展因子仍然保持为4,以控制变量并更精确地评估不同配置的性能。

通过这种两阶段的搜索策略,作者成功地确定了UIB块的最优配置,既考虑了性能又平衡了参数数量,为UIB的有效实例化提供了有力支持。

MNv4模型的架构细节:



5 Results

ImageNet classification

COCO Object Detection

相关推荐
非门由也17 小时前
《sklearn机器学习——特征提取》
人工智能·机器学习·sklearn
机器学习之心18 小时前
基于CNN的航空发动机剩余寿命预测 (MATLAB实现)
人工智能·matlab·cnn
钝挫力PROGRAMER18 小时前
AI中的“预训练”是什么意思
人工智能
Godspeed Zhao18 小时前
自动驾驶中的传感器技术39——Radar(0)
人工智能·机器学习·自动驾驶·毫米波雷达
idealmu19 小时前
知识蒸馏(KD)详解一:认识一下BERT 模型
人工智能·深度学习·bert
Cathyqiii19 小时前
生成对抗网络(GAN)
人工智能·深度学习·计算机视觉
ai产品老杨20 小时前
打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程的智慧工业开源了
人工智能·开源·音视频·能源
小陈phd21 小时前
高级RAG策略学习(五)——llama_index实现上下文窗口增强检索RAG
人工智能
凯禾瑞华养老实训室1 天前
人才教育导向下:老年生活照护实训室助力提升学生老年照护服务能力
人工智能
湫兮之风1 天前
Opencv: cv::LUT()深入解析图像块快速查表变换
人工智能·opencv·计算机视觉