本文轉(zhuǎn)自:http://www.jixuweifeng.com/2016/07/24/AlexNet%E8%AE%BA%E6%96%87%E7%BF%BB%E8%AF%91/
ImageNet Classification with Deep Convolution Neural Network在2012年的ImageNet挑戰(zhàn)賽上大顯神威,以絕對優(yōu)勢奪得冠軍,是卷積神經(jīng)網(wǎng)絡(luò)的開山之作,引領(lǐng)了人工智能的新一輪發(fā)展。懷著對經(jīng)典的無限景仰,小心翼翼地翻譯了一下這篇論文,以加深理解。論文地址:http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks
ImageNet Classification with Deep Convolution Neural Network
Abstract
我們訓(xùn)練了一個大型的深層卷積神經(jīng)網(wǎng)絡(luò)來將ImageNet LSVRC-2010挑戰(zhàn)賽上的120萬張高清圖片分為1000類。在測試數(shù)據(jù)集上,我們實現(xiàn)了top-1 top-5的錯誤率 37.5% 和 17.0%,這比之前最好的結(jié)果都還要好很多。這個網(wǎng)絡(luò)有6000萬參數(shù)和65萬個神經(jīng)元,包含5個卷積層,一些卷積層后面連接有max-pooling層,還有三層全連接層后面接有1000-way的softmax.為了加快訓(xùn)練速度,我們使用了非飽和神經(jīng)元和一個對卷積操作非常有效的GPU。為了減少全連接層的過擬合問題,我們使用了最近開發(fā)的正則化方法“dropout”,它被證明是非常有效的。在ILSVRC-2012比賽中,我們又輸入了這個模型的一個變形,在top-5的的測試中錯誤率達(dá)到了15.3%,相比之下,第二名錯誤率為26.2%.
1 Introduction
當(dāng)前的物體識別都必不可少地使用了機(jī)器學(xué)習(xí)方法。為了提高這些方法,我們可以收集更大的數(shù)據(jù)集,學(xué)習(xí)更多有效的模型,使用更好的技巧來防止過擬合。直到現(xiàn)在,有標(biāo)記的圖像數(shù)據(jù)集是相當(dāng)小的—大約數(shù)萬張(如NORB [16], Caltech-101/256 [8, 9], and CIFAR-10/100 [12])。簡單的識別任務(wù)用這些大小的數(shù)據(jù)集能很好的解決,尤其當(dāng)它們被標(biāo)簽–保留轉(zhuǎn)換增強(qiáng)了以后。例如,最近在MNIST數(shù)字識別任務(wù)中的錯誤率(<0.3%)達(dá)到了人類水平。但是,在真實物體數(shù)據(jù)集中卻表現(xiàn)出了相當(dāng)大的變化,所以,為了學(xué)習(xí)識別它們,使用更大的數(shù)據(jù)集是非常必要的。的確,小規(guī)模圖像數(shù)據(jù)集的缺點已經(jīng)被廣泛地發(fā)現(xiàn)了,但是,收集百萬張有標(biāo)記的圖片數(shù)據(jù)集最近才變成了可能。新的更大的數(shù)據(jù)集包括LabelMe,包含幾十萬張完全分割的圖片,還有Image-net,包含150萬超過2200種標(biāo)記的高清圖片。
為了從百萬張圖片中學(xué)習(xí)上千種物體,我們需要一個具有強(qiáng)大學(xué)習(xí)能力的模型。然而,物體識別任務(wù)的巨大復(fù)雜性意味著這個問題甚至不能被ImagenNet這么大的數(shù)據(jù)集明確規(guī)定,所以,我們的模型可能也有許多先驗知識來彌補(bǔ)我們沒有的所有數(shù)據(jù)。卷積神經(jīng)網(wǎng)絡(luò)構(gòu)建了一個這種類型的模型。它們的能力可以通過改變它們的深度和廣度來控制,而且它們也可以作出有關(guān)圖像性質(zhì)的強(qiáng)壯和最大準(zhǔn)確率的假設(shè)。(即,統(tǒng)計數(shù)據(jù)的穩(wěn)定性和像素依賴的局部性).因此,相比于具有同樣規(guī)模的標(biāo)準(zhǔn)前饋神經(jīng)網(wǎng)絡(luò),CNNs有更少的連接和參數(shù),所以它們是更容易訓(xùn)練的,而它們理論上的最佳性能可能僅僅差了一點點。
盡管CNN有非常吸引人的品質(zhì),以及它自身的結(jié)構(gòu)的相對較高的效率,但是應(yīng)用到大規(guī)模高清圖像上還是非常昂貴的。幸運的是,現(xiàn)在的GPU和實現(xiàn)高度優(yōu)化的2D卷積的配合是足夠強(qiáng)大的,可以促進(jìn)大規(guī)模CNN的訓(xùn)練,并且最近像ImageNet這樣的數(shù)據(jù)集包含了足夠的被標(biāo)記例子來訓(xùn)練出沒有嚴(yán)重過擬合的模型。
這篇論文具體的貢獻(xiàn)如下:我們訓(xùn)練了一個最大的卷積神經(jīng)網(wǎng)絡(luò)來標(biāo)記ILSVRC-2010 和 ILSVRC-2012比賽的數(shù)據(jù)集,并且實現(xiàn)了到目前為止在這些數(shù)據(jù)集上的最好結(jié)果。我們寫了一個實現(xiàn)2D卷積的高度優(yōu)化的GPU和其他的一些公開的訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)的固有操作。我們的網(wǎng)絡(luò)包含大量新的和不尋常特點,這些特點提高了網(wǎng)絡(luò)的效率并且減少了訓(xùn)練時間,詳細(xì)介紹在第三部分。我們的網(wǎng)絡(luò)規(guī)模解決了過擬合這個重要問題,即使有1200萬被標(biāo)記的訓(xùn)練圖片,我們使用了大量有效的技巧來防止過擬合,這將在第四部分詳細(xì)介紹。我們最終的網(wǎng)絡(luò)包含5個卷積層和三個全連接層,而且這個深度似乎是非常重要的:我們發(fā)現(xiàn)移除任何一個卷積層(每層包含的參數(shù)不足整個模型的1%)都會導(dǎo)致非常差的效果。
最后,網(wǎng)絡(luò)的大小主要由當(dāng)前GPU的可用內(nèi)存數(shù)量和我們所能忍受的訓(xùn)練時間所限制。我們的網(wǎng)絡(luò)在兩塊3G的GTX 580GPU上訓(xùn)練了五六天的時間。所有的實驗表明,我們的結(jié)果還能通過更快的GPU和更大的可用數(shù)據(jù)集來進(jìn)一步提高。
2 The Dataset
ImageNet是一個超過1500萬張包含22000種類的被標(biāo)記的高清圖像數(shù)據(jù)集。這些圖片收集自web,使用Ama-zon’s Mechanical Turk的工具箱來人工標(biāo)記。從2010年開始,作為Pascal視覺對象挑戰(zhàn)賽的一部分,一年一度的ImageNet Large-Scale Visual Recognition Challenge(ILSVRC)開始舉行。ILSVRC使用ImageNet的子集,包含1000種圖像,每種包含1000張圖片??偣灿?20萬張訓(xùn)練圖片,5萬張驗證圖片和15萬張測試圖片。
ILSVRC-2010是唯一的測試標(biāo)簽可用的版本,所以我們用它來做大量的實驗。當(dāng)然我們也使我們的模型參加ILSVRC-2012比賽,在第六部分我們也會展示這一版數(shù)據(jù)集上的結(jié)果,其測試標(biāo)簽不可用。在ImageNet上,通常報告兩類錯誤率:top-1和top-5,top5錯誤率表示測試圖片的標(biāo)簽不在模型所認(rèn)為的五種標(biāo)簽之內(nèi)。
ImageNet包含的圖片分辨率是變化的,然而我們的系統(tǒng)需要的輸入維數(shù)是一個常量。因此,我們采樣這些圖片一個固定的像素值256X256。給定一張矩形的圖片,我們首先重置這張圖片的短邊長度為256,然后從得到的圖片中裁剪出中心的256X256。除了從每一個像素中減去平均值外,我們沒有做任何其他的操作。所以,我們在像素的原始RGB值(裁剪出的中心部分)上訓(xùn)練我們的網(wǎng)絡(luò)。
3 The Architecture
我們的網(wǎng)絡(luò)結(jié)構(gòu)總結(jié)在圖2中。它包含8個學(xué)習(xí)層—–5個卷積層和3個全連接層。接下來,介紹一下我們這個網(wǎng)絡(luò)的神奇和不尋常的特點。3.1–3.4節(jié)根據(jù)我們對它們的重要性的估計來排序,最重要的在第一個。
3.1 Relu Nonlinearity
一般的方法是將神經(jīng)元的輸出作為函數(shù)f(x)=tanh(x) 或f(x)=(1+e-x)-1的輸入x 。依據(jù)梯度下降的時間,這些飽和非線性函數(shù)是比不飽和非線性函數(shù)f(x)=max(0,x)更慢的。根據(jù)Nair和Hinton,我們參考非線性的神經(jīng)元Rectified Linear Units (ReLUs).用RELUs訓(xùn)練的深層卷積神經(jīng)網(wǎng)絡(luò)比用tanh等價的神經(jīng)網(wǎng)絡(luò)快很多倍。如圖1,顯示了一個特別的四層卷積神經(jīng)網(wǎng)絡(luò)在CIFAR-10數(shù)據(jù)集上達(dá)到25%的錯誤率所需要的迭代次數(shù)。這個圖說明如果我們使用了飽和的神經(jīng)元模型,我們將不能使用這么大規(guī)模的神經(jīng)網(wǎng)絡(luò)來做這個實驗。
我們不是第一個考慮在CNNs中替換傳統(tǒng)神經(jīng)模型的。例如,Jarrett et al. [11]宣稱非線性函數(shù)f(x)=|tanh(x)|在Caltech-101數(shù)據(jù)集上對比度歸一化后局部平均池化的效果是非常好的。然而,在這個數(shù)據(jù)集上首要的問題是防止過擬合,所以,它們觀察到的結(jié)果是我們我們報告的通過使用Relus來獲得加速擬合訓(xùn)練集能力的結(jié)果是不一樣的。更快的學(xué)習(xí)對大數(shù)據(jù)集上的大模型有非常重大的影響。
[圖片上傳中...(image-1ad661-1511097214574-8)]
Figure 1: 使用ReLus(實線)的四層卷積神經(jīng)網(wǎng)絡(luò)在CIFAR-10數(shù)據(jù)集上達(dá)到25%的訓(xùn)練錯誤率,比使用tanh(虛線)神經(jīng)元的等效網(wǎng)絡(luò)快了6倍。每一個網(wǎng)絡(luò)的學(xué)習(xí)率被獨立地選擇使得訓(xùn)練盡可能的快。沒有使用任何形式的正則化。在這里表現(xiàn)的結(jié)果隨著網(wǎng)絡(luò)結(jié)構(gòu)的不同而變化,但是,使用ReLus的網(wǎng)絡(luò)一貫地比使用飽和神經(jīng)元的等效網(wǎng)絡(luò)快好幾倍。
3.2 Training on Multiple GPUs
一個GTX580 GPU僅僅有3GB的內(nèi)存,這限制了在其上訓(xùn)練的網(wǎng)絡(luò)的最大規(guī)模。事實是120萬訓(xùn)練樣本才足以訓(xùn)練網(wǎng)絡(luò),這太大了不適合在一個GPU上訓(xùn)練。因此,我們將網(wǎng)絡(luò)分布在兩個GPU上。當(dāng)前的GPU非常適合跨GPU并行化,因為它們可以直接對另一塊GPU進(jìn)行讀寫操作,而不需要通過主機(jī)內(nèi)存。我們采用的并行機(jī)制基本上每塊GPU設(shè)置了一半的核函數(shù)(神經(jīng)元),一個額外的小技巧:GPU 的交流僅僅在某些層。意思是說,例如,第三層神經(jīng)元的輸入來自第二層的所有神經(jīng)元。但是,第四層的神經(jīng)元僅僅來自同一塊GPU上第三層的神經(jīng)元。選擇這種連接方式對于交叉驗證是一個問題,但是這允許我們精確地調(diào)整連接的數(shù)量直到計算數(shù)值是一個可以接受的值。
最終的結(jié)構(gòu)是和Cire ?sanet al. [5] 所采用的“柱狀”CNN有點相似的,只是我們的柱狀不是相互獨立的(如圖2)。這個機(jī)制分別減小了我們的top1錯誤率1.7% 和 top5錯誤率1.2%,和每個卷積層許多神經(jīng)元在同一塊GPU上訓(xùn)練像比較起來,兩塊GPU網(wǎng)絡(luò)比一塊GPU花費更少的時間。
3.3 Local Response Normalization
Relus 有一個良好的特性,它不要求輸入歸一化來防止飽和。如果至少一些訓(xùn)練數(shù)據(jù)產(chǎn)生了一個積極的輸入給Relus,那個神經(jīng)元將開始學(xué)習(xí)。然而,我們還發(fā)現(xiàn)接下來的局部歸一化機(jī)制促進(jìn)了泛化。用a表示通過核函數(shù)i在神經(jīng)元(x,y)處計算得到的激活值,然后應(yīng)用Relu非線性變換,響應(yīng)歸一化b通過表達(dá)式給出:
[圖片上傳中...(image-9bd424-1511097214574-7)]
在n個相鄰的核函數(shù)的同一空間位置求和,N是每層總的核函數(shù)數(shù)量。核函數(shù)的順序在開始訓(xùn)練之前都是任意的而且是確定的。受真實神經(jīng)元的啟發(fā),響應(yīng)歸一化的順序?qū)崿F(xiàn)了單側(cè)抑制的形式,為使用不同核函數(shù)計算的神經(jīng)元輸出創(chuàng)造了競爭。常量k,n,阿爾法,貝塔,是超參數(shù),它的值使用一個驗證集來確定,我們使k=2,n=5,阿爾法=10^-4,貝塔=0.75.我們在一些層應(yīng)用ReLu非線性變換之后,采用這個歸一化。
這個機(jī)制和局部常量歸一化有一些相似。但是我們的更準(zhǔn)確的說是“亮度歸一化”,因為我們沒有減去平均值。響應(yīng)歸一化將top-1和top-5錯誤率分別減少了1.4%和1.2%.我們也在CIFAR-10 數(shù)據(jù)集上驗證了這個機(jī)制的有效性:一個四層的CNN不用歸一化達(dá)到了13%的測試錯誤率,用了之后為11%.
3.4 Overlapping Pooling
在CNN中池化層總結(jié)了同一個核函數(shù)下相鄰神經(jīng)元的輸出。傳統(tǒng)的,相鄰池化單元的總結(jié)不重疊。為了更精確,一個池化層可以被認(rèn)為是由相鄰S個像素的池化網(wǎng)格所組成,每個總結(jié)是池化單元中心的鄰近z X z單元。如果我們假設(shè)s=z,我們獲得CNN中傳統(tǒng)的局部池化。如果設(shè)s<z,我們獲得重疊池化。這是我們的網(wǎng)絡(luò)里使用的參數(shù),s=2,z=3。這個機(jī)制減小了top1錯誤率0.4%,top5錯誤率0.3%,和不重疊機(jī)制s=2,z=2比較起來,它減小了等效面積的輸出。我們觀察并發(fā)現(xiàn),在訓(xùn)練有重疊池化的模型中擬合是有一點困難的。
3.5 Overall Architecture
現(xiàn)在我們準(zhǔn)備好介紹我們CNN的整體架構(gòu)了。像第二節(jié)描繪的那樣,網(wǎng)絡(luò)包含8層權(quán)重,前5層是卷積層和 3層全鏈接層。最后一層全連接層的輸出傳給一個1000的softmax函數(shù),產(chǎn)生一個1000種標(biāo)簽的分類。
[圖片上傳中...(image-a64617-1511097214573-6)]
第2,4,5卷積層的核函數(shù)僅僅和GPU上前一層的那些映射結(jié)果相連接。第三層卷積層和第二層所有的映射結(jié)果相連接。全連接層的神經(jīng)元和前一層所有的神經(jīng)元相連。響應(yīng)歸一化層連接在第1,2卷積層后面。最大池化層,如第3,4節(jié)描述的那樣,連接在響應(yīng)歸一化層和第5卷基層后面。ReLu非線性函數(shù)應(yīng)用在每一個卷積層和全連接層后面。
第1個卷積層用96個11X11X3的濾波器對224X224X3的圖像以步長為4做濾波。第2層卷積層以第1層卷積層(響應(yīng)歸一化和池化之后)的結(jié)果為輸入,用256個5X5X48的濾波器做濾波。第3,4,5卷積層互相連接沒有任何池化,歸一的干擾。第三層卷積層有384個3X3X256 的核函數(shù)連接在第二層卷積層歸一化,池化之后。第四層卷積層有384個3X3X192核函數(shù)連接,第五層有256個3x3X192的核函數(shù)連接,全連接層各有4096個神經(jīng)元。
4 Reducing Overfitting
我們的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)有6000萬參數(shù)。盡管ILSVRC的1000種使得每一個訓(xùn)練樣例增加了10倍的限制,從圖像到標(biāo)簽,這說明不考慮過擬合來學(xué)習(xí)這么多的參數(shù)是不足的。下面,我們介紹兩種主要的防止過擬合的方法。
4.1 Data Augmentation
在圖像數(shù)據(jù)上最容易也是最常見的減少過擬合的方法是通過標(biāo)簽保存轉(zhuǎn)換人工地增大數(shù)據(jù)集(e.g., [25, 4, 5])。我們采用兩種不同形式的數(shù)據(jù)增強(qiáng),兩者都允許原始圖像經(jīng)過一些運算來產(chǎn)生轉(zhuǎn)換后的圖像,所以轉(zhuǎn)換后的圖像不必存儲在磁盤上。我們在實際操作中,轉(zhuǎn)換的圖片通過python代碼在CPU上產(chǎn)生,同時GPU在圖像的前一個batch上訓(xùn)練。所以這些數(shù)據(jù)增強(qiáng)機(jī)制實際上是計算自由的。
第一個數(shù)據(jù)增強(qiáng)的方式由圖片轉(zhuǎn)換和水平翻轉(zhuǎn)組成。我們實現(xiàn)它通過在256X256的圖片上隨機(jī)提取224x224的patches(和它們的水平鏡像)并且在這些提取出來的Patches上訓(xùn)練我們的網(wǎng)絡(luò)。這使我們的訓(xùn)練集規(guī)模增加了2048,當(dāng)然,訓(xùn)練樣本的結(jié)果是高度相互依存的。沒有這個方案,我們的網(wǎng)絡(luò)會遭受大量的過擬合,那將會迫使我們使用更小的網(wǎng)絡(luò)。在測試階段,網(wǎng)絡(luò)會做一個預(yù)測通過提取5個224X224的patches(四個角的patches和中心patches)和它們的水平鏡像(因此一共10個patches),并且通過網(wǎng)絡(luò)的softmax層平均這10個patches上的預(yù)測。
第2種數(shù)據(jù)增強(qiáng)的方式是改變訓(xùn)練圖片上RGB通道的強(qiáng)度。特別的,我們在ImageNet訓(xùn)練集上對RGB像素值做PCA操作。對每一張訓(xùn)練圖片,我們成倍的增加已有的主成分,比例大小為對應(yīng)特征值的隨機(jī)變量,符合0均值,0.1標(biāo)準(zhǔn)差的高斯分布。
[圖片上傳中...(image-14e8c2-1511097214573-5)]
p和入是RGB像素值3X3協(xié)方差矩陣的特征向量和特征值,阿爾法是上述的隨機(jī)變量。每個阿爾法只描述一次一張?zhí)囟▓D片的所有像素值,直到這張圖片被再次訓(xùn)練,每個點再次被描繪。這個方案大概捕捉了自然圖像的重要性質(zhì),也就是說,對象標(biāo)識對于光照強(qiáng)度和顏色的變化是不變的。這個方案減少了top-1錯誤率1%.
4.2 Dropout
結(jié)合許多不同模型的預(yù)測是減小測試錯誤非常成功的方式,但是這對于大的神經(jīng)網(wǎng)絡(luò)來說似乎代價太大了,需要花費好多天來訓(xùn)練。然而,這有一個聯(lián)合模型的非常有效的版本僅僅花費兩天訓(xùn)練。最新引進(jìn)的技術(shù),“Dropout”,以50%的概率對每一個隱含層的輸出置0。被“Dropout”的這些神經(jīng)元對前向傳播不做貢獻(xiàn),也不參與后向傳播。所以,每次一個輸入被展示的時候,神經(jīng)網(wǎng)絡(luò)表現(xiàn)出不同的結(jié)構(gòu),但是所有這些結(jié)構(gòu)共享權(quán)重。這個技術(shù)減少了神經(jīng)元的復(fù)雜的互相適應(yīng),由于一個神經(jīng)元不能依賴其他特定神經(jīng)元的存在。因此,學(xué)習(xí)更多穩(wěn)定的特征是緊迫的,這些特征對連接其他神經(jīng)元的許多不同隨機(jī)集合是非常有用的。在測試階段,我們使用所有的神經(jīng)元但是對它們的輸出乘以0.5,這是一個合理的近似,采取由指數(shù)丟包網(wǎng)絡(luò)產(chǎn)生的預(yù)測分布的幾何平均值。
我們在前兩層全連接層使用dropout。沒有dropout,我們的網(wǎng)絡(luò)表現(xiàn)出大量的過擬合。孤過擬合大概使達(dá)到收斂的次數(shù)增加兩倍。
5 Details of learning
[圖片上傳中...(image-d4f3e1-1511097214573-4)]
我們使用隨機(jī)梯度下降訓(xùn)練我們的模型,batch大小為128,momentum0.9,權(quán)重衰減率0.0005。我們發(fā)現(xiàn)小的學(xué)習(xí)衰減率對于模型學(xué)習(xí)是非常重要的。換句話說,權(quán)重衰減不僅僅是正則化:它減小了模型的訓(xùn)練錯誤。權(quán)重w的更新規(guī)則為:
[圖片上傳中...(image-7d6257-1511097214573-3)]
i是迭代索引,v是變量momentum,e是學(xué)習(xí)率,是第i個batch上關(guān)于W的倒數(shù)的均值。
我們以0均值,標(biāo)準(zhǔn)差0.01的高斯分布初始化每一層的權(quán)重。初始化神經(jīng)元偏置值在第2,4,5卷積層和全連接層為常量1.這些初始值通過給Relus提供積極的輸入來加速了學(xué)習(xí)的早期階段。我們將其余層的神經(jīng)元偏置值初始化為0。
我們對所有層使用相等的學(xué)習(xí)速率,手動地調(diào)整訓(xùn)練。我們使用的這個啟發(fā)式是為了當(dāng)驗證錯誤率停止提高當(dāng)前學(xué)習(xí)率時以10為單位分割學(xué)習(xí)率。學(xué)習(xí)率初始化為0.01并且在終止之前減少三倍。我們用兩塊NVIDIA GTX 580 3GB GPUs.在1200萬張圖片的訓(xùn)練集上訓(xùn)練這個網(wǎng)絡(luò)90次,花費了5,6天的時間。
6 Result
[圖片上傳中...(image-9473cd-1511097214573-2)]
ILSVRC-2010的結(jié)果總結(jié)在table中。我們的網(wǎng)絡(luò)實現(xiàn)top-1和top-5測試集錯誤率37.5%和17%。 ILSVRC-2010比賽中最好的表現(xiàn)以平均預(yù)測值的方法是47.1%和28.2%,平均了不同特征上訓(xùn)練的六個稀疏編碼模型產(chǎn)生的預(yù)測值,因此,以平均預(yù)測值的方法最好的結(jié)果是45.7%和25.7%,平均了兩類密集采樣特點計算出的Fisher向量訓(xùn)練的兩個分類器的預(yù)測。
我們也把我們的模型用在ILSVRC-2012比賽中并且記錄結(jié)果在Table2中。因為ILSVRC-2012測試集標(biāo)簽不是公開可用的,我們不能記錄我們訓(xùn)練的所有模型的測試錯誤率。在這段剩下的部分,我們交換地使用驗證和測試錯誤率,因為在我們的經(jīng)驗里,它們的不同超過0.1%(如圖2)。這篇文章中描述的CNN實現(xiàn)了top-5錯誤率18.2%。五個相似的CNN錯誤率預(yù)測的平均值是16.4%。訓(xùn)練一個在最后一層pooling層額外增加第六層卷積層的CNN,來分類整個Imagenet 2011的數(shù)據(jù)集,并且微調(diào)它在ILSVRC-2012上,得到一個16.6%的錯誤率。平均兩個CNN的預(yù)測,得到一個15.3%的錯誤率。第二名達(dá)到了26.2%的錯誤率,平均了不同密集采樣特點計算出的Fisher向量訓(xùn)練的七個分類器的預(yù)測。
[圖片上傳中...(image-efcb81-1511097214573-1)]
最后,我們也記錄我們在ImageNet 2009上的錯誤率,包括10184種類別和8900萬張圖片。在這個數(shù)據(jù)集上我們遵循一半圖片訓(xùn)練一半圖片測試的這個慣例。因為這個沒有建立好的測試集,我們必要的分割和之前作者的分割是不同的,但是對結(jié)果沒有明顯的影響。在這個數(shù)據(jù)集上使用在pooling層添加第六層卷積層的網(wǎng)絡(luò),我們獲得的top-1和top-5錯誤率為67.4%和40.9%。這個數(shù)據(jù)集上之前最好的結(jié)果是78.1%和60.9%。
6.1 Qualitative Evaluations
圖3 顯示了通過網(wǎng)絡(luò)的兩個數(shù)據(jù)連接層學(xué)習(xí)到的卷積核。網(wǎng)絡(luò)已經(jīng)學(xué)習(xí)了各種頻率和方向選擇性的核和各種顏色模塊。注意兩片GPU的特別展示,3.5節(jié)描述的限制連接的結(jié)果。第1片GPU上的卷積核大部分是色彩不可知的,第2片上的大部分是特定顏色的。這種特別的情況發(fā)生在程序的每一次運行并且獨立于任意特定的隨機(jī)權(quán)重初始化。
[圖片上傳中...(image-2189cf-1511097214573-0)]
在圖4的左半部分,我們定性地評估網(wǎng)絡(luò)通過計算8個測試圖片top-5預(yù)測的學(xué)習(xí)。注意到偏離中心的物體,例如左上角的螨,能被網(wǎng)絡(luò)識別出來。標(biāo)簽的top-5大都看起來很合理。例如,僅僅其他貓的類型被認(rèn)為是豹貌似是合理的。在一些例子中(護(hù)柵,櫻桃),關(guān)于照片的預(yù)期焦點存在真正的歧義。
另一個探查網(wǎng)絡(luò)視覺知識的方法是考慮圖片在最后一個4096維隱含層的特征激活。如果兩張圖片產(chǎn)生的特征激活向量有一個小的歐氏距離,我們就可以說神經(jīng)網(wǎng)絡(luò)的高層特征認(rèn)為它們是相似的。圖4顯示了依據(jù)這個原理來判定測試集的5張和訓(xùn)練集的6張最相似的圖片。注意到在像素層級,恢復(fù)的訓(xùn)練圖片通常不是很接近第一列的圖片。例如,恢復(fù)的狗和大象在很多姿勢上都是相似的。在補(bǔ)充材料中我們展示了更多的測試圖片。
通過歐式距離來計算兩個4096維之間的相似度,真實值向量是低效的,但是通過訓(xùn)練一個自動編碼來把這些向量壓縮到短的二進(jìn)制碼可能是有效的。這可能產(chǎn)生一個更好的圖像恢復(fù)方法比直接應(yīng)用自動編碼器到原始像素上,它沒有使用圖像標(biāo)簽,因此有一個恢復(fù)圖像邊緣相似模式的趨勢,無論它們在語義上是不是相似的。
7 Discussion
我們的結(jié)果展現(xiàn)了一個大型的,深度卷積神經(jīng)網(wǎng)絡(luò)是可以在一個高水平的挑戰(zhàn)賽數(shù)據(jù)集上使用純的監(jiān)督學(xué)習(xí)來打破記錄的。值得注意的是,如果有一個卷積層被去掉了,我們的網(wǎng)路效率就會降低。例如,去掉任何一個中間層會導(dǎo)致網(wǎng)絡(luò)在top-1的結(jié)果損失2%。所以,深度對于實現(xiàn)我們的結(jié)果是非常重要的。
為了簡化我們的實驗,我們沒有使用任何無監(jiān)督的預(yù)訓(xùn)練即使我們希望那將會幫助我們,尤其是如果我們獲得足夠的計算能力來顯著地增加網(wǎng)絡(luò)的規(guī)模而不用相應(yīng)地增加標(biāo)簽數(shù)據(jù)。因此,我們的結(jié)果已經(jīng)提高了因為我們已經(jīng)使我們的網(wǎng)絡(luò)更大并且訓(xùn)練它更久,但是為了符合人類視覺系統(tǒng)的行為方式我們依然有許多數(shù)量級去探索。最終,我們會在視頻序列上使用非常大型的深度卷積網(wǎng)絡(luò),視頻序列的時序結(jié)構(gòu)會提供非常有用的信息,靜態(tài)圖像中的缺失或不太明顯。
References
[1] R.M. Bell and Y. Koren. Lessons from the netflix prize challenge. ACM SIGKDD Explorations Newsletter 9(2):75–79, 2007.
[2] A. Berg, J. Deng, and L. Fei-Fei. Large scale visual recognition challenge 2010. www.image-
net.org/challenges. 2010.
[3] L. Breiman. Random forests. Machine learning, 45(1):5–32, 2001.
[4] D. Cire ?san, U. Meier, and J. Schmidhuber. Multi-column deep neural networks for image classification.Arxiv preprint arXiv:1202.2745, 2012.
[5] D.C. Cire ?san, U. Meier, J. Masci, L.M. Gambardella, and J. Schmidhuber. High-performance neural networks for visual object classification. Arxiv preprint arXiv:1102.0183, 2011.
[6] J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li, and L. Fei-Fei. ImageNet: A Large-Scale HierarchicalImage Database. In CVPR09, 2009.
[7] J. Deng, A. Berg, S. Satheesh, H. Su, A. Khosla, and L. Fei-Fei. ILSVRC-2012, 2012. URL
http://www.image-net.org/challenges/LSVRC/2012/.
[8] L. Fei-Fei, R. Fergus, and P. Perona. Learning generative visual models from few training examples: Anincremental bayesian approach tested on 101 object categories. Computer Vision and Image Understand-ing, 106(1):59–70, 2007.
[9] G. Griffin, A. Holub, and P. Perona. Caltech-256 object category dataset. Technical Report 7694, Cali-fornia Institute of Technology, 2007. URLhttp://authors.library.caltech.edu/7694.
[10] G.E. Hinton, N. Srivastava, A. Krizhevsky, I. Sutskever, and R.R. Salakhutdinov. Improving neural net-works by preventing co-adaptation of feature detectors. arXiv preprint arXiv:1207.0580, 2012.
[11] K. Jarrett, K. Kavukcuoglu, M. A. Ranzato, and Y. LeCun. What is the best multi-stage architecture for object recognition? In International Conference on Computer Vision, pages 2146–2153. IEEE, 2009.
[12] A. Krizhevsky. Learning multiple layers of features from tiny images. Master’s thesis, Department of Computer Science, University of Toronto, 2009.
[13] A. Krizhevsky. Convolutional deep belief networks on cifar-10. Unpublished manuscript, 2010.
[14] A. Krizhevsky and G.E. Hinton. Using very deep autoencoders for content-based image retrieval. InESANN, 2011.
[15] Y. Le Cun, B. Boser, J.S. Denker, D. Henderson, R.E. Howard, W. Hubbard, L.D. Jackel, et al. Hand-written digit recognition with a back-propagation network. In Advances in neural information processing systems, 1990.
[16] Y. LeCun, F.J. Huang, and L. Bottou. Learning methods for generic object recognition with invariance to pose and lighting. In Computer Vision and Pattern Recognition, 2004. CVPR 2004. Proceedings of the 2004 IEEE Computer Society Conference on, volume 2, pages II–97. IEEE, 2004.
[17] Y. LeCun, K. Kavukcuoglu, and C. Farabet. Convolutional networks and applications in vision. In Circuits and Systems (ISCAS), Proceedings of 2010 IEEE International Symposium on, pages 253–256. IEEE, 2010.
[18] H. Lee, R. Grosse, R. Ranganath, and A.Y. Ng. Convolutional deep belief networks for scalable unsuper-vised learning of hierarchical representations. In Proceedings of the 26th Annual International Conference on Machine Learning, pages 609–616. ACM, 2009.
[19] T. Mensink, J. Verbeek, F. Perronnin, and G. Csurka. Metric Learning for Large Scale Image Classifi-cation: Generalizing to New Classes at Near-Zero Cost. In ECCV - European Conference on ComputerVision, Florence, Italy, October 2012.
[20] V. Nair and G. E. Hinton. Rectified linear units improve restricted boltzmann machines. In Proc. 27th International Conference on Machine Learning, 2010.
[21] N. Pinto, D.D. Cox, and J.J. DiCarlo. Why is real-world visual object recognition hard? PLoS computa-tional biology, 4(1):e27, 2008.
[22] N. Pinto, D. Doukhan, J.J. DiCarlo, and D.D. Cox. A high-throughput screening approach to discovering good forms of biologically inspired visual representation. PLoS computational biology, 5(11):e1000579, 2009.
[23] B.C. Russell, A. Torralba, K.P. Murphy, and W.T. Freeman. Labelme: a database and web-based tool for image annotation. International journal of computer vision, 77(1):157–173, 2008.
[24] J. Sánchez and F. Perronnin. High-dimensional signature compression for large-scale image classification. In Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on, pages 1665–1672. IEEE,2011.
[25] P.Y. Simard, D. Steinkraus, and J.C. Platt. Best practices for convolutional neural networks applied to visual document analysis. In Proceedings of the Seventh International Conference on Document Analysis and Recognition, volume 2, pages 958–962, 2003.
[26] S.C. Turaga, J.F. Murray, V. Jain, F. Roth, M. Helmstaedter, K. Briggman, W. Denk, and H.S. Seung. Con-volutional networks can learn to generate affinity graphs for image segmentation. Neural Computation,22(2):511–538, 2010.