解锁CNN和Transformer正确结合方法,字节跳动提出有效的下一代视觉Transformer

2022-08-26 12:12:48 浏览数 (1)

关注并星标

从此不迷路

计算机视觉研究院

公众号ID|ComputerVisionGzq

学习群|扫码在主页获取加入方式

论文地址:https://arxiv.org/pdf/2207.05501.pdf

计算机视觉研究院专栏

作者:Edison_G

来自字节跳动的研究者提出了一种能在现实工业场景中有效部署的下一代视觉Transformer,即Next-ViT。Next-ViT能像CNN一样快速推断,并有ViT一样强大的性能。

《转自机器之心》

由于复杂的注意力机制和模型设计,大多数现有的视觉Transformer(ViT)在现实的工业部署场景中不能像卷积神经网络(CNN)那样高效地执行。这就带来了一个问题:视觉神经网络能否像CNN一样快速推断并像ViT一样强大?

近期一些工作试图设计CNN-Transformer混合架构来解决这个问题,但这些工作的整体性能远不能令人满意。基于此,来自字节跳动的研究者提出了一种能在现实工业场景中有效部署的下一代视觉Transformer——Next-ViT。从延迟 / 准确性权衡的角度看,Next-ViT的性能可以媲美优秀的CNN和ViT。

Next-ViT的研究团队通过开发新型的卷积块(NCB)和Transformer块(NTB),部署了友好的机制来捕获局部和全局信息。然后,该研究提出了一种新型混合策略NHS,旨在以高效的混合范式堆叠NCB和NTB,从而提高各种下游任务的性能。

大量实验表明,Next-ViT在各种视觉任务的延迟/准确性权衡方面明显优于现有的CNN、ViT和CNN-Transformer混合架构。在TensorRT上,Next-ViT与ResNet相比,在COCO检测任务上高出5.4mAP(40.4 VS 45.8),在ADE20K分割上高出8.2% mIoU(38.8% VS 47.0%)。同时,Next-ViT达到了与CSWin相当的性能,并且推理速度提高了3.6倍。在CoreML上,Next-ViT在COCO检测任务上比EfficientFormer高出4.6 mAP(42.6 VS 47.2),在ADE20K分割上高出3.5% mIoU(从45.2%到48.7%)。

方法

Next-ViT的整体架构如下图2所示。Next-ViT遵循分层金字塔架构,在每个阶段配备一个patch嵌入层和一系列卷积或Transformer块。空间分辨率将逐步降低为原来的 1/32,而通道维度将按阶段扩展。

研究者首先深入设计了信息交互的核心模块,并分别开发强大的NCB和NTB来模拟视觉数据中的短期和长期依赖关系。NTB中还进行了局部和全局信息的融合,进一步提高了建模能力。最后,为了克服现有方法的固有缺陷,该研究系统地研究了卷积和Transformer块的集成方式,提出了NHS策略,来堆叠NCB和NTB构建新型CNN-Transformer混合架构。

NCB

研究者分析了几种经典结构设计,如下图3所示。ResNet[9]提出的BottleNeck块由于其在大多数硬件平台上固有的归纳偏置和易于部署的特性,长期以来一直在视觉神经网络中占据主导地位。不幸的是,与Transformer块相比,BottleNeck块的有效性欠佳。ConvNeXt块[20]通过模仿Transformer块的设计,对BottleNeck块进行了现代化改造。虽然ConvNeXt块提高了网络性能,但它在TensorRT/CoreML上的推理速度受到低效组件的严重限制。Transformer块在各种视觉任务中取得了优异的成绩,然而Transformer块的推理速度比TensorRT和CoreML上的BottleNeck块要慢得多,因为其注意力机制比较复杂,这在大多数现实工业场景中是难以承受的。

为了克服上述几种块的问题,该研究提出了Next Convolution Block(NCB),它在保持BottleNeck块的部署优势的同时获得了Transformer块的突出性能。如图3(f)所示,NCB遵循MetaFormer(已被证实对Transformer块至关重要)的一般架构。

此外,一个高效的基于注意力的token混合器同样重要。该研究设计了一种多头卷积注意力(MHCA)作为部署卷积操作的高效token混合器,并在MetaFormer[40]的范式中使用MHCA和MLP层构建NCB。

NTB

NCB已经有效地学习了局部表征,下一步需要捕获全局信息。Transformer架构具有很强的捕获低频信号的能力,这些信号能够提供全局信息(例如全局形状和结构)。

然而,相关研究已经发现,Transformer块可能会在一定程度上恶化高频信息,例如局部纹理信息。不同频段的信号在人类视觉系统中是必不可少的,它们以某种特定的方式融合,以提取更多本质和独特的特征。

受这些已知结果的影响,该研究开发了Next Transformer Block(NTB),以在轻量级机制中捕获多频信号。此外,NTB可用作有效的多频信号混频器,进一步增强整体建模能力。

NHS

近期一些工作努力将CNN和Transformer结合起来进行高效部署。如下图 4(b)(c) 所示,它们几乎都在浅层阶段采用卷积块,在最后一两个阶段仅堆叠Transformer块,这种结合方式在分类任务上是有效的。但该研究发现这些混合策略很容易在下游任务(例如分割和检测)上达到性能饱和。原因是,分类任务仅使用最后阶段的输出进行预测,而下游任务(例如分割和检测)通常依赖每个阶段的特征来获得更好的结果。这是因为传统的混合策略只是在最后几个阶段堆叠Transformer块,浅层无法捕获全局信息。

该研究提出了一种新的混合策略(NHS),创造性地将卷积块(NCB)和Transformer块(NTB)与(N 1)*L混合范式结合在一起。NHS 在控制 Transformer 块比例的情况下,显著提升了模型在下游任务上的性能,并实现了高效部署。

首先,为了赋予浅层捕获全局信息的能力,该研究提出了一种(NCB×N NTB×1)模式混合策略,在每个阶段依次堆叠N个NCB和一个NTB,如图4(d)所示。具体来说,Transformer 块 (NTB) 放置在每个阶段的末尾,使得模型能够学习浅层中的全局表征。该研究进行了一系列实验来验证所提出的混合策略的优越性,不同混合策略的性能如下表1所示。

此外,如下表2所示,大模型的性能会逐渐达到饱和。这种现象表明,通过扩大 (NCB×N NTB×1) 模式的N来扩大模型大小,即简单地添加更多的卷积块并不是最佳选择,(NCB×N NTB×1)模式中的N值可能会严重影响模型性能。

因此,研究者开始通过广泛的实验探索N的值对模型性能的影响。如表2(中)所示,该研究在第三阶段构建了具有不同N值的模型。为了构建具有相似延迟的模型以进行公平比较,该研究在N值较小时堆叠L组 (NCB×N NTB×1) 模式。

如表2所示,第三阶段N=4的模型实现了性能和延迟之间的最佳权衡。该研究通过在第三阶段扩大 (NCB×4 NTB×1)×L模式的L来进一步构建更大的模型。如表 2(下)所示,Base(L=4)和Large(L=6)模型的性能相对于小模型有显著提升,验证了所提出的(NCB×N NTB×1×L)模式的一般有效性。

最后,为了提供与现有SOTA网络的公平比较,研究者提出了三个典型的变体,即Next-ViTS/B/L。

实验结果

ImageNet-1K上的分类任务

与最新的SOTA方法(例如CNN、ViT和混合网络)相比,Next-ViT在准确性和延迟之间实现了最佳权衡,结果如下表4所示。

ADE20K 上的语义分割任务

该研究将Next-ViT与CNN、ViT和最近一些混合架构针对语义分割任务进行了比较。如下表5所示,大量实验表明,Next-ViT在分割任务上具有出色的潜力。

目标检测和实例分割

在目标检测和实例分割任务上,该研究将Next-ViT与SOTA模型进行了比较,结果如下表6所示。

消融实验和可视化

为了更好地理解Next-ViT,研究者通过评估其在ImageNet-1K分类和下游任务上的性能来分析每个关键设计的作用,并将输出特征的傅里叶谱和热图可视化,以显示Next-ViT的内在优势。

如下表7所示,NCB在所有三个任务上实现了最佳延迟 / 准确性权衡。

对于NTB块,该研究探讨了NTB的收缩率r对Next-ViT整体性能的影响,结果如下表8所示,减小收缩率r将减少模型延迟。

此外,r=0.75和r=0.5的模型比纯Transformer (r=1)的模型具有更好的性能。这表明以适当的方式融合多频信号将增强模型的表征学习能力。特别是,r=0.75的模型实现了最佳的延迟 / 准确性权衡。这些结果说明了NTB块的有效性。

该研究进一步分析了Next-ViT中不同归一化层和激活函数的影响。如下表9所示,LN和GELU虽然带来一些性能提升,但在TensorRT上的推理延迟明显更高。另一方面,BN和ReLU在整体任务上实现了最佳的延迟 / 准确性权衡。因此,Next-ViT统一使用BN和ReLU,以便在现实工业场景中进行高效部署。

最后,该研究可视化了ResNet、Swin Transformer和Next-ViT的输出特征的傅里叶谱和热图,如下图 5(a) 所示。ResNet的频谱分布表明卷积块倾向于捕获高频信号、难以关注低频信号;ViT擅长捕捉低频信号而忽略高频信号;而Next-ViT能够同时捕获高质量的多频信号,这显示了NTB的有效性。

此外,如图 5(b)所示,Next-ViT能比ResNet和Swin捕获更丰富的纹理信息和更准确的全局信息,这说明Next-ViT的建模能力更强。

© THE END 

转载请联系本公众号获得授权

计算机视觉研究院学习群等你加入!

ABOUT

计算机视觉研究院

计算机视觉研究院主要涉及深度学习领域,主要致力于人脸检测、人脸识别,多目标检测、目标跟踪、图像分割等研究方向。研究院接下来会不断分享最新的论文算法新框架,我们这次改革不同点就是,我们要着重”研究“。之后我们会针对相应领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!

VX:2311123606

往期推荐 

0 人点赞