何玉明的新论文:只有使用ViT作为骨干也能做好目标检测骨干特征提取器由一组包含检测特定先验知识的neck和head组成。颈部/头部的常见组件可能包括感兴趣区域(RoI)操作、区域提议网络(RPN)或锚点、特征金字塔网络(FPN)等。如果针对特定任务的颈部/头部设计与主干的设计,它们可以并行开发。根据经验,目标检测研究受益于对通用主干和检测专用模块的广泛独立探索。长期以来,由于卷积网络的实用设计,这些骨干网一直是多尺度、分层的架构,这严重影响了用于多尺度(例如FPN)目标检测的颈部/头部的设计。在过去的一年里,VisionTransformer(ViT)已成为视觉识别的强大支柱。与典型的ConvNet不同,最初的ViT是一个简单的、非层次结构的架构,它始终保持一个单一尺度的特征图。它对“极简主义”的追求在应用于目标检测时遇到了挑战,例如,我们如何使用在上游预训练的简单主干来处理下游任务中的多尺度目标?简单的ViT对于高分辨率图像检测来说效率太低了吗?放弃这种追求的一个解决方案是在后备箱中重新引入分层设计。此类解决方案,例如SwinTransformer和其他网络,可以继承基于ConvNet的检测器设计并取得成功。在这项工作中,何玉明等研究人员追求了一个不同的方向:探索仅使用共同的、非分层主干的物体检测器。如果这个方向成功,那么只使用原始ViT主干的对象检测将成为可能。在这个方向上,预训练设计将与微调需求解耦,保持上下游任务的独立性,就像基于ConvNet的研究一样。这个方向也在一定程度上遵循了ViT在追求通用特征时减少归纳偏差的哲学。由于非局部自注意力计算可以学习平移等变特征,它们还可以从某种形式的监督或自监督预训练中学习尺度等变特征。研究人员表示,在这项研究中,他们的目标不是开发新组件,而是通过最小的调整来克服上述挑战。具体来说,他们的检测器仅从普通ViT主干的最后一个特征图构建一个简单的特征金字塔(如图1所示)。该方案放弃了FPN设计和分层主干的要求。为了有效地从高分辨率图像中提取特征,他们的检测器使用简单的非重叠窗口注意力(不移动)。他们使用少量跨窗口块传播信息,这些块可以是全局注意力或卷积。这些调整仅在微调期间进行,不会改变预训练。这种简单的设计产生了令人惊讶的结果。研究人员发现,使用一个通用的ViT主干,FPN的设计是不必要的,它的好处可以通过从大步幅(16)、单尺度图构建的简单金字塔有效地获得。他们还发现,只要信息在少数层的窗口中传播良好,窗口注意力就足够了。更令人惊讶的是,由名为“ViTDet”的研究人员开发的通用主干检测器在某些情况下可以与领先的分层主干检测器(如Swin、MViT)竞争。通过掩码自动编码器(MAE)预训练,他们的vanillabackbone检测器可以在ImageNet-1K/21K上优于具有监督预训练的分层检测器(如下图3所示)。这种增益在较大尺寸的模型上更为明显。该检测器在不同的目标检测器框架下表现出色,包括MaskR-CNN、CascadeMaskR-CNN及其增强版本。COCO数据集上的实验结果表明,在具有共同ViT-Huge主干的未标记ImageNet-1K上预训练的ViTDet检测器可以实现61.3的AP^box。他们还展示了ViTDet在长尾LVIS检测数据集上的竞争结果。虽然这些强大的结果可能部分来自MAE预训练的有效性,但这项研究表明,通用主干检测器可能很有前途,挑战层次主干在对象检测中的根深蒂固的地位。方法详细信息本研究的目标是消除对骨干网络的层次约束,并使用公共骨干网络进行对象检测。因此,本研究的目标是在微调过程中以最小的变化使一个简单的骨干网络适应目标检测任务。修改后,原则上我们可以应用任何探测器头(detectorhead),研究人员选择使用MaskR-CNN及其扩展。简单特征金字塔FPN是构建用于对象检测的网络内金字塔的常用解决方案。如果骨干网络是分层的,FPN的动机是将早期的高分辨率特征与后期更强的特征结合起来。这是在FPN中通过自上而下和横向连接实现的,如图1左图所示。如果骨干网络不是分层的,那么FPN动机的基础就会消失,因为骨干网络中的所有特征图都具有相同的分辨率。本研究仅使用骨干网络中的最后一个特征图,因为它应该具有最强大的特征。研究人员将一组卷积或反卷积并行应用于最后一个特征图,以生成多尺度特征图。具体来说,他们使用了默认的ViT特征图,比例为1/16(stride=16),如图1右侧所示,这个过程称为“简单特征金字塔”。从单个特征图构建多尺度特征图的策略与SSD的策略相关,但本研究的场景涉及深度、低分辨率特征图的上采样。在分层骨干网络中,上采样通常由横向连接辅助,但研究人员通过实验发现,在普通的ViT骨干网络中水平连接是不必要的,简单的反卷积就足够了。研究人员推测这是因为ViT可以依赖位置嵌入来编码位置,而高维ViT补丁嵌入并不一定会丢弃信息。如下图所示,该研究将这个简单的特征金字塔与同样构建在公共主干网络上的两个FPN变体进行了比较。在第一个变体中,骨干网络被人为地分为多个阶段,以模仿分层骨干网络的阶段,并应用水平和自上而下的连接(图2(a))。第二个变体与第一个变体类似,但只使用最后一个特征图(图2(b))。这项研究表明不需要这些FPN变体。主干调谐对象检测器受益于高分辨率输入图像,但计算整个主干的全局自注意力非常耗费内存且速度很慢。本研究的重点是预训练骨干网络执行全局自注意力,然后在微调期间适应更高分辨率输入的场景。这与最近使用骨干网络预训练直接修改注意力计算的方法形成对比。本研究的场景使研究人员能够使用原始的ViT主干网络进行检测,而无需重新设计预训练架构。本研究使用跨窗口块探索窗口注意力。在微调期间,给定高分辨率特征图,本研究将其划分为规则的非重叠窗口。在每个窗口内计算自注意力,这在原始Transformer中称为“受限”自注意力。与Swin不同,此方法不会跨层“移动”窗口。为了让信息得以传播,该研究使用了极少数(默认为4个)可以跨越窗口的块。我们将预训练的主干网络平均划分为4个块的子集(例如,对于24块ViT-L,每个子集中有6个块),并在每个子集的最后一个块中应用传??播策略。研究人员分析了以下两种策略:全局传播。该策略在每个子集的最后一个块中执行全局自注意力。由于全局块数量少,内存和计算成本是可行的。这类似于(Lietal.,2021)中与FPN结合使用的混合窗口注意力。卷积传播。该策略改为在每个子集之后添加一个额外的卷积块。卷积块是由一个或多个卷积和恒等捷径组成的残差块。块中的最后一层被初始化为零,因此块的初始状态是一个身份。将一个块初始化为身份使这项研究能够将其插入预训练骨干中的任何位置,而不会破坏骨干的初始状态。这个骨干网络的调整非常简单,使得检测微调兼容globalself-attention预训练,不需要重新设计预训练架构。实验结果AblationStudy在消融研究中,研究人员得到以下结论:1.一个简单的特征金字塔就足够了。在表1中,他们比较了图2中所示的特征金字塔构建策略。2.在几个传播块的帮助下,windowattention就足够了。表2总结了本文提出的主干调整方法。简而言之,与只有窗口注意力且没有跨窗口传播块(图中“无”)的基线相比,所有传播方式都会带来实质性的收益。3.Maskedautoencoders可以提供强大的预训练主干。表4比较了主要干预训练的策略。与HierarchicalBackbone的比较下面的表5显示了与HierarchicalBackbone网络的比较结果。下面的图3显示了几个模型的准确性作为模型大小、FLOP和测试时间的函数。与之前系统的对比下表6展示了几种方法在COCO数据集上的系统级对比结果。
