文章目录
- 摘要
- Abstract
- 文献阅读
- 题目
- 创新点
- CROSSFORMER架构
- 跨尺度嵌入层(CEL)
- CROSSFORMER BLOCK
- 长短距离注意(LSDA)
- 动态位置偏置(DPB)
- 实验
- 深度学习
- CrossFormer
- 背景
- 维度分段嵌入(DSW)
- 两阶段注意力层(TSA)
- 分层encoder-decoder
- 表现
- 超参数调整
- 总结
摘要
本周阅读了一篇以跨尺度注意力为基础的通用视觉Transformer器的文章,文中提出了跨尺度嵌入层(CEL)和长短距离注意(LSDA)。不仅减少了计算负担,而且在嵌入中同时保留了小尺度和大尺度特征。通过以上两种设计,实现了跨尺度注意。大量的实验表明,CrossFormer在图像分类、对象检测、实例分割和语义分割任务上优于其他视觉转换器。此外,对CrossFormer进行更近一步的学习。
Abstract
This week, an article about a universal visual Transformer based on cross-scale attention is readed, in which cross-scale embedding layer (CEL) and long-short distance attention (LSDA) are proposed. It not only reduces the computational burden, but also preserves both small-scale and large-scale features in embedding. Through the above two designs, cross-scale attention is realized. A large number of experiments show that CrossFormer is superior to other visual converters in image classification, object detection, instance segmentation and semantic segmentation. In addition, learn more about CrossFormer.
文献阅读
题目
CROSSFORMER: AVERSATILE VISION TRANSFORMER HINGING ON CROSS-SCALE ATTENTION
创新点
1) 提出了跨尺度嵌入层(CEL)和长短距离注意(LSDA),它们共同弥补了现有变压器无法建立跨尺度注意的缺陷。
2) 进一步提出了动态位置偏置模块(DPB),以使相对位置偏置更加灵活,即,适应可变的图像大小或组大小。
3) 构建了多个不同大小的CrossFormers,并通过四个代表性视觉任务的充分实验证实了它们的有效性。
CROSSFORMER架构
CrossFormer的整体架构如图所示:
左图(a):用于分类的CrossFormer的架构。输入大小为H0 ×W0,每个阶段的特征图大小显示在顶部。阶段i由CEL和ni CrossFormer块组成。CEL中的数字表示用于对补丁进行采样的内核大小。
右图(b):两个连续CrossFormer块的内部结构。SDA和LDA交替出现在不同的区块中。
CrossFormer采用了金字塔结构,将Transformer模型分为四个阶段。每个阶段由一个跨尺度嵌入层(CEL)和几个CrossFormer块组成。CEL接收最后一级的输出(或输入图像)作为输入,并生成跨尺度嵌入。在这个过程中,CEL(除了第1阶段)将嵌入的数量减少到四分之一,同时将金字塔结构的维度增加一倍。然后,在CEL之后,建立多个CrossFormer模块,每个模块都涉及长短距离注意(LSDA)和动态位置偏差(DPB)。
跨尺度嵌入层(CEL)
跨尺度嵌入层(CEL)被用来为每个阶段生成输入嵌入。图2以第一个CEL为例:
输入图像由四个不同的核采样(即,4 × 4,8 × 8,16 × 16,32 × 32),步幅相同4 × 4。每个嵌入都是通过投影和连接四个补丁来构建的。Dt表示嵌入的总维数。
CROSSFORMER BLOCK
每个CrossFormer模块由长短距离注意模块(即,LSDA,其涉及短距离注意(SDA)模块或长距离注意(LDA)模块)和多层感知器(MLP)。如图1b所示,SDA和LDA交替出现在不同的块中,动态位置偏置(DPB)模块在SDA和LDA中工作,以获得嵌入的位置表示。在先前的视觉变换器之后,在每个块中使用剩余连接。
长短距离注意(LSDA)
将自我注意模块分为两部分:短距离注意(SDA)和长距离注意(LDA)。对于SDA,每个G×G相邻嵌入被分组在一起。图3a给出了G = 3的示例。对于输入大小为S × S的LDA,嵌入以固定间隔I采样。例如,在图3b(I = 3)中,所有带有红色边框的嵌入都属于一个组,而那些带有黄色边框的嵌入则组成另一个组。LDA的组的高度或宽度被计算为G = S/I(即,在这个例子中G = 3)。在分组嵌入之后,SDA和LDA都在每个组内使用香草自我注意。因此,自注意模块的存储/计算成本从O(S4)降低到O(S2 G2),并且在大多数情况下G <S。
动态位置偏置(DPB)
相对位置偏差(RPB)通过在嵌入者的注意力上增加一个偏差来表示嵌入者的相对位置:
提出了一个基于MLP的模块DPB来动态生成相对位置偏差:
实验
实验进行了四个具有挑战性的任务:图像分类,对象检测,实例分割,语义分割。
图像分类:
结果示于表2中:
CrossFormer实现了与其他最先进的视觉Transformer结构相媲美的参数和FLOP的最高精度。具体而言,与强大的基线DeiT,PVT和Swin相比,我们的CrossFormer在小模型上的准确性至少绝对优于它们1.2%。此外,虽然RegionViT在小模型上达到了与我们相同的准确度(82.5%),但在大模型上绝对低于我们的0.7%(84.0% vs. 83.3%)。
目标检测和实例分割:
关于对象检测和实例分割的实验都是在COCO 2017数据集上完成的(Lin et al.,2014),其中包含118K训练和5K瓦尔图像。结果RetinaNet和Mask R-CNN的结果分别见表3和表4:
语义分割:
结果示于表5中。与对象检测类似,CrossFormer在扩大模型时表现出更大的性能增益:
深度学习
CrossFormer
背景
现有的Transformer类模型变体主要都是侧重于捕捉时间序列的跨时间依赖性,而忽略了变量之间的跨维度依赖性。Crossformer,这是一个基于Transformer的模型,考虑了跨维度依赖性。
主要设计了三大结构:
1)维度分段嵌入(DSW):负责保留时间和维度信息。每个维度的序列被分割成段,嵌入到特征向量中。
2)两阶段注意力(TSA):有效捕捉跨时间和跨维度依赖性。
3)分层encoder-decoder(HED):每一层对应一个尺度,encoder上层捕捉较粗尺度的依赖性,decoder生成不同尺度的预测并加总作为最终预测。
以往Transformer变体在做多变量时间序列预测的时候,位于同一个时间步不同维度的数据是直接嵌入到同一个向量中的,如此一来计算向量之间的注意力就只能捕捉到时间步上的区别(如图b)。图a所示的是在ETTh1数据集上训练的注意力图,可以看到注意力值有明显的分段,且相近的数据点的注意力权重相似。
故CrossFormer作者认为每个维度的序列在不同时间步上应该被分割成好几段来嵌入,而不是单个时间步表示所有维度的嵌入(如图c)。
维度分段嵌入(DSW)
两阶段注意力层(TSA)
对于获得的二维数组H,直接应用自注意力会产生二次方的复杂度,因此通过两阶段注意力层捕获二维数组跨时间和跨维度的依赖性。
1、 跨时间阶段:直接将多头自注意力应用于每个维度
2、 跨维度阶段:该阶段直接对每个维度间应用多头自注意力会导致O(D2)的复杂性,对每个时间步i设置固定数量的可学习向量作为路由器,让信息先与中间少量路由器聚合再进行信息传递,减少注意力计算的复杂度。
首先将路由器R作为多头自注意力的query、所有维度的向量Z作为key和value聚合来自所有维度的信息B;然后将维度向量Z作为query、聚合的信息B作为key和value进行聚合,作为路由器在维度之间分发收到的信息。
最终路由器机制将复杂度从O(D2L)降到O(DL)。
两阶段注意力层的最终输出为Y,总计算复杂度为O(DL2+DL)=O(DL2)
分层encoder-decoder
通过DSW嵌入、TSA层以上两个结构,作者加入序列段的合并来构建分层的encoder- decoder。
将Z与可学习的权重矩阵W相乘得到L层第i个分段的预测值,对所有层预测值相加得到最终预测。
表现
Crossformer在大多数数据集以及预测长度上都表现出较好的性能,在58个案例中有36个排名第一,51个排名第二。其次 FEDfrmer 和 MTGNN 的表现也优于许多baseline。
消融实验(DSW、TSA、HED)
(1)DSW嵌入因考虑了跨维度依赖性,在大多数情况下比Transformer原始嵌入方法表现得更好。
(2)TSA两阶段注意力分开考虑了时间和维度,提高了预测精度。
(3)HED在短期预测中降低了精度,而在长期预测中HED包含不同尺度的信息提高了精度。
三者结合效果最佳
超参数调整
(1)分段长度Lseg:对于短期预测(24、48),较小的分段效果越好,预测精度总体较稳定。对于长期预测(168以上),随着分段长度从4到24 MSE下降,即分段长度越长适合长期预测。
(2)路由器个数c:在预测长度336之前,随着c变化MSE较稳定,当预测长度720时,随着c增加MSE趋于下降。选择c=10来平衡预测精度和计算效率。
计算效率分析
Crossformer encoder的复杂度是二次方,但可以使用较大的分段长度Lseg进行长期预测来降低复杂度(化掉分母)。
消融版本随着维度D增大的内存占用:TSA可以明显降低复杂度,没有路由器机制的TSA(w/o Router)也有助于降低复杂度,而路由器机制可以进一步使复杂度线性化,能够处理300维的数据。
总结
(1)在TSA的跨维度阶段,路由器机制建立的连接除了捕获跨维度依赖性外,还给高维数据引入了噪声,因此,利用高维数据的稀疏性来降低噪声,提高TSA层的计算效率是一个很有前途的方向。
(2)Dlinear的作者认为基于transformer的模型难以保持有序信息,因为注意机制是排列不变的,并且注入到模型中的绝对位置嵌入不足以用于时间序列预测,可考虑文本和视觉中的相对位置编码。
(3)用于时间序列预测的数据集比用于文本和视觉的数据集要小得多,并且时间序列数据集中的模式也更简单,可考虑在大型数据集上充分发挥潜力。