文章目录
摘要
本文主要研究如何提高模型的效率,并提出了EfficientDet新的目标检测器。
首先,我们提出了一种 weighted bi-directional feature pyramid network (加权双向特征金字塔网络——BiFPN),它可以方便、快速地进行多尺度特征融合;
其次,我们提出了一种 compound scaling method(复合缩放方法),可以同时对所有主干、特征网络和盒/类预测网络的分辨率、深度和宽度进行统一缩放。
其中EfficientDet-D7采用单模和单标度,在COCO test-dev上达到了55.1 AP,具有77M参数和410B FLOPs(FLOPs表示乘加次数),比以前的探测器小4倍-9倍,使用的触发器少13倍-42倍。
代码请点击链接
1、介绍
上面两张图展示的是模型计算量和COCO上的准确率关系图
我们确定了两个主要挑战:
- 高效的多尺度特征融合——不同的输入特征具有不同的分辨率,他们对融合输出特征的贡献通常是不相等的。针对此问题,我们提出weighted bi-directional feature pyramid network (加权双向特征金字塔网络——BiFPN)。该方法引入可学习的权值来学习不同输入特征的重要性,同时反复应用自上而下和自下而上的多尺度特征融合。
- 模型缩放——在以前想要获得更高的精度主要依靠更大的骨干网络或者更大的输入图像大小,现在我们发现在兼顾精度和效率的情况下,放大特征网络和盒/类预测网络也是至关重要的。因此我们提出一种用于目标检测器的复合缩放方法,它可以联合放大所有主干、特征网络、盒/类预测网络的分辨率/深度/宽度。
我们将提出的两个方法与EfficientNets网络相结合,命名为EfficientDet。它可以以更少的参数和FLOPs(触发器)来获得更好的精度。
2、相关工作
- One-Stage Detectors——单阶段检测器
- Multi-Scale Feature Representations——多尺度特征表示
- Model Scaling——模型缩放
3、BiFPN
3.1、提出问题
多尺度特征融合旨在聚合不同分辨率的特征。
有多尺度特征列表: P ⃗ i n = ( P l 1 i n , P l 2 i n , . . . ) \vec{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 ) \vec{P}^{out}=f(\vec P^{in}) Pout=f(Pin)。
上面Figure2中的(a)是传统的自上向下的FPN网络。它需要第三到七层的输入特征 P ⃗ i n = ( P 3 i n , . . . , P 7 i n ) \vec{P}^{in}=(P^{in}_{3},...,P^{in}_{7}) Pin=(P3in,...,P7in),其中 P i i n P^{in}_{i} Piin代表分辨率为输入图像分辨率的 1 / 2 i 1/2^i 1/2i的特征层。举个例子,如果输入分辨率是 640 ∗ 640 640*640 640∗640,那么 P 3 i n P^{in}_{3} P3in