作者丨李欣@知乎(已授权)
来源丨https://zhuanlan.zhihu.com/p/478325208
极市平台编辑
论文链接:https://arxiv.org/abs/2112.11010
代码链接:https: //git.io/MPViT
Introduction
在这项工作中,作者与现有不同Transformer探索多尺度的视角path embedding与multi-path结构,提出了。
通过使用 overlapping convolutional,MPViT同时嵌入相同大小的patch特征。然后,不同尺度的特征。Token独立输入多条路径,聚合生成的特征,从而在同一特征水平上实现精细粗糙的特征表示。
介绍了一个特征聚合步骤该过程将卷积局部特征和Transformer连接整体特征,利用卷积的局部连通性Transformer全局上下文。
.
密集的计算机视觉任务,如目标检测和分割,需要有效的多尺度特征来检测或分类不同的物体或区域。Vision Transformer(ViT)单尺度构建了一个简单的多阶段结构(即精细到粗糙)patch多尺度表示。然而ViT变体注重降低自注的二次复杂性,少注重构建有效的多尺度表示。
CoaT用一个co-scale机制,同时表示精细粗糙的特点,允许并行跨层注意,从而提高检测性能。co-scale该机制需要大量的计算和内存费用,因为它为基本模型增加了额外的跨层关注(例如,CoaT-Lite)。因此,对于ViT系统结构的多尺度特征表明仍有改进的空间。
CrossViT使用不同的patch单层结构中的大小和双路径,如ViT和XCiT。然而,CrossViT分支之间的相互作用仅通过[CLS]token发生,而MPViT允许所有不同规模的patch相互作用。此外,与CrossViT(仅限分类)不同的是,MPViT探索更大的路径维度(例如,超过两个维度),并采用多阶段结构进行密集预测。
Method
输入图像大小为:H×W×三、两层卷积:两个3×3卷积,通道分别为C2/2,C2,stride2.生成特征的大小为H/4×W/4×C2,其中C2为stage 2的通道大小。
说明:每个卷积后Batch Normalization 和一个Hardswish激活函数。
In LeViT , a convolutional stem block shows better low-level representation (i.e., without losing salient information) than non-overlapping patch embedding.
从stage 2到stage 5.作者在每个阶段提出的建议(MS-PatchEmbed)和(MP-Transformer)块进行堆叠
:stage 的输入,通过一个k×k的2D卷积,s为stride,p为 padding。输出的token map 高度和宽度如下:
通过改变stride和padding来调整token序列长度。也就是说,可以输出不同patch大小相同(即分辨率)的特征。因此,作者并行形成了几个不同卷积核大小的卷积patch embedding层。例如,如图1所示,可以生成不同大小的相同序列长度vision token,patch大小分别为3×3,5×5,7×7。
由于具有相同通道和滤波器大小的连续卷积操作扩大了接受域,并且需要更少的参数,在实践中选择了连续的3×3卷积层。为了减少参数量,在实践中选择了两个连续的3×3卷积层代替5×5卷积。对于triple-path使用三个连续的3个结构×三卷积,通道大小为C',padding为1,步幅为s,在降低空间分辨率时,s为2,否则为1。因此,给定conv-stem的输出,通过MS-PatchEmbed可以得到同样大小的的特征。
注:为减少模型参数和计算费用,使用3×3深度可分离卷积,包括3×3深度卷积和1×1点卷积。
每个卷积后都是Batch Normalization 和一个Hardswish激活函数。
然后,不同大小的token embedding features 分别输入到transformer encoder中。
Multi-path Transformer
Transformer中的self-attention可以捕捉长期依赖关系(即全局上下文),但很可能会忽略每一个patch结构信息与局部关系。cnn平移不变性中的局部连通性可用于使用CNN对视觉对象进行分类时,对纹理的依赖性更强,而不是形状。
因此,MPViT互补CNN与Transformer结合起来。
表示局部特征,采用了一个 depthwise residual bottleneck block,包括1×1卷积、3×3深度卷积和1×1卷积与残差连接。
采用多路径结构减轻计算负担CoaT有效因素分解自注:
将局部特征征和整体特征:
其中:j表示路径,为transformer encoder的输出,.
保持可比参数和FLOPs,增加路径的数量需要减少通道C或层数L(即,transformer encoder的数量)。作者通过减少C而不是减少CL,从单路径(即CoaT-Lite baseline)扩展到triple-path。在消融研究中,验证了降低C比降低L获得更好的性能(见表5)。由于stage作者在stage2中将triple-path模型的路径数设置为2。从stage三开始,三路径模型有三条路径。
虽然作者也发现了 triple-path和双路径在ImageNet在分类中产生相似的精度,但 triple-path模型在密集预测任务中表现出更好的性能。因此,基于 triple-path结构的MPViT模型。MPViT详见表1。
Experiments
对MPViT-XS通过研究提出的多路径结构,对图像进行分类和使用Mask R-CNN检测的有效性。
.
.
公众号后台回复“数据集”获取60+深度学习数据集下载~本文仅做学术分享,如有侵权,请联系删文。
后台回复:
后台回复:
后台回复:
1.面向自动驾驶领域的多传感器数据融合技术
2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进4.国内首个面向工业级实战的点云处理课程5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)
9.从零搭建一套结构光3D重建系统[理论+源码+实践]
10.单目深度估计方法:算法梳理与代码实现
11.自动驾驶中的深度学习模型部署实战
12.相机模型与标定(单目+双目+鱼眼)
13.重磅!四旋翼飞行器:算法与实战
14.ROS2从入门到精通:理论与实战
扫码添加小助手微信,可
一定要备注:
▲长按加微信群或投稿
▲长按关注公众号
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、答疑解惑、助你高效解决问题