比當前SOTA小4倍、計算量少9倍,谷歌最新目標檢測器EfficientDet

2020-12-16 機器之心Pro

選自arXiv

作者:Mingxing Tan, Ruoming Pang, Quoc V. Le

機器之心編譯

什麼檢測器能夠兼顧準確率和模型效率?如何才能實現?最近,谷歌大腦 Mingxing Tan、Ruoming Pang 和 Quoc V. Le 提出新架構 EfficientDet,結合 EfficientNet(同樣來自該團隊)和新提出的 BiFPN,實現新的 SOTA 結果。

在計算機視覺領域,模型效率的重要性越來越高。近日,谷歌大腦團隊 Quoc V. Le 等人系統研究了多種目標檢測神經網絡架構設計,提出了能夠提升模型效率的幾項關鍵優化。首先,他們提出加權雙向特徵金字塔網絡(weighted bi-directional feature pyramid network,BiFPN),從而輕鬆、快速地實現多尺度特徵融合;其次,他們提出一種複合縮放(compound scaling)方法,同時對所有主幹網絡、特徵網絡和邊界框/類別預測網絡的解析度、深度和寬度執行統一縮放。

論文連結:https://arxiv.org/abs/1911.09070

基於這些優化,研究者開發了新型目標檢測器 EfficientDet。在廣泛的資源限制下,這類模型的效率仍比之前最優模型高出一個數量級。具體來看,結構簡潔只使用了 52M 參數、326B FLOPS 的 EfficientDet-D7 在 COCO 數據集上實現了當前最優的 51.0 mAP,準確率超越之前最優檢測器(+0.3% mAP),其規模僅為之前最優檢測器的 1/4,而後者的 FLOPS 更是 EfficientDet-D7 的 9.3 倍。

我們可以先看看效果

圖 1 和圖 4 展示了多個模型在 COCO 數據集上的性能對比情況。在類似的準確率限制下,EfficientDet 的 FLOPS 僅為 YOLOv3 的 1/28、RetinaNet 的 1/30、NASFPN 的 1/19。

圖 1:模型 FLOPS vs COCO 數據集準確率,所有數字均為單個模型在單一尺度下所得。EfficientDet 的計算量較其他檢測器少,但準確率優於後者,其中 EfficientDet-D7 獲得了當前最優性能。

具體而言,在都使用單個模型和單一測試時間尺度的前提下,EfficientDet-D7 以 52M 的參數量和 326B FLOPS,獲得了當前最優性能 51.0 mAP,超出之前最優模型 0.3%,而且其規模和 FLOPS 分別是之前最優模型的 1/4 和 10.8%。此外,EfficientDet 模型在 GPU 和 CPU 上的計算速度分別是之前檢測器的 3.2 倍和 8.1 倍,參見圖 4 和表 2。

圖 4:模型大小和推斷延遲對比。延遲均為使用批大小 1 在同樣的機器上測量得到(這些計算機均配備一塊 Titan V GPU 和 Xeon CPU)。AN 表示使用自增強訓練得到的 AmoebaNet + NAS-FPN。

目標檢測能夠既準確又快速嗎?

我們常常有一個概念,SSD 等單階段目標檢測器很快,但準確性比不上 Mask R-CNN 等兩階段目標檢測器,儘管兩階段目標檢測推斷速度要慢許多。那麼有沒有一種兼顧兩者的目標檢測器?設計這樣的檢測器又會出現什麼挑戰?這就是該論文作者所關心的。

近年來,在實現更準確的目標檢測方面出現了大量進展,然而當前最優目標檢測器的成本也越來越高昂。例如,近期提出的基於 AmoebaNet 的 NASFPN 檢測器需要 167M 參數和 3045B FLOPS(是 RetinaNet 的 30 倍)才能獲得當前最優準確率。大模型規模和昂貴的計算成本阻礙了它們在一些現實世界應用中的部署,例如模型規模和延遲高度受限的機器人、自動駕駛汽車等應用。由於這些現實世界的資源限制,模型效率對於目標檢測的重要性越來越高。

已經有很多研究試圖開發更高效的檢測器架構,如單階段檢測器和 anchor-free 檢測器,或者壓縮現有模型。儘管這些方法可以實現更優的效率,但這通常是以準確率為代價的。此外,大部分之前研究僅關注某個或某些特定的資源要求,而大量現實應用(從行動裝置到數據中心)通常具備不同的資源限制。

那麼問題來了:在面對廣泛的資源約束時(如 3B 到 300B FLOPS),構建兼具準確率和效率的可擴展檢測架構是否可行?

谷歌大腦的這篇論文系統性地研究了多種檢測器架構設計,試圖解決該問題。基於單階段檢測器範式,研究者查看了主幹網絡、特徵融合和邊界框/類別預測網絡的設計選擇,發現了兩大主要挑戰:

挑戰 1:高效的多尺度特徵融合。儘管大部分之前工作融合了不同的輸入特徵,但它們僅僅是不加區分地將其匯總起來。而由於這些輸入特徵的解析度不盡相同,它們對輸出特徵的貢獻也不相等。

挑戰 2:模型縮放。儘管之前研究主要依賴大型主幹網絡或者較大的輸入圖像規模,但研究者發現,在同時考慮準確率和效率的情況下,擴大特徵網絡和邊界框/類別預測網絡非常關鍵。

既快又準的 EfficientDet

針對這兩項挑戰,研究者提出了應對方法。

挑戰 1:高效的多尺度特徵融合。研究者提出一種簡單高效的加權雙向特徵金字塔網絡(BiFPN),該模型引入了可學習的權重來學習不同輸入特徵的重要性,同時重複應用自上而下和自下而上的多尺度特徵融合。

挑戰 2:模型縮放。受近期研究 [31] 的啟發,研究者提出一種目標檢測器複合縮放方法,即統一擴大所有主幹網絡、特徵網絡、邊界框/類別預測網絡的解析度/深度/寬度。

最後,研究者觀察到,近期出現的 EfficientNets [31] 效率超過之前常用的主幹網絡。於是研究者將 EfficientNet 主幹網絡和 BiFPN、複合縮放結合起來,開發出新型目標檢測器 EfficientDet,其準確率優於之前的目標檢測器,同時參數量和 FLOPS 比它們少了一個數量級。

BiFPN

作者首先將多尺度特徵融合問題公式化,然後為 BiFPN 引入兩個主要想法:高效的雙向跨尺度連接和加權特徵融合。

跨尺度連接

多尺度特徵融合旨在聚合不同解析度的特徵。圖 2a 展示了傳統自上而下的 FPN。它使用 level 3-7 作為輸入特徵,如果輸入解析度是 640x640,則 level 3 輸入特徵是 640/2^3 = 80,解析度為 80x80。依此類推,特徵 level 7 的解析度為 5x5。

傳統 FPN 以自上而下的方式聚合多尺度特徵:

其中 Resize 通常表示解析度匹配時的上採樣或者下採樣,Conv 通常表示特徵處理時的卷積網絡。

圖 2:特徵網絡設計圖。a)FPN 使用自上而下的路徑來融合多尺度特徵 level 3-7(P3 - P7);b)PANet 在 FPN 的基礎上額外添加了自下而上的路徑;c)NAS-FPN 使用神經架構搜索找出不規則特徵網絡拓撲;(d)-(f) 展示了該論文研究的三種替代方法。d 在所有輸入特徵和輸出特徵之間添加成本高昂的連接;e 移除只有一個輸入邊的節點,從而簡化 PANet;f 是兼顧準確和效率的 BiFPN。

為了提高模型效率,谷歌大腦研究者提出了針對跨尺度連接的幾項優化:

首先,移除僅具備一個輸入邊的節點。其背後的想法很簡單:如果一個節點只有一個輸入邊沒有特徵融合,則它對特徵網絡的貢獻較小。這樣就得到了簡化版 PANet(見圖 2e)。

然後,研究者為同級原始輸入到輸出節點添加額外的邊,從而在不增加大量成本的情況下融合更多特徵(見圖 2f)。

最後,與只有一條自上而下和自下而上路徑的 PANet 不同,研究者將每個雙向路徑(自上而下和自下而上)作為一個特徵網絡層,並多次重複同一個層,以實現更高級的特徵融合。

加權特徵融合

在融合不同解析度的輸入特徵時,常見的方法是先將其解析度調整至一致再相加。金字塔注意力網絡(pyramid attention network)引入了全局自注意力上採樣來恢復像素定位,這在 [5] 中有進一步研究。

之前的特徵融合方法對所有輸入特徵一視同仁,不加區分同等看待。但是,研究者觀察到,由於不同輸入特徵的解析度不同,它們對輸出特徵的貢獻也不相等。為解決該問題,研究者提出在特徵融合過程中為每一個輸入添加額外的權重,再讓網絡學習每個輸入特徵的重要性。

EfficientDet

基於 BiFPN,研究者開發了新型檢測模型 EfficientDet。下圖 3 展示了 EfficientDet 的整體架構,大致遵循單階段檢測器範式。研究者將在 ImageNet 數據集上預訓練的 EfficientNet 作為主幹網絡,將 BiFPN 作為特徵網絡,接受來自主幹網絡的 level 3-7 特徵 {P3, P4, P5, P6, P7},並重複應用自上而下和自下而上的雙向特徵融合。然後將融合後的特徵輸入邊界框/類別預測網絡,分別輸出目標類別和邊界框預測結果。

圖 3:EfficientDet 架構。它使用 EfficientNet 作為主幹網絡,使用 BiFPN 作為特徵網絡,並使用共享的邊界框/類別預測網絡。

為了優化準確率和效率,研究者試圖開發出能夠滿足廣泛資源約束的模型。這裡的重要挑戰在於,如何擴大基線 EfficientDet 模型。

受近期研究 [5, 31] 的啟發,研究者提出一種目標檢測複合縮放方法,它使用簡單的複合係數 φ 統一擴大主幹網絡、BiFPN 網絡、邊界框/類別預測網絡的所有維度。

實驗

研究者在 COCO 2017 檢測數據集上對 EfficientDet 進行評估。EfficientDet 模型是使用批大小 128 在 32 塊 TPUv3 晶片上訓練而成的。

下表 2 在單個模型單一尺度且沒有測試時間增強的設置下,對比了 EfficientDet 和其他目標檢測器。在大量準確率或資源限制下,EfficientDet 的準確率和效率均優於之前的檢測器。

表 2:EfficientDet 在 COCO 數據集上的性能。#Params 和 #FLOPS 表示參數量和 multiply-add 次數。LAT 表示在批大小為 1 時的推斷延遲。AA 表示自增強。研究者將準確率類似的模型歸類在一起,並對比了每一組中 EfficientDet 與其他檢測器的比例或加速。

由於 EfficientDet 既使用了強大的主幹網絡又應用了新型 BiFPN,研究者想了解這兩個網絡對準確率和效率提升的貢獻。表 3 即對比了二者對模型性能的影響。

表 3:主幹網絡和 BiFPN 對模型性能的影響。第一行是標準的 RetinaNet (ResNet50+FPN),研究者首先將其主幹網絡替換為 EfficientNet-B3(第二行),然後將基線 FPN 替換成 BiFPN(第三行)。

表 4 展示了當特徵網絡具備圖 2 列舉的不同跨尺度連接時模型的準確率和複雜度。

表 4:不同特徵網絡的對比情況。加權 BiFPN 以更少的參數和 FLOPS 取得了最好的準確率。

研究者使用複合縮放方法,統一擴大主幹網絡、BiFPN 和邊界框/類別預測網絡的所有維度——深度/寬度/解析度。圖 6 對比了該複合縮放方法和其他僅擴大其中一個維度的方法。

圖 6:不同縮放方法的對比。所有方法都能提升準確率,但研究者提出的複合縮放方法實現了更好的準確率和效率的平衡。

相關焦點

  • PyTorch版EfficientDet比官方TF快25倍?這個項目數天狂攬千星
    基於單階段檢測器範式,谷歌大腦團隊的研究者查看了主幹網絡、特徵融合和邊界框/類別預測網絡的設計選擇,發現了兩大主要挑戰並提出了相應的解決方法:挑戰 1:高效的多尺度特徵融合。受近期研究的啟發,研究者提出一種目標檢測器複合縮放方法,即統一擴大所有主幹網絡、特徵網絡、邊界框/類別預測網絡的解析度/深度/寬度。谷歌大腦團隊的研究者發現,EfficientNets 的效率超過之前常用的主幹網絡。
  • 「品覽AI論技」精度和速度的極佳平衡——EfficientDet做到了
    最輕的EfficientDet-D0的精確度略高於YoloV3,但是FLOPS(floating point operations per second, 用來衡量計算量的參數)只有YoloV3的二十八分之一。此外,EfficientDet具有的簡潔漂亮的模型結構,獨具特色的特徵融合方法,系統高效的模型擴增方法等眾多可圈可點之處,給這個系列帶來了長足的潛力。
  • 精度延遲兩不誤,移動端性能新SOTA,谷歌TF開源輕量級EfficientNet...
    機器之心報導機器之心編輯部我們都知道,谷歌在 2019 年 5 月推出了一種用於圖像分類的新模型——EfficientNet,該模型在使用更少參數、消耗更少算力的情況下,達到了目前圖像分類 SOTA 的準確度。
  • 深2.5至4倍,參數和計算量卻更少,DeLighT Transformer是怎麼做到的?
    總的來說,DeLighT 的網絡深度是標準 transformer 模型的 2.5 到 4 倍,但參數量和計算量都更少。DeLighT 的核心是 DExTra 變換(DExTra transformation),該變換使用組線性變換和擴展 - 縮小(expand-reduce)策略來有效地改變 DeLighT 塊的寬度和深度。
  • 深2.5至4倍,參數和計算量更少,DeLighT怎麼做到的?
    總的來說,DeLighT 的網絡深度是標準 transformer 模型的 2.5 到 4 倍,但參數量和計算量都更少。DeLighT 的核心是 DExTra 變換(DExTra transformation),該變換使用組線性變換和擴展 - 縮小(expand-reduce)策略來有效地改變 DeLighT 塊的寬度和深度。
  • 國內量子計算裡程碑式突破,計算速度比谷歌快一百億倍
    國內量子計算裡程碑式突破,計算速度比谷歌快一百億倍,這波主題投資怎麼炒?都在這張表裡了12月4日,中國科學技術大學宣布該校潘建偉等人成功構建76個光子的量子計算原型機「九章」,求解數學算法高斯玻色取樣只需200秒,而目前世界最快的超級計算機要用6億年。這—突破使我國成為全球第二個實現「量子優越性"的國家(也稱為量子霸權)。
  • 7 papers|周志華深度森林新論文;谷歌目標檢測新SOTA
    其中 CenterMask 的性能優於當前所有的 SOTA 模型,並且速度較這些模型更快;CenterMask-Lite 也實現了 33.4% 的 mask AP 和 38.0% 的 box AP 結果,並在 Titan Xp 顯卡上以 35fps 的速度分別超出了當前 SOTA 模型 2.6% 和 7.0% 的 AP gain。
  • 超越谷歌「量子霸權」100億倍!中國科學家如何做到的?
    相關論文於12月4日在線發表在國際學術期刊《科學》上。  實現「量子霸權」的兩種路徑  由於量子計算機在原理上具有超快的並行計算能力,在一些具有重大社會和經濟價值的問題方面相比經典計算機實現指數級別的加速。當前,研製量子計算機已成為世界科技前沿的最大挑戰之,成為歐美各發達國家角逐的焦點。
  • 訓練輪數降至1/10、性能卻更好,商湯等提出升級版DETR目標檢測器
    為了解決這些問題,來自商湯研究院等機構的研究者提出了可變形 DETR,其注意力模塊僅關注於參考點附近的一小部分採樣點作為注意力模塊中的 key 元素。可變形 DETR 可以在比 DETR 少 9/10 的訓練輪數下,達到更好的性能(尤其是在小物體上)。在 COCO 基準上的大量實驗表明了該方法的有效性。
  • 後量子密碼硬體加速:計算速度提升2.5倍,ATP減小4.9倍
    為應對該類挑戰,學術界和工業界早已開始著手研究能抵禦量子計算攻擊的後量子密碼算法。但問題在於,後量子密碼算法的運算量通常非常巨大,想要真正應用和推廣,就對專用後量子密碼晶片提出了高要求:必須要依靠高效的硬體架構,從而能以較低資源開銷獲得滿足應用需求的執行速度。
  • 比Tiny YOLOv3小8倍,性能提升11個點,4MB的網絡也能做目標檢測
    YOLO Nano 大小只有 4.0MB 左右,比 Tiny YOLOv2 和 Tiny YOLOv3 分別小了 15.1 倍和 8.3 倍,性能卻有較為顯著的提升。這一模型的大小在 4.0MB 左右,比 Tiny YOLOv2 和 Tiny YOLOv3 分別小了 15.1 倍和 8.3 倍。在計算上需要 4.57B 次推斷運算,比後兩個網絡分別少了 34% 和 17%。在性能表現上,在 VOC2007 數據集取得了 69.1% 的 mAP,準確率比後兩者分別提升了 12 個點和 10.7 個點。
  • 無需預訓練分類器,清華&曠視提出專用於目標檢測的骨幹網絡DetNet
    然而,由於計算和內存開銷,高解析度的特徵圖給建立深度神經網絡帶來了更大的挑戰。為了保持 DetNet 的效率,研究者部署了一個低複雜度的擴張瓶頸結構。通過整合這些改進,DetNet 不僅保持了高解析度的特徵圖,還保持了大的感受野,兩者對目標檢測任務都很重要。
  • 我國量子計算機實現量子霸權,計算速度比谷歌快了100億倍
    12月4日,中國科學技術大學宣布,我國新構建的76個光子的量子計算機實現了量子霸權。在5000萬個樣本的高斯玻色取樣實驗中,「九章」量子計算機僅用了200秒就完成了,如果使用世界第三的超級計算機進行實驗,它也要將近20億年才能完成。
  • Google「快一億倍」背後:量子計算到底是如何實現的?
    六是室溫下即可實現量子態製備、操縱和讀出。其他多數備選方案的實驗條件比較苛刻(比如谷歌D-Wave的低溫超導體對溫度要求非常苛刻),操縱技術指標要求很高。在室溫即能進行實驗,大大提高了實驗的可行度。而俄羅斯媒體報導的杜江峰研究組最新科研成果是在傳統的糾錯碼下達到了非常高的操作精度,量子邏輯門精度達到了99.99%,其單比特門精度已經滿足容錯計算的需求。要構建量子計算機,下一步的工作就是系統擴展,把成百上千的邏輯比特都達到滿足容錯計算的精度,那量子計算就可以實現了。
  • 最新地方司法判決!銀行貸款罰息最高不得超過LPR四倍
    8月20日,最高人民法院明確將民間借貸利率司法保護上限修改為4倍LPR(按最新LPR計算為15.4%),相較於過去以24%和36%為基準的「兩線三區」規定,有大幅度下降。上述判決結果,在多個行業中引發討論,銀行等金融機構是否適用這一利率紅線?溫州案例,或許提供了一個參考,但也讓銀行業金融機構有所顧慮。
  • NAS+Det
    實驗結果下面這張圖展示了EfficientDet這個系列在相同參數量和計算量下相對之前的模型的優越之處:從ResNet50+FPN出發,先使用EfficientNet-B3替換ResNet50,map漲了3個點,參數量和FLOPS反而下降了;再進一步使用BiFPN替換FPN,直接漲了4個點,同時參數量和計算量也下降了,這可能是因為使用的是深度分離卷積。3.1.2 BiFPN Cross-Scale Connections
  • Gartner:2013年全球「計算設備」出貨量將同比增長9%
    【相關新聞】 美國證交會認可上市企業在Facebook和推特上發布企業信息 歐洲六國與谷歌在隱私保護問題上對立加劇 谷歌將把Chrome渲染引擎由「WebKit」換成「Blink」 2012年美國移動廣告費增至上年2.8倍
  • 科學網—提升1000倍!未來計算「加速度」
    相比之下,無人機的板載處理器重量是它的20倍,能耗是它的350倍,充電一次卻只能飛行10到20分鐘。 雖然傳統計算架構在過去70年取得了巨大進步,但與現有的計算性能相比,大腦仍然是最無敵的計算設備。現實和未來的距離如何拉近? 「未來已來,只是分布不均。」
  • Facebook翻譯神器:比谷歌翻譯快9倍
    日前,Facebook方面宣布,開發出了一種基於卷積神經網絡的翻譯技術,其能夠從不同角度捕捉數據,相比於谷歌一直使用的,嚴格按照句子從左到右的順序一個字一個字進行翻譯的循環神經網絡而言,翻譯結果會更加貼近句子本身所要表達的意思和邏輯。據Facebook工程師表示,這種新型的翻譯技術在速度方面可以比谷歌翻譯快9倍之多。
  • 從零開始碼一個皮卡丘檢測器-CNN目標檢測入門教程(下)
    算法和數據集參見《從零開始碼一個皮卡丘檢測器-CNN目標檢測入門教程(上)》訓練 Train損失函數 Losses通過定義損失函數,我們可以讓網絡收斂到我們希望得到的目標檢測功能,也就是說,我們希望網絡能正確預測物體的類別,同時能預測出準確的預設框偏移量,以正確地顯示物體的真正大小和位置