圖像識別3-VGGNet-very deep convolutional Network for large-scale image recognition

文章重點:

1.使用更小的3*3的卷積核與更深的網絡(16-19層)獲得了比ZFNet和AlexNet更好的效果,並且作者測試了不同的數據集證明了該網絡具有很好的泛化性,在其他的測試集上也表現出了很好的性能。

2.作者對比了5種深度的卷積網絡證明深度越深,在訓練數據越大的情況下效果越好。

3.使用了多尺度縮放數據增強技術,證明效果比單尺度數據增強效果提高接近%1.

4.網絡的配置:在訓練階段,卷積網絡的輸入爲固定尺寸224×224的RGB圖像。唯一做的預處理是對每個像素減去訓練集中的RGB均值。圖像通過一堆卷積層(conv.),卷積濾波器使用非常小的接受域:3×3(是用來獲取左右、上下和中心的最小尺寸),也使用1*1的卷積濾波器,這可以看作是對輸入通道的一個線性變換(其後面接一個非線性變換)。卷積的滑動步長(stride)固定爲1個像素;卷積層的空間填充(padding)用來保持卷積後圖像的空間分辨率,例如,對於3×3的卷積層,填充爲1 個像素。空間池化(pooling)包含5個最大池化層(max-pooling),它們接在部分卷積層的後面(並不是所有的卷積層都接有最大池化層)。最大池化層爲2×2的滑動窗口,滑動步長爲2。在一整堆的卷積層後(對於不同框架有不同深度)接了3個全連接層(FC):前兩個全連接層各有4096個通道,第三個用來做1000類的ILSVRC分類,因此包含1000個通道(每個通道代表一類)。最後一層是一個soft-max層。全連接層的配置在所有網絡中一致。所有隱層都是用非線性修正(ReLU)。注意到我們的網絡(除了一個)都包含了局部響應標準化(LRN):在Sect.4 中會展示,這個標準化並不會提高網絡在ILSVRC數據集上的性能,反而會增加內存消耗和計算時間。

5.最後效果:VGG(2Nets,muti-crop & dence eval)top1錯誤率:23.7


以下全文翻譯轉載自:http://blog.csdn.net/wspba/article/details/61625387

摘要

本文研究了深度對卷積網絡在大規模圖像識別中準確率的影響。本文的主要貢獻是,對使用很小(3×3)的卷積濾波器來增加深度的網絡進行了一個全面的評估,表明了通過將深度提高到16——19個權重層,業界最好網絡的性能也能夠得到顯著的提升。這些發現是我們參加ImageNet2014挑戰賽的基礎,我們也因此在定位和分類跟蹤任務上分別獲得了第一名和第二名的成績。本文表明瞭我們的模型在其他數據集上同樣表現得很好,並都達到了當前最佳的水平。我們已經公佈了兩種性能最好的卷積網絡模型,希望能促進將深度視覺表達應用於計算機視覺的進一步研究。

1 介紹

卷積網絡(ConvNets)最近在大規模的圖像和視頻識別中獲得了很大的成功,這可能得益於大型公共圖像庫,如 ImageNet,以及高性能計算系統,如GPU或大規模分佈式集羣。特別是在深度視覺識別結構發展中扮演重要角色的ImageNet大規模視覺識別大賽(ILSVRC),從高維淺層特徵編碼 (ILSVRC-2011冠軍)到深度卷積網絡(ILSVRC-2012 冠軍),它爲幾代大規模圖像分類系統提供了測試平臺。

隨着卷積網絡在計算機視覺領域的應用越來越廣泛,爲了獲得更高的準確率,越來越多的人嘗試在krizhevsky2012imagenet中的原始框架上進行改進。例如,ILSVRC-2013最好的參賽模型在第一個卷積層上使用了較小的接受域窗口以及較小的滑動步長。另一種改進方案是在整幅圖像以及它的多個尺寸上,稠密的訓練和測試網絡。本文中,我們關注了卷積網絡結構設計中的另一個重要因素——深度。爲此,我們固定了網絡框架的其他參數,然後通過增加更多的卷積層來增加網絡的深度,這是可行的,因爲我們在所有層都是用非常小(3×3)的卷積濾波器。

因此,我們提出了更加精確的卷積網絡框架,它不僅在ILSVRC分類和定位任務上獲得了最好的成績,同時在其他圖像識別數據集上也表現出了很優異的性能,即便只是用來作爲一個相對簡單框架的一部分(例如,無需微調的線性SVM深度特徵分類)。我們公佈了兩個性能最好的模型來促進進一步的研究。

本文其餘部分組織如下。在Sect.2 中,描述了我們的卷積網絡框架。Sect.3 介紹了圖像分類任務的訓練和評估的主要細節。Sect.4 在ILSVRC分類任務上對不同框架進行了對比。Sect.5 對本文進行了總結。爲了文章的完整性,我們在Appendix A 中描述了我們的ILSVRC-2014目標定位系統,並在Appendix B 中討論了非常深的特徵對於其他數據集的泛化能力。最後,Appendix C 包含了本文的主要修訂記錄。

2 CONVNET CONFIGURATIONS

爲了公平的衡量由增加的卷積層深度所帶來的效果,我們所有的卷積層都以相同的方式設計。本章中,首先介紹了我們的卷積網絡的通用結構,然後描述了在評估中具體配置的細節。最後討論了我們的設計選擇並與先前最好的網絡進行了比較。

2.1 ARCHITECTURE 
在訓練階段,我們的卷積網絡的輸入爲固定尺寸224×224的RGB圖像。我們唯一做的預處理是對每個像素減去訓練集中的RGB均值。圖像通過一堆卷積層(conv.),卷積濾波器使用非常小的接受域:3×3(是用來獲取左右、上下和中心的最小尺寸)。在我們的一種配置中,我們也使用1×1的卷積濾波器,這可以看作是對輸入通道的一個線性變換(其後面接一個非線性變換)。卷積的滑動步長(stride)固定爲1個像素;卷積層的空間填充(padding)用來保持卷積後圖像的空間分辨率,例如,對於3×3的卷積層,填充爲1 個像素。空間池化(pooling)包含5個最大池化層(max-pooling),它們接在部分卷積層的後面(並不是所有的卷積層都接有最大池化層)。最大池化層爲2×2的滑動窗口,滑動步長爲2

在一整堆的卷積層後(對於不同框架有不同深度)接了3個全連接層(FC):前兩個全連接層各有4096個通道,第三個用來做1000類的ILSVRC分類,因此包含1000個通道(每個通道代表一類)。最後一層是一個soft-max層。全連接層的配置在所有網絡中一致。

所有隱層都是用非線性修正(ReLU)。注意到我們的網絡(除了一個)都包含了局部響應標準化(LRN):在Sect.4 中會展示,這個標準化並不會提高網絡在ILSVRC數據集上的性能,反而會增加內存消耗和計算時間。

2.2 CONFIGURATIONS 
本文所評估的卷積網絡的配置如Table1 所示,每一列代表一種網絡。接下來我們分別稱它們爲(A-E)。所有網絡的配置遵循Sect 2.1中的通用設計,只有深度不同:從含有11個權重層的網絡A(8個卷積層和3個全連接層)到含有19個權重層的網絡E(16個卷積層和3個全連接層)。卷積層的寬度(通道的數量)非常小,從第一層的64開始,然後每經過一個最大池化層,數量增加一倍,直到數量達到512

在Table2 中我們展示了每一種配置的參數數量。儘管網絡很深,但是權重的數量並不比一個更淺但是卷積層寬度和接受域尺寸更大的模型多。 
(sermanet2013overfeat中有144M的權重)。

這裏寫圖片描述 
這裏寫圖片描述

2.3 DISCUSSION 
我們的卷積網絡的配置與ILSVRC-2012和ILSVRC-2013競賽中表現最好的模型不同。我們在第一個卷積層並沒有使用相當大的接受域(例如krizhevsky2012imagenet中接受域爲11×11,滑動步長爲4,或者 sermanet2013overfeat中接受域爲7×7,滑動步長爲2),而是在整個網絡使用了一個非常小的3×3的接受域,並且在輸入的每一個像素上都進行了卷積(滑動步長爲1)。很容易發現,兩個3×3卷積層堆疊(中間沒有空間池化)相當於5×5的有效接受域;三個這樣的層相當於7×7 的有效接受域。 
那麼使用三個3×3卷積層的堆疊比一個單一的7×7卷積層的好處是什麼呢?首先,我們使用了三個而不是一個單一的非線性修正層,這使得決策函數更具判別性。其次,我們減少了參數的數量:假設一個含有三個3×3卷積層堆疊的輸入和輸出都有C個通道,因此這個堆疊含有3(32C2)=27C2 個權重;而一個單一的7×7卷積層卻需要72C2=49C2個參數,相對增加了81%。這相當於在7×7卷積濾波器上強加一個正則化,迫使它們通過3×3的濾波器來進行分解(中間有非線性的加入)。

1×1卷積層的使用(配置C,Table1)是在不影響卷積層接受域的情況下增加決策函數非線性的一種方法。儘管在這裏,1×1的卷積層本質上相當於到相同維度空間的一個線性投影(輸出和輸出的通道數量相同),但是修正函數引入了非線性。值得注意的是,1×1卷積層最近被使用在lin2013network的“Network in Network”結構中。

小尺寸的卷積濾波器之前在ciresan2011flexible中使用過,但是他們的網絡遠沒有我們的深,而且他們也沒有在大規模的ILSVRC數據集上進行評估。goodfellow2013multi在街道數字識別的任務中應用了深度卷積網絡(11個權重層),並證明了增加的深度使模型產生了更好的性能。GoogLeNet,ILSVRC-2014分類任務上最優秀的模型,雖然區別於我們的工作,但是相似的是,它也是基於非常深的卷積網絡(22個權重層)以及很小的卷積濾波器(除了3×3的卷積層,它們同樣還使用了1×1和\mbox{5×5} 的卷積層)。他們的網絡拓撲比我們的更加複雜,而且爲了降低計算量,特徵圖的空間分辨率在第一層衰減的特別嚴重。Sect 4.5 將會展示,我們的模型在單一網絡分類準確率上優於GoogLeNet的網絡。

3 CLASSIFICATION FRAMEWORK

在上一章中,展示了我們網絡配置的細節。在這一章,我們將對分類卷積網絡的訓練和評估的細節進行介紹。

3.1 TRAINING 
卷積網絡的訓練過程基本遵循krizhevsky2012imagenet(除了從多尺度訓練圖像上採樣裁切的輸入圖像,稍後會解釋)。也就是說,通過使用含動量的小批量(mini-batch)梯度下降(基於反向傳播)優化多元邏輯迴歸來對模型進行訓練。小批量的尺寸爲256,動量爲0.9。通過權值衰減(L2懲罰係數設置爲5104)以及對前兩個全連接層執行dropout(dropout比率設置爲0.5)來對訓練進行正則化。初始學習率設置爲102,當驗證集準確率穩定時將學習率除以10。學習率總共降低了3次,訓練一共進行了370K次迭代(74個epoch)。我們猜測,儘管和krizhevsky2012imagenet相比,我們的網絡有更多的參數和更深的深度,但是網絡只需要更少的epoch來收斂,這是因爲:(a) 更深的深度和更小的卷積濾波器尺寸隱式的增強了正則化;(b) 某些層執行了預初始化。

網絡權重的初始化是非常重要的,由於深度網絡梯度的不穩定性,不合適的初始化將會阻礙網絡的學習。爲了避免這個問題,我們從訓練配置A開始(Table1),它足夠淺以致於能夠使用隨機初始化進行訓練。然後在訓練更深的結構時,我們對前四個卷積層和最後三個全連接層使用網絡A來初始化(中間層使用隨機初始化)。我們沒有降低預初始化層的學習率,允許它們在訓練過程中進行改變。對於隨機初始化,我們從0均值102方差的正態分佈中對權重進行採樣。偏置項初始化爲0。值得注意的是,在文章提交後,我們發現可以使用glorot2010understanding中的隨機初始化程序來對權重進初始化而不需要進行預訓練。

隨機的從經過尺寸縮放的訓練圖像上進行裁切,來獲得卷積網絡固定尺寸224×224的輸入圖像(每一張圖像的每一個SGD迭代時裁切一次)。爲了進一步對訓練集進行數據增強,裁切圖像進行隨機的水平翻轉和隨機的RGB顏色轉換。訓練圖像的尺寸縮放將在後面進行解釋。

Training image size 用S代表經過各向同性縮放的(isotropically-rescaled)訓練圖像的最小邊,卷積網絡的輸入圖像就是從中裁切的(我們也將S成爲訓練尺寸)。若裁切圖像的尺寸固定爲224×224,原則上S可以取任意不小於224的值:如果S=224,裁切圖像將會獲取整幅圖像的統計信息,可以完整的涵蓋訓練圖像的最小邊。如果S224,裁切圖像將會對應圖像的一小部分,包含一個小的對象或者對象的一個部分。

我們考慮使用兩種方法來設定訓練尺寸S。第一種方法是針對單尺度圖像的訓練,固定S(注意到,在採樣的裁切圖像內的內容仍然能表示多尺度圖像的統計信息)。在我們的實驗中,我們評估了兩種固定尺寸訓練獲得的模型:S=256S=384。我們先使用S=256來對一種卷積網絡配置進行訓練。爲了加快S=384的網絡的訓練速度,使用S=256預訓練的權重進行初始化,並且使用一個很小的初始學習率:103

第二種設定S的方法是多尺度訓練,每一幅圖像單獨的從[Smin,Smax]中隨機選取S來進行尺寸縮放(Smin=256Smax=512)。由於圖像中的對象可能是各種尺寸的,因此在訓練中採用這種方法是有利的。這同樣可以看作是一種尺寸抖動(scale jittering)的訓練集數據增強,使得一個單一模型能夠識別各種尺寸的對象。考慮到訓練速度,我們使用固定S=384預訓練模型相同的配置對一個單尺度模型的所有層進行微調,來訓練多尺度模型。

3.2 TESTING 
在測試階段,對於一個訓練好的卷積網絡和一張輸入圖像,由以下方法進行分類。首先,圖像的最小邊被各向同性的縮放成預定義的尺寸,設爲Q(我們也將此稱爲測試尺寸)。我們注意到Q並不一定要與訓練尺寸S相同(Sect.4 將會展示,對於一個S使用不同的Q將有助於性能的提升)。然後,根據sermanet2013overfeat中的方法將網絡密集的應用在經過尺寸縮放的測試圖像上。即先將全連接層轉換成卷積層(第一個全連接層轉換成7×7的卷積層,後兩個全連接層轉換成1×1的卷積層),再將這樣得到的全卷積網絡運用在整幅圖像上(未裁切的)。輸出是一個分類得分圖,通道的數量和類別的數量相同,空間分辨率依賴於輸入圖像尺寸。最終爲了得到固定尺寸的分類得分向量,將分類得分圖進行空間平均化(求和——池化)。我們同樣使用水平翻轉來對測試集進行數據增強;在原始圖像和翻轉圖像上的soft-max分類概率的平均值作爲這幅圖像的最終得分。

由於測試階段在整幅圖像上使用了全卷積網絡,因此不需要對圖像進行多個裁切採樣krizhevsky2012imagenet,因爲網絡對每個裁切的重新計算會使效率降低。而與此同時,正如GoogLeNet 所做的,使用大量的裁切圖像可以提高準確率,因爲和全卷積網絡相比,它能生成關於輸入圖像更好的採樣。同樣的,由於不同的卷積邊界條件,多重裁切評估與密集評估是互補的:當在裁切圖像上使用卷積網絡時,卷積特徵圖使用0進行填充,而使用密集評估時,對於相同裁切圖像的填充自然而然的來自圖像鄰近的部分(由於卷積和空間池化),這大大增加了網絡整體的接受域,因此獲取了更多的上下文信息。雖然我們認爲在實踐中,多重裁切帶來的計算時間並不能成爲準確率上潛在收益的理由,但是作爲參考,我們依然在評估時對每個尺寸使用了50 張裁切圖像(5×5個規則網格以及它們的翻轉),3種尺寸一共150張裁切圖像,這和GoogLeNet 中使用4種尺寸一共144張裁切圖像是可比的。

3.3 IMPLEMENTATION DETAILS 
本文的實驗基於公開的Caffe(C++)工具包(2013年12月版本),但進行了一些重要修改,讓我們能夠在一個系統的多塊GPU上進行訓練和評估,以及對對(如上所述)多個尺度的全尺寸圖像(未裁切)進行訓練和評估 
多GPU訓練利用數據並行,通過將每批圖像分給多批GPU來進行並行運算。當每批的梯度計算好之後,再求平均值作爲總的梯度。在多個GPU上的梯度計算是同步的,因此和使用單一GPU進行訓練的結果一致。

雖然krizhevsky2014one提出了更加複雜的方法來加快卷積網絡的訓練,它在網絡中不同層上利用模型和數據並行。但是我們發現單是提出的相對簡單的方案在現成的4塊GPU系統上已經比單GPU提升了3.75倍的計算速度。在配備4塊NVIDIA Titan Black GPU的系統上,訓練一個單一網絡需要2——3周的時間

4 CLASSIFICATION EXPERIMENTS

Dataset 本章我們展示了本文所描述的卷積網絡在ILSVRC-2012數據集(被用在ILSVRC2012——2014挑戰賽上)上的圖像分類結果。數據集包含1000類的圖像,並分爲訓練集(1.3M張圖像)、驗證集(50K張圖像)和測試集(100K張抽出標籤的圖像)。我們使用兩種方法來對分類性能進行評估:top-1和top-5錯誤率。前者爲一個多類分類錯誤率,即錯誤分類圖像的比例;後者是在ILSVRC上的主要評估標準,即真實類別不在top-5預測類別之中的圖像的比例。

對於大部分實驗,我們使用驗證集作爲測試集。某些實驗也在測試集上進行,並提交給官方ILSVRC服務器作爲“VGG”團隊參加ILSVRC-2014競賽。

4.1 SINGLE SCALE EVALUATION 
我們開始評估在單一尺度上使用Sect 2.2中層配置的獨立卷積網絡模型的性能。測試圖像尺寸的設置按照:對於固定的S,設置Q=S;對於抖動的S[Smin,Smax],設置Q=0.5(Smin+Smax)。結果如Table3 展示。

首先,我們注意到使用局部響應標準化(A-LRN網絡)並沒有提高不使用任何標準化層的模型A的性能。因此我們不在更深的結構(B–E)中使用標準化操作。

其次,我們觀測到分類的錯誤率隨着卷積網絡深度的增加而降低了:從含有11層的A到含有19層的E。值得注意的是,雖然配置C和配置D具有相同的深度,含有3個1×1卷積層的配置C比整個網絡都使用3×3卷積層的配置D的性能要差。結果表明了增加的非線性層對網絡性能的提升是有幫助的(C好於B),並且使用具有非平凡接受域的卷積濾波器對於獲取空間上下文信息是很重要的(D好於C)。當我們的模型深度達到19層時,錯誤率達到飽和,但是對於更大的數據集,更深的模型可能會更有效果。我們也對網絡B和一個使用5個5×5卷積層的淺層網絡進行比較(通過將B中的3×3卷積層對替換成單獨的5×5卷積層,正如Sect 2.3,它們具有相同的接受域)。在top-1錯誤率上,淺層網絡比網絡B要高出7%(在中心裁切圖像上),證明了使用小濾波器的深層網絡比使用大濾波器的淺層網絡性能更好。

最後,即使在測試階段使用單一尺度進行測試,但是在訓練階段使用尺寸抖動(S[256;512])比圖像最小邊使用固定尺寸(S=256 or S=384) 的結果要好得多。這表明了在訓練集上通過尺寸抖動的數據增強對於獲取多尺度圖像統計信息確實是有幫助的。

這裏寫圖片描述

4.2 MULTI-SCALE EVALUATION 
評估了卷積網絡模型在單一尺度上的性能之後,我們現在來評估在測試階段使用尺寸抖動的效果。先在幾個經過尺寸縮放的測試圖像上運行模型(對應於不同的Q值),然後計算每個類概率的平均值。考慮到當訓練尺寸和測試尺寸存在巨大差別時將會導致模型性能下降,因此在模型訓練時,我們固定S的值,使用接近於S的三個測試尺寸Q={S32,S,S+32}來進行評估。同時在訓練階段使用尺寸抖動使得模型在測試階段能夠應用在尺寸範圍更大的圖像上,因此模型的訓練尺寸使用S[Smin;Smax],然後在更大範圍的測試尺寸Q={Smin,0.5(Smin+Smax),Smax}上進行評估。

Table4 中的結果表明,使用尺寸抖動的模型在測試階段獲得了更好的性能(與使用單一尺度的相同模型Table3 相比)。與之前的一樣,最深的配置(D和E)表現最好,同時訓練階段使用尺寸抖動比最短邊S使用固定尺寸的效果更好。我們最好的單一模型在驗證集上的top-1/top-5錯誤率爲24.8%/7.5%(Table4 中加粗部分)。在測試集上,配置E達到了7.3%的top-5錯誤率。 
這裏寫圖片描述

4.3 MULTI-CROP EVALUATION 
Table5 中我們對密集卷積網絡評估和多重裁切評估進行了比較(見Sect 3.2)。我們同樣還評估了兩種技術通過計算兩者soft-max輸出平均值的互補結果。可以看出,使用多重裁切比密集評估的效果略好,並且兩種方法是完全互補的,因爲兩者組合的效果比每一種都要好。根據以上結果,我們假設這是由對於卷積邊界條件的不同處理方法造成的。 
這裏寫圖片描述

4.4 CONVNET FUSION 
至此,我們評估了獨立卷積網絡模型的性能。在這部分實驗中,我們通過計算多個模型soft-max分類概率的平均值來對它們的輸出進行組合。由於模型的互補性,性能有所提高,這也用在ILSVRC的最佳結果中。

結果如Table6 所示。在提交ILSVRC參賽模型時,我們只訓練了單尺度網絡和一個多尺度模型D(只對全連接層進行調優而不是所有層)。7個模型組合的結果在ILSVRC錯誤率上爲7.3%。在模型提交結束後,我們研究了只使用兩個性能最好的多尺度模型的組合(配置D和E),當使用密集評估時錯誤率降到了7.0%,而使用密集和多重裁切組合時,錯誤率僅爲6.8%。作爲參考,我們性能最好的單一模型錯誤率爲7.1%(模型E,Table5)。 
這裏寫圖片描述

4.5 COMPARISON WITH THE STATE OF THE ART 
最後,對我們的結果與Table7 中業界最好的結果進行了比較。在ILSVRC-2014競賽的分類任務上,我們的“VGG”團隊使用了7個模型的組合以7.3%的錯誤率獲得了第二名。參賽結束後,我們使用了2個模型的組合將錯誤率降到了6.8%

從Table7 可以看出,我們非常深的卷積網絡比在ILSVRC-2012和ILSVRC-2013中成績最好的模型效果明顯要好。我們的結果與分類任務的冠軍旗鼓相當(GoogLeNet爲6.7%的錯誤率),並且明顯比ILSVRC-2013的冠軍Clarifai的表現好得多,它使用外部訓練數據時的錯誤率爲11.2%,而不使用外部數據時爲11.7%。更加重要的是,我們最佳的結果是通過對兩個模型的組合——這明顯比大多數ILSVRC參賽模型要少。在單一網絡性能上,我們的模型取得了最好的結果(7.0%的測試錯誤率),比單一的GoogLeNet低0.9%。值得注意的是,我們並沒有摒棄經典的卷積網絡框架,並通過顯著增加深度對它的性能進行了提升。 
這裏寫圖片描述

5 CONCLUSION

本文中,我們評估了非常深的卷積網絡(達到了19個權重層)在大規模圖像分類上的性能。結果表明,表達的深度有利於分類準確率的提升,在傳統的卷積網絡框架中使用更深的層能夠在ImageNet數據集上取得優異的結果。

在附錄中也展示了我們的模型在廣泛的任務和數據集上良好的泛化能力,性能達到甚至超過了圍繞較淺深度的圖像表達建立的更復雜的識別流程。我們的實驗結果再次確認了視覺表達中深度的重要性。

APPENDIX A LOCALISATION

本文我們主要針對ILSVRC競賽的分類任務,對不同深度的卷積網絡框架進行了全面的評估。本章我們主要介紹定位任務,在這項上我們以25.3%的錯誤率獲得了冠軍。這可以看做是目標檢測的一種特殊情況,對於top-5類中的每一類,需要預測一個單一的目標邊界框,而不需考慮每一類目標的實際數量。爲此,我們在ILSVRC-2013定位任務冠軍模型sermanet2013overfeat的基礎上,進行了一些修正。Sect A.1描述了我們的方法,Sect A.2對我們的方法進行了評估。

A.1 LOCALISATION CONVNET 
在目標定位中,我們使用了非常深的卷積網絡,最後一個全連接層用來預測邊界框的位置而不是分類得分。邊界框由一個4-D向量表示,包括了它的中心座標、寬度和高度。關於邊界框的預測有兩種方案:是在所有類之間共享的(單類迴歸,SCR)還是針對特定類的(每類迴歸,PCR)。對於前一種,最後一層的輸出維度是4-D;而對於後一種,最後一層的輸出維度是4000-D(因爲數據集中共有1000中類別)。除了最後一個邊界框預測層,前面我們使用配置D的卷積網絡,它包含16個權重層,在分類任務中性能是最好的(Sect.4)。

Training 定位卷積網絡的訓練和分類卷積網絡的訓練類似(Sect 3.1)。主要的區別是我們將邏輯迴歸替換成了歐式損失(Euclidean loss),用來懲罰預測的邊界框參數與真值之間的偏差。我們訓練了兩個定位模型,分別使用單一尺寸:S=256 和 S=384 (由於時間限制,在ILSVRC-2014上我們並沒有在訓練時使用尺寸抖動)。訓練使用對應的分類模型進行初始化(使用相同尺寸訓練),初始學習率爲103。我們研究了兩種調優方式:在所有層進行調優和只在前兩個全連接層進行調優。最後一個全連接層使用隨機初始化並從頭開始訓練。

Testing 我們考慮兩種測試方案。第一種用來比較使用不同網絡修正(即調優方式不同,所有層調優/全連接層調優)在驗證集上的區別,只考慮對真實類別的邊界框預測(排除了分類錯誤).只在圖像的中心裁切上使用網絡來獲得邊界框。

第二種,全面的、基於定位卷積網絡在整幅圖像上密集應用的測試程序,這類似於分類任務(Sect 3.2)。不同的是,最後一個全連接層的輸出是由一組邊界框的預測取代了分類得分圖。爲了獲得最終預測結果,我們使用了sermanet2013overfeat中的貪婪合併程序,先合併空間上接近的預測(通過計算座標的平均值),然後使用由分類卷積網絡獲得的分類得分對他們進行評級。當使用了一些定位卷積網絡時,我們首先得到它們對邊界框預測的合集,然後在這個合集上運行合併程序。我們並沒有使用sermanet2013overfeat中用來增加邊界框預測空間分辨率的多重池化偏移技術來進一步提升結果。 
(譯者注:即第一種是在真實類上預測邊界框,爲了確定模型配置;第二種在確定模型配置後,使用預測類,在預測類上預測邊界框。)

A.2 LOCALISATION EXPERIMENTS 
本章,我們先來確定性能最好的定位網絡設定(使用第一種測試方案),再使用一個全面的方案(第二種方案)來對它進行評估。定位錯誤率根據ILSVRC標準進行衡量,即,如果預測的邊界框與真實邊界框的重疊率大於0.5,則被認爲是正確的。

Settings comparison Table8 中可以看出,每類迴歸(PCR)由於類無關的單類迴歸(SCR),而這和sermanet2013overfeat中的發現正好相反。我們也注意到,對於定位任務,在所有層進行調優的結果明顯比只在全連接層調優的結果好得多(與sermanet2013overfeat相同)。在這些實驗中,圖像的最小邊設置爲S=384S=256的結果類似,爲了簡潔不進行展示。 
這裏寫圖片描述

Fully-fledged evaluation 
在得到了最佳的定位網絡設定(PCR,在所有層調優)後,我們使用一個完整的方案來進行評估,使用我們性能最好的分類系統(Sect 4.5)來對top-5類別進行預測,然後使用sermanet2013overfeat的方法來對多個密集計算預測的邊界框進行合併。從Table9 中可以看出,在整幅圖像上使用定位卷積網絡,比在中心裁切圖像上(Table8 )的結果明顯要好, 儘管使用的是top-5的預測類而不是真實類。與分類任務(Sect.4)相同,在多個尺度上進行測試然後組合多個模型的預測結果,能夠對性能產生進一步的提升。 
這裏寫圖片描述

Comparison with the state of the art Table10 將我們的定位模型結果與業界最好的結果進行比較。我們的“VGG”團隊以25.3%的測試錯誤率獲得了ILSVRC-2014定位比賽的冠軍。值得注意的是,我們的結果比ILSVRC-2013的冠軍Overfeat要好得多,儘管我們使用了較少的尺度,也沒有使用他們的分辨率增強技術。我們認爲如果這一技術能容納到我們的方法中,可以獲得更好的定位效果。這表明了我們非常深的卷積網絡能給性能帶來很大的提升——雖然我們只使用了一個很簡單的定位方法,但是由我們更強力的表達,我們得到了更好的結果。 
這裏寫圖片描述

APPENDIX B GENERALISATION OF VERY DEEP FEATURES

在前幾章,我們討論了非常深的卷積網絡在ILSVRC數據集上的訓練和評估。在本章,使用我們在ILSVRC上預訓練的卷積網絡作爲其他更小數據集的特徵提取器,因爲小數據集上從頭開始訓練大的模型會由於過擬合而變得很困難。最近,有很多很有趣的案例發現,從ILSVRC上學到的深度圖像表達,在其他數據集上的泛化能力很好,它們比手工表達的效果要好很多。根據這一系列工作,我們也開始研究我們的模型是否能比業界最好方法所使用的的淺層模型效果更好。在這項評估中,我們考慮兩個在ILSVRC上分類性能最好的模型(Sect.4)——配置“Net-D”和“Net-E”(我們都進行了公開)。

爲了在其它數據集上使用在ILSVRC上預訓練的模型來進行圖像分類,我們去除了最後一個全連接層(用來進行1000類的ILSVRC分類),使用倒數第二層的4096-D激活作爲圖像特徵,並在多個位置和尺度之間彙總。由此產生的圖像描述子使用L2正則化並與一個在目標數據集上訓練的線性SVM分類器組合。簡單來說,預訓練的卷積網絡的權重保持固定(不進行調優)。

特徵的彙總方式與我們的ILSVRC評估程序(Sect 3.2)相似。也就是說,先將圖像尺寸縮放到使它的最短邊等於Q,然後在圖像平面上密集的應用網絡(當所有權重層被視爲卷積層時,這是有可能的)。然後在產生的特徵圖上使用全局平均池化,便產生了一個4096-D的圖像描述子。再將這個描述子與在對應的水平翻轉圖像上產生的描述子取平均。如Sect 4.1所展示的,多個尺度上的評估是有利的,因此我們也在多個尺度Q上提取特徵。由此產生的多尺度特徵既可以尺度間堆疊也可以池化。堆疊也使得之後的分類器能夠學習如何最優的將多個尺度的圖像統計特徵進行組合;但是這也會由增加的描述子維度而增加計算成本。我們在下面的實驗中回到對這個設計選擇的討論。我們也會評估由兩個模型計算特徵的後期融合,這是通過它們各自的圖像描述子的堆疊完成的。

Image Classification on VOC-2007 and VOC-2012 我們開始評估PASCAL VOC-2007和VOC-2012基準數據集的圖像分類任務。這兩個數據集分別包含10K和22.5K張圖像,每一張圖像標註有一個或多個標籤,對應有20個目標種類。VOC組織者將數據集分爲訓練集、驗證集和測試集(VOC-2012測試集並沒有公開,而提供了一個官方的評估服務器)。識別性能使用多類上的平均精度(mAP)來評估。值得注意的是,通過驗證在\mbox{VOC-2007}和VOC-2012驗證集上的性能,我們發現通過計算多個尺度間的平均來融合描述子與通過堆疊來融合的效果相似。我們認爲這是因爲VOC數據集中,目標通常呈現在多個尺度上,因此並沒有分類器可以利用的特定的尺度語義。由於計算平均並不會增加描述子的維度,我們能夠融合大範圍尺度的圖像描述子:Q{256,384,512,640,768}。值得注意的是,它比使用小範圍尺度{256,384,512}的提升是非常小的(0.3%)。

在測試集上的性能以及與其他方法的比較見Table11。我們的網絡“Net-D”和“Net-E”在VOC數據集上展現了相同的性能,它們的組合對結果略有提高。我們在ILSVRC數據集上的預訓練模型,展現了優異的圖像表達能力,比之前最好的結果chatfield2014return高出了6%。值得注意的是wei2014cnn的方法,使用了2000類的ILSVRC拓展數據集進行預訓練,增加了額外的1000個類別,這與VOC數據集很相近,它在VOC-2012上的mAP比我們的結果高出了1%。它也得益於一個輔助目標檢測的分類框架流程的融合。

Image Classification on Caltech-101 and Caltech-256 本章,我們在Caltech-101Caltech-256的圖像分類基準上對非常深的特徵進行評估。Caltech-101包含9k張圖像,一共有102類標籤(101個目標種類和一個背景類別),Caltech-256有31K張圖像和257種類別。 
一個標準的評估方案就是將這些數據集隨機分成多份訓練和測試數據,然後報告多份之間的平均識別性能,識別性能有平均類召回率來衡量(是對每類測試圖像數量不相同的補償)。在Caltech-101上我們隨機生成了3份訓練和測試數據,每一份中每類含有30張訓練圖像,以及多達50張的測試圖像。在Caltech-256上我們也隨機生成3份數據,每一份每類含有60張訓練圖像(剩下的都用來測試)。在每一份中,20%的訓練圖像作爲驗證集,用來進行超參數選擇。

我們發現與VOC不同的是,在Caltech數據集上,將多個尺度上計算的描述子進行堆疊的效果比求平均或者最大池化的效果好。這可能是因爲,在Caltech圖像中,目標通常佔據整幅圖像,因此多個尺度上的圖像特徵是語義不同的(整個目標 vs 目標的一部分),而堆疊使得分類器能夠利用這樣特定尺度的表達。我們使用三種尺度:Q{256,384,512}

Table11 中對我們的模型與業界最好的結果進行了比較。可以看出來,更深的19層的Net-E比16層的Net-D效果更好,它們倆的組合能夠進一步的提升性能。在Caltech-101上,我們的表達與he2014spatial中的方法性能相近,但是它在VOC-2007上的表現明顯比我們的模型差得多。在Caltech-256上,我們的特徵比業界最好的結果chatfield2014return有了很大的提升(8.6%)。 
這裏寫圖片描述

Action Classification on VOC-2012 我們同樣在PASCAL VOC-2012動作分類任務上評估了我們性能最好的圖像表達(Net-D和Net-E特徵的堆疊),包含了在給定人物動作的邊界框時對動作類別的預測。數據集包含4.6K張訓練圖像,共有11類標籤。與VOC-2012目標分類任務相似,性能用mAP 來評估。我們考慮以下兩種訓練設定: 
(i) 在整幅圖像上計算卷積網絡特徵,並忽略提供的邊界框; 
(ii) 在整幅圖像上和在提供的邊界框上計算特徵,然後將它們堆疊來獲得最終的表達。 
在Table12 中對我們的方法和其他方法的結果進行了比較。

我們的表達在不使用提供的邊界框時,在VOC動作分類任務上達到了業界最好的水平,而同時使用圖像和邊界框時的結果得到了進一步的提升。不同於其他方法,我們並沒有使用任何任務特定的探索法,只是依賴於非常深的卷積特徵的表達能力。 
這裏寫圖片描述

Other Recognition Tasks 自從我們的模型公開以來,它們被研究機構廣泛的使用在圖像識別任務中,並一致的優於淺層表達的性能。例如,girshick2014rich通過將krizhevsky2012imagenet中的卷積網絡替換成我們的16層模型,達到了目標檢測業界最好的結果。在語義分割、圖像字幕生成}以及紋理和材料識別都有着類似的結果。


發佈了6 篇原創文章 · 獲贊 7 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章