清华 & 上交大等开源 PIIP,在目标检测和分割任务上的突破,计算成本减半,性能提升 !

技术

点击下方卡片,关注「集智书童」公众号

点击加入👉「集智书童」交流群

picture.image

picture.image

图像金字塔在现代社会计算视觉任务中广泛用于获取多尺度特征,以实现对图像的精确理解。然而,图像金字塔使用相同的大规模模型处理图像的多个分辨率,这需要大量的计算成本。为了克服这个问题,作者提出了一种新颖的网络架构,称为参数反转图像金字塔网络(PIIP)。

作者的核心思想是使用不同参数大小的模型来处理图像金字塔的不同分辨率 Level ,从而平衡计算效率和性能。具体来说,PIIP的输入是一组多尺度图像,其中较高分辨率的图像由较小的网络处理。

作者进一步提出了一种特征交互机制,允许不同分辨率的特征相互补充,并有效地从不同的空间尺度整合信息。

广泛的实验表明,PIIP在目标检测、分割和图像分类等任务中,与传统图像金字塔方法和单分支网络相比,在减少计算成本的同时取得了更优的性能。

值得注意的是,当将作者的方法应用于大型视觉基础模型InternViT-6B时,仅用40%-60%的原计算量,就在检测和分割任务上提升了1%-2%的性能。这些结果验证了PIIP方法的有效性,并为未来的视觉计算任务提供了新的技术方向。

1 Introduction

在现代计算机视觉中,高性能的图像感知系统越来越依赖于大规模的预训练模型。这些模型在预训练期间通常消耗数万到数百万小时的GPU时间[42, 43, 40]。为了将这些昂贵预训练模型适应于细粒度的图像感知任务(例如,检测和分割[17, 48]),研究者通常将它们与图像金字塔[39, 34]或特征金字塔[25, 41, 32]结合使用。这种组合对于构建图像理解所需的多尺度特征至关重要。

然而,将这些预训练模型与图像金字塔集成在一起会导致计算开销显著增加。图像金字塔以相同的规模模型在多个分辨率下处理相同的图像,使得计算需求随图像分辨率的增加而呈二次增长。尽管特征金字塔[25, 14, 41]旨在减少这种开销,但在MS COCO挑战[26]中,大多数表现顶尖的模型[46, 13, 63, 7]仍然依赖于图像金字塔,因其性能更优。因此,有必要在保持高性能的同时减少构建图像金字塔的计算资源。

为此,作者的关键思想是,在所有分辨率上进行特征提取并不需要使用等大小的视觉模型(图1(b-c)),或者采用参数直接设计(图1(d))。

picture.image

通过充分融合,不同分辨率的特征可以相互补充,从而提高计算效率并避免对相似信息的重复建模。具体来说,对于较低分辨率的金字塔 Level ,较小的图像允许更高效地使用较大模型来提取丰富的上下文和语义特征。高分辨率分支只需提供低分辨率特征中缺少的详细信息,而不是重新建模现有的语义信息。因此,高分辨率特征可以专注于具有较少语义信息的小感受野,这使得可以使用较小的模型来节省计算资源。

基于这一策略,可以使用一系列随着图像分辨率减小而参数大小增加的模型构建一个低成本、高性能的图像金字塔网络,如图1(e)所示。每个分辨率 Level 应能够直接利用现有的预训练视觉基础模型进行特征提取,避免从零开始训练多尺度图像金字塔网络所需的大量计算成本。此外,还需要不同 Level 之间的充分特征交互,以确保不同尺度特征的互补性,避免重复的特征提取。

为此,作者提出了基于不同分辨率图像特征互补性的参数反转图像金字塔网络(PIIP)。具体来说,网络接收多个尺度的图像作为输入,其中较高分辨率特征通过参数较少的网络进行局部细节感知,较低分辨率特征则使用更多参数进行全局信息提取。此外,作者引入了一个特征交互模块,允许不同分辨率之间的特征相互补充。这种结构减少了高分辨率分支的参数数量,并有效地整合了来自不同感受野的信息,显著降低了计算成本,而不会牺牲性能。

作者在目标检测、实例分割、语义分割和图像分类上进行实验。与传统的图像金字塔和单分支网络相比,作者的方法在降低计算成本的同时实现了更好的性能。这些结果验证了作者的多分辨率特征交互策略和参数反转范式的有效性,并为未来的视觉计算提供了新的方向。

作者的贡献如下:

1) 作者提出了一种名为参数反转图像金字塔(PIIP)的新型架构,它以高计算效率增强了视觉 Backbone 网络的多尺度表示能力。所提出的架构能够在不需要从零开始进行大量训练的情况下,有效地、灵活地利用强大的预训练视觉基础模型。

2) 作者在经典视觉任务上评估了作者的方法,包括目标检测、实例分割、语义分割和图像分类。通过结合现有的预训练模型,作者的方法在性能更高、计算成本更低的情况下,超过了单一分支模型和其他图像金字塔方法。

3) 为了验证PIIP在大规模视觉基础模型上的泛化能力,作者将PIIP应用于InternViT-6B [8],在目标检测和语义分割上分别提高了1.9%(55.7 )和1.3%(59.7 mIoU)的性能,同时分别降低了43%和58%的计算成本。作者还提供了对PIIP消融和设计指南的广泛分析及有价值的见解,这可能有利于未来的研究。

2 相关工作

图像金字塔和特征金字塔。 图像金字塔和特征金字塔是两种广泛用于增强下游密集预测任务的多尺度感知能力的技巧。图像金字塔[58; 38; 39; 34]调整原始图像大小,并分别提取不同分辨率的特征,使得模型能够准确地检测各种尺度的物体。然而,这种技术显著增加了计算成本。特征金字塔[25; 14; 41; 59; 32]通过合并低分辨率、语义强特征与高分辨率、语义弱特征,表示另一种构建多尺度特征表示的方法。尽管它们显著降低了计算成本,但在检测非常小或非常大的物体时[38],它们不能完全替代图像金字塔。作者提出的架构整合了图像和特征金字塔,并引入了参数反转范式以实现有效计算。

多分支架构。 多分支架构已经在各种计算机视觉任务中得到广泛应用,包括图像分类[5],目标检测[44; 23; 7; 50],语义分割[56; 15]和多模态对话[31; 19]。CrossViT[5]采用具有不同 Patch 大小的双分支结构以获得各种尺度的输入和不同模型大小以平衡计算负载。HRNet系列[44; 56; 15]采用四分支架构,其中分支数量随着层次的加深而逐渐增加。然而,它们没有采用参数反转范式,不能利用现有的预训练模型。相比之下,作者提出了一种通用的模型架构,支持使用不同参数的预训练模型构建高效的图像金字塔。

视觉模型的冗余性降低。 广泛的研究专注于减少计算冗余以加速处理。一些工作利用图像的稀疏性,通过减少视觉标记的数量来加速模型推理。动态ViT [37] 和 AdaViT [33] 设计了轻量级的预测模块来预测并剪除信息量较少的标记。EViT [24] 和 Evo-ViT [53] 从类标记计算每个标记的注意力得分,以识别信息量较少的标记,并为它们采用加速处理策略。其他方法专注于改进模型结构以提高计算效率,例如注意力机制 [45; 15; 3] 或随着层数增加逐渐降低空间分辨率 [28; 47; 18]。与上述研究正交,作者提出使用参数反转设计来避免使用大型模型处理高分辨率图像,从而大大减少计算冗余。

3 Parameter-Inverted Image Pyramid Networks

为了构建高效的图像金字塔网络,作者采用多分支结构来处理不同分辨率的不同大小的模型。

picture.image

如图2所示,作者的架构由三部分组成:多分辨率分支、跨分支交互和分支合并。每个分支使用现成的预训练模型处理不同分辨率的图像,其中较大分辨率由参数较少的分支处理。每隔几个块添加跨分支交互,以融合不同特征尺度的特征。分支合并将所有分支的输出结合起来形成最终的输出。作者使用现有的预训练ViTs [42; 43; 40]来初始化分支,并从零开始初始化交互和分支合并。

Multi-Resolution Branches

多分辨率分支用于从不同的图像尺度和语义层次提取表示。首先通过双线性插值将输入图像调整为不同的分辨率,然后将其送入相应的分支以在不同尺度上提取特征。所有分支都具有相同数量的块,每个块包含一个或多个ViT[12]层。通常,由于预训练模型的不同,来自不同分支的块具有不同的特征维度,例如ViT-T、ViT-S和ViT-B。具有更大图像尺寸的分支具有较少的参数。为了清晰起见,作者将参数数量最多的分支(图像尺寸最小)称为分支1,第二多的称为分支2,依此类推。分支的第个块的输出表示为,其中、、、分别是分支的图像高度、图像宽度、 Patch 大小和特征维度。

Cross-branch Interactions

不同分辨率的分支关注不同的空间尺度和语义层次。为了增强不同尺度特征,作者提出了跨分支交互。每个跨分支交互由几个交互单元组成,每个单元在两个特征尺度相邻分支的输出之间建立联系。交互单元的结构如图3所示。

picture.image

具体来说,对于第1分支和第2分支的第个块的输出,分别表示为和,作者在这两个特征之间执行两次可变形交叉注意力[61],表示为。每个交叉注意力之前都有一个线性层,将键和值的特征维度投影到 Query 的维度,即从到或反之。在每个交叉注意力之后,添加了一个前馈网络以提供通道式的特征融合。FFN的隐藏维度比例设置为以节省计算开销。

对于交互单元中的第一个交叉注意力,交互过程可以表述为:

其中是LayerNorm[1],和是可学习的参数,是交互输出。和初始化为0 ,以确保由于交互,原始块的特征提取(即的分布)不会被大幅修改,更好地利用预训练权重。

类似地,通过切换 Query 和键/值执行第二个交叉注意力,以获得。输出和用于后续的特征提取。作者只在每对特征尺度相邻分支之间构建交互单元,例如第1分支与第2分支,以及第2分支与第3分支。

Branch Merging

最终,所有分支的 feature maps 具有不同的空间形状和特征维度,其中空间较大的 feature maps 具有较少的特征维度。单个 feature map 无法提供多尺度语义特征,因此作者采用分支合并模块来将所有分支的输出合并为单一的 feature map。

如图2所示,所有分支的输出首先通过 投影到分支1的特征维度(最大的特征维度)。然后,所有分支的输出通过双线性插值 上采样到最后一个分支的特征图大小(最大的特征图大小)。最后,这些具有相同空间形状和特征维度的输出通过可学习的标量权重 相加,形成最终的输出。这个过程可以表述为:

其中 是分支的数量。 是最终的 feature map,它在所有分支中具有最大的特征分辨率和最大的特征维度。

对于目标检测和语义分割, 是带有 GroupNorm [49] 的两层卷积,最终的输出 用于与 ViTDet [21] 类似的特征金字塔网络 [25]。

图4:通过调整输入分辨率,不同 PIIP 变体的性能。详细的分辨率配置和结果在附录中提供。

picture.image

对于图像分类,作者不使用分支合并模块,而是在每个分支后附加预训练模型的原始分类 Head 。最终的分类得分是所有分支输出 logits 的平均值。作者观察到,与在分支合并模块后使用随机初始化的 Head 相比,使用预训练的 Head 可以加快收敛速度。

4 实验部分

Implementation Details

为了与基础规模模型进行比较,作者使用预训练的ViT-T/S/B作为分支构建三分支PIIP网络,即PIIP-TSB。同样,使用ViT-S/B/L构建PIIP-SBL以匹配大型模型的计算量。作者还使用ViT-T/S/B/L构建四分支PIIP-TSBL。作者将交互次数(每个交互单元如图2所示包含2个)设置为12,即对于ViT-T/S/B每层之后,对于ViT-L则是每两层之后。作者构建了多种三分支和四分支模型的变体,它们具有不同的分辨率配置。

对于目标检测和分割,作者使用在ImageNet [10]上预训练的DeiT III [43]中的ViT-S/B/L,DeiT [42]中的ViT-T。对于6B规模实验,作者使用MAE [16]中的ViT-H和InternViT-GB [8]。

对于所有PIIP-SBL模型,作者使用ImageNet-21K 384分辨率的预训练权重以与先前的方法进行比较。作者在8个NVIDIA A800 GPU上采用AdamW [30]优化器和逐层学习率衰减[2]来训练模型。对于图像分类,在基础规模实验中,作者使用DeiT [42]中预训练的ViT-T/S/B权重。

在大型实验中,由于DeiT没有提供ViT-L模型,作者使用[40]中ImageNet-21K预训练的ViT-S/B/L权重。

Object Detection and Instance Segmentation

设置。 作者使用MS COCO [26]数据集来评估目标检测和实例分割的性能。基于MMDetection [6],作者使用了三种检测器,包括Mask R-CNN [17],Cascade R-CNN [4]和DINO [57]。遵循常见的做法[7],作者采用1(12个周期)或3(36个周期)的训练计划,并使用窗口注意力[21]以节省时间和内存。总批处理大小为16,初始学习率和权重衰减分别为1e-4和0.05。

表2:在COCO val2017上的目标检测和实例分割性能。'MS'表示多尺度训练。大尺寸模型使用在ImageNet-21K上训练的ViT权重。

picture.image

参数反转图像金字塔的有效性。 为了证明参数反转图像金字塔(PIIP)网络的性能和计算优势,作者在表1中对两种 Baseline 模型ViTDet-B和ViTDet-L [21]进行了验证。以三分支结构为例,在保持与ViTDet-B相似性能的同时,作者的PIIP-TSB在目标检测和实例分割任务中分别降低了47.5%(243G vs. 463G)和38.0%(287G vs. 463G)的计算成本。同样,与ViTDet-L相比,作者的PIIP-SBL在上面的两个任务中分别减少了大约52.9%(727G vs. 1,542G)和35.0%(1,002G vs. 1,542G)的计算成本。另一方面,与基尺寸和大型尺寸模型的结果 具有相似的计算成本。如表2所示,结合Mask R-CNN,PIIP比ViT-Adapter实现了更高的性能,大约在上高出0.9%和1.2%。使用更强大的检测器Cascade R-CNN和更强的训练计划(3 + MS),PIIP-TSB和PIIP-SBL分别实现了53.1%和54.5%的的竞争性能。最后,使用DINO [57]检测器,作者实现了57.9%的。

picture.image

使用InternViT-6B的结果。 作者进一步在非常大的视觉基础模型InternViT-6B [8]上检查PIIP,并最终使用Mask R-CNN 1训练计划达到了55.7%的。此外,正如表3所示,作者的PIIP可以节省近43%的计算量,并且在上比单分支InternViT-6B高出1.9%,在上高出0.9%。

picture.image

使用不同预训练方法的结果。 作者使用来自AugReg [40],Uni-Perceiver [62],MAE [16],DeiT III [43],DINOv2 [35]和BEiTv2 [36]的预训练ViT S/B/L权重初始化PIIP-SBL。如表4所示,使用BEiTv2初始化的模型取得了最佳性能。

picture.image

Semantic Segmentation

设置。 作者使用UperNet [52]作为基本框架,在MMSegmentation [9]的基础上对ADE20K [60]数据集进行训练。作者遵循[28]中的设置,将模型训练160k次迭代。批量大小、初始学习率和权重衰减分别为16、4e-5和0.05。

基础尺寸和大型模型的结果。 如表5所示,PIIP可以在较少的计算量下获得更好的性能。此外,在表6中,PIIP-TSB使用UperNet达到了51.6%的mIoU,超过InternImage-B [46] 1.4%。同样,PIIP-SBL产生了54.3%的mIoU结果,与ConvNeXt-XL [29]和InternImage-L [46]等同类方法相比表现出色。

picture.image

picture.image

使用InternViT-6B的结果。 与目标检测实验中得到的结论相似,作者的方法在不使用任何额外优化技术的情况下,实现了接近 Baseline 的性能,同时减少了约58%的FLOPs,最终达到了59.65%。

结果。 如表7所示,与DeiT Baseline 相比,作者的PIIP-SBL在保持性能的同时,将计算成本降低了36.7%(39.0G vs. 61.6G)。在使用与 Baseline 模型相似的计算成本时,PIIP-TSB和PIIP-SBL分别将top-1准确率提高了0.3%和0.7%。

picture.image

Ablation Study

参数反转图像网络的优越性。 作者通过将作者的方法与其他方法(例如,图1中的设计)进行比较,来评估图像金字塔和参数反转设计的有效性。首先,单分支的多尺度训练是图像金字塔实践中最简单的,如表9所示。与 Baseline 模型相比,其性能提升有限(44.8%对43.8%)。其次,作者通过控制分支模型的规模和输入分辨率,同时确保总计算成本相近来进行实验。具体来说,当使用相同的输入图像分辨率时,不同大小的模型组合并没有显著提高检测性能。相应地,当三个分支使用相同的模型(例如,BBB),将输入图像分辨率调整为金字塔结构时,最终模型在上的性能略有提升(44.5%对43.8%),但由于最大分辨率的降低,显著下降(38.7%对39.9%)。前者证明了图像金字塔的重要性,而后者进一步证明了需要图像金字塔来保持更大的图像尺度范围,这对于实例分割尤为重要。借鉴经验,参数反转图像网络是一种有效的设计方法,可以满足上述要求,特别是与相反配置的参数直接图像金字塔相比,即TSB与448/672/896分辨率(46.6%对42.6%)。如表9所示,在比 Baseline 更少的计算下,模型可以支持最大范围从672到1,568的图像输入,并且性能显著提升。

picture.image

表9:关于图像金字塔和参数反转设计的消融研究。 “PI”和“IP”,“Inter.”分别代表参数反转、图像金字塔和交互。‘MS’表示多尺度训练。

参数反转图像网络的设计指南。 通过大量实践,在扩大模型规模时有两条经验设计准则:1)优先增加最大图像分支的图像分辨率:如图5(a)中蓝色虚线圆圈所示,最大图像分支的输入分辨率大大增加,而不会导致总计算成本急剧增加。2)最大模型不需要超过比较的 Baseline 模型:引入更大模型将限制图像金字塔的分辨率范围,例如,根据图5(a),TSB比TBL更具成本效益。

picture.image

分支合并。 表8中的实验证明,所有分支的合并可以提供多尺度语义丰富的特征,从而获得最佳性能,相比之下,仅使用单个或部分分支的特征图效果不佳。

picture.image

注意力类型。 分支间信息交互的核心是跨注意力。作者采用PIIP-TSB与1120/896/448分辨率为基本模型,并研究两种不同的注意力机制。如表10所示,具有线性复杂度的可变形注意力[51]可以在不显著增加计算成本的情况下显著提高模型性能。作者最终使用可变形注意力作为默认配置。值得注意的是,将来可以将其替换为其他更高级的注意力机制以进一步提升性能。

picture.image

交互次数。 如表10所示,无论使用哪种注意力机制,增加交互次数将不同程度地提高模型性能。由于这也增加了计算成本,作者进一步探索了不同交互次数的成本效益。作者使用不同分辨率组合对不同交互次数的模型进行实验,所有结果的散点图显示在图5(b)中。可以看出,当交互次数较少(小于2)时,随着计算成本的增加,模型性能的增长趋势相对较慢。作者将其归因于交互太少,分支间信息补充不足。因此,作者默认使用12次交互。请注意,随着模型大小的增加(例如,更多层),交互次数也可以相应增加。分支间的交互方向。 作者在表11中比较了五种不同的交互方向。考虑到计算成本和性能,作者最终选择第四种方法,即相邻分支的双向连接作为默认选择。从表11的散点图中可以看出,所有交互方向都实现了令人满意的性能-计算平衡,验证了它们在改善分支间通信方面的能力。

picture.image

5 Conclusion

这篇论文提出了参数反转图像金字塔网络(PIIP),以解决传统图像金字塔的计算挑战。

通过参数反转设计和特征交互机制,PIIP有效地平衡了计算效率和性能。

在检测、分割和分类任务上的大量实验表明,PIIP在减少计算成本的同时,超越了传统方法和单分支网络,为未来的研究提供了一个高效且有效的多尺度特征融合框架。

参考

[1].Parameter-Inverted Image Pyramid Networks.

picture.image

扫码加入👉「集智书童」交流群

(备注: 方向+学校/公司+昵称 )

picture.image

picture.image

picture.image

picture.image

picture.image

picture.image

想要了解更多:

前沿AI视觉感知全栈知识👉「分类、检测、分割、关键点、车道线检测、3D视觉(分割、检测)、多模态、目标跟踪、NerF」

行业技术方案 👉「AI安防、AI医疗、AI自动驾驶」

AI模型部署落地实战 👉「CUDA、TensorRT、NCNN、OpenVINO、MNN、ONNXRuntime以及地平线框架」

欢迎扫描上方二维码,加入「 集智书童-知识星球 」,日常分享论文、学习笔记、问题解决方案、部署方案以及全栈式答疑,期待交流!

免责声明

凡本公众号注明“来源:XXX(非集智书童)”的作品,均转载自其它媒体,版权归原作者所有,如有侵权请联系我们删除,谢谢。

点击下方“ 阅读原文 ”,

了解更多AI学习路上的 「武功秘籍」

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
如何构建企业级云原生计算基础设施
云原生大数据是大数据平台新一代架构和运行形态。通过升级云原生架构,可以为大数据在弹性、多租户、敏捷开发、降本增效、安全合规、容灾和资源调度等方向上带来优势。本议题将依托字节跳动最佳实践,围绕云原生大数据解决方案进行展开。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论