点击下方卡片,关注“CVer”公众号
AI/CV重磅干货,第一时间送达
转载自:AIWalker
![ee5397dfe9fa55b37676c11bffaa9524.png](https://i-blog.csdnimg.cn/blog_migrate/a26264b327e7f724861f29ea81bcc1ff.png)
An Improved One millisecond Mobile Backbone
论文:https://arxiv.org/abs/2206.04040
一句话总结
MobileOne(≈MobileNetV1+RepVGG+训练Trick)是由Apple公司提出的一种基于iPhone12优化的超轻量型架构,在ImageNet数据集上以<1ms的速度取得了75.9%的Top1精度。
![666c6239f7fb757f11eb0ff73d0551f6.png](https://i-blog.csdnimg.cn/blog_migrate/2791e22131190312388ea6afb5939a71.png)
出发点
高效率网络具有更强的实用价值,但学术界的研究往往聚焦于FLOPs或者参数量的降低,而这两者与推理效率之间并不存在严格的一致性。比如,FLOPs并未考虑访存消耗与计算并行度,像无参操作(如跳过连接导致的Add、Concat等)会带来显著的访存消耗,导致更长推理耗时。
![3fafdb49dbfc0e552e182c09a015dee9.png](https://i-blog.csdnimg.cn/blog_migrate/2ec738237c5dea6a4a32d09fbdd50cc8.png)
为更好的分析高效率网络的瓶颈所在,作者以iPhone12平台为基准,从不同维度进行了"瓶颈"分析,见上图。从中可以看到:
具有高参数量的模型也可以拥有低延迟,比如ShuffleNetV2;
具有高FLOPs的模型也可以拥有低延迟,比如MobileNetV1和ShuffleNetV2;
![a2b3c7e19a67b78937025c827e34d87c.png](https://i-blog.csdnimg.cn/blog_migrate/1021287d1f84a64f0f64fa0ef88f88fd.png)
上表从SRCC角度进行了分析,可以看到:
在移动端,延迟与FLOPs和参数量的相关性较弱;
在PC-CPU端,该相关性进一步弱化。
具体方案
基于上述洞察,作者从先两个主要效率"瓶颈"维度上进行了对比,然后对性能"瓶颈"进行了分析并提出相应方案。
![706f387b91148fc78f37bbaeb1cf6eef.png](https://i-blog.csdnimg.cn/blog_migrate/31ca64497461994a5bbd0c27dabf9f38.png)
Activation Functions:上表对比了不同激活函数对于延迟的影响,可以看到:尽管具有相同的架构,但不同激活函数导致的延迟差异极大。本文默认选择ReLU激活函数。
![3bcf1f21543e8470e25cf1f0c3e197eb.png](https://i-blog.csdnimg.cn/blog_migrate/9bdfae101e6cea1c3f80aecea8baa999.png)
Architectural Block:上表对影响延迟的两个主要因素(访存消耗与计算并行度)进行了分析,见上表,可以看到:当采用单分支结构时,模型具有更快的速度。此外,为改善效率,作者在大模型配置方面有限的实用了SE模块。
![0b50aff2d9ba3297ce652486a2528bd2.png](https://i-blog.csdnimg.cn/blog_migrate/8e7b3b51254746c43584c167a8939c1f.png)
基于上述分析,MobileOne的核心模块基于MobileNetV1而设计,同时吸收了重参数思想,得到上图所示的结构。注:这里的重参数机制还存在一个超参k用于控制重参数分支的数量(实验表明:对于小模型来说,该变种收益更大)。
![24eeced525149d3484908821b88e2e2c.png](https://i-blog.csdnimg.cn/blog_migrate/e38dbfa0d3d07e39fe02c72c3b5fedba.png)
在Model Scaling方面类似MobileNetV2,上表给出了MobileOne不同配置的参数信息。
![ab161762bac3e9a49475cdb7c4d8fb1d.png](https://i-blog.csdnimg.cn/blog_migrate/a6105f2c68e9ec54f80de84ccec5f047.png)
在训练优化方面,小模型需要更少的正则,因此作者提出了Annealing的正则调整机制(可带来0.5%指标提升);此外,作者还引入渐进式学习机制(可带来0.4%指标提升);最后,作者还采用EMA机制,最终MobileOne-S2模型达到了77.4%的指标。
实验结果
![e741e74c91c9532d7f37cfa6cc7f27c2.png](https://i-blog.csdnimg.cn/blog_migrate/78f57b01a8f919848cfbc39754a8be5b.png)
上表给出了ImageNet数据集上不同轻量型方案的性能与效率对比,可以看到:
哪怕最轻量的Transformer也需要至少4ms,而MobileOne-S4仅需1.86ms即可达到79.4%的精度;
相比EfficientNet-B0,MobileOne-S3不仅具有指标高1%,同时具有更快的推理速度;
相比其他方案,在PC-CPU端,MobileOne仍具有非常明显的优势。
![b9f8a9b1b60593ff05ff07ccf4c98807.png](https://i-blog.csdnimg.cn/blog_migrate/30f4220a1df834997292454a133aee95.png)
上表为MS-COCO检测、VOC分割以及ADE20K分割任务上的性能对比,很明显:
在MC-COCO任务上,MobileOne-S4比MNASNet指标高27.8%,比MobileViT高6.1%;
在VOC分割任务上,所提方案比MobileViT高1.3%,比MobileNetV2高5.8%;
在ADE20K任务上,所提最佳方案比MobileNetV2高12%,而MobileOne-S1仍比MobileNetV2高2.9%。
![e081c187059e6d6b91602e3a09881275.png](https://i-blog.csdnimg.cn/blog_migrate/f90e8604c4ed2cd40ca416b886627e64.png)
在文章最后,作者俏皮的提了一句:"Although, our models are state-of-the art within the regime of efficient architectures, the accuracy lags large models ConvNeXt and Swin Transformer"。笔者想说的是:看上图。
上面论文下载
后台回复:MobileOne,即可下载上面的论文
目标检测和Transformer交流群成立
扫描下方二维码,或者添加微信:CVer6666,即可添加CVer小助手微信,便可申请加入CVer-目标检测或者Transformer 微信交流群。另外其他垂直方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer等。
一定要备注:研究方向+地点+学校/公司+昵称(如目标检测或者Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群
▲扫码或加微信: CVer6666,进交流群
CVer学术交流群(知识星球)来了!想要了解最新最快最好的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料,欢迎扫描下方二维码,加入CVer学术交流群,已汇集数千人!
▲扫码进群
▲点击上方卡片,关注CVer公众号
整理不易,请点赞和在看