基于深度卷積神經(jīng)網(wǎng)絡(luò)的圖像分類_第1頁
基于深度卷積神經(jīng)網(wǎng)絡(luò)的圖像分類_第2頁
基于深度卷積神經(jīng)網(wǎng)絡(luò)的圖像分類_第3頁
基于深度卷積神經(jīng)網(wǎng)絡(luò)的圖像分類_第4頁
基于深度卷積神經(jīng)網(wǎng)絡(luò)的圖像分類_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

MACROBUTTONMTEditEquationSection2SEQMTEqn\r\hSEQMTSec\r1\hSEQMTChap\r1\hSHANGHAIJIAOTONGUNIVERSITY論文題目:基于卷積神經(jīng)網(wǎng)絡(luò)的自然圖像分類技術(shù)研究姓名:高小寧專業(yè):控制科學(xué)與工程基于卷積神經(jīng)網(wǎng)絡(luò)的自然圖像分類技術(shù)研究摘要:卷積神經(jīng)網(wǎng)絡(luò)已在圖像分類領(lǐng)域取得了很好的效果,但其網(wǎng)絡(luò)結(jié)構(gòu)及參數(shù)的選擇對圖像分類的效果和效率有較大的影響。為改善卷積網(wǎng)絡(luò)的圖像分類性能,本文對卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行了詳細(xì)的理論分析,并通過大量的比照實驗,得出了影響卷積網(wǎng)絡(luò)性能的因素。結(jié)合理論分析及比照實驗,本文設(shè)計了一個卷積層數(shù)為8層的深度卷積網(wǎng)絡(luò),并結(jié)合BatchNormalization、dropout等方法,在CIFAR-10數(shù)據(jù)集上取得了88.1%的分類精度,有效地提高了卷積神經(jīng)網(wǎng)絡(luò)的分類效果。關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò),圖像分類,BatchNormalization,DropoutResearchonNaturalImageClassificationBasedonConvolutionNeuralNetworkAbstract:Convolutionneuralnetworkhasachievedverygoodresultsinimageclassification,butitsnetworkstructureandthechoiceofparametershaveagreaterimpactonimageclassificationefficiencyandefficiency.Inordertoimprovetheimageclassificationperformanceoftheconvolutionnetwork,aconvolutionalneuralnetworkmodelisanalyzedindetail,andalargenumberofcontrastiveexperimentsareconductedtogetthefactorsthatinfluencetheperformanceoftheconvolutionnetwork.Combiningthetheoryanalysisandcontrastexperiment,aconvolutionlayerdepthconvolutionnetworkwith8layersisdesigned.CombinedwithBatchNormalizationanddropout,88.1%classificationaccuracyisachievedonCIFAR-10dataset.Whichimprovestheclassificationeffectofconvolutionneuralnetwork.KeyWords:Convolutionneuralnetwork(CNN),imageclassification,BatchNormalization,Dropout目錄基于卷積神經(jīng)網(wǎng)絡(luò)的自然圖像分類技術(shù)研究 )其中,,分別是對梯度的一階矩估計和二階矩估計,可以看作對期望,的估計;,是對,的校正,這樣可以近似為對期望的無偏估計??梢钥闯觯苯訉μ荻鹊木毓烙媽?nèi)存沒有額外的要求,而且可以根據(jù)梯度進(jìn)行動態(tài)調(diào)整,而對學(xué)習(xí)率形成一個動態(tài)約束,而且有明確的范圍。特點如下:具有善于處理稀疏梯度和非平穩(wěn)目標(biāo)的優(yōu)點對內(nèi)存需求較小為不同的參數(shù)計算不同的自適應(yīng)學(xué)習(xí)率適用于大多非凸優(yōu)化問題,也適用于大數(shù)據(jù)集和高維空間通常情況下且迭代速度快于SGD,但是其收斂精度一般不如SGD2.6Dropout權(quán)值衰減(L2正那么化)是通過修改代價函數(shù)來實現(xiàn)的,但是Dropout通過修改神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)來實現(xiàn)的,它是在訓(xùn)練神經(jīng)網(wǎng)絡(luò)時用的一種優(yōu)化方法。Dropout是指在模型訓(xùn)練時隨機讓網(wǎng)絡(luò)局部隱含層單元的不工作,不工作的那些單元可以暫時不作為網(wǎng)絡(luò)的局部計算,但保存它的權(quán)重(暫時不更新),因為下次樣本輸入時它可能又工作。在訓(xùn)練過程中,Dropout是以一定概率將隱含層節(jié)點的輸出清0,而用反向傳播更新權(quán)值時,不再更新與該節(jié)點相連的權(quán)值,未設(shè)置Dropout與設(shè)置Dropout的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如下:〔a〕無Dropout的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)〔b〕設(shè)置Dropout的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖2-4Dropout示意圖2.7BatchNormalization我們知道,在訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)時,常常會發(fā)生“梯度彌散〞問題,即當(dāng)我們使用反向傳播方法計算梯度導(dǎo)數(shù)的時候,隨著網(wǎng)絡(luò)深度的增加,反向傳播的梯度〔從輸出層到網(wǎng)絡(luò)的最初幾層〕的幅度值會急劇地減小。一個簡單的例子就是:,結(jié)果就造成了整體的代價函數(shù)對最初幾層網(wǎng)絡(luò)的權(quán)值的導(dǎo)數(shù)非常小。這樣,當(dāng)使用梯度下降法的時候,最初幾層的權(quán)重變化非常緩慢,以至于它們不能夠從樣本中進(jìn)行有效的學(xué)習(xí)。為了解決梯度彌散問題,Google在2023年的ICML大會上提出了BatchNormalization的方法。BatchNormalization嘛,即“批標(biāo)準(zhǔn)化〞,即在每次進(jìn)行隨機梯度下降時,通過mini-batch來對相應(yīng)的激活輸出做標(biāo)準(zhǔn)化操作,使得結(jié)果〔輸出信號各個維度〕的均值為0,方差為1。具體的“批標(biāo)準(zhǔn)化〞算法如下:在BatchNormalization中,通過將激活函數(shù)的輸出標(biāo)準(zhǔn)為均值和方差一致的手段使得原本會減小的輸出的變大,從而在很大程度上解決了梯度彌散問題,并加快了深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。3模型設(shè)計與實驗分析3.1CIFAR-10數(shù)據(jù)集CIFAR-10數(shù)據(jù)集含有6萬張的自然圖像,共分為10種類型,由AlexKrizhevsky,VinodNair和GeoffreyHinton收集而來。包含50000張訓(xùn)練圖片,10000張測試圖片,數(shù)據(jù)集的數(shù)據(jù)存在一個的數(shù)組中〔按行存儲,每一行表示一副圖像〕,前1024位是R值,中間1024位是G值,最后1024位是B值,數(shù)據(jù)集樣例如圖3-1所示。我們對實驗數(shù)據(jù)集僅作簡單的裁剪與白化處理后將像素值送入神經(jīng)網(wǎng)絡(luò)中進(jìn)行訓(xùn)練。圖3-1CIFAR-10數(shù)據(jù)集樣例3.2模型設(shè)計在上一章中我們對卷積神經(jīng)網(wǎng)絡(luò)性能的影響因素進(jìn)行了分析,如何選擇感受野大小、核個數(shù)、池化大小、網(wǎng)絡(luò)的層數(shù)等。對此,我們根據(jù)這些影響因素并結(jié)合CIFAR-10數(shù)據(jù)集,設(shè)計了兩個模型。一種是淺層卷積網(wǎng)絡(luò)模型,一種是深度卷積網(wǎng)絡(luò)模型,淺層卷積網(wǎng)絡(luò)模型受GoogleTensorFlow的教學(xué)手冊啟發(fā),深度卷積網(wǎng)絡(luò)模型是結(jié)合了影響卷積網(wǎng)絡(luò)性能的影響因素設(shè)計而成。淺層卷積網(wǎng)絡(luò)與深度卷積網(wǎng)絡(luò)的結(jié)構(gòu)圖分別如圖3-2與圖3-3所示。圖3-2淺層卷積網(wǎng)絡(luò)圖3-3深度卷積網(wǎng)絡(luò)兩個網(wǎng)絡(luò)的架構(gòu)圖分別如表3-1與表3-2所示。表3-1淺層卷積網(wǎng)絡(luò)架構(gòu)圖typePatchSize/stridesFeatureMapsdepthactivationlearningruleconvolution3×3321ReLuSGD+Momentummaxpool3×3/[1,2,2,1]320convolution3×3641maxpool3×3/[1,2,2,1]640Fullconnection1×3384/1922softmax101表3-2深度卷積網(wǎng)絡(luò)架構(gòu)圖typePatchSize/stridesFeatureMapsdepthactivationlearningruleconvolution3×3322ReLuSGD+Momentummaxpool3×3/[1,2,2,1]320convolution3×3642maxpool3×3/[1,2,2,1]640convolution3×31282maxpool3×3/[1,2,2,1]1280convolution3×32562maxpool3×3/[1,2,2,1]2560Fullconnection1×3384/1922softmax101假設(shè)我們將下采樣層(pooling)與歸一化層〔BatchNormalization〕不計入網(wǎng)絡(luò)層數(shù)的計算,那么我們設(shè)計的淺層網(wǎng)絡(luò)的深度為5,深度網(wǎng)絡(luò)的深度為11。3.3實驗結(jié)果與分析實驗環(huán)境與根本參數(shù)設(shè)置:實驗中我們采用Python+tensorflow進(jìn)行編程,tensorflow是Google開發(fā)的一種深度學(xué)習(xí)框架,其提供了C++與Python接口,主要支持Linux與MacOS,這種框架主要采用先進(jìn)的圖計算,即使用有向圖的節(jié)點和邊共同描述數(shù)學(xué)計算。graph中的nodes代表數(shù)學(xué)操作,也可以表示數(shù)據(jù)輸入輸出的端點。邊表示節(jié)點之間的關(guān)系,傳遞操作之間互相使用的多位數(shù)組〔tensors,張量〕,tensor在graph中流動——這也就是TensorFlow名字的由來。一旦節(jié)點相連的邊傳來了數(shù)據(jù)流,節(jié)點就被分配到計算設(shè)備上異步的〔節(jié)點間〕、并行的〔節(jié)點內(nèi)〕執(zhí)行,這種靈活的架構(gòu)允許我們使用相同的API在單或多CPUs或GPU,效勞器及移動設(shè)備上進(jìn)行計算。本文的編程環(huán)境處于Linux之中,具體的實驗室環(huán)境如表3-3所示:表3-3實驗環(huán)境CPUi5-6500CPU@3.20GHzGPUGTX750ti@2GB內(nèi)存8GB操作系統(tǒng)Linuxmint18深度學(xué)習(xí)框架GoogleTensorFlow〔r0.12〕編程語言Python2.7為了后續(xù)進(jìn)行比照實驗,我們配置了根本的實驗參數(shù),后續(xù)相關(guān)的實驗參數(shù)也是在根本參數(shù)上進(jìn)行變動。權(quán)值衰減的實現(xiàn)是在代價函數(shù)中增加懲罰項,隨機訓(xùn)練樣本會造成這懲罰項產(chǎn)生較大的隨機突變,干擾梯度更新方向的穩(wěn)定性,同時增大訓(xùn)練誤差,故懲罰項的參數(shù)需要非常小,一般都要小于0.001;另外,對神經(jīng)元隨機失能的比例不能太大,否那么隨機噪聲會淹沒訓(xùn)練集的作用;批處理尺寸〔batchsize〕不能太大,負(fù)責(zé)會造成迭代過慢及內(nèi)存溢出問題,我們在CNN的訓(xùn)練時間、準(zhǔn)確率和穩(wěn)定性之間進(jìn)行折中后的根本實驗參數(shù)如表3-4所示。表3-4根本實驗參數(shù)參數(shù)取值輸入圖像尺寸〔image_size〕批處理尺寸〔batchsize〕128初始學(xué)習(xí)速率〔〕0.1學(xué)習(xí)速率衰減率〔〕0.1衰減間隔〔NUM_EPOCHS_PER_DECAY〕350動量系數(shù)〔〕0.9Dropout比例〔〕0.5權(quán)值衰減項權(quán)重〔〕[0,0.001]最大迭代步數(shù)〔max_steps〕10003.3.2不同batchsize比照實驗我們采取不同的batchsize,并選取隨機梯度下降學(xué)習(xí)算法,在CIFAR-10數(shù)據(jù)集上進(jìn)行了比照實驗,各種不同batchsize對應(yīng)的代價函數(shù)曲線如圖3-4所示。(a)batchsize=128(b)batchsize=256(c)batchsize=512(d)batchsize=1024圖3-4不同batchsize的代價函數(shù)曲線從圖3-4可以看出,batchsize為128與256時,代價函數(shù)的震蕩較劇烈,隨著batchsize增大到512與1024,代價函數(shù)的下降變得相對平穩(wěn),這是由于batchsize越大越能代表總體的訓(xùn)練集樣本分布,但是batchsize越大,每次迭代所需時間就近線性增長,在實驗室中,不同的batchsize對應(yīng)的處理速度如表3-5。表3-5不同batchsize的處理速度batchsize處理速度〔sec/batch〕1280.102560.215120.4310240.85在后續(xù)實驗中,為了加快收斂速度,我們?nèi)atchsize=128。3.3.3不同激活函數(shù)比照實驗我們分別選擇三種激活函數(shù),均采取Adam學(xué)習(xí)算法,經(jīng)過1000次迭代后的代價函數(shù)曲線如圖3-5所示。(a)sigmoid(b)tanh(c)ReLu圖3-5不同激活函數(shù)的代價函數(shù)曲線從上圖中我們可以看出,在相同的迭代次數(shù)下,sigmoid型激活函數(shù)對應(yīng)的代價函數(shù)值降低到2.0左右,而tanh型激活函數(shù)的代價函數(shù)下降到一個更小的值〔1.0~1.5〕,最后ReLu激活函數(shù)的震蕩更小,對應(yīng)代價函數(shù)下降到一個比tanh型函數(shù)更小的值,這與其特性〔①單側(cè)抑制②相對寬闊的興奮邊界③稀疏激活性〕有關(guān),所以ReLu型激活函數(shù)更適用于深度神經(jīng)網(wǎng)絡(luò),后續(xù)我們的實驗也是默認(rèn)采用ReLu激活函數(shù)。不同學(xué)習(xí)算法比照實驗在保持根本實驗參數(shù)設(shè)置的情況下,三種不同的學(xué)習(xí)算法的代價函數(shù)曲線如圖3-6所示。從曲線圖我們可以看出,SGD〔隨機梯度下降法〕收斂速度最慢,而且曲線震蕩明顯;SGD+Momentum(隨機梯度下降加動量因子)震蕩減小且收斂速度加快,如果迭代次數(shù)足夠多,可以收斂到一個比擬理想的值;Adam(自適應(yīng)矩估計法)收斂速度最快,且震蕩較小,如果對精度沒有嚴(yán)格要求話,Adam是一個較理想的選擇〔后續(xù)比照實驗也默認(rèn)采用Adam學(xué)習(xí)算法〕。(a)SGD(b)SGD+Momentum(c)Adam圖3-6不同學(xué)習(xí)算法的代價函數(shù)曲線3.3.5不同特征圖個數(shù)比照實驗我們以之前設(shè)計的淺層卷積網(wǎng)絡(luò)為根底,分別設(shè)置兩層卷積層的特征圖〔FeatureMaps〕個數(shù)為16-16,32-32,64-64,卷積核尺寸為5×5,pooling窗口尺寸為3×3,其他層保持不變,迭代10000步后,不同數(shù)目的特征圖對應(yīng)的測試集分類精度如表3-6所示。表3-6不同F(xiàn)eatureMaps對應(yīng)的測試集精度FeatureMapsPresion16-1670.0%32-3275.0%64-6479.5%由表3-5可知,在一定范圍內(nèi),隨著特征圖〔FeatureMaps〕個數(shù)的增多,對應(yīng)的分類精度就越大,這是由于特征圖個數(shù)越多,從輸入圖像中提取到的特征也就越多,模型的表達(dá)能力也就越強,所以在計算能力允許的情況下我們應(yīng)該盡量增加特征圖的數(shù)目,提高圖像特征的提取質(zhì)量進(jìn)而增強模型的表達(dá)能力。不同池化方式比照實驗我們保持根本實驗參數(shù)不變,分別采用averagepooling〔均值采樣〕與maxpooling〔最大采樣〕兩種池化方式,迭代10000次后的對應(yīng)的測試集分類精度如表3-6所示,相應(yīng)的代價函數(shù)曲線如圖3-7所示。表3-7不同池化方式對應(yīng)的測試集精度PoolingPresionAveragepoling77.9%Maxpooling79.5%(a)averagepooling(b)maxpooling圖3-7不同pooling方式對應(yīng)的代價函數(shù)曲線從表3-6可以看出采用maxpooling取得了更高的分類精度,從兩者的代價函數(shù)曲線也可以看出maxpooling可以將代價函數(shù)降到更低,這是由于maxpooling減小了卷積層參數(shù)誤差造成的估計均值偏移,所以后續(xù)的實驗中我們也將采用maxpooling的方式。不同卷積層數(shù)比照實驗我們在之前設(shè)計的淺層卷積網(wǎng)絡(luò)的根底上增加兩層卷積層,并與淺層卷積網(wǎng)絡(luò)、深度卷積網(wǎng)絡(luò)一起進(jìn)行比照實驗,保持根本的實驗參數(shù)不變,采用Adam學(xué)習(xí)算法,迭代10000次后的分類精度如表3-8所示。表3-8不同卷積層數(shù)對應(yīng)的測試集精度卷積層數(shù)Presion279.5%683.1%883.6%由表3-8可知,隨著卷積層數(shù)的增多相應(yīng)的分類精度也在提高,這是由于卷積層數(shù)越多,對特征的抽象能力也就越強大,最后提取到的特征質(zhì)量也就越高,所以一般來說,深度卷積網(wǎng)絡(luò)比淺層卷積網(wǎng)絡(luò)的性能要好。深度卷積網(wǎng)絡(luò)模型實驗我們設(shè)置最大迭代次數(shù)為50000次,采用SGD+Momentum的學(xué)習(xí)算法,初始化學(xué)習(xí)率,每隔125次Epoch學(xué)習(xí)率衰減為上一次的0.1倍,其他參數(shù)保持根本參數(shù)不變,對應(yīng)的代價函數(shù)曲線如圖3-8所示。圖3-8深度卷積網(wǎng)絡(luò)模型代價函數(shù)曲線經(jīng)過50000次迭代后,代價函數(shù)大約穩(wěn)定在0.20左右,最低為0.10,最后的分類精度為88.1%,CIFAR-10局部論文的分類精度如圖3-9所示。從圖中可以看出,本文的分類精度優(yōu)于許多論文得到的分類精度,但是由于本文的方法并未對訓(xùn)練集圖像做精細(xì)的預(yù)處理,所以本文的分類精度比一些做過相應(yīng)預(yù)處理的論文結(jié)果要低;觀察代價函數(shù)曲線可知,假設(shè)迭代次數(shù)再增大,代價函數(shù)可以再進(jìn)一步下降,但由于本文中使用的計算機計算能力有限,假設(shè)迭代更多的次數(shù)需要的時間會很長,就不做進(jìn)一步的迭代。圖3-9CIFAR-10局部論文分類精度4結(jié)論本文通過分析影響卷積神經(jīng)網(wǎng)絡(luò)模型的各個因素〔網(wǎng)絡(luò)層數(shù)、學(xué)習(xí)算法、卷積核大小、pooling方式、激活函數(shù)、Dropout、BatchNormalization等〕,針對CIFAR-10圖像數(shù)據(jù)集,設(shè)計了兩個卷積網(wǎng)絡(luò)模型〔淺層網(wǎng)絡(luò)模型與深度網(wǎng)絡(luò)模型〕,經(jīng)過實驗比照,本文設(shè)計的深度網(wǎng)絡(luò)模型的分類精度更高,并取得了88.1%的分類精度,比CIFAR-10官網(wǎng)上公布的大局部論文的分類精度要高,假設(shè)想進(jìn)一步提高分類精度,可以從以下幾個方面進(jìn)行改良:對學(xué)習(xí)率進(jìn)行更加精細(xì)的設(shè)計,使得在代價函數(shù)降低到0.2以下時可以有更加適合的學(xué)習(xí)率與之對應(yīng)。對輸入圖像進(jìn)行精細(xì)的預(yù)處理〔比方濾波、白化等〕原數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強,并進(jìn)行更屢次的迭代。參考文獻(xiàn)[1]李曉普.基于卷積神經(jīng)網(wǎng)絡(luò)的圖像分類[D].大連理工大學(xué),2023.[2]楚敏南.基于卷積神經(jīng)網(wǎng)絡(luò)的圖像分類技術(shù)研

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論