CVPR2021 Swin Transformer: Hierarchical Vision Transformer using Shifted Windows

动机

1、一个跨计算机视觉和自然语言处理的统一体系结构将有利于两个领域的研究,因为它将促进虚拟信号和文本信号的联合建模,并且两个领域的建模知识可以更深入地共享。

计算机视觉中的建模一直由卷积神经网络(CNNs)主导。自然语言处理(NLP)中的网络体系结构的发展走了一条不同的道路,今天流行的体系结构是Transformer。在这篇论文中,试图扩展Transformer的适用性,使其能够像NLP和CNN在视觉中的应用一样,成为计算机视觉的通用骨干网络。

2、从语言到视觉转换的挑战来自于这两个领域之间的差异,例如视觉实体的尺度变化很大,图像中的像素比文本中的词分辨率高。

方法

CVPR2021 Swin Transformer: Hierarchical Vision Transformer using Shifted Windows_第1张图片
为了克服这些问题,提出了一种通用的Transformer骨干,称为Swin Transformer,它构造层次化的特征映射,并且具有与图像大小成线性关系的计算复杂度。如图1(a)所示,Swin Transformer从小尺寸的图片块(用灰色勾勒)开始,逐渐合并更深的Transformer层中的相邻图片块,从而构建了一个层次化的表征。有了这些层次特征映射,SwinTransformer模型可以方便地利用先进的技术做密集预测,如特征金字塔网络(FPN)或U-Net。线性计算复杂度是通过在分割图像(红色轮廓)的非重叠窗口内局部计算自注意力来实现的。每个窗口中的图片块数量是固定的,因此复杂度与图像大小成线性关系。这些优点使Swin Transformer适合作为各种视觉任务的通用主干,而以前基于Transformer的架构产生单一分辨率的特征图并具有二次复杂度。

Swin Transformer的一个关键设计因素是其在连续的自关注力层之间的窗口分区移位。移位的窗口桥接了前一层的窗口,在它们之间提供了显著增强建模能力的关联。这种策略也有效地解决了现实中的延迟问题:窗口中的所有query图片块共享相同的key集,这就方便了硬件中的内存分配。相反,早期的基于滑动窗口的自注意力方法由于针对不同query像素的不同key集,在一般硬件上受到了低延迟的影响。

Swin Transformer体系结构。首先通过一个图片块分割模块将输入的RGB图像分割成不重叠的图片块,比如ViT。每个图片块都被视为一个“token”,其特征被设置为原始像素RGB值的串联。在实现过程中,使用一个大小为4×4的图片块,因此每个图片块的特征维度为4×4×3=48。在该原始值特征上应用线性嵌入层将其投影到任意维度(表示为C)。在这些图片块token上应用了几个采用已经修改过的自注意力计算的Transformer块(Swin Transformer块)。Transformer块保持token的数量(H/4×W/4),并且与线性嵌入一起被称为“Stage 1”。为了生成分层表示,随着网络的深入,通过图片块合并层来减少token的数量。第一个图片块合并层将各组2×2的相邻图片块的特征做concatenation,并在做concatenation后的4C维特征上应用一个线性层。这将token的数量减少了4倍(分辨率的2次下采样),并且输出维度设置为2C。然后采用Swin Transformer块进行特征变换,并将其保留在H/8×W/8。图片块合并和特征转换的第一个块被表示为“Stage 2”。这个过程重复两次,作为“Stage 3”和“Stage 4”,其中输出分辨率分别为H/16×W/16和H/32×W/32。与经典的卷积网络(例如VGG和ResNet)具有相同的特征映射分辨率,这些阶段共同产生分层表征。

实验

除了基本模型Swin-B,其模型大小和计算复杂度与ViT-B/DeiT-B相似。还引入了Swin-T,Swin-S和Swin-L,它们分别是模型大小和计算复杂度的大约0.25,0.5和2的版本。注意,Swin-T和Swin-S的复杂度分别与ResNet-50(DeiT-S)和ResNet-101相似。窗口大小默认设置为M=7。对于所有实验,每个头的query尺寸为d=32,每个MLP的扩展层为a=4。这些模型变体的超参数有:

• SWIN-T:C=96,层数={2,2,6,2}

• SWIN-S:C=96,层数={2,2,18,2}

• SWIN-B:C=128,层数={2,2,18,2}

• SWIN-L:C=192,层数={2,2,18,2}

其中C为“Stage 1”中的隐藏层的通道数。

实验结果表明,所提出的移位窗口方法比滑动窗口方法具有更低的延迟,但在建模能力上是相似的。所提出的SwinTransformer在图像分类、目标检测和语义分割等识别任务中均取得了较好的性能。在这三个任务上,它以相似的潜力表现出显著优于ViT/DeiT和ResNe(X)t模型的性能。在ImageNet-1K图像分类上,达到了86.4%的top-1正确率。在COCO test-dev集上,它取得的58.7的框AP和51.1的掩码AP大大超过之前以+2.7的框AP和+2.6的掩码AP的SOTA结果。在ADE20K语义分割上,它在val集上获得了53.5的mIoU,比以前的最先进水平(SETR)提高了+3.2的mIoU。

结论
  1. Swin Transformer远远超过了现有技术,证明了基于Transformer的模型作为视觉骨干的潜力。
  2. Swin Transformer可以与多种视觉任务兼容,包括图像分类和密集的预测任务。

你可能感兴趣的:(CVPR,2021)