[CVPR 2020] EfficientDet: Scalable and Efficient Object Detection論文筆記

谷歌大腦發佈的高效高精度物體檢測器。收錄於CVPR 2020。

安利一個大佬的復現代碼(zylo117復現Torch版本

1. Introduction

   現有的SOTA物體檢測算法通常無法兼顧效率和精度,複雜的模型需要較大的計算量,而簡單模型又會損失檢測精度。因此,本文提出了一種簡單且有效率的加權雙向特徵金字塔網絡(BiFPN),實現跨尺度的特徵融合。同時,我們提出了一種聯合縮放方法,可以對主幹網絡、BiFPN、迴歸/分類網絡及輸入圖片分辨率進行縮放。將聯合縮放和BiFPN與EffcientNet結合,我們設計了一種全新的目標檢測器EfficientDet。該方法在物體檢測和分割任務上可以使用較少的參數和FLOPS得到SOTA的性能。

2. Methods

   文章的主要貢獻包括:(1)BiFPN。傳統的方法只是將不同尺度的特徵圖進行相加,但是不同的特徵圖是從不同分辨率的圖像中得到的,因此應當賦予不同的權重。爲了解決上述問題,作者提出了一種雙向加權的FPN,BiFPN通過引入一個可學習的加權值,達到跨尺度的特徵融合。(2)Compound scaling,通過相關係數ϕ\phi同時控制主體網絡、特徵網絡、迴歸/分類網絡及輸入圖片的尺寸。作者認爲上述參數尺寸都會影響檢測器的精度。(3)結合EfficientNet、BiFPN及Compound Scaling,作者提出了EfficientDet,可以使用較少的參數量和FLOPS得到較高的性能。

2.1 BiFPN

  傳統的FPN只有一條自上而下的通路,沒有實現雙向信息流;PANet又引入了一條自下而上的通路;NAS-FPN使用了網絡結構搜索,對算力的要求較高。對比這三種方法可知,PANet可以得到最好的性能,但是需要更多的參數。作者提出了BiFPN提升PANet的效率,BiFPN網絡結構如圖所示。方法主要包括:(1)去掉了只有一個輸入的點,作者認爲僅有一個輸入的點對於特徵融合的影響不大;(2)同層節點之間的short-cut,同層的輸入到輸出之間多了一條邊,這樣可以在不增加成本的情況下融合更多的特徵;(3)FPN塊堆疊,將每個雙向FPN作爲一個Block,算法多次重複該Block以實現更多高階特徵融合。
在這裏插入圖片描述
  作者還對比了三種不同的融合方法。無邊界的融合容易造成訓練的不穩定;Softmax-based融合會引入Softmax計算。因此,作者提出了快速歸一化加權融合,對於圖(d)中的兩層節點的加權融合公式如式:
P6td=Conv(w1P6in+w2Resize(P7in)w1+w2+ϵ)P6out=Conv(w1P6in+w2P6td+w3Resize(P5out)w1+w2+w3+ϵ) P_{6}^{td}=Conv\left ( \frac{w_{1}\cdot P_{6}^{in}+w_{2}\cdot Resize(P_{7}^{in})}{w_{1}+w{2}+\epsilon }\right ) \\ P_{6}^{out}=Conv\left ( \frac{w_{1}^{'}\cdot P_{6}^{in}+w_{2}^{'}\cdot P_{6}^{td} + w_{3}^{'}\cdot Resize(P_{5}^{out})}{w_{1}^{'}+w_{2}^{'}+w_{3}^{'} + \epsilon }\right )

2.2 Compound Scaling

  聯合縮放方法通過聯合係數ϕ\phi同時控制主體網絡、BiFPN網絡、迴歸/分類網絡及圖片輸入尺寸的縮放。縮放程度如圖所示。
在這裏插入圖片描述
(1) BiFPN
Wbifpn=64(1.35ϕ),Dbifpn=3+ϕ W_{bifpn}=64\cdot(1.35^{\phi}), D_{bifpn}=3+\phi
式中,WbifpnW_{bifpn}是BiFPN的通道數,而DbifpnD_{bifpn}是BiFPN層數。
(2) 分類/迴歸網絡
寬度保持不變,但是層數通過下式定義:
Dbox=Dclass=3+ϕD_{box}=D_{class}=3+\left \lfloor \phi \right \rfloor
(3) 輸入尺寸
Rinput=512+ϕ128R_{input}=512 + \phi \cdot 128

2.3 EfficientDet

 &#8195EfficientDet網絡結構如圖所示。
在這裏插入圖片描述

3. Performance

在這裏插入圖片描述

4. Q & A

問題主要來源是cosmoshnight的提問 EfficientDet論文解讀
  1. 網絡的權重是如何定義的,特徵圖融合後作爲分類/迴歸網絡時,融合的權重考慮了嗎?
  答:網絡的權重是通過定義全連接層的方式實現的。特徵圖通過融合之後再進入分類/迴歸網絡,這是在前向過程中對權重的考慮。同時,這個權重是網絡可學習的參數,當有分類/迴歸Loss回傳的時候,這是反向過程對權重的考慮。

  2. 分類/迴歸網絡結構是怎樣的,它們相同嗎?
  答:從代碼上看,二者網絡結構大體相同,通過卷積神經網絡進行操作,不過輸出向量不相同。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章