论文解析[11] CAT: Cross Attention in Vision Transformer
![论文解析[11] CAT: Cross Attention in Vision Transformer](http://pic.ttrar.cn/nice/%e8%ae%ba%e6%96%87%e8%a7%a3%e6%9e%90%5b11%5dCAT.jpg)
发表时间:2021
论文地址:https://arxiv.org/abs/2106.05786v1
文章目录
- 摘要
- 3 方法
-
- 3.1 总体结构
- 3.1.1 Inner-Patch Self-Attention Block
- 3.1.2 Cross-Patch Self-Attention Block
- 3.1.3 Cross Attention based Transformer
- 结论
摘要
使用图像patch来替换transformer中的word token所需要的计算量是巨大的。
在本论文中,我们在Transformer中提出了一种新的注意机制,称为交叉注意力。在图像patch内部而不是整张图像中捕获局部信息,在单通道特征图中的图像patch之间捕获全局信息。
两个操作都比Transformer中的标准自注意力有更少的计算量。通过在patch内和patch间交替应用注意力,我们实现了交叉注意力以更低的计算代价保持性能,构建了一个称为交叉注意力Transformer(CAT)的分层网络。
3 方法
3.1 总体结构
![论文解析[11] CAT: Cross Attention in Vision Transformer](https://img-blog.csdnimg.cn/f5d4b9ef7bfe407caa08ed5ee4ea68aa.png)
如图2(a),首先在patch嵌入层将输入图像缩小到 H1=H/P,W1=W/PH_1=H/P,W_1=W/PH1=H/P,W1=W/P,并将通道数提升到 C1C_1C1。接下来是一些在不同尺度进行特征提取的CAT层。
经过上面的预处理,进入第一个stage。patch数量是 H1/N×W1/NH_1/N×W_1/NH1/N×W1/N,patch大小为 N×N×C1N×N×C_1N×N×C1。stage1输出的特征图作为 F1F_1F1。
此时进入第二个stage,patch投影层执行空间到更深的操作。在通过下一层的交叉注意力块之后,生成大小为 H1/2×W1/2×C2H_1/2×W_1/2×C_2H1/2×W1/2×C2 的 F2F_2F2。经过四个stage之后,可以得到四个不同尺度和维度的特征图。类似于基于卷积的网络,不同粒度的特征图可以用于其他的下游视觉任务。
![论文解析[11] CAT: Cross Attention in Vision Transformer](https://img-blog.csdnimg.cn/c4d7a581c6654b5fba74d1ef9cfdebe9.png)
3.1.1 Inner-Patch Self-Attention Block
普通多头注意力的复杂度:
![论文解析[11] CAT: Cross Attention in Vision Transformer](https://img-blog.csdnimg.cn/0046d06532984002ad859337d0872b42.png)
将CNN网络中的局部卷积方法引入Transformer,来对每个patch中的像素进行自注意力,叫作Inner-Patch Self-Attention(IPSA)。
IPSA的复杂度:
![论文解析[11] CAT: Cross Attention in Vision Transformer](https://img-blog.csdnimg.cn/3f55b9a0a5454f25aa75f937c19b59ab.png)
NNN 是IPSA中的patch大小
3.1.2 Cross-Patch Self-Attention Block
提出了Cross-Patch Self-Attention Block,分开每个通道特征图,把每个通道划分为 H/N×W/NH/N×W/NH/N×W/N 个patch,在整张特征图中使用自注意力来获取全局信息。
CPSA的复杂度:
![论文解析[11] CAT: Cross Attention in Vision Transformer](https://img-blog.csdnimg.cn/59ccd4b70844431ea3909f55697ef7ed.png)
3.1.3 Cross Attention based Transformer
Cross Attention block包括两个IPSA块和一个CPSA块。CAT层由一些CAB组成,网络的每个stage由一些不同数量的层和一个patch嵌入层组成,如图2(a)所示。
CAB的流程:
![论文解析[11] CAT: Cross Attention in Vision Transformer](https://img-blog.csdnimg.cn/5430cf7c7ac040dda1be2310141e623a.png)
结论
提出的Cross Attention更好的结合了CNN中局部特征和Transformer中全局信息的价值。它可以生成类似于CNN网络的不同尺度的特征,也可以适应不同的输入大小。CAT在一些数据集上取得了sota的表现。关键在于我们轮换使用特征图patch中的注意力和单通道特征图中的注意力来获取局部和全局信息。


