EfficientDet
文章閱讀
Google的網絡結構不錯,總是會考慮計算性能的問題,從mobilenet v1到mobile net v2.這篇文章主要對近來的FPN結構進行了改進,實現了一種效果和性能兼顧的BiFPN,同時提供了D0-D7不同的配置,計算量和精度都逐級增大.相比maskrcnn,retinanet,更低的計算量還能達到更好的效果.
BiFPN
主要有亮點:高效的雙向不同尺度的特征融合,帶權重的特征融合
多尺度特征的融合
首先是各種FPN結構的演進和比較,(a)普通的FPN只有自頂向下的連接 (b)PANet還加了自底向上的連接,(c)NAS-FPN通過搜索找到一種不規則的連接結構.(d-f)是本文探討的結構,(d)所有的尺度使用最全的連接,計算也最復雜,(e)PANet簡化,去除只有一個輸入的結點,(f)本文最終的BiFPN結構
- PANet效果好於FPN和NAS-FPN,計算代價也更高
- 如果一個結點本身沒有融合的特征,那么對以特征融合為目標的結構貢獻就不大(why?).所以(e)中移除了P3,P7的中間結點
- 同一尺度的輸入和輸出又加了一個連接,因為計算量不大.得到(f)
- (f)中虛線框內作為一層,會重復多次,以得到high-level feature fusion.
加權融合
從Pyramid attention networks得到啟發,不同尺度的特征的貢獻是不一樣的,所以連接時需要加上權重,而權重通過網絡學到的.
文章比較了三種加權的方法,Fast normalized fusion相比Softmax-based fusion方法,效果一致,但速度更快.
網絡結構
backbone取自ImageNet-pretrained EfficientNet.P3-P7接本文的BiFPN Layer,重復多次.class and box分支共享權重.
為了適應不同的精度和性能,文章提出了Compound Scaling方法,只需一個參數控制input size, backbone, BiFPN layers和channels, Box/class depth.得到了D0-D7不同計算量的模型.
實驗和試驗結果
- D0與YOLOv3同樣精度下,FLOPs少28x
- D1與RetinaNet , Mask-RCNN比較,參數少8x,FLOP少25x,精度類似.
- D7達到51mAP,同時更快參數更少.
Ablation Study
- 相比Resnet50,EfficientNet B3 backbone提升3mAP.BiFPN比FPN提升4mAP
- 加權比不加權連接,提升0.45mAP.
- Fast Normalized Fusion對比Softmax,表現接近,速度快30%