前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >全新SOTA骨干网络HIRI-ViT | 大力出奇迹,高分辨率+双路径设计,让Backbone卖力生产精度

全新SOTA骨干网络HIRI-ViT | 大力出奇迹,高分辨率+双路径设计,让Backbone卖力生产精度

作者头像
集智书童公众号
发布2024-03-25 13:17:25
9080
发布2024-03-25 13:17:25
举报
文章被收录于专栏:集智书童

视觉Transformer(ViT)与卷积神经网络(CNN)的混合深度模型已经成为视觉任务中的一类强大的基础架构。 扩大这类混合基础架构的输入分辨率自然会增强模型的能力,但不可避免地会受到呈平方级增长的计算成本的影响。相反,作者提出了一种新的混合基础架构,即HiHq-分辨率输入(简称HiRI-ViT),将流行的四阶段ViT升级为专门针对高分辨率输入的五阶段ViT。HiRI-ViT基于这样一个开创性的想法:以成本高效的方式将典型的CNN操作分解为两个并行的CNN分支。一个高分辨率分支直接以主要的高分辨率特征作为输入,但使用较少的卷积操作。 另一个低分辨率分支首先执行下采样,然后在这样低分辨率的特征上使用更多的卷积操作。 在识别任务(ImageNet-1K数据集)和密集预测任务(COCO和APE20K数据集)上的实验都证明了HiRI-ViT的优越性。更值得注意的是,在相当的计算成本(约5.0 GFLOPs)下,HiRI-ViT在ImageNet上使用448×448输入达到了迄今为止公布的最高Top-1准确率84.3%,这绝对比使用224×224输入的iFormer-S的83.4%提高了0.9%。

1 Introduction

受到自然语言处理(NLP)[1]中占主导地位的Transformer结构的启发,计算机视觉(CV)领域见证了Vision Transformer(ViT)在视觉 Backbone 设计上的崛起。这一趋势在图像/动作识别[2, 3, 4, 5]和密集预测任务(如目标检测[6])中表现得最为明显。这些成功中的许多都可以归因于通过传统Transformer块中的自注意力机制对输入视觉token之间的长距离交互的灵活建模。最近,几项并行研究[7, 8, 9, 10, 11]指出,直接在视觉token序列上应用纯Transformer块是次优的。这种设计不可避免地缺乏对2D区域结构建模的正确感应偏差。为了缓解这一限制,它们引领了将卷积神经网络(CNN)的2D感应偏差注入ViT的新浪潮,产生了CNN+ViT混合 Backbone 。

在卷积神经网络(CNN) Backbone 设计中的一个常见做法是增大网络的深度/宽度/输入分辨率[12, 13],通过捕捉输入中的更细粒度的模式来增强模型的容量。作者的工作在精神上与此相似,想要深入研究将高分辨率输入的CNN+ViT混合 Backbone 进行扩展的过程。然而,类似于CNN Backbone 的扩展,简单地增大流行的ViT Backbone 的输入分辨率将会带来实际挑战,尤其是急剧增加的计算成本。以广泛采用的ViT Backbone ,Swin Transformer[14]为例,当直接将输入分辨率从224×224增大到384×384时,ImageNet-1K上的top-1准确率明显从83.5%提升到84.5%。然而,正如图1所示,具有384×384输入的Swin Transformer(GFLOPs:47.0,推理时间:3.95毫秒)的计算成本显著高于具有224×224输入的Swin Transformer(GFLOPs:15.4,推理时间:1.17毫秒)。

鉴于这个问题,作者的核心问题是——在处理高分辨率输入时,是否有原则性的方法可以扩展CNN+ViT混合骨架,同时保持相当的计算开销?为此,作者设计了一系列针对高分辨率输入的五阶段视觉 Transformer ,其中早期阶段包含双分支构建块,旨在在性能与计算成本之间找到更好的平衡。具体来说,改造后的茎部/CNN块中的关键组成部分是高分辨率分支(在较高分辨率输入上执行较少的卷积操作)和低分辨率分支(在较低分辨率输入上执行更多的卷积操作)的并联组合。这种双分支设计取代了茎部/CNN块中带有标准卷积操作的单个分支。通过这样做,作者不仅保留了高分辨率输入下的增强模型容量,同时通过每个分支的轻量级设计显著降低了计算成本。如图1所示,将输入分辨率从224×224扩大到384×384时,作者的HIRI-ViT获得了明显的性能提升,但计算成本仅略有增加(GFLOPs:8.2到9.3,推理时间:0.84毫秒到1.04毫秒)。即使将输入分辨率扩大到768×768,HIRI-ViT也带来了显著的性能改进,同时比Swin Transformer要求的计算成本要低。

通过将这种双分支设计整合到CNN+ViT混合 Backbone 网络中,作者提出了一种新的原则性五阶段视觉 Backbone 网络,即HIRI-ViT,它能高效地使用高分辨率输入扩展Vision Transformer。特别是,作者首先通过将单一的CNN分支分解为两个平行的分支(即高分辨率和低分辨率分支),来升级典型的Conv-stem块,从而形成高分辨率茎(HR-stem)块。接下来,通过用所提出双分支设计替换CNN分支, Reshape 了早期阶段的CNN块。这种新的高分辨率块(HR-block)触发了对高分辨率输入的成本高效编码。

本工作的主要贡献是提出了在保持较低的计算成本的同时,将CNN+ViT混合 Backbone 网络扩展到高分辨率输入。这也导致了将典型的高分辨率输入上的CNN操作分解为两个并行的轻量级CNN分支的优雅设计。通过对多个视觉任务(例如,图像识别,目标检测和实例/语义分割)进行的一系列广泛的实验,作者证明了在相似计算成本下,作者新的HIRI-ViT Backbone 网络相较于最先进的ViT和CNN Backbone 网络具有优势。

2 Related Work

Convolutional Neural Network

受到AlexNet [15]在ImageNet-1K基准测试上取得突破的启发,卷积神经网络(CNN)已成为计算机视觉领域的实际 Pillar 。特别是,其中一个开创性工作是VGG [16],它通过增加网络深度来提高模型能力。ResNet [17]通过引入卷积块之间的跳跃连接来训练更深的网络,从而提高了泛化能力并取得了令人印象深刻的结果。DenseNet [18]进一步通过将每个卷积块连接到所有前一个块来扩展具有数百层的网络。除了加深网络,设计多分支块是提高模型容量的另一个方向。InceptionNet [19, 20]通过分割-转换-合并策略,将具有不同核的多条路径集成到单个卷积块中。ResNeXt [21]证明了使用同质性和多分支架构增加基数是提高性能的有效途径。Res2Net [22]通过构建分层的类残差连接,在更细的粒度上发展多个感受野。EfficientNet [13]利用神经架构搜索寻求网络宽度、深度和分辨率之间的更好平衡。最近,ConvNeXt [23, 24]通过将ResNet与Transformer设计相结合,实现了与Vision Transformer竞争的结果,同时保持了CNN的效率。

Vision Transformer

受到自然语言处理领域Transformer[1]的启发,视觉Transformer架构最近开始主导视觉任务中的 Backbone 网络构建。Vision Transformer[2]的首次亮相将图像分割成一系列的 Patch (即视觉标记),然后直接在视觉标记上应用自注意力。DeiT[25]通过升级训练策略和蒸馏过程,以数据高效的方式学习Vision Transformer。由于ViT/DeiT的所有层次都是在相同的低分辨率下设计的,它们可能不适合直接用于密集预测任务[26]。为了解决这个问题,PVT[26]采用了具有四个阶段的金字塔结构的ViT,其分辨率从高到低逐渐缩小。Swin[14]将移位窗口方案集成到局部自注意力中,实现了具有线性计算复杂度的跨窗口连接。Twins[27]交替使用局部分组注意力和全局子采样注意力,以利用细粒度和长距离全局信息。DaViT[28]进一步提出了具有空间窗口注意力和通道组注意力的双重注意力机制,旨在实现局部细粒度和全局交互。后来,CNN和ViT开始相互交互,产生了众多的混合 Backbone 网络。特别是,CvT[9]和CeiT[11]分别用卷积升级自注意力和前馈模块。ViTAE[29]在自注意力模块旁边引入了一个额外的卷积块,其输出被融合并输入到前馈模块中。iFormer[30]将最大池化、卷积和自注意力结合在一起,学习高频和低频信息。MaxViT[31]通过将卷积、局部自注意力和膨胀全局自注意力结合到一个单一块中,实现了局部和全局空间交互。

High-resolution Representation Learning

在探索CNN架构设计中高分辨率输入方面已取得重大进展。例如,HRNet [32] 在整个网络中保持高分辨率分支,并反复融合多分辨率特征。EfficientHRNet [33] 进一步统一了EfficientNet和HRNet,并设计了一种向下缩放方法来缩小输入分辨率、 Backbone 网络和高分辨率特征网络。随后,LiteHRNet [34] 通过应用shuffle块和条件通道加权单元提高了HRNet的效率。在此期间,一些研究开始构建以高分辨率输入的Transformer Backbone 网。其中,HR-NAS [35] 引入了一个多分辨率搜索空间,包括CNN和Transformer块,用于多尺度信息与全局上下文建模。最近,HRViT [36] 和HRFormer [37] 旨在通过在整个网络中保持所有分辨率并进行跨分辨率交互来构建具有多尺度输入的Vision Transformer。然而,这些ViT Backbone 网的输入仍然局限于较小的分辨率(即224×224)。尽管大多数混合 Backbone 网可以直接扩展到更高的分辨率(例如384×384),但计算成本变得更加沉重,它与输入分辨率成二次方关系增长。相反,作者的工作为扩展CNN+ViT混合 Backbone 网以处理高分辨率输入开辟了新途径,同时保持了与小分辨率相同的优良计算开销。

3 Preliminaries

传统的多阶段视觉 Transformer (M-ViT)[14, 38, 40, 39]通常由一个基础层加上四个阶段组成,类似于卷积网络(ConvNets)[17, 21, 23](见图2(a))。具体来说,首先使用基础层将输入图像(分辨率:224×224)分割成多个 Patch 。每个 Patch 被视为一个“视觉标记”,并将被进一步送入后续阶段。每个阶段包含多个 Transformer 块,每个 Transformer 块由一个多头自注意力模块(MHA)和一个前馈网络(FFN)组成。通常,在每两个阶段之间会插入一个下采样层(DS),以合并输入的“视觉标记”(即减少特征图的分辨率)并同时增加其通道维度。最后,采用一个分类层根据最后的特征图预测概率分布。

多头自注意力机制。 多头自注意力旨在捕捉视觉标记之间的长距离依赖关系。在技术层面,令

X\in\mathbb{R}^{n\times D}

表示视觉标记的特征,其中

n=H\times W

是视觉标记的数量,

H/W/D

分别代表高度/宽度/通道数。输入

X

首先线性变换为 Query

Q\in\mathbb{R}^{n\times D}

,键

K\in\mathbb{R}^{n\times D}

和值

V\in\mathbb{R}^{n\times D}

,这些再沿通道维度分解为

N_{h}

个头/部分。将第

j

个头的 Query 、键和值分别表示为

Q_{j}\in\mathbb{R}^{n\times D_{h}}

K_{j}\in\mathbb{R}^{n\times D_{h}}

V_{j}\in\mathbb{R}^{n\times D_{h}}

D_{h}

:每个头的维度),自注意力模块按以下方式操作:

\begin{split}&\textbf{MultiHead}(Q,K,V)=\textbf{Concat}(head_{0},...,head_{N_{h}})W^{O},\\ & head_{j}=\textbf{Attention}(Q_{j},K_{j},V_{j}),\\ &\textbf{Attention}(Q_{j},K_{j},V_{j})=\textbf{Softmax}(\frac{Q_ {j}K_{j}{}^{T}}{\sqrt{D_{h}}})V_{j},\end{split} \tag{1}

在哪里,

W^{O}

是权重矩阵,而

\textbf{Concat}(\cdot)

是拼接操作。考虑到自注意力机制的计算成本与 Token 数量成二次方增长,通常会应用空间缩减于键/值上,以减少计算/内存的开销[40, 8]。

前馈网络。 原始的前馈网络 [1, 2] 由两个全连接(FC)层组成,并在它们之间结合了一个非线性激活函数:

\textbf{FFN}(X)=\textbf{FC}(\sigma(\textbf{FC}(X))), \tag{2}

在公式中,

\sigma

表示非线性激活。受到[40, 8]的启发,作者对 FFN 进行了升级,增加了一个卷积操作以引入2D归纳偏好,从而形成了卷积前馈网络(CFFN)。这个 CFFN 的整体操作可以概括为:

\textbf{CFFN}(X)=\textbf{FC}(\textbf{DWConv}(z)+z),\ z=\sigma(\textbf{FC}(X)), \tag{3}

其中 DWConv 表示深度可分卷积。

4 HIRI-ViT

在本文中,作者的目标是设计一个原则性的Transformer结构(即HIRI-ViT),它能够以低成本高效地扩展接受高分辨率输入的Vision Transformer。为此,作者将典型的四阶段M-ViT升级为一个包含五阶段的新ViT系列,其中早期阶段包含双分支构建块,这些构建块将单分支卷积神经网络(CNN)操作分解为两个并行的CNN分支。这种方法为高分辨率输入量身定制了有利的计算开销。图2(b)展示了作者HIRI-ViT的总体架构。

High Resolution Stem

传统视觉Transformer的茎层设计可以简要分为两个维度:ViT茎和Conv茎[41, 42]。如图3(a)所示,ViT茎实现为单个步长卷积层(例如,步长=4,核大小=7[40]),其目的是将输入图像划分为块。最近,[42, 10]揭示用几个堆叠的3×3卷积(即,图3(b)中所示的Conv茎)替换ViT茎可以稳定网络优化过程,同时提高峰值性能。对于典型输入分辨率(例如,224×224),Conv茎会导致参数和GFLOPs略有增加。然而,当输入分辨率显著增加(例如,448×448)时,Conv茎的GFLOPs比ViT茎要重得多。为了缓解这些问题,作者设计了一个新的高分辨率茎层(HR茎,如图3(c)所示),通过将单分支Conv茎改造为两个平行的CNN分支。这种设计不仅保留了与Conv茎一样高的模型容量,而且在高分辨率输入下也能保持较好的计算成本。

在技术实现上,HR-stem首先使用步长为2、核大小为3的跨步卷积(strided convolution)对输入图像进行下采样,就像在Conv-stem中那样。之后,下采样的特征图被送入两个并行的分支(即高分辨率和低分辨率分支)。高分辨率分支包括一个轻量级的深度卷积(depth-wise convolution),后面跟着一个步长卷积。对于低分辨率分支,首先使用步长卷积来下采样特征图。然后应用两个卷积(3

\times

3和1

\times

1卷积)来引入归纳偏置(inductive bias)。最后,通过聚合两个分支的输出得到HR-stem的输出,并且这个总和通过批量归一化(BN)进一步进行标准化。

High Resolution Block

鉴于混合骨架的前两个阶段的输入分辨率较大,Transformer块的运算成本相对较高。为了克服这一限制,作者将前两个阶段的Transformer块替换为作者的新型高分辨率块(HR块),使得在早期阶段能够高效地编码高分辨率输入。具体来说,与HR-stem类似,HR块由两个并行分支组成。轻量级高分辨率分支捕捉高分辨率输入上的粗粒度信息,而低分辨率分支使用更多的卷积操作来提取低分辨率输入上的高级语义。图4展示了HR块的详细架构。

具体来说,高分辨率分支采用轻量级的深度可分卷积实现。对于低分辨率分支,首先使用步长为2、核大小为3的深度可分卷积配合批量归一化(BN)来对输入特征图进行下采样。接着,在低分辨率特征图上应用前馈操作(即,两个FC之间有一个激活函数)。之后,通过重复来实现低分辨率输出的上采样,并进一步与高分辨率输出进行融合。

Inverted Residual Downsampling

在传统的M-ViT中,空间下采样是通过单个步长卷积(例如,步长=2,核大小=3[40])完成的,如图5(a)所示。受到ConvNets[17, 43]的启发,作者设计了一个更强大的下采样层,具有两个并行分支,即倒置残差下采样(IRDS)。特别是,对于前两个阶段,由于输入具有高分辨率,作者采用IRDS-a(图5(b))进行下采样。IRDS-a首先使用步长为

3\times 3

的卷积来扩展维度并减少空间大小,然后使用

1\times 1

卷积来缩小通道维度。对于最后两个下采样层,作者采用IRDS-b(图5(c)),它类似于倒置残差块[44]。区别在于作者只在第一个卷积之后应用规范化和激活操作。注意,作者增加了额外的下采样捷径来稳定训练过程。

Normalization of Block

卷积神经网络(ConvNets)[17, 21]通常使用批量归一化(BN)来稳定训练过程。BN还可以合并到卷积操作中,以加快推理速度。相比之下,视觉 Transformer (Vision Transformer)的 Backbone 网络倾向于使用层归一化(LN)来规范化特征。LN对于小批量训练尺寸(例如,目标检测和语义分割)的密集预测任务更为友好,因为它与批量大小无关。与BN相比,LN还可以略微提高性能[23]。然而,对于高分辨率输入,LN会导致更重的计算成本。因此,作者在前三个阶段使用高分辨率输入时采用BN,而在最后两个阶段使用低分辨率输入时应用LN。此外,作者还用BN替换了CFFN块中的LN。这样做可以使推理过程加快7.6%,同时保持性能。

EMA Distillation

在训练过程中,指数移动平均(EMA)[58] 已被广泛应用于稳定和提升卷积网络(ConvNets)[13] 和视觉变换(ViT)[25] 的训练过程。然而,传统EMA中的信息传递是单向的,即教师网络通过基于学生网络的参数进行EMA更新,从而导致了次优解。为了触发教师网络和学生网络之间的双向信息交互,作者提出了一种新的EMA蒸馏策略来训练HIRI-ViT。EMA蒸馏还利用从教师网络学习到的概率分布来指导学生网络的训练。与传统的知识蒸馏[25] 相比,作者的EMA蒸馏并不依赖于任何额外的超大规模预训练网络。

在技术层面上,给定一对训练样本(

x_{a}

,

y_{a}

)和(

x_{b}

,

y_{b}

),通过Cutmix/Mixup生成新的训练样本(

\tilde{x}

,

\tilde{y}

),这进一步被送入学生网络

\mathcal{F}^{s}

进行网络优化。以Cutmix为例,新的样本(

\tilde{x}

,

\tilde{y}

)可以生成如下:

\begin{split}&\tilde{x}=M\odot x_{a}+(1-M)\odot x_{b},\\ &\tilde{y}=\lambda y_{a}+(1-\lambda)y_{b},\ \lambda=\frac{\sum M}{HW}, \end{split} \tag{4}

其中

M\in\{0,1\}^{H\times W}

表示矩形 Mask ,而

\odot

是逐元素的乘法。在EMA精馏中,作者将原始样本

x_{a}

x_{b}

输入到教师网络

\mathcal{F}^{t}

(移除了在最后一特征图上的平均池化操作),分别得到概率分布图

P_{a}

P_{b}

。接下来,作者为生成的样本

\tilde{x}

分配一个混合目标标签:

\tilde{P}=M\odot P_{a}+(1-M)\odot P_{b},\ \hat{y}=\mathbf{AvgPool}(\tilde{P}), \tag{5}

在这里,

\mathbf{AvgPool}

表示沿空间维度的平均池化操作。之后,作者将由Cutmix和教师网络生成的两个目标标签进行组合:

\tilde{y}=\alpha\tilde{y}+(1-\alpha)\hat{y}

,其中

\alpha

是权衡参数。最后,在训练过程中,作者将混合样本 (

\tilde{x}

,

\tilde{y}

) 输入到学生网络

\mathcal{F}^{s}

中。通过这种方式,教师网络中提取的知识被额外利用,以促进学生网络的学习。

Architecture Details

表1详细介绍了作者的HIRI-ViT家族的架构。遵循现有CNN+ViT混合骨架的基本网络配置[26, 14],作者构建了三种不同模型大小的HIRI-ViT变体,即HIRI-ViT-S(小型),HIRI-ViT-B(基础型)和HIRI-ViT-L(大型)。具体来说,HIRI-ViT的整个架构由一个HR-stem层和五个阶段组成。对于前两个阶段的高分辨率输入,作者用作者轻量级的高分辨率块替换了传统的Transformer块,以避免巨大的计算开销。对于第三个阶段,作者只使用CFFN块来处理中等分辨率的特征图。与传统的视觉Transformer类似,作者在最后两个具有低分辨率输入的阶段使用了Transformer块。对于每个阶段

i

E_{i}

C_{i}

HD_{i}

分别表示前馈层的扩展比、通道维度和头数。

5 Experiments

作者评估了作者的HIRI-ViT在四个视觉任务上的表现:图像分类、目标检测、实例分割和语义分割。特别是,HIRI-ViT首先在ImageNet-1K [59] 上从头开始训练,用于图像分类任务。接下来,作者对预训练的HIRI-ViT进行微调,以应对其余三个下游任务:在COCO [60] 上的目标检测和实例分割,以及在ADE20K [61] 上的语义分割。

_在ImageNet-1K设置上的图像分类_。ImageNet-1K数据集包含1.28百万训练图像和50,000个验证图像,覆盖了1,000个目标类别。在训练期间,作者采用了[40, 14]中的常见数据增强策略:随机裁剪、随机水平翻转、Cutmix [65]、Mixup [66]、Random Erasing [67]、RandAugment [68]。整个网络是……

通过AdamW [69] 在8个V100 GPU上进行优化,包括300个周期的余弦衰减学习率调度器 [70] 以及5个周期的线性预热。批量大小、初始学习率和权重衰减分别设置为1,024、0.001和0.05。作者在ImageNet-1K验证集上报告了Top-1/5准确率,并在ImageNet V2匹配频率测试集 [71] 上报告了Top-1准确率(即V2 Top-1),与 [25] 中一致。

性能比较。 表2展示了作者的HIRI-ViT系列与现有CNN/ViT Backbone 网络之间的性能比较。值得注意的是,所有 Baseline 都使用了典型分辨率的输入(224×224),而作者的HIRI-ViT系列则将高分辨率输入(448×448)扩展到Vision Transformer。总体而言,在每组相当的计算成本下,作者的HIRI-ViT(448×448)在所有模型尺寸上均实现了对现有最优 Backbone 网络的持续性能提升。值得注意的是,对于大型模型尺寸(具有超过11.7 GFLOPs的 Backbone 网络),作者的HIRI-ViT-L(448×448)的Top-1准确率为85.7%,这比最佳竞争者MaxViT-L(85.2%)绝对性能提升了0.5%。尽管HIRI-ViT-L的输入分辨率显著高于MaxViT-L,但作者的HIRI-ViT-L(448×448)所需的GFLOPs却少于MaxViT-L,表明在几乎翻倍的处理吞吐量下具有更快的推理速度优势。这些结果清楚地表明,作者的HIRI-ViT在高分辨率输入上实现了性能与计算成本之间更好的平衡。还值得注意的是,当使用典型分辨率输入(224×224)时,作者在每个模型尺寸下的HIRI-ViT与现有最优性能相比均实现了相当的性能。

作者的HIRI-ViT模型在保持最先进的主干网络的同时,显著降低了计算成本。例如,在大模型尺寸组中,作者的HIRI-ViT-L(224×224)的Top-1准确率为85.3%,相应的吞吐量为每秒660张图像,这比最佳的竞争对手MaxViT-L(Top-1准确率:85.2%,吞吐量:每秒241张图像)快得多。这些结果再次证实了作者的HIRI-ViT设计的成本效益。

高分辨率下的性能比较。 表3展示了作者的HIRI-ViT系列与其他具有更大输入图像尺寸的最先进视觉 Backbone 网络之间的比较。对于这个升级的HIRI-ViT,它采用更高的分辨率输入(768

\times

768),作者在8个V100 GPU上采用AdamW优化器[69],动量为0.9,初始学习率为

1.0e^{-5}

,权重衰减为

1.0e^{-8}

。优化过程包括30个周期,并使用余弦衰减学习率调度器[70]。同样,对于每组具有可比较的计算成本,作者的HIRI-ViT在较高分辨率下与其他视觉 Backbone 网络相比,一致性地获得了性能提升。这些结果清楚地验证了作者提出的高分辨率输入的五阶段ViT Backbone 网络的有效性。这种设计新颖地将典型的CNN操作同时分解为高分辨率和低分辨率分支,因此在即使是高分辨率输入的设置下,也能保持有利的计算成本。

Object Detection and Instance Segmentation on COCO

设置。 作者在COCO数据集上同时进行目标检测和实例分割任务。作者采用标准的方法。

\begintable} \begin{tabular}{cc c|c c c c c|c作者在设置范围内[14, 40],并在COCO-2017训练集(大约118K张图像)上训练所有模型。最终,在COCO-2017验证集(5K张图像)上评估学习到的模型。作者使用两种主流检测器(RetinaNet [72] 和 Mask R-CNN [73])进行目标检测和实例分割。在每个检测器中的主要CNN Backbone 网被替换为作者的HIRI-ViT系列(最初在ImageNet-1K上进行预训练)。所有新增的层都用Xavier [74]进行初始化。作者通过AdamW优化器[69](批量大小:16)在8个V100 GPU上进行检测器的微调。对于RetinaNet和Mask R-CNN,作者采用标准的1

\times

训练计划(12个周期)。每张图像的短边被调整到1,600像素,而长边不超过2,666像素。对于目标检测,作者在另外四种目标检测方法上进行了实验:Cascade Mask R-CNN [75],ATSS [76],GFL [77],和Sparse RCNN [78]。遵循[14, 40],使用了3

\times

计划(36个周期)和多种尺度策略进行训练。输入图像随机调整大小,保持短边在[960, 1,600]范围内,而长边被强制小于2,666像素。作者报告了在不同IoU阈值下以及三种不同目标大小(小型

AP_{S}

,中型

AP_{M}

,大型

AP_{L}

)的平均精度(

AP

)得分。对于实例分割任务,作者报告边界框和 Mask AP得分(

AP^{b}

AP^{m}

)。

性能对比。 表4汇总了在COCO基准上,具有不同 Backbone 网络的RetinaNet和Mask R-CNN的目标检测和实例分割性能。作者的HIRI-ViT-S和HIRI-ViT-B在所有指标上均一致地展现出比每组中其他 Backbone 网络更佳的性能,同时计算成本可相比。具体来说,基于RetinaNet和Mask R-CNN检测器,HIRI-ViT-S分别比最佳竞争者ScalableViT-S高出1.4%(

AP

)和Ortho-S高出0.5%(

AP^{m}

)。同时,HIRI-ViT-S的输入分辨率是ScalableViT-S的两倍大,尽管它们两者所需的参数数量和GFLOPs相似。这清楚地验证了通过作者的设计在下游任务中扩大Vision Transformer的可扩展性的优越泛化能力。表5进一步展示了在COCO上,四种其他额外目标检测器在不同 Backbone 网络下的性能。同样,HIRI-ViT-S相对于每个目标检测器的其他 Baseline 都带来了性能的持续提升。

Semantic Segmentation on ADE20K

设置。 作者接下来在ADE20K数据集上评估HIRI-ViT的语义分割能力。这个数据集涵盖了150个语义类别,包含20,000张训练图像,2,000张验证图像和3,000张测试图像。这里作者遵循[14]并使用UPerNet [79]作为基础模型,其中CNN的主干网络被替换为作者的HIRI-ViT。整个网络通过AdamW优化器[69]在8个V100 GPU上进行160K次迭代训练。作者使用线性学习率衰减计划,包含1,500次迭代的线性预热进行优化。批量大小、权重衰减和初始学习率分别设置为16、0.01和0.00006。作者采用标准的数据增强方法:随机水平翻转、随机光度扭曲和随机缩放在[0.5, 2.0]的比例范围内。所有其他超参数和检测Head都按照Swin [14]设置,以保证公平比较。

性能比较。 表6详细列出了不同的 Backbone 网络在ADE20K验证集上进行语义分割的性能。与在目标检测和实例分割下游任务中的观察类似,作者的HIRI-ViT-S和HIRI-ViT-B在每组中获得了最佳的mIoU分数,同时具有可比较的计算成本。特别是,在相同的UPerNet基础模型下,HIRI-ViT-S将HIRViT-b2的mIoU分数提升了1.2%,这再次证明了作者 Proposal 的有效性。

Ablation Study

在本节中,作者首先说明如何构建一个具有四个阶段的有力多阶段视觉 Transformer (M-ViT),这作为基础模型。然后,作者在基础模型上扩展到五个阶段,并研究HIRI-ViT中的每个设计如何影响在ImageNet-1K上进行图像分类任务的整体性能。表7总结了通过逐步将每个设计纳入基础模型的不同消融运行的性能。

M-ViT(多阶段视觉 Transformer )。作者从基础模型开始,即具有四个阶段的多阶段视觉 Transformer (M-ViT)。M-ViT的整体架构与PVT [26] 类似,它包括一个ViT-stem层和四个阶段。每个阶段都包含一系列的 Transformer 块。每个 Transformer 块由MHA(多头自注意力)FFN(前馈网络)组成。在前两个阶段,M-ViT使用步进卷积作为空间缩减来下采样键和值,而最后两个阶段不使用任何空间缩减操作。单独的步进卷积被用来执行空间下采样,同时在每个阶段之间扩大通道维度。LN(层归一化)被用于特征归一化。如表7(第1行)所示,M-ViT的top-1准确度达到了82.7%。

FFN→CFFN。 第二行通过将每个FFN与深度卷积(即CFFN)集成来升级基础模型。这种方式使得CFFN能够利用归纳偏置,从而提升了性能(82.9%)。

移除多头自注意力(MHA)。接下来,作者从[53]中获得灵感,并在前两个阶段移除了多头自注意力机制(MHA)。在CFFN中的通道扩展维度也被增大。正如表7(第3行)所示,这次消融实验保持了性能,同时GFLOPs和参数数量都有所减少。

LN

\rightarrow

BN。 然后,作者在前两个阶段以及每个CFFN块(第4行)中将LN替换为BN。顶级准确度略微提升至83.0%,表明对于包含卷积操作的块,BNLN更为适合。

ViT-stem→Conv-stem。 当作者将ViT-stem替换为Conv-stem(第5行)时,top-1准确度进一步提升到了83.4%。这一观察结果表明,Conv-stem在早期视觉处理中注入了少量的归纳偏置,从而稳定了优化过程并提高了性能峰值。

IRDS。之后,作者在每两个阶段之间应用倒置残差降采样(第6行)。具有四个阶段的M-ViT最终版本能够达到83.6%的top-1准确率,这一成绩具有竞争力,甚至超过了大多数现有的ViT Backbone 网络。

**分辨率 224

\rightarrow

448.** 接下来,作者直接将输入分辨率从224

\times

224扩大到448

\times

448,用于这个四阶段结构(第7行)。这个省略运行的实验带来了明显的性能提升,同时GFLOPs急剧增加到从4.7到21.5。这一观察与现有的四阶段ViT架构(例如,PVT和Swin Transformer)一致,在这些架构中,计算成本随着输入分辨率的增大而呈二次方增加。

四阶段→五阶段。 此外,作者通过利用额外的阶段来进一步下采样高分辨率输入,扩展了四阶段消融运行(第7行)。这种五阶段结构(第8行)在处理高分辨率输入(448

\times

448)时显著降低了GFLOPs,Top-1准确率下降到84.0%,但仍然优于在224

\times

224输入下的另一种四阶段消融运行(第6行)。这些结果基本上确认了作者的五阶段结构在寻求高分辨率输入更好的性价比平衡方面的有效性。

Conv-stem

\rightarrow

HR-stem。 然后,作者用作者自己的HR-stem(在双分支设计中 Reshape )替换掉Conv-stem。正如表7(第9行)所示,GFLOPs明显下降(5.1),但top-1准确率仍然保持(84.0%)。

HR模块。 之后,作者在前两个阶段(第10行)将每个CFFN替换为两个堆叠的HR模块。请注意,在小型尺寸(GFLOPs:约5.0)下,ImageNet上的Top-1准确率几乎已经饱和(约为84.0%),并且引入较大改进幅度相对困难。然而,作者的HR模块仍然能够使Top-1和Top-5准确率分别提高0.1%,同时略微降低计算成本,这再次验证了通过作者并行的高分辨率和低分辨率分支进行成本高效编码的优势。

EMA精馏。 最后,第11行是作者HIRI-ViT-S的完整版本,通过额外的EMA精馏进行优化,达到了最高的top-1准确率(84.3%)。

Impact of Each Kind of Block in Five Stages

在这里,作者进一步进行了额外的消融研究,以全面检验每种块(HR/CFFN/Transformer块)在五个阶段中的影响。表8展示了通过使用不同块构建五个阶段得到的HIRI-ViT不同消融变体的性能。具体来说,第1-3行的结果表明,在最后三个阶段中,用Transformer块替换更多的HR块通常可以带来性能提升,但也会导致计算成本增加。例如,在第三阶段使用Transformer块(第3行)获得微小的性能增益(Top-1准确度提高0.1%),而GFLOPs明显增加。这些结果基本验证了在后期阶段Transformer块对低分辨率输入的有效性,但Transformer块自然会导致巨大的计算开销,特别是对于早期阶段的高分辨率输入。此外,作者将Transformer块替换为CFFN块以处理第三阶段的中间分辨率输入(第4行)。这种设计很好地减少了GFLOPs,同时保持了Top-1和Top-5的准确度,这表明在HIRI-ViT中计算成本与性能之间达到了最佳的权衡。

Computational Cost vs. Accuracy

图6进一步说明了关于计算成本(即:(a)GFLOPs,(b)模型参数数量和(c)推理时间)的准确度曲线,比较了作者的HIRI-ViT和其他最先进的视觉 Backbone 网络。正如该图所示,作者的HIRI-ViT Backbone 网络的曲线始终位于其他视觉 Backbone 网络之上。也就是说,作者的HIRI-ViT Backbone 网络在计算成本和准确度的权衡上优于现有的视觉 Backbone 网络。

Extension to Other Backbones

在这里,作者报告了通过利用作者的 Proposal 将三种不同的视觉 Backbone 网络(HRNet、PVTv2、DaViT)与更高分辨率输入(从224

\times

224到448

\times

448)进行扩展的性能/计算成本。正如表9所示,HIRI-ViT中的五阶段结构及双分支设计一致地为每个视觉 Backbone 网络带来了显著性能提升,同时保持了优良的计算成本。这些结果进一步验证了作者的五阶段结构及双分支设计在扩展使用高分辨率输入的视觉 Backbone 网络方面的通用性。

6 Conclusions

在这项工作中,作者设计了一个新的五阶段ViT主干网络,用于处理高分辨率输入,即HIRI-ViT,它创新地将典型的卷积神经网络操作同时分解为高分辨率和低分辨率两个并行分支。凭借这种原则性的五阶段和双分支设计,作者的HIRI-ViT能够以高效成本的方式扩展支持高分辨率输入的Vision Transformer主干网络。在ImageNet-1K(图像分类)、COCO(目标检测和实例分割)以及ADE20K数据集(语义分割)上进行了大量实验,以验证作者的HIRI-ViT与竞争性的CNN或ViT主干网络相比的有效性。

尽管有了这些观察,仍然存在一些开放性问题。虽然作者具有双分支设计的五阶段结构显著提高了扩展视觉Transformer的效率,但当采用六阶段结构时,作者发现性能/计算成本上的提升较少。此外,如何扩展视频视觉Transformer以处理高分辨率输入仍然是一个主要挑战。

参考

[1].HIRI-ViT: Scaling Vision Transformer.

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-03-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 集智书童 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 Introduction
  • 2 Related Work
    • Convolutional Neural Network
      • Vision Transformer
        • High-resolution Representation Learning
        • 3 Preliminaries
        • 4 HIRI-ViT
          • High Resolution Stem
            • High Resolution Block
              • Inverted Residual Downsampling
                • Normalization of Block
                  • EMA Distillation
                    • Architecture Details
                    • 5 Experiments
                      • Object Detection and Instance Segmentation on COCO
                        • Semantic Segmentation on ADE20K
                          • Ablation Study
                            • Impact of Each Kind of Block in Five Stages
                              • Computational Cost vs. Accuracy
                                • Extension to Other Backbones
                                • 6 Conclusions
                                • 参考
                                相关产品与服务
                                GPU 云服务器
                                GPU 云服务器(Cloud GPU Service,GPU)是提供 GPU 算力的弹性计算服务,具有超强的并行计算能力,作为 IaaS 层的尖兵利器,服务于生成式AI,自动驾驶,深度学习训练、科学计算、图形图像处理、视频编解码等场景。腾讯云随时提供触手可得的算力,有效缓解您的计算压力,提升业务效率与竞争力。
                                领券
                                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档