12.1 Swin-Transformer网络结构详解


2021 best paper
不同任务排名
目标检测:coco数据集

比较难理解的在4、5部分
swin transformer vs VIT

1、swin transformer构建的feature map具有层次性,所以对目标检测、分割等任务更有优势
VIT直接下采样16倍,后面一直保持下采样倍率不变,无法像swin transformer一样构建具有层次性的特征层
2、swin transformer的feature map当中,用的是一个个窗口的形式将feature map分隔开,窗口之间没有重叠
vit当中是一个整体,没有进行分割
这一个个window就是待会讲的windows multi-head self-attention,引入这个结构就可以在每个window内部计算self-attention,window之间不进行信息传递
好处:大大降低运算量,尤其是在浅层网络(下采样倍率低),相对于在整个特征图上进行multi-head self-attention可以减少计算量
表格:对比
网络框架

patch partition是什么
linear embedding干什么
将48变成C
每个stage重复堆叠swin transformer block n次,n是偶数

patch merging如何操作

W-MSA模块

MSA vs W-MSA

两个公式怎么来的


SW-MSA

示例:黑色是特征图
窗口移动前

移动后



5和3本来是分开的两个区域,我们把他们强行划分在一个window里,对它们进行MSA是有问题的
如何单独计算5的MSA和3的MSA

和原来在整个窗口进行自注意计算量一样,只是多了一个mask操作
注意还原会原来位置
滑动窗口举例

相对位置偏移(通过表格展示其重要性)

什么是相对位置偏移?

如何将二元坐标转一元坐标,




为什么是(2M-1)*(2M-1)


