ECCV 2022丨轻量级模型架ParC-Net 力压苹果MobileViT代码和论文下载

举报
风吹稻花香 发表于 2022/07/29 23:45:24 2022/07/29
【摘要】 测试代码: 224*224*3  1060显卡 gpu10 ms,cpu80ms。 gpu 比 mobileone 快1ms。 python eval_cls.py --common.config-file ./config/classification/edgeformer/edgeformer_s.yaml --...

测试代码:

224*224*3  1060显卡 gpu10 ms,cpu80ms。

gpu 比 mobileone 快1ms。

python eval_cls.py --common.config-file ./config/classification/edgeformer/edgeformer_s.yaml --model.classification.pretrained ./pretrained_models/classification/checkpoint_ema_avg.pt

论文地址:https://arxiv.org/abs/2203.03952

代码地址:https://github.com/hkzhang91/ParC-Net

计算机视觉研究院专栏

作者:Edison_G

继承ConvNet和Transformer优点的位置敏感的循环卷积。

01概述

最近,vision transformers开始显示出令人印象深刻的结果,显着优于基于大型卷积的模型。然而,在移动或资源受限设备的小型模型领域,ConvNet在性能和模型复杂度方面仍然具有自己的优势。研究者提出了ParC-Net,这是一种纯基于ConvNet的骨干模型,通过将vision transformers的优点融合到ConvNet 中,进一步增强了这些优势。

ConvNet与ViT模型图像分类实验结果对比

具体来说,研究者提出了位置感知循环卷积(ParC),这是一种轻量级的卷积运算,它拥有全局感受野,同时产生与局部卷积一样的位置敏感特征。将ParCs和squeeze-exictation ops结合起来形成一个类似于元模型的模型块,它还具有类似于transformers的注意力机制。上述块可以即插即用的方式使用,以替换ConvNets或transformers中的相关块。

实验结果表明,在常见的视觉任务和数据集中,所提出的ParC-Net比流行的轻量级ConvNets和基于vision transformers的模型具有更好的性能,同时具有更少的参数和更快的推理速度。对于ImageNet-1k上的分类,ParC-Net在大约500万个参数的情况下实现了78.6%的top-1准确率节省了11%的参数和13%的计算成本,但准确率提高了0.2%,推理速度提高了23%(基于ARM的Rockchip RK3288)与MobileViT相比,仅使用0.5倍的参数,但与DeIT相比获得了2.7%的准确度。在MS-COCO目标检测和PASCAL VOC分割任务上,ParC-Net也表现出更好的性能。

02

背景

然而,我们认为ViTs和ConvNets都是不可或缺的,原因如下:

1)从应用的角度来看,ViTs和ConvNets都有其优点和缺点。ViT模型通常具有更好的性能,但通常计算成本高且难以训练。与ViTs相比,ConvNets可能表现出较差的性能,但它们仍然具有一些独特的优势。例如,ConvNets具有更好的硬件支持并且易于训练。此外,正如[Jianyuan Guo, Kai Han, Han Wu, Chang Xu, Yehui Tang, Chunjing Xu, and Yunhe Wang. Cmt: Convolutional neural networks meet vision transformers.]和研究者的实验中总结的那样,ConvNets在移动或边缘设备的小型模型领域仍然占主导地位。

2)从信息处理的角度来看,ViTs和ConvNets都具有独特的特征。ViT擅长提取全局信息,并使用注意力机制从输入数据驱动的不同位置提取信息。ConvNets专注于对局部关系进行建模,并且通过归纳偏置具有很强的先验性。上述分析自然提出了一个问题:我们能否向ViT学习以改进用于移动或边缘计算应用的ConvNet?

ViT论文:https://arxiv.org/abs/2010.11929

ConvNeXt论文:https://arxiv.org/abs/2201.03545

03

新框架

研究者们取ViT的三个亮点,将纯卷积结构变强。研究者认为,ViT和ConvNet有三个主要区别:ViT更擅长提取全局特征,采用meta-former结构,而且信息集成由数据驱动。ParC的设计思路便是从这三点着手来优化ConvNet。

普通ConvNet和ViT之间的三个主要区别。a)ConvNet常用的Residual block;b)ViT中常用的Meta-Former 结构;c)研究者提出的ParC block。

具体而言,研究人员设计了一种位置信息敏感的循环卷积(Position aware circular convolution, ParC)。这是一种简单有效的轻量卷积运算算子,既拥有像ViT类结构的全局感受野,同时产生了像局部卷积那样的位置敏感特征,能克服依赖自注意力结构提取全局特征的问题。

Position aware circular convolution

水平方向的全局循环卷积

可以看到ParC-H沿着通过连接输入的开始和结束生成的圆执行卷积。因此,研究者将提出的卷积命名为循环卷积。提议的ParC引入了三个修改:

  • 结合circular padding和大感受野低秩分解卷积核提取全局特征;

  • 引入位置嵌入,保证输出特征对于空间位置信息的敏感性;

  • 动态插值实时生成尺寸适配的卷积核和位置编码,应对输入分辨率变化情况,这增强了对不同尺寸输入的适应能力。

研究者还将ParC和squeeze exictation结合起来,构建了一个纯卷积结构的meta former结构。该结构舍弃了自注意力硬件支持不友好的操作,但保留了传统Transformer块提取全局特征的特点。研究者还在channel mixer部分引入硬件支持较友好的通道注意力机制,使其纯卷积meta former结构也具备自注意力的特点。

基于ParC结构最终得到的ParC块,可作为一个即插即用的基础单元,替换现有ViT或ConvNet模型中的相关块,从而提升精度,并降低计算成本,有效克服硬件支持的问题。

三种主要的混合结构。(a) serial structure; (b) parallel structure; (c) bifurcate structure。

04

实验分析

在图像分类实验中,对于ImageNet-1k的分类,ParC-Net使用的参数规模最小(约500万个参数),却实现了最高准确率78.6%

MobileViT是Apple2022年在国际深度学习顶会ICLR22上提出的轻量级通用ViT模型。同样部署在基于Arm的瑞芯微RK3288芯片上,相较基线模型MobileViT,ParC-Net节省了11%的参数和13%的计算成本,同时准确率提高了0.2%,推理速度提高了23%

MS-COCO物体检测实验结果

PASCAL VOC分割任务实验结果

研究者将ParC-Net和基线模型MobileVit均部署到自研低功耗芯片DP上进行推理速度测试。从实验结果可以看到,ParC-Net的推理速度能够达到MobileViT速度的3~4倍。

© THE END 

转载请联系本公众号获得授权

文章来源: blog.csdn.net,作者:AI视觉网奇,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jacke121/article/details/126047306

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。