ResNet(Deep Residual Learning for Image Recognition)論文翻譯

ResNet(Deep Residual Learning for Image Recognition)論文翻譯

摘要

更深的神經網絡更難訓練。我們提出了一種殘差學習框架來減輕網絡訓練,這些網絡比以前使用的網絡更深。我們明確地將層變爲學習關於層輸入的殘差函數,而不是學習未參考的函數。我們提供了全面的經驗證據說明這些殘差網絡很容易優化,並可以顯著增加深度來提高準確性。在ImageNet數據集上我們評估了深度高達152層的殘差網絡——比VGG[40]深8倍但仍具有較低的複雜度。這些殘差網絡的集合在ImageNet測試集上取得了3.57%的錯誤率。這個結果在ILSVRC 2015分類任務上贏得了第一名。我們也在CIFAR-10上分析了100層和1000層的殘差網絡。

對於許多視覺識別任務而言,表示的深度是至關重要的。僅由於我們的非常深度表示,我們在COCO對象檢測數據集上獲得了28%的相對改進。深度殘差網絡是我們提交ILSVRC&COCO 2015競賽1的基礎,在該競賽中,我們還獲得了ImageNet檢測,ImageNet定位,COCO檢測和COCO分割等任務的第一名。

1 引言

深度卷積神經網絡[22,21]導致了圖像分類的一系列突破[21,50,40]。 深度網絡自然地以端到端的多層方式集成了低/中/高級特徵[50]和分類器,並且特徵的“級別”可以通過堆疊層的數量(深度)來豐富。 最新證據[41,44]揭示了網絡深度至關重要,在具有挑戰性的ImageNet數據集[36]上的領先結果[41,44,13,16]都利用了“非常深”的模型[41], 深度在16[41]到30[16]之間。許多其他非平凡的視覺識別任務[8、12、7、32、27]也從非常深入的模型中受益匪淺。

在深度重要性的驅動下,一個問題出現了:學習更好的網絡是否想疊加更多的層那麼簡單嗎?回答這個問題的一個障礙是衆所周知的漸變消失/爆炸問題[1,9],它從一開始就阻礙了收斂。然而,這一問題已經在很大程度上通過正則化初始化[23,9,37,13]和中間正則化層[16]得到了解決,這些層使得具有數十層的網絡能夠通過具有反向傳播[22]的隨機梯度下降(SGD)開始收斂。

當更深層次的網絡能夠開始收斂時,一個退化的問題就暴露出來了:隨着網絡深度的增加,準確率達到飽和(這可能並不奇怪),然後迅速退化。出乎意料的是,這種退化並不是由過度擬合造成的,並且在一個合適的深度模型上增加更多的層會導致更高的訓練誤差,正如文獻[11,42]所報道的,我們的實驗也完全驗證了這一點。圖1給出了一個典型的例子。

在這裏插入圖片描述

圖1.在帶有20層和56層“普通”網絡的CIFAR-10上的訓練錯誤(左)和測試錯誤(右)。 較深的網絡具有較高的訓練誤差和測試誤差。ImageNet上的類似現象如圖4所示。

訓練準確性的退化表明並非所有系統都同樣容易優化。讓我們考慮一個較淺的架構及其更深層次的對象,爲其添加更多的層。 通過構建更深層的模型可以找到解決方案:添加的層是恆等映射,其他層是從學習的淺層模型中複製的。此構造解決方案的存在表明,較深的模型不應該產生比其對應的較淺模型更高的訓練誤差。但實驗表明,我們現有的解決方案無法找到比構造的解決方案更好或更好的解決方案(或在可行時間內無法找到)。

在本文中,我們通過引入深度殘差學習框架來解決退化問題。我們不希望每幾個堆疊的層直接擬合一個期望的底層映射,而是明確地讓這些層擬合一個殘差映射。形式上,所期望的底層映射表示爲H (x),我們讓堆疊非線性層擬合另一個映射,即F (x): = H (x)−x。原始映射將重寫爲F (x) + x。我們假設殘差映射比原始的未參考的映射要容易優化。在極端情況下,如果一個恆等映射是最優的,那麼將殘差置爲零要比通過一堆非線性層來擬合一個恆等映射容易得多。

公式F(x)+ x可以通過具有“shortcuts”的前饋神經網絡來實現(圖2)。shortcuts連接[2、34、49]是跳過一層或多層的連接。 在我們的例子中,shortcuts連接僅執行恆等映射,並將其輸出添加到堆疊層的輸出中(圖2)。恆等shortcuts連接既不會增加額外的參數,也不會增加計算複雜度。 整個網絡仍然可以通過SGD反向傳播進行端到端訓練,並且可以使用通用庫(例如Caffe [19])輕鬆實現,而無需修改求解器。

在這裏插入圖片描述

​ 圖2.殘餘學習:構建塊。

我們在ImageNet [36]上進行了綜合實驗,以顯示退化問題並評估我們的方法。我們證明:1)我們極深的殘差網絡易於優化,但是當深度增加時,對應的“普通”網絡(簡單地堆疊層)顯示出更高的訓練誤差; 2)我們的深層殘差網絡可以通過大大增加深度來輕鬆享受準確性的提高,所產生的結果比以前的網絡要好得多。

在CIFAR-10集上也顯示了類似的現象[20],這表明優化困難和我們方法的效果不僅類似於特定數據集。 我們在此數據集上成功地訓練了100多個層的模型,並探索了1000多個層的模型。

在ImageNet分類數據集[36]上,我們通過極深的殘差網獲得了出色的結果。 我們的152層殘差網絡是ImageNet上提出的最深的網絡,同時其複雜度仍低於VGG網絡[41]。 我們的模型集合在ImageNet測試集上有`3.57% top-5的錯誤率,並在ILSVRC 2015分類競賽中獲得第一名。 極深的表示在其他識別任務上也具有出色的泛化性能,使我們在ILSVRC和COCO 2015競賽中進一步贏得了第一名:ImageNet檢測,ImageNet定位,COCO檢測和COCO分割。 有力的證據表明,殘差學習原理是通用的,我們希望它適用於其他視覺和非視覺問題。

2 相關工作

殘差表示 在圖像識別中,VLAD[18]是對字典的殘差向量進行編碼的表示形式,Fisher向量[30]可以表示爲VLAD的概率版本[18]。它們都是圖像檢索和分類中強大的淺層表示[4,48]。在矢量量化方面,對殘差矢量[17]進行編碼比對原始矢量進行編碼更有效。

在低級視覺和計算機圖形學中,爲了求解偏微分方程(PDE),廣泛使用的Multigrid方法[3]將系統重新構建爲多個尺度的子問題,其中每個子問題負責較粗尺度和較細尺度之間的殘差解。Multigrid的替代方法是分層基礎預處理[45,46],它依賴於表示兩個尺度之間殘差矢量的變量。 已經顯示[3,45,46],這些求解器的收斂速度比不知道解的殘差性質的標準求解器快得多。 這些方法表明,良好的重構或預處理可以簡化優化過程。

Shortcuts連接 Shortcuts連接[2、34、49]的實踐和理論已經研究了很長時間。 訓練多層感知器(MLP)的早期實踐是添加一個線性層來連接網絡輸入和輸出[34,49]。 在[44,24]中,一些中間層直接連接到輔助分類器,以解決消失/爆炸梯度。 [39,38,31,47]的論文提出了通過shortcuts連接實現層間響應,梯度和傳播誤差的方法。 在[44]中,一個“inception”層由一個shortcuts分支和一些更深的分支組成。

與我們同時進行的工作,“highway networks”[42,43]提供了帶有門控功能[15]的shortcuts連接。這些門是依賴於數據的,並且有參數,這與我們的恆等shortcuts是無參數的形成了對比。當封閉的shortcuts被關閉(接近於零)時,highway networks(高速網絡)中的各層代表了非殘差函數。相反,我們的公式總是學習殘差函數;我們的恆等shortcuts永遠不會關閉,所有的信息總是通過,還有額外的殘差函數需要學習。此外,highway networks深度的極大增加(例如,超過100層)並沒有表現出精度的提高。

3 深度殘差學習

3.1 殘差學習

讓我們將H(x)視爲一些堆疊層(不一定是整個網絡)要擬合的底層映射,其中x表示這些層中第一層的輸入。 如果假設多個非線性層可以漸近地逼近複雜函數,則等效於假設它們可以漸近地近似殘差函數,即H(x)-x(假設輸入和輸出的維數相同)。因此,我們沒有讓堆疊的層近似爲H(x),而是明確地這些層近似爲殘差函數F(x):= H(x)-x。 因此,原始函數變爲F(x)+ x。儘管兩種形式都應能夠漸近地逼近所需的函數(如假設),但學習的難易程度可能有所不同。

這種重構是由與退化問題有關的反直覺現象引起的(圖1,左)。正如我們在引言中討論的那樣,如果可以將添加的層構造爲恆等映射,則較深的模型應具有的訓練誤差不大於其較淺的模型的訓練誤差。 退化問題表明,求解器可能難以通過多個非線性層來逼近恆等映射。 在殘差學習中,如果恆等映射是最佳的,則求解器可以簡單地將多個非線性層的權重逼近零,以逼近恆等映射。

在實際情況中,恆等映射不太可能是最優的,但是我們的重構可能有助於對問題進行預處理。如果最優函數更接近於恆等映射而不是零映射,那麼求解器就更容易找到與恆等映射相關的擾動,而不是將該函數作爲新的函數來學習。實驗表明(圖7),學習後的殘差函數一般響應較小,這說明恆等映射提供了合理的預處理。

3.2 利用shortcut進行恆等映射

我們對每幾個堆疊的層採用殘差學習。構建塊如圖2所示。在本文中,我們正式地將構建塊定義爲:
y=F(x,{Wi})+x(1) \mathbf{y}=\mathcal{F}\left(\mathbf{x},\left\{W_{i}\right\}\right)+\mathbf{x}(1)
這裏的x和y是所考慮的層的輸入和輸出向量。 函數F(x,{Wi})\mathcal{F}\left(\mathbf{x},\left\{W_{i}\right\}\right)表示要學習的殘差映射。 對於圖2中具有兩層的示例,F=W2σ(W1x)\mathcal{F}=W_{2} \sigma\left(W_{1} \mathbf{x}\right),其中σ表示ReLU [29],並且爲了簡化符號省略了偏置項。 F + x操作通過shortcuts連接和各個元素加法執行。 加法後我們採用第二種非線性(即σ(y),見圖2)。

式(1)中的shortcuts連接既沒有引入額外的參數,也沒有引入計算複雜性。 這不僅在實踐中具有吸引力,而且在我們比較普通網絡和殘差網絡時也很重要。 我們可以公平地比較同時具有相同數量的參數,深度,寬度和計算成本(除了可以忽略的逐元素加法)的普通/殘差網絡。

在式(1)中,x和F的維數必須相等。如果不是這樣(例如,當改變輸入/輸出通道時),我們可以通過shortcuts連接執行一個線性投影Ws來匹配維度:
y=F(x,{Wi})+Wsx(2) \mathbf{y}=\mathcal{F}\left(\mathbf{x},\left\{W_{i}\right\}\right)+W_{s} \mathbf{x}(2)
我們也可以在等式(1)中使用方陣Ws。但是,我們將通過實驗證明,恆等映射足以解決退化問題,並且是合算的,因此Ws只在匹配維度時使用。

殘差函數F的形式是靈活可變的。 本文中的實驗涉及一個具有兩層或三層的函數F(圖5),而更多的層也是可能的。 但是,如果F僅具有一層,則等式(1)類似於線性層:y=W1x+x\mathbf{y}=W_{1} \mathbf{x}+\mathbf{x},對此我們沒有觀察到優勢。

我們還注意到,儘管爲簡化起見,上述符號是關於全連接層的,但它們也適用於卷積層。 函數F(x,{Wi})\mathcal{F}\left(\mathbf{x},\left\{W_{i}\right\}\right)可以表示多個卷積層。 對兩個特徵圖逐個通道執行逐元素加法。

3.3 網絡結構

我們已經測試了各種普通/殘差網絡,並觀察到了一致的現象。 爲了提供討論的實例,我們描述了ImageNet的兩個模型,如下所示。

普通網絡 我們普通網絡的基準(圖3,中間)主要受到VGG網絡原理的啓發[41](圖3,左圖)。 卷積層大多具有3×3濾波器,並遵循兩個簡單的設計規則:(i)對於相同的輸出特徵圖大小,層具有相同數量的過濾器; (ii)如果特徵圖的大小減半,則過濾器的數量將增加一倍,以保持每層的時間複雜度。 我們直接通過步長爲2的卷積層直接執行下采樣。網絡以全局平均池化層和帶有softmax的1000維全連接層結束。 在圖3(中間),加權層的總數爲34。

值得注意的是,我們的模型比VGG網絡[41]具有更少的過濾器和更低的複雜度(圖3,左)。 我們的34層基準具有36億個FLOP(乘法加法),僅佔VGG-19(196億個FLOP)的18%。
在這裏插入圖片描述

圖3. ImageNet的示例網絡架構。 左:作爲參考的VGG-19模型[41](196億個FLOP)。 中:具有34個參數層(36億個FLOP)的普通網絡。 右:一個具有34個參數層的殘差網絡(36億個FLOP)。 虛線shortcuts會增加維度。 表1顯示了更多詳細信息和其他變體。

殘差網絡 在上面的普通網絡的基礎上,我們插入shortcuts連接(圖3,右),將網絡變成其對應的殘差版本。 當輸入和輸出的維度相同時,可以直接使用恆等shortcuts連接(等式(1))(圖3中的實線shortcuts連接)。 當維度增加時(圖3中的虛線shortcuts連接),我們考慮兩個選項:(A)shortcuts仍然執行恆等映射,額外增加零輸入來增加維度。 此選項不引入任何額外的參數。 (B)等式(2)中的投影shortcuts用於匹配維度(按1×1卷積完成)。 對於這兩個選項,當shortcuts遍歷兩種尺寸的特徵圖時,步長爲2。

3.4 實現

我們對ImageNet的實現遵循了[21,41]中的實踐。調整圖像大小,其較短的邊在[256,480]之間進行隨機採樣,用於尺度增強[40]。224×224裁剪是從圖像或其水平翻轉中隨機採樣,並逐像素減去均值[21]。使用[21]中的標準顏色增強。我們在每次卷積之後,在激活之前,採用批量歸一化(BN)[16]。我們按照[13]的方法初始化權值,從零開始訓練所有的普通/殘差網絡。我們使用批大小爲256的SGD。學習速率從0.1開始,當誤差趨於穩定時除以10,對模型進行多達60×104次迭代的訓練。我們使用重量衰減爲0.0001,動量爲0.9。我們不使用dropout[14],遵循[16]的實踐。

在試驗中,爲了進行比較研究,我們採用了標準的10-crop試驗[21]。爲了得到最好的結果,我們採用了[41,13]中的全卷積形式,並在多個尺度下對分數進行平均(圖像歸一化,短邊位於{224,256,384,480,640}中)。

4 實驗

4.1 ImageNet 分類

我們在包含1000個類別的ImageNet 2012分類數據集[36]上評估了我們的方法。 在128萬張訓練圖像上對模型進行了訓練,並在50k張驗證圖像上進行了評估。 我們還將在測試服務器報告的10萬張測試圖像上獲得最終結果。 我們評估了top-1和top-5的錯誤率。

普通網絡 我們首先評估18層和34層的普通網絡。34層普通網絡如圖3(中間)所示。18層的普通網絡也是類似的形式。有關詳細的體系結構,請參見表1。

表2的結果表明,更深的34層普通網絡比較淺的18層普通網絡具有更高的驗證誤差。爲了揭示原因,在圖4(左)中,我們比較了他們在訓練過程中的訓練/驗證錯誤。在整個訓練過程中,我們觀察到34層普通網絡的退化問題,儘管18層普通網絡的解空間是34層普通網絡的解空間的子空間,但其訓練誤差在整個訓練過程中都比較大。
在這裏插入圖片描述

表1. ImageNet的體系結構。 括號中顯示了構建塊(另請參見圖5),其中堆疊了許多塊。 下采樣由conv3 1, conv4 1和conv5 1執行,步長爲2
在這裏插入圖片描述

圖4. ImageNet訓練。 細曲線表示訓練誤差,粗曲線表示中心裁剪的驗證誤差。 左:18和34層的普通網絡。 右:18和34層的ResNet。 在該圖中,殘差網絡與普通網絡相比沒有額外的參數
在這裏插入圖片描述

表2. ImageNet驗證中的前1個誤差(%,進行了十次裁剪測試)。 ResNet與普通網絡相比沒有額外的參數。 圖4顯示了訓練程序

我們認爲這種優化困難不太可能是由消失的梯度造成的。這些普通網絡使用BN[16]進行訓練,以確保前向傳播的信號具有非零的方差。我們還驗證了反向傳播的梯度具有BN的正常標準。所以向前和向後的信號都不會消失。事實上,34層的普通網絡仍能達到具有競爭力的準確率(表3),說明求解器在一定程度上是可行的。我們推測深普通網絡可能具有指數級的低收斂速度,這影響了訓練誤差的降低。這種優化困難的原因將在以後進行研究。

殘差網絡 接下來,我們評估18層和34層殘差網絡(ResNets)。基本架構與上面的普通網相同,只是在每一對3×3的濾波器上增加了一個shortcuts,如圖3(右)所示。在第一個比較中(表2和圖4右側),我們所有shortcuts使用恆等映射,使用零填充以增加維度(選項A),因此與普通的對應項相比,它們沒有額外的參數。

我們從表2和圖4中得到了三個主要的觀察結果。首先,隨着殘差學習,34層的ResNet優於18層的ResNet(提高了2.8%)。更重要的是,34層的ResNet顯示出相當低的訓練誤差,並且可推廣到驗證數據。這表明在這種情況下,退化問題得到了很好的解決,我們可以通過增加深度來提高精度。

其次,與普通版網絡相比,34層的ResNet將top-1的誤差減少了3.5%(表2),這是由於成功地減少了訓練誤差(圖4)。這一比較驗證了殘差學習在極深系統上的有效性。

最後,我們還注意到,18層的普通/殘差網格相對來說是準確的(表2),但是18層的ResNet收斂得更快(圖4右/左)。當網“不是太深”(這裏是18層)時,當前的SGD求解器仍然能夠找到普通網絡的良好解決方案。在這種情況下,ResNet通過在早期提供更快的收斂速度來簡化優化。

恆等shortcuts與投影shortcuts 我們已經證明,無參數的恆等shortcuts有助於訓練。接下來,我們研究投影shortcuts(等式(2))。在表3中,我們比較了三個選項:(A)零填充shortcuts用於增加維度,並且所有shortcuts都是無參數的(與表2和圖4右相同);(B)投影shortcuts用於增加維度,其他shortcuts是恆等的。(C)所有shortcut都是投影。

表3顯示,這三個選項都比普通網絡好得多。B比A稍微好一點,我們認爲這是因爲A的零填充維度確實沒有殘差學習。C比B稍微好一點,我們把這歸因於許多(13個)shortcuts引入的額外參數。但是,A/B/C之間的細微差異表明,shortcuts對於解決退化問題並不是必需的。因此,在本文的其餘部分中,我們不使用選項C來降低內存/時間複雜度和模型大小。恆等shortcuts對於不增加下面介紹的瓶頸結構的複雜性尤其重要。

更深的瓶頸結構 接下來我們描述ImageNet中我們使用的更深的網絡網絡。由於關注我們能承受的訓練時間,我們將構建塊修改爲瓶頸設計。對於每個殘差函數F,我們使用3層堆疊而不是2層(圖5)。三層是1×1,3×3和1×1卷積,其中1×1層負責減小然後增加(恢復)維度,使3×3層成爲具有較小輸入/輸出維度的瓶頸。圖5展示了一個示例,兩個設計具有相似的時間複雜度。

無參數恆等快捷連接對於瓶頸架構尤爲重要。如果圖5(右)中的恆等快捷連接被投影替換,則可以顯示出時間複雜度和模型大小加倍,因爲快捷連接是連接到兩個高維端。因此,恆等快捷連接可以爲瓶頸設計得到更有效的模型。

50層ResNet 我們用3層瓶頸塊替換34層網絡中的每一個2層塊,得到了一個50層ResNet(表1)。我們使用選項B來增加維度。該模型有38億FLOP。

101層和152層ResNet 我們通過使用更多的3層瓶頸塊來構建101層和152層ResNets(表1)。值得注意的是,儘管深度顯著增加,但152層ResNet(113億FLOP)仍然比VGG-16/19網絡(153/196億FLOP)具有更低的複雜度。

50/101/152層ResNet比34層ResNet的準確性要高得多(表3和4)。我們沒有觀察到退化問題,因此可以從顯著增加的深度中獲得顯著的準確性收益。所有評估指標都能證明深度的收益(表3和表4)。

與最先進的方法比較 在表4中,我們與以前最好的單一模型結果進行比較。我們基準的34層ResNet已經取得了非常有競爭力的準確性。我們的152層ResNet具有單模型4.49%的top-5錯誤率。這種單一模型的結果勝過以前的所有綜合結果(表5)。我們結合了六種不同深度的模型,形成一個集合(在提交時僅有兩個152層)。這在測試集上得到了3.5%的top-5錯誤率(表5)。這次提交在2015年ILSVRC中榮獲了第一名。
在這裏插入圖片描述

表3 ImageNet驗證集錯誤率(%,10個裁剪圖像測試)。VGG16是基於我們的測試結果的。ResNet-50/101/152的選擇B僅使用投影增加維度。
在這裏插入圖片描述

表4 單一模型在ImageNet驗證集上的錯誤率(%)(除了†是測試集上報告的錯誤率)
在這裏插入圖片描述

表5 模型綜合的錯誤率(%) top-5錯誤率是ImageNet測試集上的並由測試服務器報告的
在這裏插入圖片描述

圖5 ImageNet的深度殘差函數F 左:ResNet-34的構建塊(在56×56的特徵圖上),如圖3 右:ResNet-50/101/152的“bottleneck”構建塊

4.2 CIFAR-10和分析

我們對CIFAR-10數據集[20]進行了更多的研究,其中包括10個類別中的5萬張訓練圖像和1萬張測試圖像。我們介紹了在訓練集上進行訓練和在測試集上進行評估的實驗。我們的焦點在於極深網絡的行爲,但不是推動最先進的結果,所以我們有意使用如下的簡單架構。

簡單/殘差架構遵循圖3(中/右)的形式。網絡輸入是32×32的圖像,每個像素減去均值。第一層是3×3卷積。然後我們在大小爲{32,16,8}的特徵圖上分別使用了帶有3×3卷積的6n個堆疊層,每個特徵圖大小使用2n層。濾波器數量分別爲{16,32,64}。下采樣由步長爲2的卷積進行。網絡以全局平均池化,一個10維全連接層和softmax作爲結束。共有6n+2個堆疊的加權層。下表總結了這個架構:
在這裏插入圖片描述

當使用shortcuts連接時,它們連接到成對的3×3卷積層上(共3n個快捷連接)。在這個數據集上,我們在所有案例中都使用恆等shortcuts連接(即選項A),因此我們的殘差模型與對應的簡單模型具有完全相同的深度,寬度和參數數量。

我們使用的權重衰減爲0.0001和動量爲0.9,並採用[12]和BN[16]中的權重初始化,但沒有使用丟棄。這些模型在兩個GPU上進行訓練,批處理大小爲128。我們開始使用的學習率爲0.1,在32k次和48k次迭代後學習率除以10,並在64k次迭代後終止訓練,這是由45k/5k的訓練/驗證集分割決定的。我們按照[24]中的簡單數據增強進行訓練:每邊填充4個像素,並從填充圖像或其水平翻轉圖像中隨機採樣32×32的裁剪圖像。對於測試,我們只評估原始32×32圖像的單一視圖。

我們比較了n=3,5,7,9,得到了20層,32層,44層和56層的網絡。圖6(左)顯示了簡單網絡的行爲。深度簡單網絡經歷了深度增加,隨着深度增加表現出了更高的訓練誤差。這種現象類似於ImageNet中(圖4,左)和MNIST中(請看[41])的現象,表明這種優化困難是一個基本的問題。
在這裏插入圖片描述

圖6 在CIFAR-10上訓練。虛線表示訓練誤差,粗線表示測試誤差。左:簡單網絡。簡單的110層網絡錯誤率超過60%沒有展示。中間:ResNet。右:110層ResNet和1202層ResNet。

圖6(中)顯示了ResNet的行爲。與ImageNet的情況類似(圖4,右),我們的ResNet設法克服優化困難並隨着深度的增加展示了準確性收益。

我們進一步探索了n=18得到了110層的ResNet。在這種情況下,我們發現0.1的初始學習率對於收斂來說太大了。因此我們使用0.01的學習率開始訓練,直到訓練誤差低於80%(大約400次迭代),然後學習率變回到0.1並繼續訓練。學習過程的剩餘部分與前面做的一樣。這個110層網絡收斂的很好(圖6,中)。它與其它的深且窄的網絡例如FitNet[34]和Highway41相比有更少的參數,但結果仍在目前最好的結果之間(6.43%,表6)。
在這裏插入圖片描述

表6 在CIFAR-10測試集上的分類誤差。所有的方法都使用了數據增強。對於ResNet-110,像論文[42]中那樣,我們運行了5次並展示了“最好的(mean±std)”。

層響應分析。圖7顯示了層響應的標準偏差(std)。這些響應每個3×3層的輸出,在BN之後和其他非線性(ReLU/加法)之前。對於ResNets,該分析揭示了殘差函數的響應強度。圖7顯示ResNet的響應比其對應的簡單網絡的響應更小。這些結果支持了我們的基本動機(第3.1節),殘差函數通常具有比非殘差函數更接近零。我們還注意到,更深的ResNet具有較小的響應幅度,如圖7中ResNet-20,56和110之間的比較所證明的。當層數更多時,單層ResNet趨向於更少地修改信號。
在這裏插入圖片描述

圖7 層響應在CIFAR-10上的標準差(std)。這些響應是每個3×3層的輸出,在BN之後非線性之前。上面:以原始順序顯示層。下面:響應按降序排列。

探索超過1000層。我們探索超過1000層的過深的模型。我們設置n=200,得到了1202層的網絡,其訓練如上所述。我們的方法顯示沒有優化困難,這個103層網絡能夠實現訓練誤差<0.1%(圖6,右圖)。其測試誤差仍然很好(7.93%,表6)。

但是,這種極深的模型仍然存在着開放的問題。這個1202層網絡的測試結果比我們的110層網絡的測試結果更差,雖然兩者都具有類似的訓練誤差。我們認爲這是因爲過擬合。對於這種小型數據集,1202層網絡可能是不必要的大(19.4M)。在這個數據集應用強大的正則化,如maxout[9]或者dropout[13]來獲得最佳結果([9,25,24,34])。在本文中,我們不使用maxout/dropout,只是簡單地通過設計深且窄的架構簡單地進行正則化,而不會分散集中在優化難點上的注意力。但結合更強的正規化可能會改善結果,我們將來會研究。

4.3. 在PASCAL和MS COCO上的目標檢測

我們的方法對其他識別任務有很好的泛化性能。表7和表8顯示了PASCAL VOC 2007和2012[5]以及COCO[26]的目標檢測基準結果。我們採用更快的R-CNN[32]作爲檢測方法。在這裏,我們感興趣的是用ResNet-101替換VGG-16[40]。使用這兩種模式的檢測實現(見附錄)是一樣的,所以收益只能歸因於更好的網絡。最顯著的是,在有挑戰性的COCO數據集中,COCO的標準度量指標(mAP@[.5,.95])增長了6.0%,相對改善了28%。這種收益完全是由於學習表示。
在這裏插入圖片描述

表7 在PASCAL VOC 2007/2012測試集上使用基準Faster R-CNN的目標檢測mAP(%)。更好的結果請看附錄。
在這裏插入圖片描述
表8 在COCO驗證集上使用基準Faster R-CNN的目標檢測mAP(%)。更好的結果請看附錄。
基於深度殘差網絡,我們在ILSVRC & COCO 2015競賽的幾個任務中獲得了第一名,分別是:ImageNet檢測,ImageNet定位,COCO檢測,COCO分割。跟多細節請看附錄。

網上有諸多翻譯版本,作了部分修訂,仍會有不妥之處,望見諒!

參考文章:https://blog.csdn.net/Quincuntial/article/details/77263562

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