深度学习论文: 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

相关推荐
泰迪智能科技012 小时前
高校深度学习视觉应用平台产品介绍
人工智能·深度学习
盛派网络小助手2 小时前
微信 SDK 更新 Sample,NCF 文档和模板更新,更多更新日志,欢迎解锁
开发语言·人工智能·后端·架构·c#
Eric.Lee20213 小时前
Paddle OCR 中英文检测识别 - python 实现
人工智能·opencv·计算机视觉·ocr检测
cd_farsight3 小时前
nlp初学者怎么入门?需要学习哪些?
人工智能·自然语言处理
AI明说3 小时前
评估大语言模型在药物基因组学问答任务中的表现:PGxQA
人工智能·语言模型·自然语言处理·数智药师·数智药学
Focus_Liu3 小时前
NLP-UIE(Universal Information Extraction)
人工智能·自然语言处理
PowerBI学谦3 小时前
使用copilot轻松将电子邮件转为高效会议
人工智能·copilot
audyxiao0013 小时前
AI一周重要会议和活动概览
人工智能·计算机视觉·数据挖掘·多模态
Jeremy_lf4 小时前
【生成模型之三】ControlNet & Latent Diffusion Models论文详解
人工智能·深度学习·stable diffusion·aigc·扩散模型