百度視覺團隊斬獲 ECCV Google AI 目標檢測競賽冠軍,獲獎方案全解讀|ECCV 2018

雷鋒網 AI 科技評論消息,近日,百度視覺團隊在 Google AI Open Images-Object Detection Track 目標檢測任務中斬獲第一,並受邀在計算機視覺頂級學術會議 ECCV 2018 上進行分享。

Google AI Open Images-Object Detection Track 由 Google AI Research 舉辦,今年共吸引全球 450 多支隊伍參賽。

大賽採用 Google 今年 5 月份發佈的 Open Images V4 數據集作為訓練數據集,包含超過 170 萬的圖片數據,500 個類別以及超過 1200 萬物體框,數據沒有完全精細標註,屬於弱監督任務,框選類別數目不均衡且有非常廣泛的類別分佈,這更符合實際情況,也意味著參加競賽的團隊需要考慮到類別的分佈,而不能統一對所有類別做處理,因此更具挑戰性。

這項賽事有助於複雜模型的研究,同時對評估不同檢測模型的性能有積極的促進作用。下圖為 Open Image V4 與 MS COCO 和 ImageNet 檢測任務數據對比情況,可以看到 Open Image V4 數據規模遠遠大於 MS COCO 和 ImageNet。

百度视觉团队斩获 ECCV Google AI 目标检测竞赛冠军,获奖方案全解读|ECCV 2018

Open Image V4 與 MS COCO及ImageNet 檢測數據對比情況

與傳統的檢測數據集合相比,該賽事除了數據規模大、更真實之外,還存在一系列的挑戰。具體來說,主要集中在以下三個方面:

  • 數據分佈不均衡:最少的類別框選只有 14 個,而最多的類別框選超過了 140w,數據分佈嚴重不均衡。

百度视觉团队斩获 ECCV Google AI 目标检测竞赛冠军,获奖方案全解读|ECCV 2018

類別框數量分佈

  • 漏標框:很多圖片存在只標註主體類別,其他小物體或者非目標物體沒有標註出來。

百度视觉团队斩获 ECCV Google AI 目标检测竞赛冠军,获奖方案全解读|ECCV 2018

漏標註圖片舉例

  • 尺度變化大:大部分物體框只佔整個圖片的 0.1 以下,而有些框選卻佔了整個圖片區域。如圖所示,Open Image V4 集合存在更多的小物體,參賽者也會在檢測數據中遇到更大的挑戰。

百度视觉团队斩获 ECCV Google AI 目标检测竞赛冠军,获奖方案全解读|ECCV 2018

框尺度大小分佈對比

解決方案

在比賽過程中,百度視覺團隊採用了不同複雜度、不同框架網絡進行模型的訓練,並對這些模型進行融合。從整體方案框架來看,可分為 Fast R-CNN 和 Faster R-CNN 兩種不同的訓練模式。Fast R-CNN 版本是百度視覺團隊研發的一套 PaddlePaddle 版本,在此基礎上 Faster R-CNN 加入了 FPN、Deformable、Cascade 等最新的檢測算法,模型性能實現了大幅度的提升。

百度视觉团队斩获 ECCV Google AI 目标检测竞赛冠军,获奖方案全解读|ECCV 2018

整體方案框架流程圖

  • 網絡為 ResNet-101 的 Fast R-CNN,模型收斂後可以達到 0.481,在測試階段加入 Soft NMS 以及 Multi-Scale Testing 策略,可以達到 0.508。百度也嘗試了其他網絡(dpn98,Inception-v4,Se-ResNext101),並把不同網絡的檢測算法融合到一起,最終 mAP 可以達到 0.546。在 Proposal 採樣階段,百度在不同位置進行不同尺度的候選框生成,然後對這些框選進行分類以及調整他們的位置。

  • Faster R-CNN: 採用這種框架可以達到略高於 Fast R-CNN 的效果,mAP 為 0.495。在測試階段使用 Soft NMS 以及 Multi-Scale Testing 策略後,性能達到 0.525。

  • Deformable Convolutional Networks:使用 Soft NMS 以及 Multi-Scale Testing 策略前後,性能分別達到 0.528 及 0.559。

  • Deformable Cascade R-CNN : 使用 Soft NMS 以及 Multi-Scale Testing 策略前後,性能分別可以達到 0.581 和 0.590.

在 Fast R-CNN 框架下,百度視覺團隊採用了不同的網絡進行訓練,而在 Faster R-CNN 框架下只使用了 ResNet101 這種網絡進行訓練。在訓練過程中,百度視覺團隊還通過不同的策略有效解決了各種技術問題。詳情如下:

動態採樣

Google Open Images V4 數據集大概有 170w 圖片,1220w 框選,500 個類別信息。最大的類別框選超過了 140w,最小的類別只有 14 個框選,如果簡單使用所有的圖片及框選,需要幾十天才能進行模型訓練,而且很難訓練出來一個無偏的模型。因此,需要在訓練過程中進行動態採樣,如果樣本數量多則減少採樣概率,而樣本數量少則增加採樣概率。百度視覺團隊分別進行全集數據訓練、固定框選子集訓練、動態採樣模型訓練三種策略進行。

  • 全集數據訓練:按照主辦方提供數據進行訓練,mAP 達到 0.50。

  • 固定框選子集訓練:線下固定對每個類別最多選擇 1000 個框,mAP 達到 0.53。

  • 動態採樣模型訓練:對每個 GPU、每個 Epoch 採用線上動態採樣,每次採集的數據都不同,輪數達到一定數目後,整個全集的數據都能參與整體訓練。最後 mAp 達到 0.56。

百度视觉团队斩获 ECCV Google AI 目标检测竞赛冠军,获奖方案全解读|ECCV 2018

動態採樣策略

FPN

基於訓練數據集的分析,百度視覺團隊發現其中 500 個類別的尺度有很大的差異。因此他們將 FPN 引入到檢測模型中,即利用多尺度多層次金字塔結構構建特徵金字塔網絡。在實驗中,百度視覺團隊以 ResNet101 作為骨幹網絡,在不同階段的最後一層添加了自頂向下的側連接。自頂向下的過程是向上採樣進行的,水平連接是將上採樣的結果與自底向上生成的相同大小的 feature map 合併。融合後,對每個融合結果進行 3*3 卷積以消除上採樣的混疊效應。值得注意的是,FPN 應該嵌入到 RPN 網絡中,以生成不同的尺度特徵並整合為 RPN 網絡的輸入。最終,引入 FPN 後的 mAP 可達到 0.528。

Deformable Convolution Networks

百度視覺團隊採用可變形卷積神經網絡增強了 CNNs 的建模能力。可變形卷積網絡的思想是在不需要額外監督的情況下,通過對目標任務的學習,在空間採樣點上增加額外的偏移量模塊。同時將可變形卷積網絡應用於以 ResNet101 作為骨架網絡的 Faster R-CNN 架構,並在 ResNet101 的 res5a、5b、5c 層之後應用可變形卷積層,並將 ROI Pooling 層改進為可變形位置敏感 ROI Pooling 層。可變形卷積網絡的 mAP 性能為 0.552。

Cascade R-CNN

比賽中,百度視覺團隊使用級聯的 R-CNN 來訓練檢測模型。除訓練基本模型外,還使用包含五個尺度特徵金字塔網絡(FPN)和 3 個尺度 anchors 的 RPN 網絡。此外,他們還訓練了一個針對全類模型中表現最差的150類的小類模型,並對這 150 類的模型分別進行評估。得出的結論是,500 類模型的 mAP 為 0.477,而用 150 類單模型訓練結果替換 500 類的後 150 類的結果,模型的 mAP 提升為 0.498。使用以上方法進行訓練的單尺度模型的性能為 0.573。

Testing Tricks

在後處理階段,百度視覺團隊使用了 Soft NMS 和多尺度測試的方法。用 Soft NMS 的方法代替 NMS 後,在不同模型上有 0.5-1.3 點的改進,而 Multi-Scale Testing 在不同模型上則有 0.6-2 個點的提升。

模型融合

對於每個模型,百度視覺團隊在 NMS 後預測邊界框。來自不同模型的預測框則使用一個改進版的 NMS 進行合併,具體如下:

  • 給每個模型一個 0~1 之間的標量權重。所有的權重總和為 1;

  • 從每個模型得到邊界框的置信分數乘以它對應的權重;

  • 合併從所有模型得到的預測框並使用 NMS,除此之外百度採用不同模型的分數疊加的方式代替只保留最高分模型,在這個步驟中 IOU 閾值為 0.5。

百度视觉团队斩获 ECCV Google AI 目标检测竞赛冠军,获奖方案全解读|ECCV 2018百度视觉团队斩获 ECCV Google AI 目标检测竞赛冠军,获奖方案全解读|ECCV 2018

(完)


分享到:


相關文章: