没有合适的资源?快使用搜索试试~ 我知道了~
𝒙𝒍MLP𝑾𝑄𝑾𝐾𝑾𝑉𝒒𝒌𝑻Parameterized𝒛′Layer NormAttentionLayer Norm𝒙𝒍−𝟏𝒙𝒍Layer Norm𝑾𝑄𝑾𝐾𝑾𝑉𝒛′MLPLayer NormAttention𝒙𝒍−𝟏Log-CPBlog120090Swin Transformer V2: 扩大容量和分辨率0Ze Liu 2 * Han Hu 1 * † Yutong Lin 3 Zhuliang Yao 4 Zhenda Xie 4 Yixuan Wei 4 Jia Ning 50Yue Cao 1 Zheng Zhang 1 Li Dong 1 Furu Wei 1 Baining Guo 101 微软亚洲研究院 2 中国科学技术大学 3 西安交通大学 4 清华大学 5 华中科技大学0{ t-liuze,hanhu,t-yutonglin,t-zhuyao,t-zhxie,t-yixuanwei,v-jianing } @microsoft.com0{ yuecao,zhez,lidong1,fuwei,bainguo } @microsoft.com0摘要0我们提出了将SwinTransformer扩大到30亿个参数并使其能够处理1536×1536分辨率图像的技术。通过扩大容量和分辨率,SwinTransformer在四个代表性的视觉基准上取得了新的记录:ImageNet-V2图像分类的84.0%top-1准确率,COCO目标检测的63.1/54.4框/掩膜mAP,ADE20K语义分割的59.9mIoU,以及Kinetics-400视频动作分类的86.8%top-1准确率。我们解决了训练不稳定性的问题,并研究了如何有效地将在低分辨率上预训练的模型转移到更高分辨率上。为此,提出了几种新技术:1)一种残差后归一化技术和一种缩放余弦注意力方法,以提高大型视觉模型的稳定性;2)一种对数间隔连续位置偏差技术,以有效地将在低分辨率图像和窗口上预训练的模型转移到更高分辨率的对应物上。此外,我们分享了关键的实现细节,大大节省了GPU内存消耗,从而使使用常规GPU训练大型视觉模型成为可能。使用这些技术和自监督预训练,我们成功训练了一个30亿参数的强大SwinTransformer模型,并将其有效地转移到涉及高分辨率图像或窗口的各种视觉任务中,在各种基准测试中达到了最先进的准确性。代码可在https://github.com/microsoft/Swin-Transformer上获得。01. 引言0扩大语言模型的规模取得了令人难以置信的成功。它显著提高了模型在语言任务上的性能。0* 相等。†项目负责人。Ze,Yutong,Zhuliang,Zhenda,Yixuan,Jia是微软亚洲研究院的长期实习生。0V10� �0�0�0Softmax0�0RPB �0V20� �0������(�, �)/�0∆�, ∆�0�0Softmax0�0�0图1. 为了更好地扩大模型容量和窗口分辨率,对原始SwinTransformer架构(V1)进行了几个改进:1)使用残差后归一化替代了以前的预归一化配置;2)使用缩放余弦注意力替代了原始的点积注意力;3)使用对数间隔连续相对位置偏差方法替代了以前的参数化方法。改进1)和2)使模型更容易扩大容量。改进3)使模型在窗口分辨率之间更有效地进行转移。改进后的架构被命名为Swin Transformer V2。0语言模型的规模扩大取得了令人难以置信的成功。它显著提高了模型在语言任务上的性能。BERTlarge模型具有3.4亿个参数,语言模型在几年内迅速扩大了1000多倍,达到了5300亿个稠密参数和1.6万亿个稀疏参数。这些大型语言模型在广泛的语言任务上也表现出越来越强的类似人类智能的few-shot能力。另一方面,视觉模型的扩大进展相对滞后。虽然人们早就认识到更大的视觉模型通常在视觉任务上表现更好,但绝对模型大小只能达到120100最近有关1-2亿参数的研究也有很多[10,18,28,44,66]。更重要的是,与大型语言模型不同,现有的大型视觉模型仅应用于图像分类任务[10,44,66]。0为了成功训练大规模和通用的视觉模型,我们需要解决一些关键问题。首先,我们在大型视觉模型上的实验发现了训练中的不稳定性问题。我们发现,大型模型中各层的激活幅度差异显著增大。对原始架构的进一步研究发现,这是由于残差单元的输出直接添加到主分支中导致的。结果是激活值逐层累积,深层的幅度显著大于早期层的幅度。为了解决这个问题,我们提出了一种新的归一化配置,称为res-post-norm,将LN层从每个残差单元的开头移动到末尾,如图1所示。我们发现,这种新的配置在整个网络层之间产生了更温和的激活值。我们还提出了一个缩放余弦注意力来替代以前的点积注意力。缩放余弦注意力使计算与块输入的幅度无关,注意力值不太可能落入极端值。在我们的实验中,这两种技术不仅使训练过程更稳定,而且特别是对于更大的模型,还提高了准确性。0其次,许多下游视觉任务,如目标检测和语义分割,需要高分辨率的输入图像或大的注意力窗口。低分辨率预训练和高分辨率微调之间的窗口大小变化可能非常大。目前的常见做法是对位置偏差图进行双三次插值[15,35]。这种简单的修复方法有些临时性,结果通常不够理想。我们引入了一种对数间隔连续位置偏差(Log-CPB),通过在对数间隔坐标输入上应用一个小型元网络生成任意坐标范围的偏差值。由于元网络接受任意坐标,预训练模型将能够通过共享元网络的权重自由地在不同的窗口大小之间转移。我们方法的一个关键设计是将坐标转换为对数空间,这样即使目标窗口大小显著大于预训练的窗口大小,外推比例也可以很低。模型容量和分辨率的扩大还导致了现有视觉模型的显存消耗过高。为了解决显存问题,我们采用了几种重要的技术,包括零优化器[42]、激活检查点[6]和顺序自注意力计算的新实现。借助这些技术,大型模型和高分辨率的显存消耗显著降低,对训练速度的影响很小。0通过以上技术,我们成功地训练了一个30亿规模的SwinTransformer模型,并且有效地将其转移到了各种视觉任务中,图像分辨率高达1536×1536,使用了NvidiaA100-40GGPU。在我们的模型预训练中,我们还采用了自监督预训练来减少对超大型标记数据的依赖。相比之前的实践(JFT-3B)的标记数据少了40倍,这个30亿模型在广泛的视觉基准上实现了最先进的准确性。具体而言,在ImageNet-V2图像分类验证集上获得了84.0%的top-1准确率[43],在COCO测试集上的目标检测获得了63.1/54.4的box/maskAP,ADE20K语义分割获得了59.9的mIoU,Kinetics-400视频动作分类获得了86.8%的top-1准确率,这些结果比原始SwinTransformers[35,36]的最佳结果分别提高了+NA%、+4.4/3.3、+6.3和+1.9,超过了之前的最佳记录+0.8%[66]、+1.8/1.4[61]、+1.5[3]和+1.4%[45]。通过扩大视觉模型的容量和分辨率,在通用视觉任务上获得强大的性能,就像好的语言模型在通用自然语言处理任务上的性能一样,我们的目标是激发更多的研究,以便最终缩小视觉和语言模型之间的容量差距,促进两个领域的联合建模。02. 相关工作0自从[52]的开创性工作以来,Transformer已成为标准网络,并开始探索对该架构进行扩展,这一进展得益于有效的自监督学习方法的发明,例如掩码或自回归语言建模[12,40],并且受到了一个缩放定律的发现的进一步鼓励[25]。从那时起,语言模型的容量在几年内大幅增加了1000多倍,从BERT-340M到Megatron-Turing-530B[5, 37, 38,41]和稀疏Switch-Transformer-1.6T[16]。容量增加后,各种语言基准的准确性显著提高。零样本或少样本的性能也得到了显著改善[5],这是人类通用智能的基础。0长期以来,CNN一直是标准的计算机视觉网络[29,30]。自AlexNet[29]以来,架构变得更深更大,这极大地推动了各种视觉任务的发展,并在计算机视觉中大幅推动了深度学习的浪潮,如VGG [48],GoogleNet [49]和ResNet[he2015resnet]。在过去的两年中,CNN架构进一步扩展到约10亿个参数[18,28],然而,绝对性能可能并不那么令人鼓舞。120110也许是由于CNN架构中的归纳偏差限制了建模能力。去年,Transformer开始接管一个又一个代表性的视觉基准,包括ImageNet-1K图像级分类基准[15],COCO区域级目标检测基准[35],ADE20K像素级语义分割基准[35,68],Kinetics-400视频动作分类基准[1]等。自那时以来,已经提出了许多视觉Transformer变体,以在相对较小的规模上提高准确性[8, 14, 23, 31, 50, 55, 58, 62, 64, 65,67]。只有少数几项工作尝试扩大视觉Transformer的规模[10, 44,66]。然而,它们依赖于一个带有分类标签的大型图像数据集,即JFT-3B,并且仅适用于图像分类问题。0对于CNN,以前的工作通常在预训练和微调过程中固定卷积核大小。全局视觉Transformer,如ViT[15],在全局范围内计算注意力,其等效的注意力窗口大小与输入图像分辨率的增加成线性比例关系。对于局部视觉Transformer架构,如Swin Transformer[35],窗口大小可以在微调过程中固定或更改。允许可变的窗口大小在使用中更加方便,以便能够被可能可变的整个特征图整除,并调整接受域以获得更好的准确性。为了处理预训练和微调之间的可变窗口大小,双三次插值是以前的常见做法[15,35]。在本文中,我们提出了一种对数间隔连续位置偏差方法(Log-CPB),它更平滑地将低分辨率下预训练的模型权重转移到处理更高分辨率窗口。0在NLP中,相对位置偏差方法相对于原始Transformer中使用的绝对位置嵌入[52]证明是有益的[41]。在计算机视觉中,相对位置偏差方法更常用[21, 35,62],可能是因为视觉信号的空间关系在视觉建模中起着更重要的作用。一种常见的做法是直接将偏差值作为模型权重进行学习。也有一些工作专门研究如何设置和学习偏差项[27, 56]。0连续卷积及其变体我们的Log-CPB方法也与早期的连续卷积及其变体[20, 34, 46,54]相关,这些方法利用元网络处理不规则数据点。我们的Log-CPB方法受到这些工作的启发,同时解决了在任意窗口大小下传递相对位置偏差的问题。我们还提出了0使用对数间隔坐标来减轻在大尺寸变化之间进行转移时的困难。03. Swin Transformer V203.1. Swin Transformer简要回顾0SwinTransformer是一个通用的计算机视觉骨干网络,在区域级目标检测、像素级语义分割和图像级图像分类等各种粒度的识别任务中取得了强大的性能。SwinTransformer的主要思想是将几个重要的视觉先验引入到基本的Transformer编码器中,包括层次结构、局部性和平移不变性,这样结合了基本的Transformer单元的强建模能力和视觉先验,使其适用于各种视觉任务。0归一化配置众所周知,归一化技术[2, 24, 51,57]在稳定训练更深的架构中起着关键作用。原始的SwinTransformer继承了语言Transformer[40]和vanillaViT[15]中常见的预归一化配置,但没有进行深入研究,如图1所示。在接下来的小节中,我们将检查这种默认的归一化配置1。0相对位置偏差是原始SwinTransformer中的一个关键组成部分,它引入了一个额外的参数化偏差项来编码自注意力计算中的几何关系:0注意力(Q,K,V)= SoftMax(QKT/√(d +B))V,(1)0d + B)V,(1)0其中B∈RM2×M2是每个头部的相对位置偏差项;Q,K,V∈RM2×d是查询、键和值矩阵;d是查询/键的维度,M2是窗口中的补丁数量。相对位置偏差编码了视觉元素的相对空间配置,在各种视觉任务中都显示出关键作用,特别是对于密集识别任务,如目标检测。在SwinTransformer中,每个轴上的相对位置在[−M+1,M−1]范围内,相对位置偏差被参数化为一个偏差矩阵ˆB∈R(2M−1)×(2M−1),B中的元素取自ˆB。在不同的窗口尺寸之间进行转换时,预训练中学到的相对位置偏差矩阵被用于通过双三次插值初始化不同尺寸的偏差矩阵。01还有一些替代的归一化配置,如后归一化[52]和夹心归一化[13]。后归一化会损害训练的稳定性[60],夹心归一化由于归一化层太多而牺牲了表示能力。123456789 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2400.20.40.60.811.21.4100200300400500600700800H-Pre (SSL)H-Post (SSL)1201201.0E-0201.0E+0001.0E+0201.0E+0401.0E+0601.0E+080平均特征方差0S-Post B-Post L-Post H-Post(SSL)0S-Pre B-Pre L-Pre H-Pre(SSL*)0块ID0图2.不同模型尺寸的信号传播图[4,63]。H尺寸的模型在自监督学习阶段进行训练,其他尺寸的模型通过图像分类任务进行训练。*表示在崩溃之前我们使用了一个40个周期的模型。0扩大模型容量和窗口分辨率时的问题我们观察到当我们扩大Swin Transformer的容量和窗口分辨率时存在两个问题。0•扩大模型容量时的不稳定性问题。如图2所示,当我们将原始的SwinTransformer模型从小尺寸扩大到大尺寸时,深层的激活值显著增加。最高振幅和最低振幅之间的差异已经达到了10的4次方。当我们进一步将其扩大到巨大尺寸(658百万参数)时,无法完成训练,如图3所示。0•在跨窗口分辨率传递模型时性能下降。如表1的第一行所示,当我们通过双三次插值方法直接测试预训练的ImageNet-1K模型(256×256图像,8×8窗口大小)在更大的图像分辨率和窗口大小上的准确性时,准确性显著降低。值得重新审视原始SwinTransformer中的相对位置偏差方法。0在接下来的小节中,我们介绍解决这些问题的技术,包括后归一化和缩放余弦注意力来解决不稳定性问题,以及对数间隔连续位置偏差方法来解决在窗口分辨率之间传递的问题。03.2. 扩展模型容量0如第3.1节所述,原始的SwinTransformer(以及大多数视觉Transformer)在每个块的开头采用了一个层归一化层,继承自vanillaViT。当我们增加模型容量时,观察到在深层有显著增加的激活值。实际上,在预归一化配置中,每个残差块的输出激活值直接合并回主分支0训练损失0时期0图3. SwinV1-H与SwinV2-H的训练对比 [ 59 ]。0对于主分支,随着层数的增加,主分支的振幅越来越大。不同层之间的振幅差异大导致训练不稳定。0后归一化为了缓解这个问题,我们提出使用一种残差后归一化方法,如图1所示。在这种方法中,每个残差块的输出在合并回主分支之前进行归一化,当层深入时,主分支的振幅不会累积。如图2所示,通过这种方法得到的激活振幅要比原始的预归一化配置要小得多。在我们最大的模型训练中,我们在主分支上每6个Transformer块引入一个额外的层归一化层,以进一步稳定训练。0缩放余弦注意力在原始的自注意力计算中,像素对的相似性项被计算为查询向量和键向量的点积。我们发现,当这种方法在大型视觉模型中使用时,一些块和头部的学习注意力图经常被少数像素对主导,特别是在后归一化配置中。为了缓解这个问题,我们提出了一种缩放余弦注意力方法,通过缩放余弦函数计算像素对 i 和 j 的注意力逻辑值:0Sim(qi, kj) = cos(qi, kj)/τ + Bij,(2)0其中 B ij 是像素 i 和 j 之间的相对位置偏差;τ是一个可学习的标量,在头部和层之间不共享。τ被设置为大于0.01。余弦函数在自然上是归一化的,因此可以具有较轻的注意力值。03.3. 扩展窗口分辨率0在本小节中,我们介绍了一种对数间隔连续位置偏差方法,以便可以在窗口分辨率之间平滑地传递相对位置偏差。ImageNet*ImageNet†COCOADE20kW16mIoUW20mIoUW32mIoU82.0/82.9(+2.6/+0.2)81.2/83.3(+4.0/+0.3)79.8/83.6(+6.6/+0.4)77.6/83.7(+8.9/+0.5)50.9(+0.1)51.7(+0.8)47.0(+1.5)47.4(+1.6)47.2(+2.7)82.4/83.2(+3.0/+0.5)81.7/83.8(+4.5/+0.8)80.4/84.0(+7.2/+0.8)79.1/84.2(+10.4/+1.0)51.1(+0.3)51.8(+0.9)47.0(+1.5)47.7(+1.9)47.8(+3.3)120130方法 W8,I256 top-1准确率0W12,I384top-1准确率0W16,I512top-1准确率0W20,I640top-1准确率0W24,I768top-1准确率0W16AP框0W32AP框0参数化位置偏差 [ 35 ] 81.7 79.4/82.7 77.2/83.0 73.2/83.2 68.7/83.2 50.8 50.9 45.5 45.8 44.50线性间隔CPB 81.7 (+0.0)0对数间隔CPB 81.8 (+0.1)0表1.使用Swin-T的不同位置偏差计算方法的比较。*表示从头开始在ImageNet-1k上训练的top-1准确率。*列中的模型将用于在使用更大的图像/窗口分辨率的ImageNet-1K图像分类任务上进行测试,标记为†。对于这些结果,我们报告了无微调和有微调的结果。这些模型还用于在COCO目标检测和ADE20K语义分割任务上进行微调。0连续相对位置偏差,而不是直接优化参数化偏差,连续位置偏差方法在相对坐标上采用了一个小型元网络:0B(∆ x, ∆ y) = G(∆ x, ∆ y), (3)0其中 G是一个小型网络,例如,默认情况下是一个具有ReLU激活的2层MLP。元网络 G为任意相对坐标生成偏差值,因此可以自然地传递到具有任意变化的窗口尺寸的微调任务中。在推理中,每个相对位置的偏差值可以预先计算并存储为模型参数,使得推理与原始参数化偏差方法相同。0对数间隔坐标,当在差异较大的窗口尺寸之间进行传递时,需要外推相对坐标范围的大部分。为了解决这个问题,我们提出使用对数间隔坐标代替原始的线性间隔坐标:0∆ y = sign(y) ∙ log(1 + |∆ y|), (4)0其中 ∆ x , ∆ y 和 ∆ x , ∆ y是线性缩放和对数间隔坐标。通过使用对数间隔坐标,当我们在窗口分辨率之间传递相对位置偏差时,所需的外推比例要小得多,而不是使用原始的线性间隔坐标。例如,从预训练的8×8窗口尺寸传递到微调的16×16窗口尺寸时,使用原始的原始坐标,输入坐标范围将从[-7, 7] × [-7, 7]变为[-15, 15] × [-15, 15]。外推比例为8。07 =1.14×原始范围。使用对数间隔坐标,输入范围将从[-2.079,2.079] × [-2.079, 2.079]变为[-2.773, 2.773] × [-2.773,2.773]。外推比例为原始范围的0.33×,即0相对于使用原始线性间隔坐标,使用对数间隔坐标的外推比例约小4倍。表1比较了不同位置偏差计算方法的传递性能。可以看出,对数间隔的连续位置偏差(CPB)方法表现最佳,特别是在传递到更大的窗口尺寸时。03.4. 自监督预训练0更大的模型对数据的需求更大。为了解决数据需求问题,以往的大型视觉模型通常利用大量标记数据,如JFT-3B [10,44,66]。在这项工作中,我们利用自监督预训练方法SimMIM[59]来减轻对标记数据的需求。通过这种方法,我们成功训练了一个30亿参数的强大的SwinTransformer模型,在4个代表性的视觉基准上取得了最先进的成果,仅使用了7000万标记图像(JFT-3B的1/40)。03.5. 保存GPU内存的实现0另一个问题在于当容量和分辨率都很大时,常规实现的GPU内存消耗过高。为了解决内存问题,我们采用以下实现方法:0•零冗余优化器(ZeRO)[42]。在优化器的一般数据并行实现中,模型参数和优化状态会被广播到每个GPU。这种实现对GPU内存消耗非常不友好,例如,当使用AdamW优化器和fp32权重/状态时,一个30亿参数的模型将消耗48G的GPU内存。使用ZeRO优化器,模型参数和相应的优化状态将被分割和分布到多个GPU,从而显著减少内存消耗。我们采用DeepSpeed框架,并在实验中使用ZeROstage-1选项。这种优化对训练速度几乎没有影响。120140• 激活检查点[6]。Transformer层中的特征图也会消耗大量的GPU内存,当图像和窗口分辨率较高时,这可能会导致瓶颈。激活检查点技术可以显著减少内存消耗,但训练速度会降低30%。0•顺序自注意力计算。为了在非常大的分辨率上训练大型模型,例如,1,536×1,536分辨率的图像和32×32的窗口大小,即使使用上述两种优化技术,常规的A100GPU(40GB内存)仍然无法承受,我们发现在这种情况下,自注意力模块构成了一个瓶颈。为了缓解这个问题,我们采用了顺序自注意力计算的方法,而不是使用之前的批量计算方法。这种优化应用于前两个阶段的层,对整体训练速度影响很小。0通过这些实现,我们成功使用Nvidia A100-40GGPU训练了一个3B模型,用于COCO目标检测,输入图像分辨率为1,536×1,536,以及Kinetics-400动作分类,输入分辨率为320×320×8。03.6. 模型配置0对于Swin TransformerV2的4个配置,我们保持了原始SwinTransformer的阶段、块和通道设置:0• SwinV2-T: C = 96, #. block = {2, 2, 6, 2}0• SwinV2-S/B/L: C = 96/128/192, #.block= {2, 2, 18, 2}0其中C是第一个阶段的通道数。我们进一步将SwinTransformerV2扩展到巨大尺寸和庞大尺寸,分别具有6.58亿和30亿个参数:0• SwinV2-H: C = 352, #. block = {2, 2, 18, 2}0• SwinV2-G: C = 512, #. block = {2, 2, 42, 4}0对于SwinV2-H和SwinV2-G,我们在主分支上每6层添加了一个额外的层归一化层。为了节省实验时间,我们只在大规模实验中使用SwinV2-G。SwinV2-H用于另一项关于自监督学习的并行研究[59]。04. 实验04.1. 任务和数据集0我们在ImageNet-1K图像分类(V1和V2)[11,43],COCO目标检测[33]和ADE20K语义分割[69]上进行实验。对于0对于3B模型实验,我们还报告了在Kinetics-400视频动作识别[26]上的准确性。0• 图像分类。评估中使用了ImageNet-1K V1和V2 val[11, 43]。可选择使用ImageNet-22K[11]进行预训练,该数据集包含了1400万张图像和2.2万个类别。对于我们最大的模型SwinV2-G,使用了一个私有收集的包含7000万张图像的ImageNet-22K-ext数据集。对于该数据集,进行了重复图像删除处理[39],以排除与ImageNet-1K V1和V2验证集重叠的图像。0• 目标检测。评估中使用了COCO[33]数据集。对于我们最大的模型实验,我们在图像分类预训练阶段和COCO微调阶段之间使用了Object 365v2数据集[47]进行了额外的检测预训练阶段。0• 语义分割。使用了ADE20K [69]数据集。0• 视频动作分类。评估中使用了Kinetics-400 (K400)[26]数据集。0预训练和微调的设置将在附录中详细说明。04.2. 扩展实验0我们首先将模型扩展到30亿个参数和高分辨率图像/窗口,并在各种代表性视觉基准上展示结果。0SwinV2-G实验的设置我们在预训练中采用了较小的192×192图像分辨率以节省训练成本。我们采用了两步预训练方法。首先,模型在ImageNet-22K-ext数据集上进行了20个epoch的自监督方法[59]的预训练。然后,模型在该数据集上进行了30个epoch的图像分类任务的进一步预训练。详细的预训练和微调设置在附录中描述。在下面的段落中,我们报告了SwinV2-G在代表性视觉基准上的准确性。请注意,由于我们的主要目标是探索如何可行地扩展模型容量和窗口分辨率,以及视觉任务是否能从显著更大的容量中受益,我们没有特别对齐复杂性或预训练数据进行比较。0ImageNet-1K图像分类结果表2与之前在ImageNet-1KV1和V2分类上最大/最佳的视觉模型进行比较。SwinV2-G是目前最大的密集视觉模型。它在ImageNetV2基准测试中达到了84.0%的top-1准确率,比之前最好的模型高出0.7%。SwinV1-B88MIN-22K-14M1.3B2242<30†384286.476.58SwinV1-L197MIN-22K-14M1.3B2242<10†384287.377.46ViT-G [66]1.8BJFT-3B164B2242>30k518290.4583.33V-MoE [44]14.7B*JFT-3B-224216.8k518290.35-CoAtNet-7 [10]2.44BJFT-3B-224220.1k512290.88-SwinV2-B88MIN-22K-14M1.3B1922<30†384287.178.08SwinV2-L197MIN-22K-14M1.3B1922<20†384287.778.31SwinV2-G3.0BIN-22K-ext-70M3.5B1922<0.5k†640290.1784.00CopyPaste [17]1280(-)1280(-)57.0 48.9 57.3 49.1SwinV1-L [35]800(7)ms(7)58.0 50.4 58.7 51.1YOLOR [53]1280(-)1280(-)--57.3-CBNet [32]1400(7)ms(7)59.6 51.8 60.1 52.3DyHead [9]1200(-)ms(-)60.3-60.6-SoftTeacher [61] 1280(12)ms(12)60.7 52.5 61.3 53.0SwinV2-L(HTC++)1536(32)1100(32) 58.8 51.1--1100 (48) 58.9 51.2--ms (48)60.2 52.1 60.8 52.7SwinV2-G(HTC++)1536(32)1100(32) 61.7 53.3--1100 (48) 61.9 53.4--ms (48)62.5 53.7 63.1 54.4SwinV1-L [35]640(7)640(7)53.5*MaskFormer [7]640(7)640(7)55.6*FaPN [22]640(7)640(7)56.7*BEiT [3]640(40)640(40)58.4*SwinV2-L(UperNet)640(40)640(40)55.9*SwinV2-G(UperNet)640(40)640(40)59.1896 (56)59.3896 (56)59.9*ViViT [1]-(-)-(-)4×384.8SwinV1-L [36]480(12)2×16(8) 480(12)2×16(8) 10×5 84.9TokenLearner [45] 256(8)2×64(64) 256(8)2×64(64) 4×385.4Video-SwinV2-G320(20)2×8(8)320(20)2×8(8)1×183.2384(24)2×8(8)1×183.4384(24)2×8(8)4×586.8120150方法 参数 预训练图像 预训练长度(#im) 预训练图像大小 预训练时间 微调图像大小 ImageNet-1K-V1 top-1准确率ImageNet-1K-V2 top-1准确率0表2. 在ImageNet-1K V1和V2分类上与之前最大的视觉模型进行比较。*表示稀疏模型;“pre-traintime”列是使用TPUv3核心天数测量的,数字来自原始论文。† SwinV2-G的估计值是根据训练迭代次数和FLOPs计算的。0方法 训练 I(W) 大小 测试 I(W)大小0mini-val (AP) test-dev(AP) 盒子 掩码 盒子 掩码0表3.在COCO目标检测和实例分割上与之前最佳结果进行比较。I(W)表示图像和窗口大小。ms表示采用多尺度测试。0方法 训练 I(W) 大小 测试 I(W) 大小 mIoU0表4.ADE20K语义分割的最佳结果与之前的比较。*表示使用了多尺度测试。0(83.3%)。我们在ImageNet-1KV1上的准确率略低(90.17% vs90.88%)。性能差异可能来自数据集过度调整的不同程度[43]。还要注意的是,我们使用的训练迭代次数和图像分辨率比之前的工作要少得多,但表现非常好。我们还将SwinV2-B和SwinV2-L与原始的SwinV1-B和SwinV1-L进行了比较,分别观察到了+0.8%和+0.4%的增益。这些增益有所减小0方法 训练 I(W) 大小 测试 I(W) 大小 视角 top-10表5. 在Kinetics-400视频动作分类上与之前最佳结果进行比较。0相比SwinV2-B,SwinV2-L的性能可能意味着如果超过这个尺寸,需要更多的标注数据、更强的正则化或先进的自监督学习方法。0COCO目标检测结果表3将SwinV2-G模型与COCO目标检测和实例分割的先前最佳结果进行了比较。在COCO测试集上,它实现了63.1/54.4的box/maxAP,比先前的最佳结果(由[61]的61.3/53.0)高出1.8/1.4。这表明,扩大视觉模型对于目标检测这种密集视觉识别任务有益处。我们的方法可以在测试时使用不同的窗口尺寸来额外受益,这可能归因于有效的对数间隔CPB方法。0ADE20K语义分割结果表4将SwinV2-G模型与ADE20K语义分割基准测试的先前最佳结果进行了比较。在ADE20K验证集上,它实现了59.9的mIoU,比先前的最佳结果(由[3]的58.4)高出1.5。这表明,扩大视觉模型对像素级视觉识别任务有益处。在测试时使用更大的窗口尺寸还可以额外带来0.2的增益,这可能归因于有效的对数间隔CPB方法。0Kinetics-400视频动作分类结果表50将SwinV2-G模型与Kinetics-400动作分类基准测试的先前最佳结果进行比较。它实现了86.8%的top-1准确率,比先前的结果高出1.4%。Swin-T81.5✓81.6✓✓81.7Swin-S83.2✓83.3✓✓83.6Swin-B83.6✓83.8✓✓84.1ViT-B82.2✓✓82.6Swin-S83.282.683.383.6Swin-B83.6-83.684.1ImageNet*ImageNet†SwinV2-S83.781.8/84.579.4/84.9✓83.784.1/84.882.9/85.4SwinV2-B84.182.9/85.081.0/85.3✓84.284.5/85.183.8/85.6120160骨干网络res-post-norm scaled cosineattention0ImageNettop-1准确率0表6. 对res-post-norm和cosine attention进行消融实验。0骨干网络pre-norm sandwich [13] post-norm [52] our0表7.与其他归一化方法的比较。后归一化方法在默认学习率下发散,我们使用默认学习率的1/4进行此方法。三明治方法的表现比我们的方法差,可能是因为它牺牲了表达能力。0最佳数字[45]。这表明,扩大视觉模型也有益于视频识别任务。在这种情况下,测试时使用更大的窗口尺寸还可以带来额外的+0.2%的好处,这可能归因于有效的对数间隔CPB方法。04.3. 消融实验0在SwinTransformer中应用所提出的res-post-norm和scaledcosineattention方法的性能消融实验表明,这两种技术在所有的tiny、small和base尺寸上都提高了准确性,总体改进分别为+0.2%、+0.4%和+0.5%,表明这些技术对于更大的模型更有益处。它还有助于ViT架构(+0.4%)。所提出的归一化方法也比其他一些归一化方法表现更好,如表7所示。更重要的是,后归一化和scaled cosineattention的组合稳定了训练。如图2所示,原始SwinTransformer在较大(L)尺寸下,深层的激活值几乎爆炸,而新版本的激活值行为要温和得多。在一个巨大的模型上,使用原始SwinTransformer进行自监督预训练[59]会发散,而使用SwinTransformer V2模型则可以很好地训练。0通过不同的方法扩大窗口分辨率表1和8消融了3种方法在预训练中将窗口分辨率从256×256扩大到更大尺寸在ImageNet-1K图像分类、COCO目标检测等3个下游视觉任务中的性能。0骨干网络L-CPB W8, I256 W12, I384 W16, I5120表8. 使用不同模型大小对Log-CPB进行消融实验.0并且在ADE20K语义分割任务上,分别达到了81.7%和81.8%的准确率。可以看出:1)不同方法在预训练阶段的准确率相似(81.7%-81.8%);2)在迁移到下游任务时,两种连续位置偏置(CPB)方法相对于Swin TransformerV1中使用的参数化位置偏置方法表现更好。与线性间隔方法相比,对数间隔版本略优;3)预训练和微调之间分辨率的变化越大,所提出的对数间隔CPB方法的好处越大。在表1和表8中,我们还报告了在不进行微调的情况下使用目标窗口分辨率的准确率(在ImageNet-1K实验中每列的第一个数字)。即使将窗口大小从8扩大到24,识别准确率仍然不错(78.9%对81.8%),而原始方法的top-1准确率从81.7%降至68.7%。还要注意的是,在没有进行微调的情况下,使用预训练模型从未见过的窗口大小12的准确率甚至比原始准确率高出0.4%。这表明我们可以通过测试时调整窗口来提高准确率,这也在表3、表4和表5中观察到。05. 结论0我们提出了一些技术来将SwinTransformer扩展到30亿个参数,并使其能够处理最高分辨率为1,536×1,536的图像,包括res-post-norm和scaledcosineattention,以便更容易扩展模型容量,以及对数间隔连续相对位置偏置方法,使模型能够更有效地在不同窗口分辨率之间进行迁移。这种改进的架构被命名为SwinTransformerV2,并通过扩展容量和分辨率,在4个代表性的视觉基准上取得了新的记录。通过这些强大的结果,我们希望能够激发更多在这个方向上的研究,以便最终缩小视觉和语言模型之间的容量差距,并促进两个领域的联合建模。0致谢0我们感谢微软的许多同事,特别是Eric Chang、LidongZhou、Jing Tao、Aaron Zhang、Edward Cui、BinXiao、Lu Yuan、Peng Cheng、FanYang,感谢他们在有用的讨论以及GPU资源和数据集方面的帮助。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功