吳祿慎,常參參,王曉輝,陳華偉
(南昌大學 機電工程學院,南昌 330031)
近年來隨著深度學習(Deep Learning,DL)的發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)以其高效準確的分類能力和直接處理原始圖像等優(yōu)點,在圖像的識別領(lǐng)域獲得高度的關(guān)注[1]。2012年,文獻[2]提出的8層深度卷積神經(jīng)網(wǎng)絡(luò)AlexNet,在大規(guī)模視覺識別挑戰(zhàn)[3](Large Scale Visual Recognition Challenge,ILSVRC)中以準確度超越第2名11%的優(yōu)勢贏得冠軍,掀起了卷積神經(jīng)網(wǎng)絡(luò)在圖像識別領(lǐng)域的研究高潮。
雖然卷積神經(jīng)網(wǎng)絡(luò)在圖像識別領(lǐng)域展現(xiàn)了極大優(yōu)勢,但是大多深度模型需要上千次的迭代、數(shù)以萬計的訓練樣本以及高效的圖像處理設(shè)備才能滿足網(wǎng)絡(luò)訓練的要求。這些限制使深度卷積網(wǎng)絡(luò)只能停留在實驗室階段,限制了其應用范圍。對此,國內(nèi)外很多專家和學者在對傳統(tǒng)深度卷積網(wǎng)絡(luò)算法研究的基礎(chǔ)上,提出一些改進的方法。文獻[4]提出遞歸卷積神經(jīng)網(wǎng)絡(luò)(Recurrent Convolutional Neural Network,RCNN)模型將循環(huán)并入每個卷積層,隨著時間的推移,每個輸入的神經(jīng)元都會受到相鄰神經(jīng)元的影響,增強了模型整合上下文的能力,在小訓練樣本量的圖像識別上獲得極大的成功。文獻[5]提出一種基于超參數(shù)和靜態(tài)向量的CNN,通過微調(diào)學習任務(wù)的特征向量進一步提高網(wǎng)絡(luò)的速度。文獻[6]針對訓練樣本少的問題,設(shè)計了訓練數(shù)據(jù)擴增技術(shù),提高卷積神經(jīng)網(wǎng)絡(luò)的應用范圍。文獻[7]對比了不同池化模型對卷機網(wǎng)絡(luò)的影響,設(shè)計出動態(tài)自適應池化(Dynamic Adaptive Pooling,DAP)模型,改進卷積神經(jīng)網(wǎng)絡(luò)的池化層,取得比較好的效果,提高了收斂速度和準確率。文獻[8]提出一種展開式的卷積神經(jīng)網(wǎng)絡(luò)(Unfolded Convolutional Neural Network,UCNN)把卷積層和全連接層展開成矩陣相乘的形式,大大減少網(wǎng)絡(luò)運算量,節(jié)省了網(wǎng)絡(luò)的運算時間。文獻[9]提出了一種基于時域抽取方法的分裂基-2-2a一維FFT快速方法(簡稱S_2a_FFT),利用卷積定理在頻域中實現(xiàn)空域線性卷積的方式,實現(xiàn)了網(wǎng)絡(luò)的加速,且精度并沒有損失。
雖然專家學者對卷積神經(jīng)網(wǎng)絡(luò)算法做了大量的改進,取得了很大成功,但是這些改進主要集中在優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)和增加前期處理方面,在參數(shù)的調(diào)節(jié)方面仍然是全局參數(shù)同時修正,調(diào)節(jié)幅度小,網(wǎng)絡(luò)必須經(jīng)過大量的迭代才能收斂。
針對上述問題,本文提出局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)(Locally Adjusted Convolutional Neural Network,LACNN),通過比較實際輸出與理想輸出的差異,根據(jù)對分類殘差的影響把差異分成關(guān)鍵部分和非關(guān)鍵部分,舍棄差異性小的神經(jīng)元參數(shù),對差異性大的參數(shù)設(shè)置動態(tài)學習率,突破固定步長對參數(shù)調(diào)節(jié)的限制,擴展調(diào)節(jié)的幅度,從而加快網(wǎng)絡(luò)的收斂速度。
卷積神經(jīng)網(wǎng)絡(luò)是眾多深度學習算法中的一種,是深度學習算法和神經(jīng)網(wǎng)絡(luò)的結(jié)合,在機器視覺[10-11]和信號識別[12]方面有著廣泛的應用。卷積神經(jīng)網(wǎng)絡(luò)由3個部分組成,分別是輸入層、隱含層與輸出層。其中,輸入層和輸出層分別對應著輸入的圖像和輸出的結(jié)果,而隱含層包含了多個卷積和池化層交替的非線性結(jié)構(gòu)的神經(jīng)元層,在最后一層的池化操作后還有一個全連接層,目的是獲得高維的空間表達。卷積神經(jīng)網(wǎng)絡(luò)本質(zhì)上是一個特征提取器和分類器的綜合,通過對輸入的圖像不斷地進行特征學習得到一組最接近圖像含義的特征元素組,然后輸入尾部的分類器,進行數(shù)據(jù)的分類識別。
LeNet-5[13]作為經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò),為卷積神經(jīng)網(wǎng)絡(luò)提供了框架,后來的卷積網(wǎng)絡(luò)基本上由此擴展而來。其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,它的輸入Input是一個未經(jīng)處理或者僅經(jīng)過簡單處理的圖像,卷積層是CNN的核心部分,通過不同的卷積核來獲取圖片的特征。卷積核相當于一個濾波器,不同的濾波器提取不同特征。卷積層C1一般選取多個隨機的卷積核對圖像進行卷積。緊隨著卷積層的是池化層S2(也稱為降采樣層或者子采樣層)。幾乎每個卷積操作后都會接一個池化操作,池化分為均值池化和最大池化,目的是為了降低卷積后特征圖像的維度。一般選擇2×2的池化尺寸,可以將卷積層的輸出矩陣的尺寸變?yōu)樵瓉淼?/4,簡化后面的運算。池化操作增加了系統(tǒng)的魯棒性,把原來的準確描述變?yōu)榱烁怕悦枋?。卷積層C3和池化層S4與卷積層C1層池化層S2類似,一個卷積層和一個池化層形成一個組合結(jié)構(gòu),卷積神經(jīng)網(wǎng)絡(luò)的隱含層中這種組合結(jié)構(gòu)重復出現(xiàn),它的多少決定了卷積神經(jīng)網(wǎng)絡(luò)的深度。把最后一層池化得到的特征圖展開成形一個一維的矩陣(全連接層),被稱為單層感知機。輸出層Output與一維矩陣進行全連接,然后經(jīng)過分類器進行分類識別。在傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)中用到的分類器是Softmax。
圖1 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
輸入的圖像經(jīng)過卷積核進行卷積得到特征圖像,加上偏置然后,傳入一個非線性函數(shù)sigmoid進行激活[14]。假設(shè)L(0≤L≤5)層有N個特征圖,卷積層的輸入是m×m的矩陣Xj,卷積核是n×n的矩陣kij,使用卷積核對輸入矩陣Xj的感受野進行步長為1的順序卷積,卷積計算公式為:
0≤L≤5,1≤j≤N
(1)
其中,XjL+1是卷積層的輸出的特征圖的矩陣,它是一個(m-n+1)×(m-n+1)的矩陣,Mj表示輸入的特征圖矩陣集合,bjL+1是卷積后所加偏置,f是一個非線性函數(shù),一般為sigmoid函數(shù)。卷積過程的輸入可以是原始的圖像,也可以是經(jīng)過池化產(chǎn)生的特征圖像。
對于降采樣層來說,輸入多少個特征圖就會輸出多少特征圖,只是每個輸入的特征圖的尺寸變小。一般的來說,輸出的特征圖大小都是成倍的減少。假設(shè)有N個特征圖,降采樣層的計算公式為:
1≤L≤5,1≤j≤N
(2)
其中,XjL是經(jīng)過降采操作的輸出特征圖,βjL是特征圖特有的乘性偏置,down(.)表示降采樣函數(shù),f是一個非線性函數(shù)。
卷積神經(jīng)網(wǎng)絡(luò)每次訓練包括2個過程,分別是前向傳播過程和反向傳播過程。前向傳播是在初始的各種參數(shù)下對圖像進行卷積和池化操作,組成全連接得出訓練的結(jié)果。反向傳播是通過求訓練結(jié)果與標簽值之間的分類殘差(即代價函數(shù)),鏈式求導得到各神經(jīng)元的敏感度,反向計算得出卷積核與權(quán)重的下降梯度,梯度與學習率相結(jié)合,從而得出權(quán)重修改量,更新各層的權(quán)重,確定新的網(wǎng)絡(luò)。
傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)的缺點是參數(shù)的調(diào)節(jié)幅度小,收斂速度慢,其原因主要是由于各層神經(jīng)元靈敏度和學習率的限制所導致的。針對該問題,本文提出局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò),改善參數(shù)調(diào)節(jié)的幅度,減少迭代次數(shù)。局部調(diào)節(jié)模型的思路是:按照對代價函數(shù)的貢獻把差異矩陣E中的元素分成關(guān)鍵元素和非關(guān)鍵元素,剔除非關(guān)鍵元素獲得矩陣E*,并根據(jù)E*設(shè)置動態(tài)學習率ξ。然后,逆向更新各層輸出Xl,確定需要大幅調(diào)節(jié)的神經(jīng)元參數(shù),迭代時參數(shù)調(diào)節(jié)只發(fā)生在需要調(diào)節(jié)的局部神經(jīng)元參數(shù)中。動態(tài)學習率和局部參數(shù)調(diào)節(jié)使網(wǎng)絡(luò)中的參數(shù)很快收斂。當大差異參數(shù)足夠小時,差異函數(shù)中的部分非關(guān)鍵因素和關(guān)鍵因素角色發(fā)生變化,繼續(xù)對相對差異性大的參數(shù)進行調(diào)節(jié)。局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)的參數(shù)調(diào)節(jié)過程如圖2所示。其中,黑點表示調(diào)節(jié)部分,白點表示非調(diào)節(jié)部分。
圖2 LACNN調(diào)節(jié)過程示意圖
局部參數(shù)調(diào)節(jié)使網(wǎng)絡(luò)的殘差快速下降到一個很小的值,能夠滿足傳統(tǒng)CNN對識別精度的要求。然而,在不改變Epoch的情況下,LACNN會繼續(xù)迭代,每一次參數(shù)的更新都會使網(wǎng)絡(luò)的實際輸出與理想輸出更接近。局部調(diào)節(jié)使整個網(wǎng)絡(luò)不斷向收斂的方向靠近,最終停留在一個比全局調(diào)節(jié)更接近極限收斂的位置,從而使整個網(wǎng)絡(luò)的識別精度有所提升,因此,局部參數(shù)調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)不僅可以節(jié)省網(wǎng)絡(luò)的收斂時間,而且對網(wǎng)絡(luò)的識別精度也有一定的提高。
H=sigmoid(Xi×Wi+bi),1≤i≤n
(3)
(4)
式(4)中差異矩陣E是網(wǎng)絡(luò)實際輸出與期望輸出之間的差值,矩陣的元素值越大代表相應的特征點的實際輸出與期望輸出差異越大,說明特征提取的效果越不理想。差異矩陣E中的元素分布并不均勻,其中少數(shù)大元素值組成了代價函數(shù)的主要部分,其他多數(shù)元素對代價函數(shù)的影響很小。這些元素在參數(shù)調(diào)節(jié)時發(fā)揮的作用也不同,小的元素對應的神經(jīng)元的參數(shù)需要的修正量很小,而其他的參數(shù)需要的修正量很大。但是為了避免代價函數(shù)的逆增長,只能選擇一個較小的學習率對參數(shù)進行修正。這種全局參數(shù)同時調(diào)節(jié)的方法限制了網(wǎng)絡(luò)在大差異性參數(shù)上的調(diào)節(jié)能力。本文根據(jù)差異矩陣中的元素對代價函數(shù)的影響不同,將其分成關(guān)鍵元素和非關(guān)鍵元素進行局部參數(shù)調(diào)節(jié)。首先對差異矩陣變形,設(shè)置元素閾值K,剔除非關(guān)鍵因素。假設(shè)差異矩陣為:
則:
1≤i≤m,1≤j≤n
(5)
式(5)中閾值的功能是保留差異矩陣E中大于K的元素值,所有不大于K值的元素全部設(shè)置為零。經(jīng)過閾值過濾后的矩陣E*中所有的元素值都大于K。矩陣E*中的元素與分類殘差直接相關(guān),其大小反映了識別的準確程度。以矩陣E*為基礎(chǔ),設(shè)置動態(tài)學習率ξ:
(6)
其中,к表示學習率變化權(quán)重,可以根據(jù)需要設(shè)置,經(jīng)實驗測試一般選在2~5較合適,p為aij(1≤i≤m,1≤j≤n)中所有不為零元素的個數(shù)。由式(6)可知,動態(tài)學習率的值總是和差異矩陣中元素值較大的那部分元素有關(guān),保證其盡可能大地調(diào)節(jié)參數(shù)。而且動態(tài)學習率是根據(jù)分類的差異性自動生成的,它并不是一成不變的,會隨著迭代的增加而變小,在迭代的后期學習率會以很小的變化調(diào)節(jié)參數(shù),防止代價函數(shù)出現(xiàn)反向增長的現(xiàn)象,因此相比設(shè)置較小的固定學習率,動態(tài)學習率更適應自動調(diào)節(jié)的需求。
在進行參數(shù)調(diào)節(jié)時,為避免前面各層神經(jīng)元節(jié)點對應參數(shù)修正過度,造成代價函數(shù)無法收斂或者震蕩收斂的現(xiàn)象,需要對各層輸出進行替換,假設(shè)有s層網(wǎng)絡(luò),第s層的輸出H由變形矩陣E*與期望輸出y相加所得:
H=E*+y
(7)
其他層輸出Xl(1≤l≤s)通過下式獲得:
Xl=Z(sigmoid-1(Xl+1))-1,1≤l≤s
(8)
式(8)中Xl是l層輸出的集合(當l=s時,Xl+1=H),Z是中間函數(shù)(Z=(Xl×Wl+bl))。這時輸出Xl中對識別殘差影響較大的神經(jīng)元得到強化,其他的被弱化或者剔除。輸出的更新確定了參數(shù)的修正需求,接著需要確定參數(shù)的修正量。確定修正量需要代價函數(shù):
(9)
J(W,b,x)是網(wǎng)絡(luò)輸出與期望輸出差值的平方,與權(quán)重和偏置的調(diào)節(jié)息息相關(guān)。根據(jù)J(W,b,x)用鏈式求導法則求偏置b和權(quán)重W的偏導,得出b和W的梯度下降方向:
1≤l≤s
(10)
1≤l≤s
(11)
(12)
(13)
注意,由于xl經(jīng)過強化或者弱化處理,這時的W和b并不都存在修正量,部分ΔW、Δb的值為0或者很小的值,只有調(diào)節(jié)需求較高的參數(shù)保持大的修正量。最后,對所有需要調(diào)節(jié)的參數(shù)進行更新:
Wl+1=Wl-ΔW
(14)
bl+1=bl-Δb
(15)
其中,Wl+1、bl+1表示迭代后的權(quán)重和偏置。至此,參數(shù)調(diào)節(jié)一次,迭代過程結(jié)束。局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)流程如圖3所示。
圖3 分步式動態(tài)卷積神經(jīng)網(wǎng)絡(luò)流程
在圖3中,Maxloop、Maxtrain分別表示最大迭代次數(shù)和樣本的最大批量,ζ是代價函數(shù)的閾值。局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)突破了固定步長的限制,運用動態(tài)學習率和局部神經(jīng)元參數(shù)更新,可以加快代價函數(shù)的收斂,在迭代前期就能達到其他深度網(wǎng)絡(luò)迭代后期才能達到的效果,變相減少了網(wǎng)絡(luò)訓練時間。
本文實驗在Matlab R2014a進行,計算機型號為Intel(R)Core(TM)i7-3610M 3.8 GHz,內(nèi)存8 GB。實驗選擇手寫數(shù)據(jù)集mnist數(shù)據(jù)庫、人臉數(shù)據(jù)集ORL和LFW、圖像分類集CIFAR-10上進行本文方法的驗證。
手寫數(shù)據(jù)集mnist包含70 000個手寫數(shù)字的圖像數(shù)據(jù),其中60 000個訓練樣本集和10 000個測試樣本集,每個圖像集都有對應的標簽,用以表示圖像所對應的數(shù)字。為了驗證改進算法的效果,選擇近年來幾種比較成功的改進CNN算法進行對照實驗,包括DAP、UCNN、S_2a_FFT,實驗中的各種CNN,統(tǒng)一設(shè)置成6C-2S-12C-2S的網(wǎng)絡(luò)結(jié)構(gòu),卷積核的大小為5×5和3×3,激勵函數(shù)選擇sigmoid,輸出層使用softmax函數(shù)把結(jié)果歸一為0~1。實驗將mnist數(shù)據(jù)集的訓練樣本集分成幾種不同的規(guī)模(10 000、30 000、50 000、60 000),以50個樣本為一個batch,參數(shù)沖量為0.9,對不同規(guī)模的訓練樣本所得的結(jié)果作對比。
圖4是不同的改進CNN在訓練中對代價函數(shù)變化的影響。根據(jù)圖4可以得出:本文算法對于代價函數(shù)的收斂改進較大,在迭代300次以后就能達到DAP在600次所達到的結(jié)果,且其圖線比UCNN和S_2a_FFT陡,說明改進以后的算法在代價函數(shù)上收斂更快。本文算法代價函數(shù)的收斂值比DAP、UCNN和S_2a_FFT代價函數(shù)圖像的收斂值更低,說明在其他算法收斂時,本文算法仍可以繼續(xù)對參數(shù)進行調(diào)節(jié)。
圖4 mnist數(shù)據(jù)集上的代價函數(shù)變化曲線
表1是各算法在不同訓練樣本量的手寫數(shù)字集下的測試識別率和時間的關(guān)系。從表1可知,本文的局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)在訓練樣本量為10 000時,識別率為46.74%,比DAP、UCNN和S_2a_FFT分別高13.62%、26.24%和27.49%,在訓練樣本量為60 000時識別率達到93.63%,比最高的DAP高出0.76%。雖然在處理速度上不如加速網(wǎng)絡(luò)結(jié)構(gòu)收斂快,但是其在識別率上的提升彌補這一不足。而且在訓練樣本量少的情況下,本文算法在識別率上的提升極為顯著。
表1 不同算法在mnist數(shù)據(jù)集上的測試識別率和識別時間
圖5和圖6表明了在達到同樣測試識別率的情況下,各算法對訓練樣本量和和時間的要求。如圖5所示,局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)在識別率上的收斂效果要比其他改進CNN更加明顯。在識別率為80%時算法所需最少訓練樣本量實驗中,局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)要比UCNN和S_2a_FFT少12 000個訓練樣本左右,在識別率為88%時可以節(jié)省20 000個訓練樣本左右。說明在同樣的識別要求下,局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)需要的訓練樣本更少,因此,可以減少網(wǎng)絡(luò)的運算量,節(jié)省時間。圖6表示在相同的識別率下不同算法所需要的最少時間。從圖6可知,本文算法在進行識別時達到相應的識別率所用的時間比另外3種改進方案明顯減少。
圖5 訓練樣本量和識別率關(guān)系
圖6 識別率和耗時關(guān)系
人臉識別數(shù)據(jù)集是由劍橋大學拍攝的由一系列人臉圖像組成的數(shù)據(jù)集合,共有400幅人臉圖像,包括40位不同年齡和種族的人,每人10幅,大小為112×92像素。ORL是目前人臉識別中使用最廣泛的人臉數(shù)據(jù)集之一,其大多數(shù)圖像的光照方向和強度相差不大,只有少許的表情姿勢伸縮的變化。ORL人臉庫的部分圖像如圖7所示。
圖7 ORL人臉數(shù)據(jù)集的部分面部圖像
將ORL數(shù)據(jù)庫中40人的圖像每人抽出5幅作為訓練集,5幅作為測試集,這樣就會有200張訓練樣本和200張測試樣本。實驗時需要對人臉圖像額外增加相應的標簽矩陣用以表明圖像的類別。實驗中把數(shù)據(jù)集中的人臉圖像縮小成48×48像素大小的矩陣,輸入卷積神經(jīng)網(wǎng)絡(luò)。由于人臉的復雜度比手寫數(shù)字要高,所有參與實驗的CNN網(wǎng)絡(luò)結(jié)構(gòu)均為10C-2S-25C-2S-40C-2S,10個樣本為一個batch,參數(shù)沖量為0.9。實驗結(jié)果如圖8所示。
圖8 ORL數(shù)據(jù)集上的代價函數(shù)變化曲線
圖8表示不同的算法在ORL上訓練時代價函數(shù)變化情況,它反映了各種算法在參數(shù)調(diào)節(jié)時對代價函數(shù)的改變過程。從圖8可知,與S_2a_FFT、DAP和CCNN相比,本文算法代價函數(shù)的收斂值依然保持最小,而且相對于迭代后期,本文算法在樣本量較少時對代價函數(shù)收斂性的提升更加明顯。
為了進一步探究幾種算法在人臉數(shù)據(jù)庫上有關(guān)識別率和相應耗時的關(guān)系,對算法進行不同Epoch下的識別率和耗時實驗。
由表2可知,隨著迭代次數(shù)的增加,4種算法的識別率都有不同層次的增加,本文的局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)在Epoch為10時識別率已達到89.16%,比其他算法達到相同識別率所需要的Epoch更少,說明其收斂的速度比其他網(wǎng)絡(luò)更快。在Epoch為100時,本文算法的識別率在4種算法中僅比CCNN少,相差0.12%。但從耗時上來看,局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)比CCNN節(jié)省60.97 s,相當于節(jié)省23.55%。S_2a_FFT在運算時間上有所改進,但是其識別率在相同的條件下是最低的。DAP兼顧耗時和識別率,取S_2a_FFT和CCNN的折中,但是和本文算法相比仍有差距。
表2 不同算法在ORL數(shù)據(jù)集上的識別率和識別時間
為了證明算法的適用性,本文又選擇2種比較常見的圖像數(shù)據(jù)集CIFAR-10和LFW對算法進行實驗。CIFAR-10包含10種物體的60 000幅圖像,其中,50 000幅訓練數(shù)據(jù),10 000幅測試數(shù)據(jù)。LFW包含5 749人的13 233幅帶標簽的人臉圖像。CIFAR-10和LFW都是圖像識別中最常用的幾個數(shù)據(jù)集,作為實驗數(shù)據(jù)很有必要。CIFAR-10和LFW數(shù)據(jù)集中的圖像都是彩色的,實驗時要先轉(zhuǎn)化成灰度圖像。為了驗證算法在相同識別率下耗時上的優(yōu)勢,統(tǒng)計算法在達到相同訓練識別率的基礎(chǔ)上,所需最少樣本的訓練時間,即在CIFAR-10上所有算法達到識別率接近90.00%(±0.05%)的最少時間和在LFW上達到87.00%(±0.05%)的時間。
從表3和表4中可知,在CIFAR-10識別率達到90.00%(±0.05%)時,本文算法所用最短時間為343.57 s,分別比Bocw-Net、CCNN和RCNN少247.08 s、130.39 s和129.26 s,相比于Bocw-Net節(jié)省了41.83%的時間。同樣地在LFW上識別率達到87.00%(±0.05%)時,本文算法用時也是最少的,分別比Bocw-Net、CCNN和RCNN少77.96 s、59.58 s和24.39 s。由實驗可知,局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)主要是通過調(diào)節(jié)參數(shù)更新時的修正量,使參數(shù)能夠快速收斂,在少量的迭代下就能達到多次迭代的效果,變相地節(jié)省了訓練的運算時間。
表3 各算法在CIFAR-10和LFW上的識別率 %
表4各算法在CIFAR-10上達到90%(±0.05%)和LFW上達到87%(±0.05%)的最短時間s
數(shù)據(jù)集Bocw-Net算法CCNN算法RCNN算法本文算法CIFAR-10590.65473.96472.83343.57LFW287.73269.35234.16209.77
本文通過分析傳統(tǒng)改進卷積神經(jīng)網(wǎng)絡(luò)在圖像分類識別中參數(shù)調(diào)節(jié)慢、迭代次數(shù)多、訓練時間長等問題,提出一種能夠提高參數(shù)調(diào)節(jié)幅度、加快網(wǎng)絡(luò)收斂的改進卷積神經(jīng)網(wǎng)絡(luò)方法。通過設(shè)置動態(tài)學習率和局部參數(shù)調(diào)節(jié)等方式實現(xiàn)了參數(shù)的快速調(diào)節(jié)。在mnist、ORL、CIFAR-10和LFW上的實驗結(jié)果證明,局部調(diào)節(jié)卷積神經(jīng)網(wǎng)絡(luò)可以快速地降低網(wǎng)絡(luò)的殘差值,在達到相同的訓練識別率時所需的迭代次數(shù)更少,節(jié)省了訓練時間。