當前位置:
首頁 > 知識 > 谷歌大腦提出NAS-FPN:這是一種學會自動架構搜索的特徵金字塔網路

谷歌大腦提出NAS-FPN:這是一種學會自動架構搜索的特徵金字塔網路

選自arXiv

作者:Golnaz Ghaisi、Tsung-Yi Lin、Ruoming Pang、Quoc V. Le

機器之心編譯

機器之心編輯部

目標檢測也能用神經架構搜索,這是一個自動搜索的特徵金字塔網路。

神經架構搜索已經在圖像識別上展現出很強的能力,不論是可微架構搜索的速度,還是基於強化學習搜索的準確度,很多時候自動架構搜索已經超越了我們手動設計的版本。與此同時,學習視覺的特徵表示是計算機視覺中的一個基本問題。不論是圖像分類還是目標檢測,抽取圖像特徵才是最首要的。

在過去幾年裡,用於圖像分類和目標檢測的深度卷積網路在架構搜索方面取得了很大進展。與預測圖像類別概率的圖像分類不同,目標檢測在大範圍的尺度和位置上檢測和定位多個目標時存在自身的挑戰。為了解決這個問題,很多現代目標檢測器普遍使用金字塔特徵表示,它表示具有多尺度特徵層的圖像。

在這篇論文中,谷歌大腦的 Quoc V. Le 等研究者提出了一種新的架構搜索方法 NAS-FPN。他們希望藉助神經架構搜索的優勢,並學習更好的目標檢測特徵金字塔網路架構。目前 NAS-FPN 實現了優於當前最佳目標檢測模型的準確率和延遲權衡

目標檢測中的神經架構搜索

特徵金字塔網路(FPN)是目標檢測中生成金字塔形狀特徵表示的代表性模型架構之一。它採用通常為圖像分類設計的骨幹模型,然後通過自上而下和橫向連接,並組合不同的特徵層來構建特徵金字塔。FPN 取代了檢測器(如 Faster R-CNN)中的特徵提取器,並生成更高質量的金字塔特徵圖。

圖註:特徵金字塔網路,選自 arXiv: 1612.03144。

FPN 由自下而上和自上而下路徑組成。其中自下而上的路徑是用於提取特徵的常用卷積網路,空間解析度自下而上地下降。當空間解析度下降,且檢測到更高層的結構時,每層的語義值增加。

設計特徵金字塔架構的挑戰在於其巨大的設計空間。組合不同尺度的可能連接數量隨著網路層數的增加呈指數級增長。最近,神經架構搜索演算法在巨大的搜索空間中有效地發現了用於圖像分類的高性能架構。為了實現這個領域的結果,Quoc V. Le 等研究者提出生成金字塔表示的可擴展架構搜索空間。

NAS-FPN:一種靈活的目標檢測新方法

本文的主要貢獻是設計搜索空間,覆蓋所有可能的跨尺度連接,已生成多尺度特徵表示。在搜索過程中,研究者的目標是發現具有相同輸入和輸出特徵級別並且可以被重複應用的微粒架構。模塊化搜索空間使得搜索金字塔架構變得易於管理。模塊化金字塔架構的另一個好處是可以隨時檢測目標(即「early exit」),雖然這種「early exit」方法已經被嘗試過,但手動設計這種架構依舊相當困難。

研究者構建的架構,即 NAS-FPN,在構建目標檢測架構方面具有很大的靈活性。NAS-FPN 與各種骨幹模型配合得很好,如 MobileNet、ResNet、AmoebaNet。它為移動端模型和高準確率模型在速度和準確率方面提供了更好的權衡。

在相同的推理時間下,與 RetinaNet 框架中的 MobileNetV2 骨幹模型相結合,它的性能超過當前最佳的移動檢測模型(與 MobilenetV2 結合的 SSDLite)2 個 AP。與強大的 AmoebaNet-D 骨幹模型結合,NASFPN 在單個測試規模中達到了 48.3 的 AP 單模型準確率。其檢測準確率超過了 Mask RCNN,同時使用的推理時間更少。幾種模型的具體結果如圖 1 所示。

圖 1:移動設備上準確型模型(上)和快速型模型(下)的平均精度與推斷時間關係。綠色折線是 NASFPN 與 RetinaNet 相結合的結果。詳情請看圖 9。

論文:NAS-FPN: Learning Scalable Feature Pyramid Architecture for Object Detection

論文地址:https://arxiv.org/pdf/1904.07392.pdf

摘要:當前最先進的目標檢測卷積架構都是人工設計的。在這項工作中,我們的目標是學習更好的目標檢測特徵金字塔網路架構。我們採用了神經架構搜索,在一個包含所有跨尺度連接的新的可擴展搜索空間中發現了一個新的特徵金字塔架構。這個名為 NAS-FPN 的架構包含自上而下和自下而上的連接,以融合各種尺度的特徵。NAS-FPN 與 RetinaNet 框架中的若干骨幹模型相結合,實現了優於當前最佳目標檢測模型的準確率和延遲權衡。該架構將移動檢測準確率提高了 2 AP,優於 [32] 中的當前最佳模型——與 MobileNetV2 相結合的 SSDLite,達到了 48.3 AP,超越了 Mask R-CNN [10] 的檢測準確率,且計算時間更少。

方法

本文中的方法基於 RetinaNet 框架 [23],因為該框架簡單、高效。RetinaNet 框架有兩個主要的組成部分:一個骨架網路(通常是當前最優的圖像分類網路)和一個特徵金字塔網路(FPN)。本文演算法的目標是為 RetinaNet 框架發現更好的 FPN 架構。圖 2 所示為 RetinaNet 架構。

圖 2:帶有 NAS-FPN 的 RetinaNet。在本文中,特徵金字塔網路將由神經架構搜索演算法來搜索。骨幹網路和用於類和框預測的子網路遵循 RetinaNet [23] 中的原始設計。FPN 的架構可以堆疊多次,以獲得更高的準確率。

為了找到更好的 FPN,研究者利用 Quoc Le 等人在「Neural architecture search with reinforcement learning」中提出的神經架構搜索(NAS)框架。NAS 利用強化學習訓練控制器在給定的搜索空間中選擇最優的模型架構。控制器利用子模型在搜索空間中的準確度作為獎勵信號來更新其參數。因此,通過反覆試驗,控制器逐漸學會了如何生成更好的架構。

研究者還為 FPN 設計了一個搜索空間來生成特徵金字塔表徵。為了實現 FPN 的可擴展性,研究者強制 FPN 在搜索過程中重複 N 次,然後連接到一個大型架構中。他們將這一特徵金字塔架構命名為 NAS-FPN。

實驗

這一部分描述了學習一個 RNN 控制器來發現 NAS-FPN 架構的神經架構搜索實驗。然後,研究者證明了他們發現的 NAS-FPN 在不同的骨幹模型和圖像大小下都能很好地工作。在金字塔網路中,通過改變疊加層數和特徵維數,可以很容易地調整 NAS-FPN 的容量。此外,作者還在實驗中展示了如何構建準確、快速的架構。

圖 5:左:強化學習訓練的獎勵。計算獎勵的方法為在代理任務上採樣架構的 AP。右:採樣的獨特架構數與架構總數。隨著控制器逐漸收斂,控制器會採樣到越來越多的相同架構。

圖 6:5 個輸入層(黃色)和 5 個輸出特徵層(藍色)的 NAS-FPN 中發現的 7-merging-cell 金字塔網路架構。GP:全局池化;R-C-B:ReLU-Conv-BatchNorm。

圖 7:NAS-FPN 的架構圖。每個點代表一個特徵層,同一行的特徵層具有相同的解析度,解析度由下往上遞減。箭頭表示內層之間的連接,該圖的結構是輸入層位於左側。金字塔網路的輸入用綠色圓圈標記,輸出用紅色圓圈標記。(a)基線 FPN 架構。(b~f)在 RNN 控制器的訓練中通過神經架構搜索發現的 7-cell NAS-FPN 架構。(f)實驗中最後收斂得出的 NAS-FPN。

圖 8:NAS-FPN 的模型容量。(a)疊加金字塔網路,(b)改變骨幹架構,(c)增加金字塔網路中的特徵維度。所有的模型都是在 640x640 的圖像大小上訓練/測試的。標記上方的數字表示在 NAS-FPN 中金字塔網路的數量。

圖 9:檢測準確率和推理時間的折衷(左)、浮點數(中)、參數(右)。(a)研究者將其與其他高準確率模型進行了對比。所有模型的推理時間都是在一個搭載 P100 GPU 的設備上計算出來的。綠色折線顯示的是擁有不同骨幹架構的 NAS-FPN 結果。該標記上的數字表示在 NAS-FPN 中金字塔網路的重複次數。在每個數據點旁邊都表明了 NAS-FPN/FPN 的特徵維數和輸入圖像大小。(b)研究者將自己的模型與其他快速模型進行了對比,其中所有模型的輸入圖像大小為 320x320,推理時間是在 Pixel 1 CPU 上計算的。本文中的模型是用 MobileNetV2 的輕型模型訓練的。

表 1:NAS-FPN 和其他當前最優檢測器在 COCO 測試數據集上的性能表現。

圖 10:特徵維數為 256 或 384 的 NAS-FPN 在訓練時有無 DropBlock (DB) 的性能對比。模型和 ResNet-50 骨幹模型在大小為 1024x1024 的圖像上訓練。當我們在金字塔網路中增加特徵維數時,添加 DropBlock 變得更重要。

本文為機器之心編譯,轉載請聯繫本公眾號獲得授權。

------------------------------------------------


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器之心 的精彩文章:

喬布斯十年前預言:Intel的十年之約已到,ARM將挑起大梁
曠視聯合智源發布全球最大物體檢測數據集,舉辦CVPR DIW2019比賽

TAG:機器之心 |