深度学习论文: Rethinking Mobile Block for Efficient Attention-based Models及其PyTorch实现

深度学习论文: Rethinking Mobile Block for Efficient Attention-based Models及其PyTorch实现

Rethinking Mobile Block for Efficient Attention-based Models

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

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

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

1 概述

EMO是高效、轻量级的模型,以在参数、FLOPs和性能之间实现平衡,适用于密集预测任务。文章从倒立残差块(IRB)和Transformer的有效组件的统一角度出发,将基于CNN的IRB扩展到基于注意力的模型,并抽象出一个用于轻量级模型设计的单残留元移动块(MMB)。

EMO为轻量级模型设计提供了一个新的思路,通过将CNN和Transformer的有效组件统一起来,实现了高效的模型性能。大量实验验证了所提出的方法的有效性和优越性。

2 ResNetlike Efficient MOdel (EMO)

2-1 Criteria for General Efficient Model

在为移动应用设计高效的视觉模型时,提出以下四个标准,即,一个高效的模型应尽可能满足:

  • ➀Usability 可用性。简单的实现不使用复杂的运算符,并且易于为应用程序进行优化。
  • ➁Uniformity 统一性。尽可能少的核心模块以减少模型复杂性并加快部署速度。
  • ➂Effectiveness有效性。对于分类和密集预测具有良好的性能。
  • ➃Efficiency 效率。参数和计算量较少,但需要在准确性上进行权衡。

2-2 Meta Mobile Block

通过对 MobileNetv2 中的 Inverted Residual Block 以及 Transformer 中的核心 MHSA 和 FFN 模块进行抽象,提出了一种统一的 Meta Mobile (M2) Block 对上述结构进行统一的表示,通过采用参数扩展率 λ 和高效算子 F 来实例化不同的模块。

以图像输入 X ( ∈ R C × H × W ) X(∈ R^{C×H×W}) X(∈RC×H×W)为例,MMB首先使用扩展的 M L P e MLP_{e} MLPe来扩展通道维度,输出/输入比例为λ:

然后,中间操作符F进一步增强图像特征,例如恒等操作符、静态卷积、动态MHSA等。考虑到MMB适用于高效的网络设计,我们将F作为高效操作符的概念,表示为:

最后,使用反转的输入/输出比例为λ的收缩 M L P s MLP_{s} MLPs来收缩通道维度:

其中,使用残差连接来获得最终的输出 Y = X + X s ( ∈ R C × H × W ) Y = X + X_{s}(∈ R^{C×H×W}) Y=X+Xs(∈RC×H×W)。

2-3 Micro Design: Inverted Residual Mobile Block

基于Meta Mobile Block,设计了一个反向残差移动块 (iRMB),它吸收了 CNN 架构的效率来建模局部特征和 Transformer 架构动态建模的能力来学习长距离交互。结构如下:

具体实现中,iRMB 中的 F 被建模为级联的 EW-MHSA 和DW-Conv卷积。

2-4 Macro Design of EMO for Dense Prediction

基于上述标准,作者设计了一个由多个 iRMB 模块堆叠而成的类似于 ResNet 的高效模型------EMO,主要体现在以下几个优势:

1)对于整体框架,EMO 仅由 iRMB 组成,没有多样化的模块,这在设计思想上可称得上大道至简;

2)对于特定模块,iRMB 仅由标准卷积和多头自注意力组成,没有其他复杂的运算符。此外,受益于 DW-Conv,iRMB 还可以通过步长适应下采样操作,并且不需要任何位置嵌入来向 MHSA 引入位置偏差;

3)对于网络的变体设置,作者采用逐渐增加的扩展率和通道数,详细配置如下表所示。

3 Experiments


相关推荐
丝斯20118 小时前
AI学习笔记整理(67)——大模型的Benchmark(基准测试)
人工智能·笔记·学习
咚咚王者8 小时前
人工智能之核心技术 深度学习 第七章 扩散模型(Diffusion Models)
人工智能·深度学习
github.com/starRTC8 小时前
Claude Code中英文系列教程25:非交互式运行 Claude Code
人工智能·ai编程
逄逄不是胖胖8 小时前
《动手学深度学习》-60translate实现
人工智能·python·深度学习
loui robot8 小时前
规划与控制之局部路径规划算法local_planner
人工智能·算法·自动驾驶
玄同7658 小时前
Llama.cpp 全实战指南:跨平台部署本地大模型的零门槛方案
人工智能·语言模型·自然语言处理·langchain·交互·llama·ollama
格林威8 小时前
Baumer相机金属焊缝缺陷识别:提升焊接质量检测可靠性的 7 个关键技术,附 OpenCV+Halcon 实战代码!
人工智能·数码相机·opencv·算法·计算机视觉·视觉检测·堡盟相机
独处东汉8 小时前
freertos开发空气检测仪之按键输入事件管理系统设计与实现
人工智能·stm32·单片机·嵌入式硬件·unity
你大爷的,这都没注册了8 小时前
AI提示词,zero-shot,few-shot 概念
人工智能
AC赳赳老秦8 小时前
DeepSeek 辅助科研项目申报:可行性报告与经费预算框架的智能化撰写指南
数据库·人工智能·科技·mongodb·ui·rabbitmq·deepseek