【目標檢測】【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=(Pl1?in?,Pl2?in?,...),其中 P l i i n P^{in}_{l_i} Pli?in?表示第 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: o???= 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?/j?ewj?,以及快速歸一化融合的 w i / ( ? + ∑ j w j ) w_i/(\epsilon + ∑_j w_j) wi?/(?+j?wj?對于所有輸入總是求和為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

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/71627.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/71627.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/71627.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

拖動線條改變區域大小

瀏覽網頁時,經常看到這樣一個功能,可以通過拖拽線條,改變左右區域大小 在管理后臺中更為常見,菜單的寬度如果固定死,而后續新增的菜單名稱又不固定,所以很可能導致換行,樣式不太美觀&#xff0c…

輸入框元素覆蓋沖突

后端響應中的 "trainingKbGroupName": "基礎死型" 通過searchForm2.initFormData(rowData[0]);操作會把基礎死型四個字填充到<div class"col-sm-5 form-group"> <label class"col-sm-3 control-label">知識點分組名稱<…

【LLM】Llama 3 論文精讀

導言 Llama 3.5系列模型的發布&#xff1a; Llama 3.5系列模型是開源的&#xff0c;最大模型參數為405B&#xff08;[[稠密Transformer架構]]&#xff0c;而不是MOE 架構&#xff09;&#xff0c;上下文窗口長度為128K。模型支持多語言和工具使用&#xff0c;并且在某些評估中已…

selenium環境搭建

1. 安裝selenium pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/如遇以下報錯 Getting requirements to build wheel ... errorerror: subprocess-exited-with-error Getting requirements to build wheel did not run successfully.│ exit code: 1╰─…

My first Android application

界面元素組成&#xff1a; 功能代碼&#xff1a; /*實現功能&#xff1a;當輸入內容后&#xff0c;歡迎文本發生相應改變&#xff0c;并清除掉文本域內容當未輸入任何內容時&#xff0c;彈出提示文本以警告用戶*/val greetingText findViewById<TextView>(R.id.printer)…

js版本ES6、ES7、ES8、ES9、ES10、ES11、ES12、ES13、ES14[2023]新特性

ES全稱ECMAScript,ECMAScript是ECMA制定的標準化腳本語言,本文講述Javascript[ECMAScript]版本ES6、ES7、ES8、ES9、ES10、ES11、ES12、ES13、ES14[2023]的新特性,幫助朋友們更好的熟悉和使用Javascript ES5 1.嚴格模式 use strict2.Object getPrototypeOf,返回一個對象的原…

Redis數據結構-String字符串

1.String字符串 字符串類型是Redis中最基礎的數據結構&#xff0c;關于數據結構與要特別注意的是&#xff1a;首先Redis中所有的鍵的類型都是字符串類型&#xff0c;而且其他集中數據結構也都是在字符串類似基礎上進行構建&#xff0c;例如列表和集合的元素類型是字符串類型&a…

cline通過硅基流動平臺接入DeepSeek-R1模型接入指南

為幫助您更高效、安全地通過硅基流動平臺接入DeepSeek-R1模型&#xff0c;以下為優化后的接入方案&#xff1a; DeepSeek-R1硅基流動平臺接入指南 &#x1f4cc; 核心優勢 成本低廉&#xff1a;注冊即送2000萬Tokens&#xff08;價值約14元&#xff09;高可用性&#xff1a;規…

Java多線程三:補充知識

精心整理了最新的面試資料&#xff0c;有需要的可以自行獲取 點擊前往百度網盤獲取 點擊前往夸克網盤獲取 Lambda表達式 簡介&#xff1a; 希臘字母表中排序第十一位的字母&#xff0c;英語名稱為Lambda避免匿名內部類定義過多其實質屬于函數式編程的概念 為什么要使用lam…

裝修流程圖: 裝修前準備 → 設計階段 → 施工階段 → 安裝階段 → 收尾階段 → 入住

文章目錄 引言I 毛坯房裝修的全流程**1. 裝修前準備****1.1 確定裝修預算****1.2 選擇裝修方式****1.3 選擇裝修公司****1.4 辦理裝修手續****2. 設計階段****2.1 量房****2.2 設計方案****2.3 確認方案****3. 施工階段****3.1 主體拆改****3.2 水電改造****3.3 防水工程****3.…

Embedding方法:從Word2Vec到ltem2Vec

引言 在推薦系統領域&#xff0c;如何有效表征物品特征始終是核心挑戰。傳統協同過濾方法受限于稀疏性問題&#xff0c;直到2016年微軟研究院提出的Item2Vec方法&#xff0c;將自然語言處理中的Word2Vec技術創造性應用于物品表征學習&#xff0c;開啟了嵌入學習的新紀元。 It…

Udp發送和接收數據(python和QT)

服務端代碼 (python) import socketdef udp_server(host0.0.0.0, port12345):# 創建一個UDP套接字sock socket.socket(socket.AF_INET, socket.SOCK_DGRAM)# 綁定服務器的IP地址和端口號sock.bind((host, port))print(f"UDP服務器已啟動&#xff0c;監聽端口 {port}...&…

VBA腳本將DeepSeek嵌入Word中教程

一、獲取API-Key 目前我們可以直接只用官網的API來實現&#xff0c;申請這一步是關鍵 也可以直接訪問官網的API平臺&#xff1a;https://platform.deepseek.com/ &#xff0c;沒注冊的注冊完登錄一下&#xff0c;我們點擊到左側菜單的“APIKeys”按鈕&#xff0c;然后點擊右側…

DeepSeek接入Siri(已升級支持蘋果手表)完整版硅基流動DeepSeek-R1部署

DeepSeek接入Siri&#xff08;已升級支持蘋果手表&#xff09;完整版硅基流動DeepSeek-R1部署 **DeepSeek** 是一款專注于深度學習和人工智能的工具或平臺&#xff0c;通常與人工智能、機器學習、自動化分析等領域有關。它的主要功能可能包括&#xff1a;深度學習模型搜索&…

網站搭建基本流程

需求分析&#xff1a; 實現網站搭建的過程&#xff1a;首先進行網站的需求性分析 網站可分為前臺系統和后臺系統&#xff0c;由不同的功能拆分為不同的模塊 如下是一個電商網站可以拆分出的模塊&#xff1a; 在編寫代碼前&#xff0c;我們要先對網站進行架構&#xff0c;通過…

解決elementUi el-select 響應式不生效的問題

情況一,字段類型不匹配 考慮option的value值的字段類型是否和api返回的字段類型一致&#xff0c;如果一個為字符串一個為數字類型是無法匹配上的 <template> <div><el-select v-model"value" size"large"style"width: 240px"&…

QT實戰-基于QWidget實現的異形tip窗口

本文主要介紹了qt中,基于QWidget實現異形tip窗口的幾種實現方式,話不多說,先上圖, 1.使用QPainter和QPainterPath實現 代碼:tipwnd1.h #ifndef TIPWND1_H #define TIPWND1_H#include <QWidget>class TipWnd1 : public QWidget {Q_OBJECTQ_PROPERTY(QColor my_border…

【C++篇】樹影搖曳,旋轉無聲:探尋AVL樹的平衡之道

文章目錄 從結構到操作&#xff1a;手撕AVL樹的實現一、AVL樹介紹1.1 什么是AVL樹1.2 平衡因子的定義1.3 平衡的意義1.4 AVL樹的操作 二、AVL樹的節點結構2.1 節點結構的定義&#xff1a; 三、插入操作3.1 插入操作概述3.2 步驟1&#xff1a;按二叉查找樹規則插入節點3.3 步驟2…

么是靜態住宅IP,跨境電商為什么需要靜態住宅IP

靜態住宅IP是指直接分配給一臺屬于私人住宅網絡的設備的固定IP地址&#xff0c;這種地址不會頻繁更改。它們作為代理IP&#xff0c;使使用者能夠通過這些代理服務器進行網絡訪問&#xff0c;而對外顯示的則是該住宅的IP地址。由于這些IP地址屬于真實的住宅或個人&#xff0c;并…

清華大學deepseek教程第四版 DeepSeek+DeepResearch 讓科研像聊天一樣簡單(附下載)

deepseek使用教程系列 DeepSeekDeepResearch 讓科研像聊天一樣簡單(附下載) https://pan.baidu.com/s/1VMgRmCSEzNvhLZQc8mu6iQ?pwd1234 提取碼: 1234 或 https://pan.quark.cn/s/f3d4511b790a