CSWin Transformer网络模型

文章目录

  • 前言
  • 网络结构
    • 整体架构
    • CSW Self-Attention
    • LePE
    • 模型详细配置参数

前言

论文地址:https://arxiv.org/abs/2107.00652
论文代码:https://github.com/microsoft/CSWin-Transformer

文章作者认为Transformer中存在问题,就是全局自注意的计算代价高,而局部自注意影响每个token的交互。因此作者提出CSWin Transformer模型。

CSwin Transformer的创新点

  • Cross-Shaped Window self-attention机制,可以并行计算水平和竖直方向的self-attention`可以在更小的计算量条件下获得更好的效果。

  • Locally-enhanced Positional Encoding(LePE), 可以更好的处理局部位置信息,并且处理任意形状的输入。

网络结构

整体架构

CSWin Transformer网络模型_第1张图片

CSWin Transformer模型结构如上图所示,整个结构和Swin Transformer非常相似。

作者首先在token embedding的时候,采用了带重叠的卷积(卷积核大小为 7 ∗ 7 7 * 7 77,步长为4)来获得 H 4 \frac{H}{4} 4H* H 4 \frac{H}{4} 4H*C的patch token。为了体现层次,整个网络由四个阶段组成。在两个相邻的阶段之间使用了一个卷积层( 3 ∗ 3 3 * 3 33,步长为2),缩小图像尺寸增加通道数,以减少计算量并且扩大感受野。其中每个CSwin Transformer Block进行上图(右)所示。

CSW Self-Attention

CSW Self-Attention全称是Cross-Shaped Window Self-Attention。

由于原始全自注意机制的计算复杂度与特征图大小呈二次的关系。目前常用 halo 和 shifted window扩大感受野。但是为了扩大attention的区域,更加有效的获取全局自注意力。本文受到Sequential axial self-attention的启发提出了一个十字形状的attention。【Sequential axial self-attention是串行的,而本文使用的注意力机制是并行处理的】
CSWin Transformer网络模型_第2张图片
从上图中a图可以看出,原始图像为 H ∗ W ∗ C H*W*C HWC。如果我们想做行attention,那么将窗口设置为 s ∗ W s*W sW。列attention同理。其中 s s s的值是变化的(浅层宽度较小,深层宽度较大。解释:作者考虑到了计算量以及感受野设定的),接着我们将dim设置为2,一部分用于计算行attention,另一部分用于计算列attention,最后在concat起来,实现并行处理。于transformers在计算attention的时候是采用mutilhead的,为了保持计算量,本文对head一分为2,一部分用于行attention,一部分用于列attention。公式表示如下:
CSWin Transformer网络模型_第3张图片
CSWin Transformer网络模型_第4张图片
图像矩阵形式表示如下(借鉴:浅谈CSwin-Transformers)

  • 标准的self-attention
    CSWin Transformer网络模型_第5张图片

  • (行or列)self-attention
    CSWin Transformer网络模型_第6张图片

LePE

LePE的全称是Locally-Enhanced Positional Encoding.

CSWin Transformer网络模型_第7张图片
上图所示,APE和CPE是在送入Transformer模块之前引入的位置信息,RPE和LePE在每个Transformer模块中进行操作的。灵活度更高,效果更好。也就是作者在原文中提到 directly operates on the attention results instead of the attention calculation.(直接处理注意结果,而不是处理注意计算)
LePE的计算方法很直接,直接作用在value上与SoftMax值相加。

在这里插入图片描述
这样,LePE可以友好地应用于将任意输入分辨率作为输入的下游任务。

思考:可以将LePE看作是加了局部假设偏置的注意力,加完假设偏置的话可以一定程度上提升模型效果,因此体现了局部偏置对于CV任务的重要性。

模型详细配置参数

CSWin Transformer网络模型_第8张图片
原论文与Swin Transformer的配置类似,分为T(Tiny),S(Small),B(Base),L(Large)4种规格。

参考链接
浅谈CSwin-Transformers
重磅开源!87.5%准确率!十字形注意力的CSWin Transformer

你可能感兴趣的:(深度学习,#,网络模型,transformer,深度学习,人工智能)