4
| 本文作者: 李尊 | 2016-06-30 15:32 |
在現有基礎下,想要進一步訓練更深層次的神經網絡是非常困難的。我們提出了一種減輕網絡訓練負擔的殘差學習框架,這種網絡比以前使用過的網絡本質上層次更深。我們明確地將這層作為輸入層相關的學習殘差函數,而不是學習未知的函數。同時,我們提供了全面實驗數據,這些數據證明殘差網絡更容易優化,并且可以從深度增加中大大提高精度。我們在ImageNet數據集用152 層--比VGG網絡深8倍的深度來評估殘差網絡,但它仍具有較低的復雜度。在ImageNet測試集中,這些殘差網絡整體達到了3.57%的誤差。該結果在2015年大規模視覺識別挑戰賽分類任務中贏得了第一。此外,我們還用了100到1000層深度分析了的CIFAR-10。
對于大部分視覺識別任務,深度表示是非常重要的。僅由于極深的表示,在COCO對象檢查數據時,我們就得到了近28%相關的改進。深度剩余網絡是我們提交給ILSVRC和COCO2015競賽的基礎,而且在ImageNet檢測任務,ImageNet定位,COCO檢測和COCO分割等領域贏我們獲得了第一。
簡介
深度卷積神經網絡在圖像分類方面,引發了一系列突破。通過改變疊層的數量(深度),深度網絡自然整合低/中/高水平的功能,終端到終端多層方式的分層器,和特征的“水平”都變得更加豐富。最近的證據表明網絡深度是至關重要的,在挑戰性的ImageNet數據集中領先結果的團隊,都利用了“很深”模型,該深度為十六至三十。而且很多特殊的視覺識別任務也從深度模型中大大受益。
受到深度意義的驅使,出現了一個問題:學習更好的網絡是否和疊加層數一樣簡單?解決該問題的一大障礙是臭名昭著的梯度爆發與消失問題,它從一開始就阻礙了收斂。然而,這個問題很大程度上被歸一的初始化和中心歸一層解決了,它確保幾十層的網絡開始用反向傳播收斂隨機梯度下降(SGD)。
當更深的網絡能夠開始融合時,暴露出了降級問題:隨著網絡深度的增加,精準度開始飽和(這并不令人吃驚)然后迅速下降。預料之外的是,在[11,42]中報道并且經過我們實驗徹底驗,證精準度的下降并不是由過度擬合造成的,而且在相配的深度模式中增加更多的層數,會造成更高的訓練誤差。圖1展示了一個經典的實例。

圖1.20層和56層“平原”網絡時CIFAR-10的訓練誤差(左)和測試誤差(右),深度網絡有著更高的訓練誤差,并且造成測試誤差。在圖4也展示了圖像網中類似的現象。
精準度的下降表明了,并不是所有的系統都同樣容易優化。我們考慮一個較淺的體系結構和與它深度相似增加了更多層的體系結構。其中一個解決方案是建立更深層的模型:添加身份映射層,另一層則是從學習更淺的模型中拷貝的。這個構造解決方案的存在,表示應該制造一個更深層模型,該模型產生的訓練誤差,低于與它深度相似更淺的模型。但實驗顯示我們目前無法找到一個與構造解決方案一樣好,或者更好的解決方案(或者無法再可行的時間內完成)。
在本論文中,介紹了一個深層次的殘差學習框架來解決精準度下降問題。我們明確地讓這些層適合殘差映射,而不是寄希望于每一個堆疊層直接適合一個所需的底層映射。形式上,把H(x)作為所需的基本映射,讓堆疊的非線性層適合另一個映射F(x):=H(x)-x。那么原映射便轉化成:F(x)+x。我們假設優化剩余的映射,比優化原來未引用的映射更容易。如果身份映射是最佳的,那么將剩余的映射推為零,就比用一堆非線性層來適應身份映射更容易。
公式F(x)+x可以通過“快捷連接”前饋神經網絡實現(圖2)。快捷連接是那些跳過中的一層或更多層。在我們的情景中,快捷連接簡單的執行身份映射,并將它們的輸出添加到疊加層的輸出(圖2)。身份快捷連接添加既不產生額外的參數,也會增加不計算的復雜度。通過反向傳播的SGD,整個網絡仍然可以被訓練成終端到終端,并且可以在沒有修改器的情況下很容易的使用公共圖書館(例如Caffe)。
我們在ImageNet上進行了綜合性的實驗展示精準度下降問題,并評估我們的方法。我們發現:(1)特別深的殘差網很容易優化,但深度增加時,對應的“平面”網(即簡單的堆棧層)表現出更高的訓練誤差。(2)深度殘差網絡能夠在大大增加深度中獲得高精準度, 產生的結果本質上優于以前的網絡。
相似的現象同樣出現在了CIFAR-10集中,這表明了優化的難度,以及我們方法影響的不僅僅是類似于一個特定的數據集。我們在這個超過100層數據集中提出了成功的訓練模型,并探討了超過1000層的模型。
在ImageNet分層數據集中,通過極深的殘差網絡,我們得到了非常好的結果。152層的殘差網絡在ImageNet中是最深層的網絡,同時相比于VGG網絡仍然具有較低的復雜性。我們的集成在ImageNet測試集中有3.57%排前5的誤差,并且在2015ILSVRC分類競爭中取得第一名。這種極深的陳述在其它識別任務方面也有出色的泛化性能,并帶領我們進一步贏得了
第一的位置:在ILSVRC和COCO2015競賽中的,mageNet檢測,ImageNet定位,COCO檢測,和COCO分割方面。這有力的證據表明,剩余的學習的原則是通用的,我們期望它適用于其它的視覺和非視覺問題。
2.相關工作
殘差表示。在圖像識別中,VLAD是一個象征,通過關于字典的殘差向量進行編程,而且費舍爾向量可以被制定成VLAD的概率版本。它們兩個對于圖像檢索與分類都是有效的淺表示。
對于矢量化,編碼殘差向量比編碼原始向量更有效。
在低層次視覺和計算機圖形學中,為了解決偏微分方程(PDEs),它們廣泛的使用多重網格法,將系統重構成多尺度的子問題,每個子問題負責更粗和更細規模之間的殘差解答。多重網格的一種替代方法是分層的基礎預處理,它依賴于表示兩個尺度之間的殘差向量的變量。
這些收斂解法比不知道殘差性質的標準解法快得多。這些方法表明,一個好的方法或預處理可以簡化優化。
快捷連接。導致快捷連接的方法和理論已經被研究了很長時間。訓練多層感知器早期的實踐是從網絡的輸入到輸出添加一個線性層。在[44,24]中,一些中間層直接連接到輔助分類器,來解決梯度的爆發與消失問題。論文的[39,38,31,47]提出用于中心層響應,梯度和傳播誤差了的方法,該方法通過快捷連接實現。在[ 44 ],一個“開始”層是由一個快捷的分支和一些更深的分支組成。
并發我們的工作,“highway network”提出了門控功能的快捷連接。這些門依賴于數據和已有的參數,而我們的身份快捷鍵無需參數。當一個門控的快捷方式“關閉”(接近零時),highway network中的層代表非殘差函數。相反的是,我們的想法總是學習殘差函數,我們的身份快捷方式從來沒有關閉,而且所有的信息通過時,總是需要學習額外的殘差函數。此外,highway network并沒有表現出,精準度并沒有隨著深度的大大增加而提高(例如,超過100層)。
將H(X)假設為由幾個堆疊層匹配的(不一定是整個網)基礎映射,用x表示這些第一層的輸入。假設多元非線性層能逼近復雜的函數2,也就相當于假設它們可以逼近殘差函數,例如H(x)-x(假設輸入和輸出在同一規模)。因此我們非常明確的讓這些層近似于殘差函數,而并非期待堆疊層近似于H(x)。所以原函數變成了:F(x)+x。盡管兩種形式都能逼近期望函數,但它的學習難易度可能不同。
新的構思源于反常的精準度下降問題。如我們在簡介中討論的一樣,如果添加的層可以被構造為身份映射,那么一個更深度模型的訓練誤差,不應大于與其相應的更淺的模型訓練誤差。精準度下降問題表明,求解器在通過多個非線性層近似于身份映射方面有困難。隨著殘差學習重構,如果身份映射是最佳的方法,那么求解器可以簡單地驅動多個非線性層的權重趨向于零,以便逼近身份映射。
在現實情況中,身份映射不可能是最優的,但我們的方法可能有助于事先處理該問題。如果最優函數與趨近于零映射相比更趨近于身份函數,那么與學習一個新函數相比,求解器更容易找到關于身份映射的干擾。我們通過實驗展示(圖7)所學到的剩余函數一般有小的響應,這表明身份映射提供了合理的預處理。

圖2殘差學習:一個構建模塊
3.2。快捷方式的身份映射
我們對每一個堆疊層都采用殘差學習,一個構建模塊如圖2所示。正式地說,本文構建模塊定義為:

其中x和y是考慮到的層的輸入和輸出向量。函數F(x,{Wi})代表學習的殘差函數。如圖2所示有兩個層,F=W2?(W1x)中?表示ReLU,而且消除了簡化符號的偏見。F+x的操作是是由快捷連接和增加的元素智能進行的。在增加之后我門采用了第二非線性特性(例如?(y)如圖2)。
公式(1)中介紹的快捷連接,沒有額外的參數和復雜的計算。這不僅在實踐中有吸引力,它在對比平原和殘差網絡方面也同樣重要。有著相同數量的參數,深度,寬度和計算成本時(除了可以忽略不計的元素智能的添加),我們可以對平原和殘差網絡進行簡單的對比。
在式1中x和F的大小必須相同。如果不同(例如改變輸入和輸出渠道)我們可以通過快捷連接線性投影Ws來匹配維度:

我們也可以在式1中使用一個正方形矩陣Ws。但我們會通過實驗表明,身份映射足以
用于解決精準度下降問題并且是非常合算的,因此只有在匹配維度時,才使用Ws。
殘差函數F的形式是靈活的,本文的實驗涉及一個有兩層或三層(圖5)或者更多層的函數F。但如果F僅僅只有單層,式1就類似于線性層:y=W1x+x,因為們沒有觀察的優勢。
我們還注意到,雖然上面的符號為了簡單起見是關于完全連接的層,但它們適用于卷積層。函數F(x,{Wi})可以代表多個卷積層。增加的元素智能在兩個特征映射上通過通道對通道的方式進行。
3.3網絡構架
我們測試了不同的平原和殘差網絡,并且觀察到一致現象。為了給論述提供實例,我們描述了兩個ImageNet模型如下。
平原網絡。我們的平原基線(圖3,中間)主要受啟于VGG網理論(圖3,左)。卷積層主要有3X3的過濾器并遵循兩個簡單的設計規則:(i)對于相同的輸出特征映射大小,圖層有相同數量的濾波器;(ii)如果特征映射的大小被減半,過濾器的數量增加一倍,以保持每層的時間復雜度。我們通過有一個跨度為2的卷積層,直接進行下采樣。網絡以一個全局平均池層和有著最溫和的1000路全連接層結尾。圖3(中間)中加權層的總數是34。值得注意的是,我們的模型比VGG網(圖3,左)有著更少的過濾器和更低的復雜度。我們的34層基線有3.6億個觸發器(乘加),這只有vgg-19的18%(19.6億觸發器)。
殘差網絡。基于上面的平原網絡,我們插入快捷連接(圖3,右),將網絡轉變成其對應的殘差版本。當輸入,輸出大小相同的時候(實心線的捷徑在圖3),身份快捷鍵(公式(1))可以直接使用。當尺寸增加時(虛線快捷鍵在圖3)中,我們考慮了兩個選項:(A)快捷方式仍然執行身份映射,用額外的零條目填充以便增加尺寸。該選項不會引入額外的參數;(B)公式(2)中的投影捷徑,用于匹配尺寸(完成1×1卷積)。當快捷鍵以兩個大小在功能地圖上進行時,這兩個選項進行了2跨度。
3.4 實施
我們遵循了[21,41]中的方法,實施ImageNet。圖像的大小與隨著[ 256,480 中]它的短邊隨機采樣而調整,以便增大規模[ 41 ]。 224x224的結果,是從減去每個像素的平均值的圖像或其水平翻轉圖像,中隨機抽樣得到的。在[ 21 ]中增強了標準色。在每一個卷積之后和激活之前,我們采用了BN算法。我們如[ 13]中一樣初始化權重 ,并從零開始訓練所有的平原和殘差網。我們使用了一個迷你的SGD大小為256。學習率從0.1開始,并在誤差穩定時分為10份,而且我們訓練該模型高達60x104次迭代。我們使用重量衰減為0.0001和0.9。而不是使用傳統[ 16 ]中的慣例。
測試中,為了對比我們采用標準的10-crop試驗。為達到最佳效果,我們采用完全卷積形式如[ 41,13 ]中所示,并且平均多尺度大小的成績(短側圖像的大小調整在{ 224,256,384,480,640 }中)。
4實驗
4.1 Imagenet分級
我們在ImageNet 2012分類數據集中評估了我們的方法,該數據集由1000個級組成。我們在128萬訓練圖像中訓練模型,并且在50K驗證圖像進行了評估。測試中心報道,我們也在100k的測試圖像中獲得了最終結果。評估誤差率在第1和第5之間。
平面網絡。我們首先評估了18層和34層平原網。34層的平原網在圖3(中間)中。18層平面網形式是類似。詳細架構見表1。
表2顯示的結果表明,較深的34層平面網具有比淺18層平面網更高的驗證錯誤。為了揭示原因,在圖4(左)中,我們比較了培訓過程中的訓練和驗證錯誤。

圖3。展示ImageNet網絡架構。左:vgg-19模型(19.6億觸發器)作為參考。中間:一個有34個參數層的普通網絡(3.6億個觸發器)。右:有34g1參數層的殘差網絡(3.6億觸發器)。快捷鍵點增加尺寸。表1顯示更多細節和其他變型。
我們觀察到退化問題------在整個訓練過程中34層的普通網絡錯誤更多,盡管18層普通網絡的解空間是34層的一個子空間。

表1. ImageNet的構架。
我們會爭論優化困難不太可能是由梯度消失問題導致的。所有的普通網絡都是通過BN訓練的,而這也保證了向前傳播的信號有非零差異性。此外我們也要保證反向傳播梯度在BN中表現出良好。所以無論是向前或是向后信號都消失了。事實上,34層的普通網絡準確率更高(如表3),而這在一定的程度上也暗示了解算器。我們猜想深度普通網絡可能會有指數較低的收斂率能降低訓練錯誤。此類優化問題會在未來進行研究。

圖4. ImageNet訓練。細曲線指代訓練錯誤,粗曲線指代核心部分的合理錯誤。左邊:18層和34層的普通網絡。右邊:18層和34層的殘差網絡。在此處,殘差網絡和普通網絡的參數一樣。

表2.在ImageNet確認部分的最低錯誤率。
殘差網絡。接下來我們會18層和34層的殘差網絡。殘差網絡的框架基準線與普通網絡一樣,處理每一對3×3過濾器有增加快捷連接(圖3,右)。在第一個比較中(表2和圖4,右),所有用于增加維度的捷徑和補零都用使用身份定位。所以殘差網絡與普通網絡的參數并無區別。
我們從表2和圖4中得出3個重大發現。第一,與殘差學習模式相反的情況----34層網絡比18層網絡表現要好(2.8%左右)。更重要的是,34層殘差網絡比18層殘差網絡錯誤率更低,并且使用于驗證數據。而這也表明退化問題能在此設置中解決且我們能從更深層次中獲得準確率。
第二,與普通網絡相比,34層殘差網絡將最低錯誤率降低了3.5%(如圖2所示)。這一比較證實了殘差網絡在深度學習系統中的優越性。

表3.在ImageNet確認部分的錯誤率。VGG-16是基于我們自己的測試。ResNet-50/101/152基于B方案的,且只使用規劃增加維度。

表4. ImageNet確認部分使用單一模式的錯誤率。

表5.整體錯誤率。
最后,我們注意到18層的普通和殘差網絡是比較準確的(表2),但是18層的殘差網絡匯集更快(圖4右VS左)。當網絡沒有“過度重合”(如18層),當前的SGD求解程序依然可以在普通網絡找到好的解決方法。在此情況下,在早期階段通過提供更快的聚合能緩解ResNet的優化問題。
恒等式VS規劃捷徑。我們發現無參數和身份捷徑能幫助訓練。接下來我們會研究規劃捷徑(等式2)。在表3中我們比較了三種選擇:(A)使用補零捷徑增加維度,且所有的維度都無參數(如表2和圖4,右);(B)使用規劃捷徑增加維度,而其他的捷徑都是恒等式;(C)所有的捷徑都是規劃的。

圖5.深層殘差網絡的在ImageNet的功能F。
表3顯示三個方案就普通網絡比較而言都表現得更出色。B比A表現更好。我們會懷疑這是因為A中的零填充維度不具備殘差學習模式。C比B表現稍好,我們將此歸功于許多(13個)設計捷徑引入許多其他因素。但只有在A/B/C之間的少量不同能證明規劃捷徑對于解決退化問題十分關鍵。所以為控制記憶、時間復雜性,及模式規模,在本文的剩余部分我們不使用方案C。恒等式捷徑對于不增加瓶頸的結構復雜性至關重要。
更深層次的瓶頸結構
接下來我們會描述ImageNet更深層次網絡。因為鑒于我們時間有限,要改善區塊,將其變成瓶頸設計。對于每一個殘留功能F,我們使用3層瓶頸模式,而不是2層。這3層分別是1×1,3×3和1×1的回旋。在此范圍中,所有的1×1層都用于先減少后增加(存儲)量度,讓3×3層的輸入或是輸出量度更小。圖5展示了一個例子,這兩個設計的時間復雜性都一樣。
無參數恒等式捷徑對于瓶頸的結構尤為重要。如果圖5(右)中的恒等式捷徑被規劃所取代,我們能發現時間復雜性和模式大小都會翻倍,因為捷徑是連接兩個高量度端。
50層的殘留網絡
在34層網絡結構中,我們用3層的瓶頸區塊取代2層的區塊,這時34層結構就會變成50層殘差結構。我們使用B方案增加量度。而這一模式有38億FLOPs。
101層和152層的殘差網絡模式。我們通過使用3層的瓶頸區塊構建101層和152層的殘差模式。讓人驚訝的是,盡管深度顯著增加,152層的殘差模式(113億FLOPs)復雜性較VGG-16/19網絡(153/196億FLOPs)更小。
34層的殘差網絡較50/101/152層更準確。我們不關注退化問題,因此更在意隨著深度增加而增加的準確度。
先進方法之間的比較。在表4中,我們比較了之前單一模式所取得的最好結果。而我們34層殘差網絡模式準確度最高。152層ResNet模式錯誤率最低4.49%。而這也超過之前所有模式。我們結合6種不同深度的模式形成一種合集模式,這一模在測試中的錯誤率只有3.57%,讓我們在ILSVRC2015中拔得頭籌。
4.2 CIFAR-10和分析
我們在CIFAR-10的數據集中進行多場研究,此數據集包括50k的訓練圖像和10K測試圖像,且這些圖像都被分成了10類。我們將會展示在訓練集中訓練和在測試集中評估的試驗。我們關注的焦點在于深層網絡的行為,不在于取得最好結果,所以我們有意使用簡單結構。
所有普通/殘差結構都必須遵循圖3 的流程。網絡輸入32×32的圖像,但像素有所縮小。第一層是3×3回旋。接下來是6n層的3×3回旋,且特征神經網絡有2n層左右大小。過濾層的數量分別是{16,32,64}。二次抽樣是由跨度在2左右的回旋執行的。網絡結構終止于10個完全連接層。這里總共有6n+2的權重層。下表總結了其結構構成。

但當它們都運用捷徑連接時,它們就是通過3×3層連接起來。在此數據集中,我們在所有的情況下都使用恒等式捷徑,所以我們殘留模式有與簡單模式完全一樣的深度,寬度和參數數量。

圖6 基于CIFAR的錯誤分類
我們使用了權重衰減為0.0001和沖量單位為0.9,并且在采用權值初始化和BN方法但并未輸出。這些模式是在128有2個GPUs大小規模的數據中進行一次訓練。我們開始的學習率是0.1,且由32k和48k迭代次數分為10類,且在64k迭代次數結束訓練。我們根據簡單的訓練數據增大:每一邊填充4像素,最后從填充的數據圖像中隨機選取32×32的結果。對于測試,我們只評價最初的32×32圖像。
我們比較當n={3,5,7}時,20層,32層,44層和56層的網絡結構。圖6(左)展示的是普通網絡的表現。普通網絡隨著深度的增加錯誤率也會變高。這與ImageNet和MNIST是類似的,這說明優化問題是一個基礎問題。
圖6向我們展示了ResNet的表現。與ImageNet類似,ResNet旨在隨著深度的增加,克服優化問題和提高準確率。
我們會更加深入探討當n=18,110層的殘差網絡結構。在此情況下,我們發現初始學習率為0.1對于會聚還是太高了。所以我們使用0.01的初始學習率再進行訓練,直到錯誤率低于80%時,才使用0.1的初始值進行訓練。接下來的程序如之前所述進行。110層的網絡匯聚的十分好(圖6中)。它比其他深度或是簡單模式的參數更少,如FitNet和Highway,但是結果卻是十分的優秀。

圖7.在CIFAR-10上的層對于標準背離的表現。其反應是3×3層的結構輸出,在BN之后和非線性之前。上:是層的原始排列。下:是按照降序的方法排列其反應。
反應分析。CIFAR-10上的層對于標準背離的表現。其反應是3×3層的結構輸出,在BN之后和非線性之前。對于殘差網絡,這一分析反應的是殘差函數的影響。圖7顯示ResNet通常比原始網絡反應更小。這一結果證實了我們最初的想法殘差函數比非殘差函數更接近于零。更深層次的ResNet反應幅度更小,如圖7ResNet-20,56,和100所示。隨著層數的增加,ResNet的每一次會傾向于少改變信號。
超過100層的探索。我們深入探索超過1000層的深度模式。我們假設n=200,此時的網絡結果超過1202層。我們的模式沒有任何優化問題,103的網絡結構能實現訓練錯誤率<0.1%(圖6右)。其測試錯誤率也十分的低(7.93%,表6)。
但是在深度模式中還是有問題。
1202層的測試結果比110層的要差,盡管兩者的訓練錯誤率差不多。我們認為是過度擬合造成的。
1202層網絡系統對于如此小是數據集或許是太大了。為在此數據集中,取得較好結果有必要做重要調整如Maxout激發函數和Dropout激發函數。在本文中,我們并未使用Maxout激發函數和Dropout激發函數,僅僅只通過深度和簡單結構做一些修改。但是聯合更大的調整也許能取得更好的結果,這一課題我們會在未來進行研究。

圖7使用更快的R-CNN標準,在PASCAL VOC 2007/2012測試集上進行目標檢測。

圖8使用更快的R-CNN標準,在COCO驗證集中進行目標測試。
4.3 在PASCAL和MSCOCO上的目標檢測
我們的模式在其他的識別任務中有較好的表現。表7和表8顯示了基于PASCAL VOC 2007,2012和COCO上,目標測試結果。我們采用更快的R-CNN作為測試方法。我們對于使用ResNet取代VGG-16方法所獲得的進步很感興趣。使用兩種模式所得到的方法是一樣的,所以所獲結果的差別在于網絡結構。更令人驚訝的是,在極具挑戰性的COCO數據集中,我們取得了6.0%的進步,相較而言是有28%左右的進步。這全歸功于所學得的表現。
基于深度殘差網絡,我們贏得了ILSVRC&COCO2015比賽的冠軍:圖像識別,圖像定位和公共圖像識別和公共圖像分類。詳情請見附錄。
A.對象檢測基準
在這一節中來介紹我們基于Faster R-CNN系統的檢測方法。這個模型最初是用來進行Imagenet分類,然后被用于對象檢測數據領域。在ILSVRC&COCO 2015檢測競賽中我們實現了ResNet-50/101。
與參考文獻[32]中的VGG-16不一樣,ResNet沒有隱藏的fc層。我們將“卷曲特性圖的神經網絡”理念運用到這個問題中。將全圖卷曲特性進行預算(如表1所示)。考慮到這些層級和VGG-16中的13卷曲層類似,這樣ResNet和VGG-16就都有同樣的跨步了(16像素)。最終的分類層被兩個同級層取代。
對于BN層的使用,在訓練之前我們隊ImageNet的每個訓練層都進行了BN統計。然后BN層在轉移到物體檢測時被修正了。通過這些訓練,BN層變得更加線性活躍了,而且BN統計數據不會隨著轉移而變化。這些對BN層的修正主要是為了減少在Faster-CNN訓練過程中的內存消耗。
PASCAL VOC
針對PASCAL VOC 2007數據組,我們和參考文獻[7,32]中使用的方法一樣,用來訓練Faster R-CNN的超參數和參考文獻[32]中提到的一樣,表7展示的是訓練結果。ResNet-101在VGG-16的基礎上提高了mAP超過3%的成績。
MS COCO
MS COCO數據組包括80種對象類別。我們使用80k圖像來針對訓練組,40k圖像來針對預判組。RPN步態和Fast R-CNN步態都使用0.001學習率的240k迭代來進行訓練,然后在0.0001學習率的80k迭代下訓練。
表8展示的是MS COCO的訓練結果,這些結果證明深度網絡的確能提高識別和定位的效率。
B. 對象檢測提升
為了追求完美,我們針對競賽提升了性能。這些提升都是基于深度特性的,而且對殘差學習有益。
MS COCO
邊界改良
我們的邊界改良沿用的是參考文獻[6]中的迭代定位。我們將300個新的預判與原始的300個預判結合起來。邊界改良大概提升了mAP2個百分點的成績(如表9所示)。
表9
多范圍測試
以上所有的結果都是在單一范圍內進行訓練、測試的,如參考文獻[32]中提到的那樣。在我們目前的訓練中,我們沿用了參考文獻[33]中的方法進行了多范圍測試,但由于時間限制我們還沒有進行多范圍訓練。另外,我們特別針對Fast R-CNN步態進行了多范圍測試。通過模型訓練,對圖像椎體進行卷曲特性計算,它的短邊長在s ∈ {200,400,600,800,1000}。
我們選取了椎體的兩個相鄰范圍,結果證明多范圍測試能提升mAP2個百分點的成績。
使用確認數據
接下來我們使用80k+40k trainval數據組來進行訓練,20k測試數據組來進行評估,單模型結果如表9所示。
組合
在Faster R-CNN系統里這些是分別用來學習地區方案和對象分類,如果組合在一起能把兩者加速。表9展示了我們基于3中網絡組合的結果,在測試開發組中mAP取得了59.0%和37.4%的成績。
這是COCO 2015檢測任務中的最佳成績。
PASCAL VOC
基于上面的模型我們對PASCAL VOC數據組進行了測試,根據之前的經驗我們進行了少許調整,結果是我們在PASCAL VOC 2007上取得了了85.6%mAP的成績(表10),在PASCAL VOC 2012上取得了83.8%mAP成績(表11)。在PASCAL VOC 2012上獲得的成績比目前最佳成績還要好10%。

表10

表11
ImageNet檢測
ImageNet檢測任務包括200個對象類別。我們使用的對象檢測算法和在MS COCO中的相同(表9)。在DET測試組上,單一ResNet-101模型取得了58.9%的成績,3個組合模型取得了62.1%的成績(表12)。
這是ILSVRC 2015中ImageNet檢測任務的最佳成績。

表12
C.ImageNet定位
Imagenet定位(LOC)任務要求對物體分類再進行定位。根據參考文獻[40,41],假設首先用圖像分類器來預測圖像類別,然后根據預測類別使用定位算法開始進行定位。我們采用了“類回歸策略”對每一類進行邊界框定。我們提前對Imagnet分類進行訓練然后將它們調整到定位功能。為了訓練這個網絡我們提供了1000類Imagnet訓練組。
我們的定位算法基于在RPN框架上進行小部分修改。和參考文獻[32]的未知分類不一樣,我們的RPN定位是每一類的形式。和參考文獻[32]中的一樣,我們的邊界改良在每個位置都有平移不變的“錨定”邊界。
在3.4中的ImageNet分類訓練中,我們隨機使用224x224切割來進行數據擴增。為了測試,將整個網絡都應用于完全卷積的圖像中。
表13對定位結果進行了對比,VGG的文章指出使用基礎真實類別會找出33.1%的中心切割錯誤。當使用ResNet-101來預測類別,前5的定位錯誤結果是14.1%(表4)。

表13
上述結果僅是基于Faster R-CNN(參考文獻[32])的RPN上。人們可以使用檢測網絡(Fast R-CNN)在Faster R-CNN中來改善結果。但我們注意到,在此數據集,一個圖像通常包含單個支配對象,并且該區域相互高度重疊。受此啟發,在我們目前的實驗中,我們使用原來的R-CNN 來取代現有的Fast R-CNN。
我們的R-CNN實現情況如下。我們將每個訓練好的的單類別RPN用于訓練圖像上,來預測邊界限制情況和基準事實類別。為了測試,RPN在每個預測類別生成了最高到200層的方法,并且使用R-CNN網絡來提高這些方法成績和它的邊界位置。
這種方法將前5的定位錯誤降低到10.6%(表13)。這是我們的單模型在驗證組上的成績。將分類和定位組合起來使用,我們將前5的定位錯誤率降低到了9.0%。這個數字明顯比ILSVRC14的結果要好(表14),還減少了64%的相關錯誤。

表14
這個結果在ILSVRC2015中的ImageNet定位任務上取得第一名的成績。
via CVPR
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。