回复
经典图像模型解读之Swin-Transformer 原创
本文介绍经典模型之Swin Transformer。
Swin Transformer是一种经典的视觉Transformer架构,专为计算机视觉任务设计,通过层次化的特征表达和创新的移位窗口自注意力机制,有效地处理高分辨率图像,具有通用性和灵活性,适用于图像分类、目标检测和语义分割等多种视觉任务。
感兴趣的小伙伴可以看看论文:https://arxiv.org/abs/2103.14030
模型介绍
上图为Swin Transformer模型图。整个模型采取层次化的设计,一共包含4个Stage,每个stage都会缩小输入特征图的分辨率,像CNN一样逐层扩大感受野。
- Patch Embedding:Swin Transformer处理输入图像的初始步骤。假设输入图像的尺寸遵循ImageNet的标准,即H×W×C(其中H和W分别为图像的高度和宽度,C为通道数),在Swin Transformer的第一阶段,patch的大小被设定为p×p。经过Patch Embedding处理后,图像被划分成H/p×W/p个patch。
- Linear Embedding:是将输入向量的维度转换为一个预定义的值,这个值是Transformer模型能够处理的维度。在Swin Transformer的论文中,这个超参数被定义为c。因此,图像经过线性嵌入后,其尺寸变为H/p×W/p×c。在代码里也是用一次卷积(Conv2d)操作就完成了。
- Swin Transformer block:与VIT不同,这里的3000+token太长了,是目前来说Transformer不能接受的序列长度,所以 Swin Transformer引入了基于窗口的自注意力计算,每个窗口按照默认值M,最后只有M*M个patch,解决了计算复杂度的问题。
创新点
- Swin Transformer通过引入移动窗口(shifted window)机制来实现局部感知域,通过移动窗口的操作,相邻窗口之间能够进行交互,实现了跨窗口连接(cross-window connection),这使得模型在不同层级之间能够间接地实现全局建模的能力。这种局部与全局相结合的方法,使得Swin Transformer在保持计算效率的同时,也能够捕捉到图像中的全局信息。
- Swin Transformer巧妙地利用了一个掩码(mask)和移位操作来实现计算上的等价性。这种方法通过在不同的层次上应用移位窗口机制,使得模型能够在局部窗口内进行自注意力计算,同时保持与全局计算等价的效果。
文转载自公众号瓦力算法学研所,作者:喜欢瓦力的卷卷
原文链接:https://mp.weixin.qq.com/s/7L38yih14U7Mtp0skRWXUQ
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
赞
收藏
回复
相关推荐