论文解读:SwinTransformer-减少Q、K、V的运算规模

概述以及要解决的问题

什么是Bankbone:不论什么模型,用这个backbone提特征,效果大概率非常好

论文解读:SwinTransformer-减少Q、K、V的运算规模_第1张图片

直接套用在各种下游任务中

要解决的问题:

论文解读:SwinTransformer-减少Q、K、V的运算规模_第2张图片

一个block要完成的任务

整体网络架构

论文解读:SwinTransformer-减少Q、K、V的运算规模_第3张图片

H*W*3卷积->还是H*w*3->对应H*w的特征图的,取4*4的小正方型resize为一维向量(长度为16),总16个(H/4)*(H/4)

之后考虑上channel=3,故一维向量长度应为16*3=48,故此时有的特征为(H/4)*(H/4)*48

下面为swin transformer blocks

论文解读:SwinTransformer-减少Q、K、V的运算规模_第4张图片

获取各窗口输入特征

Patch Embedding

论文解读:SwinTransformer-减少Q、K、V的运算规模_第5张图片

卷积输出的特征图的channel设置了96(自己小模型训练,也可以设置低一些)

window_partition

论文解读:SwinTransformer-减少Q、K、V的运算规模_第6张图片

基于窗口的注意力机制解读

W-MSA(Window Multi-head Self Attention)

论文解读:SwinTransformer-减少Q、K、V的运算规模_第7张图片

窗口偏移操作的实现、细节及其计算量的概述

window_reverse

论文解读:SwinTransformer-减少Q、K、V的运算规模_第8张图片

下面猫中的偏移:

将c图黄色的部分往上3格,往左3格;而之前红色、蓝色以及灰色的小方块都放在整个图中的右下角,如d图中所示

SW-MSA(Shifted Window)

论文解读:SwinTransformer-减少Q、K、V的运算规模_第9张图片

论文解读:SwinTransformer-减少Q、K、V的运算规模_第10张图片

论文解读:SwinTransformer-减少Q、K、V的运算规模_第11张图片

论文解读:SwinTransformer-减少Q、K、V的运算规模_第12张图片

Tips:值得注意的地方

参考文章:Swin Transformer: Hierarchical Vision Transformer using Shifted Windows - 知乎

论文解读:SwinTransformer-减少Q、K、V的运算规模_第13张图片

值得注意的是,虽然只是得到蓝色窗口内的patch之间的联系,但别忘了,蓝色窗口左边四个patch(位于第一行左边的窗口)在上一个block中已经获得与红色窗口内其它patch之间的联系,于是红色窗口内其它patch与蓝色窗口右边四个patch(位于第一行右边的窗口)之间也可以获得联系(好比知道A和B的关联方式,B和C的关联方式,那就可以知道A和C的关联方式)。进一步,蓝色窗口右边四个patch与绿色窗口内其他patch已有联系,那么蓝色窗口左边四个patch和绿色窗口其他的patch也可以获得联系。再进一步,可以获得红色窗口内的patch与绿色窗口内的patch之间的联系。实际上当然了,这肯定没有计算完整窗口直接获得各个patch间的联系的方式好,不过移动窗口的方式至少能让模型感知到不同窗口间patch的联系(这种联系得通过传递来感知,没有全局计算好)。

整体网络结构整合

位移中的细节

论文解读:SwinTransformer-减少Q、K、V的运算规模_第14张图片

SW-MSA做完偏移之后,继续做W-MSA(多了一个mask机制)

论文解读:SwinTransformer-减少Q、K、V的运算规模_第15张图片

下采样操作实现方法

论文解读:SwinTransformer-减少Q、K、V的运算规模_第16张图片

论文解读:SwinTransformer-减少Q、K、V的运算规模_第17张图片

论文解读:SwinTransformer-减少Q、K、V的运算规模_第18张图片

分层计算方法

论文解读:SwinTransformer-减少Q、K、V的运算规模_第19张图片

参考文章

Swin Transformer.pdf

论文解读:SwinTransformer-减少Q、K、V的运算规模_第20张图片

Swin Transformer: Hierarchical Vision Transformer using Shifted Windows

你可能感兴趣的:(人工智能,transformer,深度学习)