【目标检测】【BiFPN】EfficientDet:Scalable and Efficient Object Detection

EfficientDet:可扩展且高效的目标检测

0.论文摘要

模型效率在计算机视觉中变得越来越重要。在本文中,我们系统地研究了用于目标检测的神经网络架构设计选择,并提出了几项关键优化以提高效率。首先,我们提出了一种加权双向特征金字塔网络(BiFPN),它可以轻松快速地进行多尺度特征融合;其次,我们提出了一种复合缩放方法,可以同时统一缩放所有骨干网络、特征网络以及框/类别预测网络的分辨率、深度和宽度。基于这些优化和EfficientNet骨干网络,我们开发了一个新的目标检测器系列,称为EfficientDet,它在广泛的资源限制范围内始终比现有技术实现更高的效率。特别是,在单模型和单尺度的情况下,我们的EfficientDet-D7在COCO test-dev数据集上以5200万参数和3250亿次浮点运算(FLOPs)实现了52.2 AP的最新水平,比之前的检测器小4到9倍,并且使用的FLOPs减少了13到42倍。

1.引言

近年来,目标检测的准确性取得了巨大进展;与此同时,最先进的目标检测器也变得越来越昂贵。例如,最新的基于AmoebaNet的NASFPN检测器[42]需要1.67亿个参数和3045亿次浮点运算(比RetinaNet[21]多30倍)才能达到最先进的精度。庞大的模型规模和昂贵的计算成本阻碍了它们在许多实际应用中的部署,例如机器人和自动驾驶汽车,这些应用对模型大小和延迟有严格的限制。鉴于这些实际资源限制,模型效率对于目标检测变得越来越重要。

以往有许多研究致力于开发更高效的检测器架构,例如单阶段检测器[24, 30, 31, 21]和无锚点检测器[18, 41, 37],或对现有模型进行压缩[25, 26]。尽管这些方法往往能够提高效率,但它们通常会牺牲准确性。此外,大多数先前的研究仅关注特定或小范围的资源需求,而现实世界中的应用场景,从移动设备到数据中心,往往需要满足不同的资源限制。

一个自然的问题是:是否有可能构建一种在广泛资源约束范围内(例如,从3B到300B FLOPs)既具有更高准确性又具有更好效率的可扩展检测架构?本文旨在通过系统研究检测器架构的各种设计选择来解决这一问题。基于单阶段检测器范式,我们研究了主干网络、特征融合以及分类/框网络的设计选择,并识别出两个主要挑战:

挑战1:高效的多尺度特征融合------自[20]引入以来,FPN已被广泛用于多尺度特征融合。最近,PANet [23]、NAS-FPN [8]以及其他研究[17, 15, 39]开发了更多用于跨尺度特征融合的网络结构。在融合不同输入特征时,大多数先前的工作只是简单地将它们相加,而不加区分;然而,由于这些不同的输入特征具有不同的分辨率,我们观察到它们通常对融合输出特征的贡献不均。为了解决这个问题,我们提出了一种简单但高效的加权双向特征金字塔网络(BiFPN),它引入了可学习的权重来学习不同输入特征的重要性,同时反复应用自上而下和自下而上的多尺度特征融合。

挑战2:模型扩展------以往的研究主要依赖于更大的骨干网络[21, 32, 31, 8]或更大的输入图像尺寸[11, 42]来提高精度,但我们发现,在同时考虑精度和效率的情况下,扩展特征网络和框/分类预测网络同样至关重要。受近期研究[36]的启发,我们提出了一种用于目标检测器的复合扩展方法,该方法联合扩展了骨干网络、特征网络和框/分类预测网络的分辨率/深度/宽度。

最后,我们还观察到,最近提出的EfficientNets [36] 相比之前常用的骨干网络具有更高的效率。通过将EfficientNet骨干网络与我们提出的BiFPN和复合缩放方法相结合,我们开发了一个新的目标检测器系列,命名为EfficientDet。该系列在显著减少参数和FLOPs的情况下,始终能够实现比之前目标检测器更高的精度。图1和图4展示了在COCO数据集 [22] 上的性能对比。在相似的精度约束下,我们的EfficientDet比YOLOv3 [31] 少使用28倍的FLOPs,比RetinaNet [21] 少使用30倍的FLOPs,比最近基于ResNet的NAS-FPN [8] 少使用19倍的FLOPs。特别是,在单模型和单测试尺度下,我们的EfficientDet-D7以5200万参数和3250亿FLOPs实现了52.2 AP的顶尖性能,比之前最好的检测器 [42] 高出1.5 AP,同时模型规模缩小了4倍,FLOPs减少了13倍。此外,我们的EfficientDet在GPU/CPU上的速度比之前的检测器快3到8倍。

通过简单的修改,我们还展示了我们的单模型单尺度EfficientDet在Pascal VOC 2012语义分割任务中以18B FLOPs实现了81.74%的mIOU准确率,比DeepLabV3+ [4]高出1.7%的准确率,同时FLOPs减少了9.8倍。

2.相关工作

一阶段目标检测器

现有的目标检测器主要根据是否包含感兴趣区域提议步骤进行分类,分为两阶段检测器(如[9, 32, 3, 11])和单阶段检测器(如[33, 24, 30, 21])。虽然两阶段检测器通常更加灵活且准确,但单阶段检测器通过利用预定义的锚点[14],通常被认为更简单且更高效。近年来,由于效率和简洁性,单阶段检测器吸引了大量关注[18, 39, 41]。在本文中,我们主要遵循单阶段检测器的设计,并展示了通过优化网络架构,可以实现更高的效率和更高的准确性。

多尺度特征表示

物体检测中的一个主要难点是如何有效地表示和处理多尺度特征。早期的检测器通常直接基于从骨干网络中提取的金字塔特征层次进行预测 [2, 24, 33]。作为开创性工作之一,特征金字塔网络(FPN)[20] 提出了一种自上而下的路径来结合多尺度特征。基于这一思想,PANet [23] 在 FPN 的基础上增加了一个额外的自下而上的路径聚合网络;STDL [40] 提出了一个尺度转移模块来利用跨尺度特征;M2det [39] 提出了一个 U 形模块来融合多尺度特征;G-FRNet [1] 引入了门控单元来控制特征间的信息流动。最近,NAS-FPN [8] 利用神经架构搜索自动设计特征网络拓扑。尽管它取得了更好的性能,但 NAS-FPN 在搜索过程中需要数千小时的 GPU 时间,且生成的特征网络不规则,难以解释。在本文中,我们旨在以更直观和原则性的方式优化多尺度特征融合。

模型缩放

为了获得更好的准确性,通常通过采用更大的骨干网络(例如,从移动端大小的模型 [35, 13] 和 ResNet [12],到 ResNeXt [38] 和 AmoebaNet [29])或增加输入图像尺寸(例如,从 512x512 [21] 到 1536x1536 [42])来扩展基线检测器。最近的一些工作 [8, 42] 表明,增加通道大小和重复特征网络也可以提高准确性。这些扩展方法主要关注单一或有限的扩展维度。最近,[36] 通过联合扩展网络宽度、深度和分辨率,展示了图像分类中显著的模型效率。我们提出的目标检测复合扩展方法主要受到 [36] 的启发。

3.BiFPN

在本节中,我们首先阐述了多尺度特征融合问题,然后介绍了我们提出的BiFPN的主要思想:高效的跨尺度双向连接和加权特征融合。

3.1 问题表述

多尺度特征融合旨在聚合不同分辨率的特征。形式上,给定一个多尺度特征列表 P i n = ( P l 1 i n , P l 2 i n , . . . ) P^{in} = (P^{in}{l_1} , P^{in}{l_2} , ...) Pin=(Pl1in,Pl2in,...),其中 P l i i n P^{in}_{l_i} Pliin表示第 l i l_i li 层的特征,我们的目标是找到一个变换 f f f,能够有效地聚合不同的特征并输出一个新的特征列表: P o u t = f ( P i n ) P^{out} = f(P^{in}) Pout=f(Pin)。作为一个具体示例,图2(a)展示了传统的自上而下的FPN [20]。它接收第3-7层的输入特征 P i n = ( P 3 i n , . . . P 7 i n ) P^{in} = (P_3^{in}, ...P_7^{in}) Pin=(P3in,...P7in),其中 P i i n P_i^{in} Piin 表示分辨率为输入图像 1 / 2 i 1/2^i 1/2i 的特征层。例如,如果输入分辨率为640x640,那么 P 3 i n P_3^{in} P3in 表示第3层特征( 640 / 2 3 = 80 640/2^3 = 80 640/23=80),分辨率为80x80,而 P 7 i n P_7^{in} P7in 表示第7层特征,分辨率为5x5。传统的FPN以自上而下的方式聚合多尺度特征:

图2:特征网络设计------(a) FPN [20] 引入了一条自上而下的路径,用于融合从第3层到第7层(P3 - P7)的多尺度特征;(b) PANet [23] 在FPN的基础上增加了一条自下而上的路径;© NAS-FPN [8] 使用神经架构搜索找到一种不规则的特征网络拓扑结构,然后重复应用相同的模块;(d) 是我们的BiFPN,它在准确性和效率之间实现了更好的平衡。

其中,Resize 通常用于分辨率匹配的上采样或下采样操作,而 Conv 通常用于特征处理的卷积操作。

3.2 跨尺度连接

传统的自上而下的FPN本质上受到单向信息流的限制。为了解决这一问题,PANet [23] 增加了一个额外的自下而上的路径聚合网络,如图2(b)所示。跨尺度连接在[17, 15, 39]中得到了进一步研究。最近,NAS-FPN [8] 使用神经架构搜索来寻找更好的跨尺度特征网络拓扑结构,但它在搜索过程中需要数千小时的GPU时间,并且找到的网络结构不规则,难以解释或修改,如图2©所示。

通过研究这三种网络的性能和效率(表5),我们观察到PANet在准确率上优于FPN和NAS-FPN,但代价是更多的参数和计算量。为了提高模型效率,本文提出了几种跨尺度连接的优化方法:首先,我们移除了那些只有一个输入边的节点。我们的直觉很简单:如果一个节点只有一个输入边且没有特征融合,那么它对旨在融合不同特征的特征网络贡献较小。这导致了一个简化的双向网络;其次,如果原始输入和输出节点处于同一层级,我们会在它们之间添加一条额外的边,以便在不增加太多成本的情况下融合更多特征;第三,与PANet[23]仅有一条自上而下和一条自下而上的路径不同,我们将每条双向(自上而下和自下而上)路径视为一个特征网络层,并多次重复相同的层,以实现更多的高层特征融合。第4.2节将讨论如何使用复合缩放方法确定不同资源约束下的层数。通过这些优化,我们将新的特征网络命名为双向特征金字塔网络(BiFPN),如图2和图3所示。

图3:EfficientDet架构------它采用EfficientNet [36]作为骨干网络,BiFPN作为特征网络,以及共享的分类/框预测网络。根据表1所示的不同资源限制,BiFPN层和分类/框网络层会重复多次。

表1:EfficientDet D0-D6的缩放配置------ φ φ φ是控制所有其他缩放维度的复合系数;BiFPN、框/分类网络和输入尺寸分别使用公式1、2、3进行缩放。

3.3 权重特征融合

在融合不同分辨率的特征时,常见的方法是先将它们调整到相同的分辨率,然后进行求和。金字塔注意力网络[19]引入了全局自注意力上采样来恢复像素定位,这一点在[8]中得到了进一步研究。所有先前的方法都平等对待所有输入特征,没有区别。然而,我们观察到,由于不同的输入特征处于不同的分辨率,它们通常对输出特征的贡献是不均等的。为了解决这个问题,我们提出为每个输入添加一个额外的权重,让网络学习每个输入特征的重要性。基于这一想法,我们考虑了三种加权融合方法:

其中,wi 是一个可学习的权重,可以是标量(每个特征)、向量(每个通道)或多维张量(每个像素)。我们发现,使用标量权重可以在最小计算成本的情况下实现与其他方法相当的精度。然而,由于标量权重是无界的,可能会导致训练不稳定。因此,我们采用权重归一化来限制每个权重的取值范围。

一个直观的想法是对每个权重应用softmax,使得所有权重被归一化为0到1之间的概率值,表示每个输入的重要性。然而,正如我们在第6.3节的消融实验中所展示的,额外的softmax操作会导致GPU硬件上的显著性能下降。为了最小化额外的延迟成本,我们进一步提出了一种快速融合方法。

其中,通过在每个 w i w_i wi后应用ReLU确保 w i ≥ 0 w_i ≥ 0 wi≥0,且KaTeX parse error: Unknown accent ' ̨' at position 1: ǫ̲̲= 0.0001是一个小值,用于避免数值不稳定性。同样,每个归一化权重的值也落在0到1之间,但由于这里没有使用softmax操作,因此效率更高。我们的消融研究表明,这种快速融合方法的学习行为和准确性与基于softmax的融合非常相似,但在GPU上的运行速度提高了30%(表6)。

表6:不同特征融合的对比------我们的快速融合方法在准确率上与基于softmax的融合方法相当,但运行速度提高了28% - 31%。

我们的最终BiFPN结合了双向跨尺度连接和快速归一化融合。作为一个具体示例,这里我们描述了图2(d)中BiFPN在层级6上的两个融合特征:

其中, P 6 t d P_6^{td} P6td 是自上而下路径中第6层的中间特征, P 6 o u t P^{out}_6 P6out 是自下而上路径中第6层的输出特征。所有其他特征均以类似方式构建。值得注意的是,为了进一步提高效率,我们使用深度可分离卷积[5, 34]进行特征融合,并在每次卷积后添加批归一化和激活函数。

4.EfficientDet

基于我们的BiFPN,我们开发了一系列新的检测模型,名为EfficientDet。在本节中,我们将讨论EfficientDet的网络架构和一种新的复合缩放方法。

4.1 EfficientDet架构

图3展示了EfficientDet的整体架构,该架构主要遵循单阶段检测器的范式[24, 30, 20, 21]。我们采用ImageNet预训练的EfficientNets作为骨干网络。我们提出的BiFPN作为特征网络,它从骨干网络中提取3-7层的特征{P3, P4, P5, P6, P7},并反复应用自上而下和自下而上的双向特征融合。这些融合后的特征被输入到类别和框网络中,分别生成目标类别和边界框的预测。与[21]类似,类别和框网络的权重在所有特征层之间共享。

图3:EfficientDet架构------它采用EfficientNet [36]作为骨干网络,BiFPN作为特征网络,以及共享的分类/框预测网络。BiFPN层和分类/框网络层根据不同的资源限制重复多次,如表1所示。

4.2 复合缩放

为了在准确性和效率上实现优化,我们希望开发一系列能够满足广泛资源约束的模型。这里的一个关键挑战是如何扩展基线EfficientDet模型。

以往的工作大多通过使用更大的骨干网络(如ResNeXt [38]或AmoebaNet [29])、更大的输入图像或堆叠更多的FPN层 [8] 来扩展基线检测器。这些方法通常效果不佳,因为它们只关注单一或有限的扩展维度。最近的研究 [36] 通过联合扩展网络宽度、深度和输入分辨率的所有维度,在图像分类任务中取得了显著性能。受这些工作 [8, 36] 的启发,我们提出了一种新的目标检测复合扩展方法,该方法使用一个简单的复合系数 φ φ φ来联合扩展骨干网络、BiFPN网络、分类/框网络和分辨率的所有维度。与 [36] 不同,目标检测器比图像分类模型具有更多的扩展维度,因此对所有维度进行网格搜索的成本极高。因此,我们采用了一种基于启发式的扩展方法,但仍遵循联合扩展所有维度的主要思想。

骨干网络------我们重用了EfficientNet-B0到B6的宽度/深度缩放系数[36],以便能够轻松地复用它们在ImageNet上预训练的检查点。

BiFPN网络------我们线性增加BiFPN深度 D b i f p n D_{bifpn} Dbifpn(层数),因为深度需要四舍五入为较小的整数。对于BiFPN宽度 W b i f p n W_{bifpn} Wbifpn(通道数),我们按照与[36]类似的方式指数级增长BiFPN宽度 W b i f p n W_{bifpn} Wbifpn(通道数)。具体来说,我们在{1.2, 1.25, 1.3, 1.35, 1.4, 1.45}这一系列值上进行网格搜索,并选择最佳值1.35作为BiFPN宽度缩放因子。正式地,BiFPN宽度和深度通过以下公式进行缩放:

框/类别预测网络------我们将其宽度固定为始终与BiFPN相同(即 W p r e d = W b i f p n W_{pred} = W_{bifpn} Wpred=Wbifpn),但使用公式线性增加深度(层数):

输入图像分辨率------由于BiFPN使用了第3-7层特征,输入分辨率必须能被 2 7 = 128 2^7 = 128 27=128整除,因此我们使用以下公式线性增加分辨率:

根据公式1、2、3,我们开发了从EfficientDet-D0( φ = 0 φ = 0 φ=0)到D7( φ = 7 φ = 7 φ=7)的模型,如表1所示,其中D7与D6相同,只是分辨率更高。值得注意的是,我们的缩放方法是基于启发式的,可能不是最优的,但我们将在图6中展示,这种简单的缩放方法相比其他单一维度的缩放方法可以显著提高效率。

图6:不同缩放方法的比较,复合缩放实现了更高的准确性和效率。

5.实验

5.1 EfficientDet目标检测

我们在COCO 2017检测数据集[22]上评估了EfficientDet,该数据集包含118K张训练图像。每个模型均使用SGD优化器进行训练,动量为0.9,权重衰减为4e-5。学习率在第一个训练周期内从0线性增加到0.16,然后使用余弦衰减规则进行退火。在每个卷积层后添加同步批归一化,批归一化衰减为0.99,epsilon为1e-3。与[36]相同,我们使用swish激活函数[28, 6]和指数移动平均,衰减率为0.9998。我们还采用了常用的焦点损失[21],其中α = 0.25,γ = 1.5,以及长宽比{1/2, 1, 2}。每个模型在32个TPUv3核心上以每核心4的批量大小进行训练,总批量大小为128。我们使用RetinaNet[21]的预处理方法,包括训练时的多分辨率裁剪/缩放和翻转增强。值得注意的是,我们没有在任何模型中使用自动增强[42]。

表2比较了EfficientDet与其他目标检测器在单模型单尺度设置下且无测试时增强的性能。我们报告了test-dev(20K张无公开标注的测试图像)和val(5K张有标注的验证图像)的准确率。我们的EfficientDet在广泛准确率或资源限制下,比之前的检测器效率更高,模型大小缩小了4倍至9倍,FLOPs减少了13倍至42倍。在相对低准确率范围内,我们的EfficientDet-D0在FLOPs减少28倍的情况下,达到了与YOLOv3相似的准确率。与RetinaNet [21] 和 Mask-RCNN [11] 相比,我们的EfficientDet-D1在参数减少8倍、FLOPs减少21倍的情况下,达到了相似的准确率。在高准确率范围内,我们的EfficientDet也始终优于最近的NAS-FPN [8] 及其在 [42] 中的增强版本,且参数和FLOPs更少。特别是,我们的EfficientDet-D7在单模型单尺度下,在test-dev上达到了52.2 AP的新纪录,在val上达到了51.8 AP。值得注意的是,与需要特殊设置的大型AmoebaNet + NAS-FPN + AutoAugment模型 [42](例如,将锚点从3x3更改为9x9,使用模型并行训练,并依赖昂贵的自动增强)不同,所有EfficientDet模型都使用相同的3x3锚点,并且在没有模型并行的情况下进行训练。

表2:EfficientDet在COCO数据集上的性能[22]------结果为单模型单尺度的结果。test-dev是COCO测试集,val是验证集。Params和FLOPs分别表示参数数量和乘加运算次数。Latency表示批大小为1时的推理延迟。AA表示自动增强[42]。我们将具有相似精度的模型分组,并在每组中比较它们的模型大小、FLOPs和延迟。

除了参数量和浮点运算次数(FLOPs)外,我们还比较了在Titan-V GPU和单线程Xeon CPU上的实际延迟。我们以批量大小为1运行每个模型10次,并报告平均值和标准差。图4展示了模型大小、GPU延迟和单线程CPU延迟的比较。为了公平比较,这些图表仅包含在同一台机器上使用相同设置测量的结果。与之前的检测器相比,EfficientDet模型在GPU上快了最多3.2倍,在CPU上快了最多8.1倍,表明它们在实际硬件上也具有高效性。

图4:模型大小与推理延迟对比------延迟是在配备Titan V GPU和Xeon CPU的同一台机器上,以批量大小为1进行测量的。AN表示使用自动增强训练的AmoebaNet + NAS-FPN [42]。我们的EfficientDet模型比其他检测器小4倍至6.6倍,在GPU上快2.3倍至3.2倍,在CPU上快5.2倍至8.1倍。

5.2 EfficientDet用于语义分割

虽然我们的EfficientDet模型主要设计用于目标检测,但我们也对其在其他任务(如语义分割)上的表现感兴趣。参考[16],我们对EfficientDet模型进行了修改,保留了BiFPN中的特征层级{P2, P3, ..., P7},但仅使用P2进行最终的逐像素分类。为简化起见,这里我们仅评估基于EfficientDet-D4的模型,该模型使用了ImageNet预训练的EfficientNet-B4骨干网络(与ResNet-50规模相似)。我们将BiFPN的通道大小设置为128,分类头的通道大小设置为256。BiFPN和分类头均重复3次。

表3展示了我们的模型与之前的DeepLabV3+ [4]在Pascal VOC 2012 [7]上的对比。值得注意的是,我们排除了那些使用集成、测试时增强或COCO预训练的结果。在相同的单模型单尺度设置下,我们的模型比DeepLabV3+ [4]的现有技术实现了1.7%的精度提升,同时减少了9.8倍的FLOPs。这些结果表明,EfficientDet在语义分割方面也表现出很大的潜力。

6.消融实验

在本节中,我们对所提出的EfficientDet的各种设计选择进行了消融实验。为简化起见,此处所有精度结果均基于COCO验证集。

6.1 解耦骨干网络与BiFPN

由于EfficientDet同时使用了强大的主干网络和新的BiFPN,我们希望了解它们各自对精度和效率提升的贡献。表4比较了主干网络和BiFPN的影响。我们从使用ResNet-50主干网络和自上而下FPN的RetinaNet检测器开始,首先将主干网络替换为EfficientNet-B3,这在大致相同的参数和FLOPs下将精度提高了约3 AP。接着,我们将FPN替换为我们提出的BiFPN,进一步获得了4 AP的提升,同时参数和FLOPs大幅减少。这些结果表明,EfficientNet主干网络和BiFPN对于我们的最终模型都至关重要。

表4:解耦主干网络和BiFPN------从标准的RetinaNet(ResNet50+FPN)开始,我们首先将主干网络替换为EfficientNet-B3,然后将基线FPN替换为我们提出的BiFPN。

6.2 BiFPN 跨尺度连接

表5展示了图2中列出的具有不同跨尺度连接的特征网络的准确性和模型复杂度。值得注意的是,原始的FPN [20]和PANet [23]仅具有一个自上而下或自下而上的信息流,但为了公平比较,这里我们将它们各自重复多次,并将所有卷积替换为深度可分离卷积,这与BiFPN相同。我们在所有实验中使用相同的骨干网络和类别/框预测网络,以及相同的训练设置。可以看出,传统的自上而下FPN由于单向信息流的固有局限性,准确率最低。虽然重复的FPN+PANet比NASFPN [8]实现了略高的准确率,但它也需要更多的参数和FLOPs。我们的BiFPN与重复的FPN+PANet实现了相似的准确率,但使用的参数和FLOPs要少得多。通过额外的加权特征融合,我们的BiFPN进一步以更少的参数和FLOPs实现了最佳准确率。

表5:不同特征网络的对比------我们加权的BiFPN在参数和FLOPs更少的情况下实现了最佳精度。

6.3 Softmax与快速归一化融合

如第3.3节所述,我们提出了一种快速归一化特征融合方法,以在保留归一化权重优势的同时,避免使用计算昂贵的softmax。表6比较了三种不同模型尺寸的检测器中softmax和快速归一化融合方法的表现。结果显示,我们的快速归一化融合方法在精度上与基于softmax的融合方法相当,但在GPU上的运行速度提升了1.26倍至1.31倍。

为了进一步理解基于softmax和快速归一化融合的行为,图5展示了从EfficientDet-D3的BiFPN层中随机选择的三个特征融合节点的学习权重。值得注意的是,归一化权重(例如,基于softmax融合的 e w i / ∑ j e w j e^{w_i} / ∑_j e^{w_j} ewi/∑jewj,以及快速归一化融合的 w i / ( ϵ + ∑ j w j ) w_i/(\epsilon + ∑_j w_j) wi/(ϵ+∑jwj)对于所有输入总是求和为1。有趣的是,归一化权重在训练过程中变化迅速,表明不同特征对特征融合的贡献不均。尽管变化迅速,我们的快速归一化融合方法在所有三个节点上始终表现出与基于softmax的融合非常相似的学习行为。

图5:Softmax与快速归一化特征融合对比------(a)至©展示了训练过程中三个代表性节点的归一化权重(即重要性);每个节点有两个输入(input1和input2),它们的归一化权重总和始终为1。

6.4 复合缩放

如第4.2节所述,我们采用了一种复合缩放方法,同时扩展了主干网络、BiFPN以及框/类别预测网络的深度/宽度/分辨率维度。图6将我们的复合缩放方法与仅扩展分辨率/深度/宽度单一维度的其他方法进行了比较。尽管从相同的基线检测器出发,我们的复合缩放方法在效率上优于其他方法,这表明通过更好地平衡不同架构维度进行联合缩放的优势。

图6:不同缩放方法的比较,复合缩放实现了更高的准确性和效率。

7.总结

在本文中,我们系统地研究了高效目标检测的网络架构设计选择,并提出了一种加权双向特征网络和定制的复合缩放方法,以提高准确性和效率。基于这些优化,我们开发了一个新的检测器家族,名为EfficientDet,它在广泛的资源限制范围内始终比现有技术实现更好的准确性和效率。特别是,我们缩放的EfficientDet在参数和FLOPs远少于以往目标检测和语义分割模型的情况下,实现了最先进的准确性。

8.参考文献

  • [1] Md Amirul Islam, Mrigank Rochan, Neil DB Bruce, and Yang Wang. Gated feedback refinement network for dense image labeling. CVPR, pages 3751--3759, 2017. 2
  • [2] Zhaowei Cai, Quanfu Fan, Rogerio S Feris, and Nuno Vasconcelos. A unified multi-scale deep convolutional neural network for fast object detection. ECCV, pages 354--370, 2016. 2
  • [3] Zhaowei Cai and Nuno Vasconcelos. Cascade r-cnn: Delving into high quality object detection. CVPR, pages 6154--6162, 2018. 2
  • [4] Liang-Chieh Chen, Yukun Zhu, George Papandreou, Florian Schroff, and Hartwig Adam. Encoder-decoder with atrous separable convolution for semantic image segmentation. ECCV, 2018. 2, 6, 7
  • [5] Fran ̧cois Chollet. Xception: Deep learning with depthwise separable convolutions. CVPR, pages 1610--02357, 2017. 4
  • [6] Stefan Elfwing, Eiji Uchibe, and Kenji Doya. Sigmoidweighted linear units for neural network function approximation in reinforcement learning. Neural Networks, 107:3--11, 2018. 5
  • [7] Mark Everingham, S. M. Ali Eslami, Luc Van Gool, Christopher K. I. Williams, John Winn, and Andrew Zisserman. The pascal visual object classes challenge: A retrospective. International Journal of Computer Vision, 2015. 7
  • [8] Golnaz Ghiasi, Tsung-Yi Lin, Ruoming Pang, and Quoc V. Le. Nas-fpn: Learning scalable feature pyramid architecture for object detection. CVPR, 2019. 2, 3, 4, 6, 7
  • [9] Ross Girshick. Fast r-cnn. ICCV, 2015. 2
  • [10] Kaiming He, Ross Girshick, and Piotr Dolla ́r. Rethinking imagenet pre-training. ICCV, 2019. 6
  • [11] Kaiming He, Georgia Gkioxari, Piotr Dolla ́r, and Ross Girshick. Mask r-cnn. ICCV, pages 2980--2988, 2017. 1, 2, 5
  • [12] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. CVPR, pages 770--778, 2016. 1, 2, 7
  • [13] Andrew Howard, Mark Sandler, Grace Chu, Liang-Chieh Chen, Bo Chen, Mingxing Tan, Weijun Wang, Yukun Zhu, Ruoming Pang, Vijay Vasudevan, Quoc V. Le, and Hartwig Adam. Searching for mobilenetv3. ICCV, 2019. 2
  • [14] Jonathan Huang, Vivek Rathod, Chen Sun, Menglong Zhu, Anoop Korattikara, Alireza Fathi, Ian Fischer, Zbigniew Wojna, Yang Song, Sergio Guadarrama, et al. Speed/accuracy trade-offs for modern convolutional object detectors. CVPR, 2017. 2
  • [15] Seung-Wook Kim, Hyong-Keun Kook, Jee-Young Sun, Mun-Cheon Kang, and Sung-Jea Ko. Parallel feature pyramid network for object detection. ECCV, 2018. 2, 3
  • [16] Alexander Kirillov, Ross Girshick, Kaiming He, and Piotr Dolla ́r. Panoptic feature pyramid networks. CVPR, 2019. 6
  • [17] Tao Kong, Fuchun Sun, Chuanqi Tan, Huaping Liu, and Wenbing Huang. Deep feature pyramid reconfiguration for object detection. ECCV, 2018. 2, 3
  • [18] Hei Law and Jia Deng. Cornernet: Detecting objects as paired keypoints. ECCV, 2018. 1, 2
  • [19] Hanchao Li, Pengfei Xiong, Jie An, and Lingxue Wang. Pyramid attention networks. BMVC, 2018. 3
  • [20] Tsung-Yi Lin, Piotr Dolla ́r, Ross Girshick, Kaiming He, Bharath Hariharan, and Serge Belongie. Feature pyramid networks for object detection. CVPR, 2017. 1, 2, 3, 4, 7
  • [21] Tsung-Yi Lin, Piotr Dolla ́r, Ross Girshick, Kaiming He, Bharath Hariharan, and Serge Belongie. Focal loss for dense object detection. ICCV, 2017. 1, 2, 4, 5, 6, 7
  • [22] Tsung-Yi Lin, Michael Maire, Serge Belongie, James Hays, Pietro Perona, Deva Ramanan, Piotr Dolla ́r, and C Lawrence Zitnick. Microsoft COCO: Common objects in context. ECCV, 2014. 2, 5, 6
  • [23] Shu Liu, Lu Qi, Haifang Qin, Jianping Shi, and Jiaya Jia. Path aggregation network for instance segmentation. CVPR, 2018. 2, 3, 7
  • [24] Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, Scott Reed, Cheng-Yang Fu, and Alexander C Berg. SSD: Single shot multibox detector. ECCV, 2016. 1, 2, 4
  • [25] Zhuang Liu, Mingjie Sun, Tinghui Zhou, Gao Huang, and Trevor Darrell. Rethinking the value of network pruning. ICLR, 2019. 1
  • [26] Jonathan Pedoeem and Rachel Huang. Yolo-lite: a real-time object detection algorithm optimized for non-gpu computers. arXiv preprint arXiv:1811.05588, 2018. 1
  • [27] Chao Peng, Tete Xiao, Zeming Li, Yuning Jiang, Xiangyu Zhang, Kai Jia, Gang Yu, and Jian Sun. Megdet: A large mini-batch object detector, 2018. 6
  • [28] Prajit Ramachandran, Barret Zoph, and Quoc V Le. Searching for activation functions. ICLR workshop, 2018. 5
  • [29] Esteban Real, Alok Aggarwal, Yanping Huang, and Quoc V Le. Regularized evolution for image classifier architecture search. AAAI, 2019. 2, 4
  • [30] Joseph Redmon and Ali Farhadi. Yolo9000: better, faster, stronger. CVPR, 2017. 1, 2, 4
  • [31] Joseph Redmon and Ali Farhadi. Yolov3: An incremental improvement. arXiv preprint arXiv:1804.02767, 2018. 1, 2, 6
  • [32] Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun. Faster r-cnn: Towards real-time object detection with region proposal networks. NIPS, 2015. 2
  • [33] Pierre Sermanet, David Eigen, Xiang Zhang, Michae ̈l Mathieu, Rob Fergus, and Yann LeCun. Overfeat: Integrated recognition, localization and detection using convolutional networks. ICLR, 2014. 2
  • [34] Laurent Sifre. Rigid-motion scattering for image classification. Ph.D. thesis section 6.2, 2014. 4
  • [35] Mingxing Tan, Bo Chen, Ruoming Pang, Vijay Vasudevan, and Quoc V Le. Mnasnet: Platform-aware neural architecture search for mobile. CVPR, 2019. 2
  • [36] Mingxing Tan and Quoc V. Le. Efficientnet: Rethinking model scaling for convolutional neural networks. ICML, 2019. 1, 2, 4, 5
  • [37] Zhi Tian, Chunhua Shen, Hao Chen, and Tong He. Fcos: Fully convolutional one-stage object detection. ICCV, 2019. 1
  • [38] Saining Xie, Ross Girshick, Piotr Dolla ́r, Zhuowen Tu, and Kaiming He. Aggregated residual transformations for deep neural networks. CVPR, pages 5987--5995, 2017. 2, 4
  • [39] Qijie Zhao, Tao Sheng, Yongtao Wang, Zhi Tang, Ying Chen, Ling Cai, and Haibin Ling. M2det: A single-shot object detector based on multi-level feature pyramid network. AAAI, 2019. 2, 3
  • [40] Peng Zhou, Bingbing Ni, Cong Geng, Jianguo Hu, and Yi Xu. Scale-transferrable object detection. CVPR, pages 528537, 2018. 2
  • [41] Xingyi Zhou, Dequan Wang, and Philipp Kra ̈henbu ̈hl. Objects as points. arXiv preprint arXiv:1904.07850, 2019. 1, 2
  • [42] Barret Zoph, Ekin D. Cubuk, Golnaz Ghiasi, Tsung-Yi Lin, Jonathon Shlens, and Quoc V. Le. Learning data augmentation strategies for object detection. arXiv preprint arXiv:1804.02767, 2019. 1, 2, 5, 6, 7
相关推荐
风象南1 天前
Claude Code这个隐藏技能,让我告别PPT焦虑
人工智能·后端
Mintopia1 天前
OpenClaw 对软件行业产生的影响
人工智能
陈广亮1 天前
构建具有长期记忆的 AI Agent:从设计模式到生产实践
人工智能
会写代码的柯基犬1 天前
DeepSeek vs Kimi vs Qwen —— AI 生成俄罗斯方块代码效果横评
人工智能·llm
Mintopia1 天前
OpenClaw 是什么?为什么节后热度如此之高?
人工智能
爱可生开源社区1 天前
DBA 的未来?八位行业先锋的年度圆桌讨论
人工智能·dba
叁两1 天前
用opencode打造全自动公众号写作流水线,AI 代笔太香了!
前端·人工智能·agent
前端付豪1 天前
LangChain记忆:通过Memory记住上次的对话细节
人工智能·python·langchain
strayCat232551 天前
Clawdbot 源码解读 7: 扩展机制
人工智能·开源