文章重點:
1.使用更小的3*3的卷積核與更深的網絡(16-19層)獲得了比ZFNet和AlexNet更好的效果,並且作者測試了不同的數據集證明了該網絡具有很好的泛化性,在其他的測試集上也表現出了很好的性能。
2.作者對比了5種深度的卷積網絡證明深度越深,在訓練數據越大的情況下效果越好。
3.使用了多尺度縮放數據增強技術,證明效果比單尺度數據增強效果提高接近%1.
4.網絡的配置:在訓練階段,卷積網絡的輸入爲固定尺寸
5.最後效果:VGG(2Nets,muti-crop & dence eval)top1錯誤率:23.7
以下全文翻譯轉載自:http://blog.csdn.net/wspba/article/details/61625387
摘要
本文研究了深度對卷積網絡在大規模圖像識別中準確率的影響。本文的主要貢獻是,對使用很小(
1 介紹
卷積網絡(ConvNets)最近在大規模的圖像和視頻識別中獲得了很大的成功,這可能得益於大型公共圖像庫,如 ImageNet,以及高性能計算系統,如GPU或大規模分佈式集羣。特別是在深度視覺識別結構發展中扮演重要角色的ImageNet大規模視覺識別大賽(ILSVRC),從高維淺層特徵編碼 (ILSVRC-2011冠軍)到深度卷積網絡(ILSVRC-2012 冠軍),它爲幾代大規模圖像分類系統提供了測試平臺。
隨着卷積網絡在計算機視覺領域的應用越來越廣泛,爲了獲得更高的準確率,越來越多的人嘗試在krizhevsky2012imagenet中的原始框架上進行改進。例如,ILSVRC-2013最好的參賽模型在第一個卷積層上使用了較小的接受域窗口以及較小的滑動步長。另一種改進方案是在整幅圖像以及它的多個尺寸上,稠密的訓練和測試網絡。本文中,我們關注了卷積網絡結構設計中的另一個重要因素——深度。爲此,我們固定了網絡框架的其他參數,然後通過增加更多的卷積層來增加網絡的深度,這是可行的,因爲我們在所有層都是用非常小(
因此,我們提出了更加精確的卷積網絡框架,它不僅在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
在訓練階段,我們的卷積網絡的輸入爲固定尺寸
在一整堆的卷積層後(對於不同框架有不同深度)接了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個全連接層)。卷積層的寬度(通道的數量)非常小,從第一層的
在Table2 中我們展示了每一種配置的參數數量。儘管網絡很深,但是權重的數量並不比一個更淺但是卷積層寬度和接受域尺寸更大的模型多。
(sermanet2013overfeat中有144M的權重)。
2.3 DISCUSSION
我們的卷積網絡的配置與ILSVRC-2012和ILSVRC-2013競賽中表現最好的模型不同。我們在第一個卷積層並沒有使用相當大的接受域(例如krizhevsky2012imagenet中接受域爲
那麼使用三個
小尺寸的卷積濾波器之前在ciresan2011flexible中使用過,但是他們的網絡遠沒有我們的深,而且他們也沒有在大規模的ILSVRC數據集上進行評估。goodfellow2013multi在街道數字識別的任務中應用了深度卷積網絡(
3 CLASSIFICATION FRAMEWORK
在上一章中,展示了我們網絡配置的細節。在這一章,我們將對分類卷積網絡的訓練和評估的細節進行介紹。
3.1 TRAINING
卷積網絡的訓練過程基本遵循krizhevsky2012imagenet(除了從多尺度訓練圖像上採樣裁切的輸入圖像,稍後會解釋)。也就是說,通過使用含動量的小批量(mini-batch)梯度下降(基於反向傳播)優化多元邏輯迴歸來對模型進行訓練。小批量的尺寸爲
網絡權重的初始化是非常重要的,由於深度網絡梯度的不穩定性,不合適的初始化將會阻礙網絡的學習。爲了避免這個問題,我們從訓練配置A開始(Table1),它足夠淺以致於能夠使用隨機初始化進行訓練。然後在訓練更深的結構時,我們對前四個卷積層和最後三個全連接層使用網絡A來初始化(中間層使用隨機初始化)。我們沒有降低預初始化層的學習率,允許它們在訓練過程中進行改變。對於隨機初始化,我們從0均值
隨機的從經過尺寸縮放的訓練圖像上進行裁切,來獲得卷積網絡固定尺寸
Training image size 用
我們考慮使用兩種方法來設定訓練尺寸
第二種設定S的方法是多尺度訓練,每一幅圖像單獨的從
3.2 TESTING
在測試階段,對於一個訓練好的卷積網絡和一張輸入圖像,由以下方法進行分類。首先,圖像的最小邊被各向同性的縮放成預定義的尺寸,設爲
由於測試階段在整幅圖像上使用了全卷積網絡,因此不需要對圖像進行多個裁切採樣krizhevsky2012imagenet,因爲網絡對每個裁切的重新計算會使效率降低。而與此同時,正如GoogLeNet
所做的,使用大量的裁切圖像可以提高準確率,因爲和全卷積網絡相比,它能生成關於輸入圖像更好的採樣。同樣的,由於不同的卷積邊界條件,多重裁切評估與密集評估是互補的:當在裁切圖像上使用卷積網絡時,卷積特徵圖使用0進行填充,而使用密集評估時,對於相同裁切圖像的填充自然而然的來自圖像鄰近的部分(由於卷積和空間池化),這大大增加了網絡整體的接受域,因此獲取了更多的上下文信息。雖然我們認爲在實踐中,多重裁切帶來的計算時間並不能成爲準確率上潛在收益的理由,但是作爲參考,我們依然在評估時對每個尺寸使用了
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類的圖像,並分爲訓練集(
對於大部分實驗,我們使用驗證集作爲測試集。某些實驗也在測試集上進行,並提交給官方ILSVRC服務器作爲“VGG”團隊參加ILSVRC-2014競賽。
4.1 SINGLE SCALE EVALUATION
我們開始評估在單一尺度上使用Sect 2.2中層配置的獨立卷積網絡模型的性能。測試圖像尺寸的設置按照:對於固定的
首先,我們注意到使用局部響應標準化(A-LRN網絡)並沒有提高不使用任何標準化層的模型A的性能。因此我們不在更深的結構(B–E)中使用標準化操作。
其次,我們觀測到分類的錯誤率隨着卷積網絡深度的增加而降低了:從含有11層的A到含有19層的E。值得注意的是,雖然配置C和配置D具有相同的深度,含有3個
最後,即使在測試階段使用單一尺度進行測試,但是在訓練階段使用尺寸抖動(
4.2 MULTI-SCALE EVALUATION
評估了卷積網絡模型在單一尺度上的性能之後,我們現在來評估在測試階段使用尺寸抖動的效果。先在幾個經過尺寸縮放的測試圖像上運行模型(對應於不同的
Table4 中的結果表明,使用尺寸抖動的模型在測試階段獲得了更好的性能(與使用單一尺度的相同模型Table3 相比)。與之前的一樣,最深的配置(D和E)表現最好,同時訓練階段使用尺寸抖動比最短邊
4.3 MULTI-CROP EVALUATION
Table5 中我們對密集卷積網絡評估和多重裁切評估進行了比較(見Sect 3.2)。我們同樣還評估了兩種技術通過計算兩者soft-max輸出平均值的互補結果。可以看出,使用多重裁切比密集評估的效果略好,並且兩種方法是完全互補的,因爲兩者組合的效果比每一種都要好。根據以上結果,我們假設這是由對於卷積邊界條件的不同處理方法造成的。
4.4 CONVNET FUSION
至此,我們評估了獨立卷積網絡模型的性能。在這部分實驗中,我們通過計算多個模型soft-max分類概率的平均值來對它們的輸出進行組合。由於模型的互補性,性能有所提高,這也用在ILSVRC的最佳結果中。
結果如Table6 所示。在提交ILSVRC參賽模型時,我們只訓練了單尺度網絡和一個多尺度模型D(只對全連接層進行調優而不是所有層)。7個模型組合的結果在ILSVRC錯誤率上爲
4.5 COMPARISON WITH THE STATE OF THE ART
最後,對我們的結果與Table7 中業界最好的結果進行了比較。在ILSVRC-2014競賽的分類任務上,我們的“VGG”團隊使用了7個模型的組合以
從Table7 可以看出,我們非常深的卷積網絡比在ILSVRC-2012和ILSVRC-2013中成績最好的模型效果明顯要好。我們的結果與分類任務的冠軍旗鼓相當(GoogLeNet爲
5 CONCLUSION
本文中,我們評估了非常深的卷積網絡(達到了19個權重層)在大規模圖像分類上的性能。結果表明,表達的深度有利於分類準確率的提升,在傳統的卷積網絡框架中使用更深的層能夠在ImageNet數據集上取得優異的結果。
在附錄中也展示了我們的模型在廣泛的任務和數據集上良好的泛化能力,性能達到甚至超過了圍繞較淺深度的圖像表達建立的更復雜的識別流程。我們的實驗結果再次確認了視覺表達中深度的重要性。
APPENDIX A LOCALISATION
本文我們主要針對ILSVRC競賽的分類任務,對不同深度的卷積網絡框架進行了全面的評估。本章我們主要介紹定位任務,在這項上我們以
A.1 LOCALISATION CONVNET
在目標定位中,我們使用了非常深的卷積網絡,最後一個全連接層用來預測邊界框的位置而不是分類得分。邊界框由一個4-D向量表示,包括了它的中心座標、寬度和高度。關於邊界框的預測有兩種方案:是在所有類之間共享的(單類迴歸,SCR)還是針對特定類的(每類迴歸,PCR)。對於前一種,最後一層的輸出維度是4-D;而對於後一種,最後一層的輸出維度是4000-D(因爲數據集中共有1000中類別)。除了最後一個邊界框預測層,前面我們使用配置D的卷積網絡,它包含16個權重層,在分類任務中性能是最好的(Sect.4)。
Training 定位卷積網絡的訓練和分類卷積網絡的訓練類似(Sect 3.1)。主要的區別是我們將邏輯迴歸替換成了歐式損失(Euclidean loss),用來懲罰預測的邊界框參數與真值之間的偏差。我們訓練了兩個定位模型,分別使用單一尺寸:
Testing 我們考慮兩種測試方案。第一種用來比較使用不同網絡修正(即調優方式不同,所有層調優/全連接層調優)在驗證集上的區別,只考慮對真實類別的邊界框預測(排除了分類錯誤).只在圖像的中心裁切上使用網絡來獲得邊界框。
第二種,全面的、基於定位卷積網絡在整幅圖像上密集應用的測試程序,這類似於分類任務(Sect 3.2)。不同的是,最後一個全連接層的輸出是由一組邊界框的預測取代了分類得分圖。爲了獲得最終預測結果,我們使用了sermanet2013overfeat中的貪婪合併程序,先合併空間上接近的預測(通過計算座標的平均值),然後使用由分類卷積網絡獲得的分類得分對他們進行評級。當使用了一些定位卷積網絡時,我們首先得到它們對邊界框預測的合集,然後在這個合集上運行合併程序。我們並沒有使用sermanet2013overfeat中用來增加邊界框預測空間分辨率的多重池化偏移技術來進一步提升結果。
(譯者注:即第一種是在真實類上預測邊界框,爲了確定模型配置;第二種在確定模型配置後,使用預測類,在預測類上預測邊界框。)
A.2 LOCALISATION EXPERIMENTS
本章,我們先來確定性能最好的定位網絡設定(使用第一種測試方案),再使用一個全面的方案(第二種方案)來對它進行評估。定位錯誤率根據ILSVRC標準進行衡量,即,如果預測的邊界框與真實邊界框的重疊率大於
Settings comparison Table8 中可以看出,每類迴歸(PCR)由於類無關的單類迴歸(SCR),而這和sermanet2013overfeat中的發現正好相反。我們也注意到,對於定位任務,在所有層進行調優的結果明顯比只在全連接層調優的結果好得多(與sermanet2013overfeat相同)。在這些實驗中,圖像的最小邊設置爲
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”團隊以
APPENDIX B GENERALISATION OF VERY DEEP FEATURES
在前幾章,我們討論了非常深的卷積網絡在ILSVRC數據集上的訓練和評估。在本章,使用我們在ILSVRC上預訓練的卷積網絡作爲其他更小數據集的特徵提取器,因爲小數據集上從頭開始訓練大的模型會由於過擬合而變得很困難。最近,有很多很有趣的案例發現,從ILSVRC上學到的深度圖像表達,在其他數據集上的泛化能力很好,它們比手工表達的效果要好很多。根據這一系列工作,我們也開始研究我們的模型是否能比業界最好方法所使用的的淺層模型效果更好。在這項評估中,我們考慮兩個在ILSVRC上分類性能最好的模型(Sect.4)——配置“Net-D”和“Net-E”(我們都進行了公開)。
爲了在其它數據集上使用在ILSVRC上預訓練的模型來進行圖像分類,我們去除了最後一個全連接層(用來進行1000類的ILSVRC分類),使用倒數第二層的4096-D激活作爲圖像特徵,並在多個位置和尺度之間彙總。由此產生的圖像描述子使用
特徵的彙總方式與我們的ILSVRC評估程序(Sect 3.2)相似。也就是說,先將圖像尺寸縮放到使它的最短邊等於
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數據集中,目標通常呈現在多個尺度上,因此並沒有分類器可以利用的特定的尺度語義。由於計算平均並不會增加描述子的維度,我們能夠融合大範圍尺度的圖像描述子:
在測試集上的性能以及與其他方法的比較見Table11。我們的網絡“Net-D”和“Net-E”在VOC數據集上展現了相同的性能,它們的組合對結果略有提高。我們在ILSVRC數據集上的預訓練模型,展現了優異的圖像表達能力,比之前最好的結果chatfield2014return高出了
Image Classification on Caltech-101 and Caltech-256 本章,我們在Caltech-101和Caltech-256的圖像分類基準上對非常深的特徵進行評估。Caltech-101包含9k張圖像,一共有102類標籤(101個目標種類和一個背景類別),Caltech-256有31K張圖像和257種類別。
一個標準的評估方案就是將這些數據集隨機分成多份訓練和測試數據,然後報告多份之間的平均識別性能,識別性能有平均類召回率來衡量(是對每類測試圖像數量不相同的補償)。在Caltech-101上我們隨機生成了3份訓練和測試數據,每一份中每類含有30張訓練圖像,以及多達50張的測試圖像。在Caltech-256上我們也隨機生成3份數據,每一份每類含有60張訓練圖像(剩下的都用來測試)。在每一份中,20%的訓練圖像作爲驗證集,用來進行超參數選擇。
我們發現與VOC不同的是,在Caltech數據集上,將多個尺度上計算的描述子進行堆疊的效果比求平均或者最大池化的效果好。這可能是因爲,在Caltech圖像中,目標通常佔據整幅圖像,因此多個尺度上的圖像特徵是語義不同的(整個目標 vs 目標的一部分),而堆疊使得分類器能夠利用這樣特定尺度的表達。我們使用三種尺度:
Table11 中對我們的模型與業界最好的結果進行了比較。可以看出來,更深的19層的Net-E比16層的Net-D效果更好,它們倆的組合能夠進一步的提升性能。在Caltech-101上,我們的表達與he2014spatial中的方法性能相近,但是它在VOC-2007上的表現明顯比我們的模型差得多。在Caltech-256上,我們的特徵比業界最好的結果chatfield2014return有了很大的提升(
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層模型,達到了目標檢測業界最好的結果。在語義分割、圖像字幕生成}以及紋理和材料識別都有着類似的結果。