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

轻量级视觉骨干网络 MobileMamba: Lightweight Multi-Receptive Visual Mamba Network

MobileMamba

  • 快速链接
  • 解决问题:视觉模型在移动设备端性能和效果的平衡性
  • 解决方法:改进网络结构+训练和测试策略
    • 网络结构改进
    • 训练和测试策略
  • 实验支撑:图像分类、分割,目标检测等
    • 图像分类结果对比
    • 目标检测和实例分割结果对比
    • 语义分割结果对比

快速链接

原文 : https://arxiv.org/pdf/2411.15941
代码 : https://github.com/lewandofskee/MobileMamba

解决问题:视觉模型在移动设备端性能和效果的平衡性

在这里插入图片描述
因为移动设备的算力受限,移动设备上常使用轻量级网络。在图像领域,常用的轻量级网络主要分基于CNN的网络,以及基于vision-transformer的网络,但都有其局限性。基于CNN的网络,速度快,效果好,但无法捕捉长距的关系。基于vision-transformer的网络可捕捉长距离间关系,但其计算复杂度与输入图尺寸的平方成正比。state-space模型可以用线性复杂度的计算量捕获长距关系。(state-space和Mamba模型应存在某些关系)。已有的基于Mamba的网络flops低,但推理速度慢,效果差。本文提出的MobileMamba可以平衡效果和性能, imagenet-1K Top1 83.6% ,超最优。GPU上速度比localVim快21倍。

解决方法:改进网络结构+训练和测试策略

在这里插入图片描述
本文通过改进Mamba网络结构,使用一些训练和测试策略,达到对Mamba模型的轻量化,并且保证其优异的效果。

网络结构改进

在这里插入图片描述
粗颗粒上:本文对比了常用的4阶段网络与提出的3阶段网络在输出分辨率上的差异。用imagenet-1k的图像分类实验结果说明,提出的3阶段网络在推理速度,准确性上都更优。感觉存粹是一种基于实验经验判断的结构改进。
在这里插入图片描述
细颗粒度上:本文提出了MRFFI模块(Multi-Receptive Field Feature Interaction, 多感受野特征交互)。输入特征在channel维度分配到以下三部分。
(1)long-range wavelet trasform-enhanced mamba(长程基于小波转换的mamba),用于提取全局特征,增强细颗粒度细节提取。
(2)multi-kernel depthwise convolution(多核深度可分离卷积),用于捕获多尺度的感受野。
(3)identity mapping(恒等映射,就是输出和输入相同),用于减少高分辨率空间通道冗余,降低计算复杂度,提高处理速度。

训练和测试策略

训练方面,使用了2个技巧。
(1)知识蒸馏:最小化教师模型和学生模型的 Softmax 输出之间概率分布差异。
(2)延长训练epochs: 训练的epoch数量从传统的300延长到1000,让此模型收敛。
测试方面,将批归一化层融合到前面卷积或线性层的权重、偏置中,并且保证融合前后计算结果一致。这样,通过减少计算层数,提高计算速度。

实验支撑:图像分类、分割,目标检测等

图像分类结果对比

在这里插入图片描述

目标检测和实例分割结果对比

在这里插入图片描述

语义分割结果对比

在这里插入图片描述

相关文章:

轻量级视觉骨干网络 MobileMamba: Lightweight Multi-Receptive Visual Mamba Network

MobileMamba 快速链接解决问题:视觉模型在移动设备端性能和效果的平衡性解决方法:改进网络结构训练和测试策略网络结构改进训练和测试策略 实验支撑:图像分类、分割,目标检测等图像分类结果对比目标检测和实例分割结果对比语义分割…...

科技云报到:数智化转型风高浪急,天翼云如何助力产业踏浪而行?

科技云报到原创。 捷径消亡,破旧立新,是今年千行百业的共同底色。 穿越产业周期,用数字化的力量重塑企业经营与增长的逻辑,再次成为数字化技术应用的主旋律,也是下一阶段产业投资的重点。 随着数字化转型行至“深水区…...

dockerfile部署前后端(vue+springboot)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言0.环境说明和准备1.前端多环境打包1.1前端多环境设置1.2打包 2.后端项目多环境配置以及打包2.1后端多环境配置2.2项目打包 3.文件上传4.后端镜像制作4.1dockerf…...

c语言的思维导图

之前已经全部学完c语言了,所以为了更好的复习回顾,我做了一份c语言超详细的思维导图,帮助实现一张图就可以复习,避免盲目, 由于平台不支持直接发上图,有想要的小伙伴,可以私信找我要原件...

Android 拍照(有无存储权限两种方案,兼容Q及以上版本)

在某些行业,APP可能被禁止使用存储权限,或公司在写SDK功能,不方便获取权限 所以需要有 无存储权限拍照方案。这里两种方案都列出里。 对于写入权限,在高版本中,已经废弃, 不可用文件写入读取权限&#xf…...

MongoDB在自动化设备上的应用示例

发现MongoDB特别适合自动化检测数据的存储。。。 例如一个晶圆检测项目&#xff0c;定义其数据结构如下 #pragma once #include <vector> #include <QString> #include <QRectF> #include <string> #include <memory>class tpoWafer; class tp…...

draggable插件——实现元素的拖动排序——拖动和不可拖动的两种情况处理

最近在写后台管理系统的时候&#xff0c;遇到一个需求&#xff0c;就是关于拖动排序的功能。 我之前是写过一个关于拖动表格的功能&#xff0c;此功能可以实现表格中的每一行数据上下拖动实现排序的效果。 vue——实现表格的拖拽排序功能——技能提升 但是目前我这边的需求是…...

Redux的使用

到如今redux的已经不是react程序中必须的一部分内容了&#xff0c; 我们应该在本地需要大量更新全局变量时才使用它! redux vs reducer reducer的工作机制&#xff1a; 手动构造action对象传入dispatch函数中 dispatch函数将 action传入reducer当中 reducer结合当前state与a…...

【JAVA】Java高级:多数据源管理与Sharding:数据分片(Sharding)技术的实现与实践

大规模分布式系统&#xff0c;数据存储和管理变得越来越复杂。随着用户数量和数据量的急剧增加&#xff0c;单一数据库往往难以承载如此庞大的负载。这时&#xff0c;数据分片&#xff08;Sharding&#xff09;技术应运而生。数据分片是一种将数据水平切分到多个数据库实例的技…...

ASP.NET Core 9.0 静态资产传递优化 (MapStaticAssets )

一、结论 &#x1f4a2;先看结论吧&#xff0c; MapStaticAssets 在大多数情况下可以替换 UseStaticFiles&#xff0c;它已针对为应用在生成和发布时了解的资产提供服务进行了优化。 如果应用服务来自其他位置&#xff08;如磁盘或嵌入资源&#xff09;的资产&#xff0c;则应…...

LeetCode刷题day18——贪心

LeetCode刷题day18——贪心 135. 分发糖果分析&#xff1a; 406. 根据身高重建队列分析&#xff1a;for (auto& p : people) 昨天写了一道&#xff0c;今天写了一道&#xff0c;都有思路&#xff0c;却不能全整对。昨天和小伙伴聊天&#xff0c;说是因为最近作业多&#xf…...

MATLAB Simulink® - 智能分拣系统

系列文章目录 前言 本示例展示了如何在虚幻引擎 环境中对四种不同形状的标准 PVC 管件实施半结构化智能分拣。本示例使用 Universal Robots UR5e cobot 执行垃圾箱拣选任务&#xff0c;从而成功检测并分类物体。cobot 的末端执行器是一个吸力抓手&#xff0c;它使 cobot 能够拾…...

linuxCNC(五)HAL驱动的指令介绍

HAL驱动的构成 指令举例详解 从终端进入到HAL命令行&#xff0c;执行halrun&#xff0c;即可进入halcmd命令行 # halrun指令描述oadrt加载comoonent&#xff0c;loadrt threads name1 period1创建新线程loadusr halmeter加载万用表UI界面loadusr halscope加载示波器UI界面sho…...

STM32 进阶 定时器3 通用定时器 案例2:测量PWM的频率/周期

需求分析 上一个案例我们输出了PWM波&#xff0c;这个案例我们使用输入捕获功能&#xff0c;来测试PWM波的频率/周期。 把测到的结果通过串口发送到电脑&#xff0c;检查测试的结果。 如何测量 1、输入捕获功能主要是&#xff1a;测量输入通道的上升沿和下降沿 2、让第一个…...

第一节、电路连接【51单片机-TB6600驱动器-步进电机教程】

摘要&#xff1a;本节介绍如何搭建一个51单片机TB6600驱动器步进电机控制电路&#xff0c;所用材料均为常见的模块&#xff0c;简单高效的方式搭建起硬件环境 一、硬件清单 ①51单片机最小控制系统 ②USB转TTL模块 ③开关电源 ④TB6600步进电机驱动器 ⑤二相四线步进电机 ⑥电…...

【通俗理解】Koopman算符与非线性动力系统分析

【通俗理解】Koopman算符与非线性动力系统分析 关键词&#xff1a; #Koopman算符 Koopman Operator #非线性动力系统 Nonlinear Dynamical System #无穷维线性算子 Infinite-Dimensional Linear Operator #演化分析 Evolution Analysis #Bernard Koopman Bernard Koopman 第…...

mybatis plus打印sql日志

1、官方文档 使用配置 | MyBatis-Plus 2、日志实现 MyBatis-Plus 提供了多种日志实现&#xff08;log-impl&#xff09;&#xff0c;用于记录 SQL 语句和相关操作&#xff0c;帮助开发者进行调试和监控数据库操作。以下是一些可用的日志实现及其说明&#xff1a; StdOutImpl…...

ObjectMapper

ObjectMapper 是 Jackson 库中非常重要的一个类&#xff0c;它是 JSON 和 Java 对象之间进行序列化与反序列化的核心工具。ObjectMapper 的底层实现是基于 Jackson 的数据绑定模型&#xff0c;它将 Java 对象与 JSON 数据转换为互通格式。 1. ObjectMapper 的设计与核心功能 O…...

新增白名单赋予应用安装权限

目录 相关问题 具体实现 相关问题 安装app到/data/分区时&#xff0c;如何在安装阶段就赋予权限&#xff0c;无需请求权限 具体实现 frameworks/base/core/res/res/values/config.xml <!-- For whitelis apk --><string-array translatable"false" nam…...

传奇996_51——脱下装备,附加属性设为0

奶奶的lua怎么都修改不了&#xff0c;可以调用txt的 ; LINKPICKUPITEM ; ChangeitemaddvaLue -1 5 0 ; GETITEMADDVALUE 3 5 M10 ; SENDUPGRADEITEM ; SENDMSG 9 你的衣服附加了<$STR(M10)>点防御属性. 或者lua callscriptex(actor,“LINKPICKUPITEM”) callscriptex(…...

轻量级监控系统Monikhao:自托管部署与核心架构解析

1. 项目概述&#xff1a;一个轻量级、可自托管的监控解决方案最近在折腾个人服务器和家庭网络监控时&#xff0c;发现了一个挺有意思的项目&#xff1a;khaodius/monikhao。乍一看这个名字&#xff0c;可能会觉得有点陌生&#xff0c;但如果你对自建监控系统有需求&#xff0c;…...

湿版摄影×AI生成革命:为什么93%的MJ用户调不出真实碘化银斑痕?——资深暗房师+AI训练师双视角深度拆解

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;湿版摄影AI生成革命&#xff1a;为什么93%的MJ用户调不出真实碘化银斑痕&#xff1f;——资深暗房师AI训练师双视角深度拆解 湿版火棉胶摄影术诞生于1851年&#xff0c;其不可复制的物理噪点——由碘化…...

Claw框架数据库迁移工具claw-migrate:原理、实践与团队协作指南

1. 项目概述&#xff1a;一个专为Claw设计的迁移工具最近在折腾一个叫Claw的开源项目&#xff0c;它本身是一个轻量级的Web框架&#xff0c;用起来挺顺手。但项目迭代过程中&#xff0c;难免会遇到数据库结构变更、数据迁移这类“脏活累活”。手动写SQL脚本&#xff1f;太原始&…...

Akebi-GC游戏辅助工具:免费开源的游戏体验增强终极指南

Akebi-GC游戏辅助工具&#xff1a;免费开源的游戏体验增强终极指南 【免费下载链接】Akebi-GC (Fork) The great software for some game that exploiting anime girls (and boys). 项目地址: https://gitcode.com/gh_mirrors/ak/Akebi-GC Akebi-GC是一款开源免费的游戏…...

揭秘开源驾驶辅助系统openpilot:如何用代码重新定义汽车智能化体验

揭秘开源驾驶辅助系统openpilot&#xff1a;如何用代码重新定义汽车智能化体验 【免费下载链接】openpilot openpilot is an operating system for robotics. Currently, it upgrades the driver assistance system on 300 supported cars. 项目地址: https://gitcode.com/Gi…...

汽车电子实战指南:从零到一,用CANdb++ Editor构建你的首个DBC文件

1. 认识DBC文件&#xff1a;汽车电子的"通讯词典" 第一次接触DBC文件时&#xff0c;我把它想象成汽车电子系统的"通讯词典"。就像不同国家的人需要字典来理解彼此的语言&#xff0c;汽车里的各个ECU&#xff08;电子控制单元&#xff09;也需要DBC文件来解…...

3个核心优势:Open-Meteo如何用开源技术重构天气API的经济学模型

3个核心优势&#xff1a;Open-Meteo如何用开源技术重构天气API的经济学模型 【免费下载链接】open-meteo Free Weather Forecast API for non-commercial use 项目地址: https://gitcode.com/GitHub_Trending/op/open-meteo 在传统天气数据服务领域&#xff0c;开发者往…...

如何高效下载30+文档平台资源:kill-doc文档下载工具完整指南

如何高效下载30文档平台资源&#xff1a;kill-doc文档下载工具完整指南 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档&#xff0c;但是相关网站浏览体验不好各种广告&#xff0c;各种登录验证&#xff0c;需要很多步骤才能下载文档&#xff0c;该脚本就是…...

2026年实战指南:Jrebel本地与远程热加载的配置、排错与进阶场景

1. 热加载技术的前世今生 第一次接触热加载是在2016年&#xff0c;当时还在用Eclipse开发Spring项目。每次改完代码都要经历漫长的重启等待&#xff0c;直到同事推荐了JRebel这个神器。十年过去&#xff0c;热加载已经成为现代Java开发的标配&#xff0c;特别是在2026年的今天&…...

Zotero Duplicates Merger终极教程:3步自动化清理文献重复项

Zotero Duplicates Merger终极教程&#xff1a;3步自动化清理文献重复项 【免费下载链接】ZoteroDuplicatesMerger A zotero plugin to automatically merge duplicate items 项目地址: https://gitcode.com/gh_mirrors/zo/ZoteroDuplicatesMerger 还在为Zotero文献库中…...