论文: MOBILEVIT: LIGHT-WEIGHT, GENERAL-PURPOSE, AND MOBILE-FRIENDLY VISION TRANSFORMER
Github:https://github.com/chinhsuanwu/mobilevit-pytorch
2021,苹果公司
文章图片
传统的视觉 transformers(ViTs),主要是在transformer中嵌入cnn,而本文基于在cnn中嵌入transformers,即在mobilenetv2中嵌入transformer,提出了轻量化的网络结构MOBILEVIT。最终在 ImageNet-1k 上达到78.4%的top-1准确性,比 MobileNetv3高出 3.2%,比 DeIT高出6.2%。在 MS-COCO检测任务上, MobileViT比MobileNetv3高出5.7%。
is it possible to combine the strengths of CNNs and ViTs to build a light-weight and low latency network for mobile vision tasks?传统的ViTs需要大量的训练数据,大量的数据增强(data augmentation)以及正则化(L2 regularization),在分割类型任务需要比较昂贵的解码模块。而本文提出的MobileViT只需要正常简单的数据增强即可,不需要 CutMix,MixUp,Mosaic,DeIT-style等数据增强方式。
MobileViT主要的设计思想包括
- 轻量化light-weight
- 通用general-purpose
- 低延迟low latency
文章图片
a表示传统的ViT设计结构,b表示本文提出的MobileViT,主要改进在于将MobileNetv2中的残差block替换为MobileViT block。
传统的cnn具有更好的局部特征能力,transformer具有更好的全局特征能力,将cnn和transformer进行结合,可以获得全局能力+局部能力,可以更好的解决transformer缺乏空域归纳偏置(spatial inductive bias)的问题。
文章图片
如图灰色表示每个像素,黑色表示每个patch。MobileViT block,可以实现通过红色像素加入到蓝色像素中,得到全局的特征,而每一个蓝色的像素已经基于cnn编码了其8邻域的像素。
文章图片
MobileViT包含3个基本模型,(S: small, XS: extra small, XXS: extraextra small)
MobileViT的优点包括
- 更好的表现,精度更高,速度慢于cnn,Better performance
- 更好的泛化能力, Generalization capability
- 训练更加鲁棒,Robust
文章图片
多尺度采样训练策略:
文章图片
这里采用pytorch的DistributedDataParallel进行多尺度训练的加速,不仅会有训练速度的提升,同时还会有0.5%精度的提升,同时促使网络学习更好的多尺度表达能力。
实验结果:
分类结果,
文章图片
检测结果,
文章图片
分割结果,
文章图片
和cnn推理速度对比,
文章图片
【深度学习|轻量化网络结构MobileViT】
推荐阅读
- CV|[Transformer]MobileViT(Light-weight, General-purpose, and Mobile-friendly Vision Transformer)
- transformer|MobileViT: Light-weight, General-purpose, and Mobile-friendly Vision Transformer论文翻译理解
- 网络|MobileViT 它来了!Apple 提出轻量、通用、适用于移动设备的Transformer!
- 吴恩达深度学习专项课程3学习笔记/week1/Setting up ML Application
- 人工智能|人工智能入门学习笔记(PyTorch)
- 统计学习方法|SVM支持向量机的python实现
- 机器学习|机器学习实战(第三章-决策树-ID3算法-所有代码与详细注解-python3.7)
- 斯坦福大学公开课机器学习( advice for applying machine learning | deciding what to try next(revisited)(针对高偏差高方差问)
- 斯坦福大学公开课机器学习(advice for applying machine learning | learning curves (改进学习算法:高偏差和高方差与学习曲线的关系))