唐賢倫,劉 慶,張 娜,周家林
(重慶郵電大學(xué)工業(yè)物聯(lián)網(wǎng)與網(wǎng)絡(luò)化控制教育部重點(diǎn)實(shí)驗(yàn)室 重慶 南岸區(qū) 400065)
深度學(xué)習(xí)可以自動(dòng)提取特征并將特征進(jìn)行分類(lèi),因此得以廣泛應(yīng)用[1-3]。作為深度學(xué)習(xí)方法之一的卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks, CNNs),在視頻人體動(dòng)作識(shí)別[4]等領(lǐng)域已得到成功應(yīng)用。
文獻(xiàn)[5]把卷積神經(jīng)網(wǎng)絡(luò)第一次成功應(yīng)用在手寫(xiě)字符識(shí)別領(lǐng)域。在特征圖連接問(wèn)題上,傳統(tǒng)CNNs第一降采樣層與第二卷積層之間特征圖全連接,對(duì)于經(jīng)典的LeNet[6]結(jié)構(gòu),第一降樣層和第二卷積層之間特征圖連接也是由人為經(jīng)驗(yàn)決定的特定連接。雖然利用粒子群優(yōu)化算法[7]和遺傳算法等智能算法[8]訓(xùn)練相對(duì)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)已經(jīng)取得了很好的結(jié)果,把粒子群應(yīng)用到光學(xué)字符識(shí)別應(yīng)用中也取得了顯著成效[9],但是這些算法訓(xùn)練的網(wǎng)絡(luò)特征圖之間都是經(jīng)驗(yàn)指導(dǎo)的固定連接結(jié)構(gòu),而全連接結(jié)構(gòu)使得連接數(shù)量過(guò)多,降低網(wǎng)絡(luò)的運(yùn)算速率,同時(shí)全連接結(jié)構(gòu)使得網(wǎng)絡(luò)結(jié)構(gòu)對(duì)稱(chēng),不利于提取不同的特征;而特定的連接結(jié)構(gòu)又受到經(jīng)驗(yàn)的影響,不能普遍適用。
本文提出一種將粒子群優(yōu)化卷積網(wǎng)絡(luò)參數(shù)和離散粒子群優(yōu)化[10]卷積神經(jīng)網(wǎng)絡(luò)特征圖連接結(jié)構(gòu)相結(jié)合的新方法,使用粒子群預(yù)訓(xùn)練參數(shù),并使用離散粒子群優(yōu)化第一采樣層和第二卷積層特征圖之間結(jié)構(gòu)連接,使得網(wǎng)絡(luò)在非經(jīng)驗(yàn)指導(dǎo)下自動(dòng)尋得最優(yōu)連接。網(wǎng)絡(luò)結(jié)構(gòu)在傳統(tǒng)結(jié)構(gòu)基礎(chǔ)上增加一個(gè)全連接層,非線(xiàn)性函數(shù)采用指數(shù)激活單元(exponential linear unit, ELU)[11],實(shí)驗(yàn)證明,將經(jīng)過(guò)參數(shù)和結(jié)構(gòu)優(yōu)化后的網(wǎng)絡(luò)應(yīng)用到手寫(xiě)數(shù)字識(shí)別應(yīng)用中可以達(dá)到較理想的識(shí)別效果。
權(quán)值共享、局域感受野和降采樣是卷積神經(jīng)網(wǎng)絡(luò)的三大特征,可以實(shí)現(xiàn)識(shí)別圖像的縮放、位移和扭曲不變性。圖1為本文構(gòu)建網(wǎng)絡(luò)。
圖1 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
本文采用非線(xiàn)性激活函數(shù)指數(shù)激活單元(exponential linear unit, ELU)[11]來(lái)加速深度網(wǎng)絡(luò)學(xué)習(xí)并提高分類(lèi)識(shí)別率。跟修正線(xiàn)性單元(rectified linear units, ReLUs)[12]相似,ELU激活函數(shù)同樣可以取得正值來(lái)避免梯度消失。與ReLUs激活函數(shù)不同的是,ELU激活函數(shù)可以取得負(fù)值使得平均單元激活值接近于零。ELU非線(xiàn)性函數(shù)的表達(dá)式為:
式中,超參數(shù)α控制值使當(dāng)網(wǎng)絡(luò)輸入為負(fù)值時(shí)輸出也為負(fù)值,α>0。
本文采用粒子群優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)參數(shù),和離散粒子群優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)特征圖之間的連接結(jié)構(gòu),用BP對(duì)該網(wǎng)絡(luò)微調(diào)參數(shù)。
粒子群算法(particle swarm optimization, PSO)通過(guò)隨機(jī)初始化一群粒子,并根據(jù)法則更新其速度和位置,最終找到最優(yōu)解。首先對(duì)粒子群進(jìn)行初始化[13]:
式中,Ui(0)、Umax以及Umin分別表示粒子向量初速度、速度上限及下限;Xi(0)表示粒子的初始位置;RS表示元素為(-1,1)的隨機(jī)向量,向量的維數(shù)與Xi(0)相同;G是待優(yōu)化參數(shù)之前經(jīng)驗(yàn)值組成的向量;r是(0,1)范圍內(nèi)隨機(jī)值。速度及位置更新公式為:
式中,c1和c2為加速因子,為正常數(shù);r1和r2為(0,1)范圍內(nèi)的隨機(jī)數(shù);w為慣性因子。
慣性因子是粒子保持飛行速度的系數(shù),本文采用非線(xiàn)性化調(diào)整策略對(duì)慣性因子進(jìn)行改進(jìn),即:
式中,wmax、wmin分別為最大、最小慣性因子;i、Maxgin是當(dāng)前的及最大的迭代次數(shù)。
離散粒子群優(yōu)化算法(discrete particle swarm optimization, D-PSO)和PSO幾乎相似,有以下不同。位置的初始化方式為:
式中,函數(shù)Y=F(X)定義為:RS表示元素為(-1,1)的隨機(jī)向量,向量的維數(shù)與Xi(0)相同;G表示S2與C3層之間的特征圖連接結(jié)構(gòu)為全連接的向量。
位置更新公式為:
其中非線(xiàn)性函數(shù)為sigmoid函數(shù):
式中,xij(t)表示粒子i在時(shí)間t第j個(gè)位置;uij(t)為對(duì)應(yīng)速度;rij(t)為(0,1)之間隨機(jī)數(shù)。其中uij(t)要設(shè)定一個(gè)上下限,保證f(uij(t))值不能太靠近0或1。
算法的基本流程如下。
1)在S2層和C3層間用全連接方式的情況下,用PSO優(yōu)化參數(shù)。
① 初始粒子群相關(guān)參數(shù);根據(jù)式(3)、式(4)初始化各粒子參數(shù)變量速度及位置,其中式(4)中的G表示按照經(jīng)驗(yàn)值初始化卷積神經(jīng)網(wǎng)絡(luò)時(shí)的網(wǎng)絡(luò)權(quán)值向量,由卷積核、連接層權(quán)值及偏置等參數(shù)組成;把位置轉(zhuǎn)換成網(wǎng)絡(luò)參數(shù)形式,并把均方差作為適應(yīng)度值。
② 對(duì)所有粒子執(zhí)行如下操作:
a.根據(jù)式(5)和式(6)更新粒子的速度和位置;
b.計(jì)算粒子適應(yīng)度,若得到的適應(yīng)度值優(yōu)于個(gè)體極值,則將個(gè)體極值位置向量設(shè)成當(dāng)前位置向量;
c.若粒子適應(yīng)度優(yōu)于全局最優(yōu),就把全局最優(yōu)位置設(shè)成當(dāng)前位置;
d.如果滿(mǎn)足停止條件,全局極值位置即為所求變量值,并停止搜索;否則,返回步驟②繼續(xù)搜索;
2)用D-PSO優(yōu)化特征圖連接結(jié)構(gòu)。
① 初始化D-PSO相關(guān)參數(shù);根據(jù)式(3)隨機(jī)初始化速度和由式(7)初始化位置;對(duì)每個(gè)粒子,將粒子的位置變量轉(zhuǎn)換成特征圖連接結(jié)構(gòu)的形式,計(jì)算粒子的適應(yīng)度值。
② 對(duì)所有粒子執(zhí)行如下操作:
a.根據(jù)式(5)和式(8)更新粒子的速度和位置;
b.計(jì)算適應(yīng)度,若得到的適應(yīng)度優(yōu)于個(gè)體最優(yōu)值,就將個(gè)體最優(yōu)值位置設(shè)成當(dāng)前位置;
c.若粒子適應(yīng)度優(yōu)于全局最優(yōu)值,就將全局最優(yōu)值位置設(shè)成當(dāng)前位置;
d.如果達(dá)到停止要求,立即停止循環(huán),全局極值位置為所求變量值;否則,返回步驟②繼續(xù)搜索。
3)先將PSO尋得的全局最優(yōu)位置轉(zhuǎn)換為網(wǎng)絡(luò)權(quán)值的形式初始化卷積神經(jīng)網(wǎng)絡(luò)參數(shù),在此基礎(chǔ)之上再用D-PSO尋得的全局最優(yōu)位置轉(zhuǎn)換為特征圖的連接結(jié)構(gòu),最后用BP算法微調(diào)混合PSO訓(xùn)練后的網(wǎng)絡(luò)參數(shù)。
在MNIST及CIFAR-10數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)分析。為了避免隨機(jī)性和不穩(wěn)定性,實(shí)驗(yàn)均進(jìn)行了10次重復(fù),最后取均值作為最終結(jié)果。實(shí)驗(yàn)用的電腦處理器是Intel(R)Core(TM)i5-3470 CPU @3.20 GHz,安裝內(nèi)存(RAM)為8.00 GB,64位的Windows 7操作系統(tǒng),沒(méi)有采用GUP進(jìn)行并行計(jì)算。
MNIST手寫(xiě)數(shù)字?jǐn)?shù)據(jù)集包含60 000個(gè)訓(xùn)練樣本,10 000個(gè)測(cè)試樣本,共10類(lèi),圖像為灰度圖像。
3種網(wǎng)絡(luò)結(jié)構(gòu)與圖1類(lèi)似,但缺少F5全連接層,其中S2與C3層之間特征圖為全連接方式,使用不同的非線(xiàn)性函數(shù)。CNN-S使用常用的Sigmoid函數(shù),CNN-ReL使用ReLUs,CNN-ELU使用ELU。網(wǎng)絡(luò)樣本分批訓(xùn)練,每個(gè)批次50個(gè)樣本。
圖2及表1表明,相同的結(jié)構(gòu)和訓(xùn)練樣本時(shí),CNN-ELU網(wǎng)絡(luò)收斂速度及識(shí)別率都優(yōu)于其余二者。網(wǎng)絡(luò)為Sigmoid函數(shù)時(shí),訓(xùn)練速度緩慢,易陷入過(guò)擬合;而ReLUs函數(shù)相比Sigmoid函數(shù)具有單側(cè)抑制性及稀疏激活性;與ReLUs函數(shù)相似,ELU函數(shù)同樣可以取得正值來(lái)避免梯度消失并能取負(fù)值以使平均單元激活值接近零,提高學(xué)習(xí)速度。本文方法采用ELU非線(xiàn)性激活函數(shù),加速了網(wǎng)絡(luò)收斂。
圖2 采用不同非線(xiàn)性函數(shù)各網(wǎng)絡(luò)結(jié)構(gòu)誤差收斂狀況對(duì)比
表1 采用不同非線(xiàn)性函數(shù)各網(wǎng)絡(luò)結(jié)構(gòu)錯(cuò)誤率對(duì)比 %
實(shí)驗(yàn)中CNN-1網(wǎng)絡(luò)為S2與C3層全連接;CNN-2網(wǎng)絡(luò)的S2層與C3層特征圖連接結(jié)構(gòu)為經(jīng)驗(yàn)連接;CNN-3網(wǎng)絡(luò)的S2與C3層結(jié)構(gòu)為隨意連接;CNN-DPSO網(wǎng)絡(luò)S2層與C3層特征圖之間連接結(jié)構(gòu)由離散粒子群優(yōu)化過(guò)后得到。離散粒子群的粒子數(shù)為20個(gè),c1=c2=1.494,wmax=0.9,wmin=0.2,迭代20次。本文采用ELU函數(shù),由表1可以看出采用ELU的網(wǎng)絡(luò),迭代次數(shù)超過(guò)10次,圖像識(shí)別率的提高并不明顯,故后面所有實(shí)驗(yàn)均最多迭代10次。10次迭代后,CNN-3、CNN-2、CNN-1、CNN-DPSO這4種結(jié)構(gòu)的網(wǎng)絡(luò)誤識(shí)別率分別為1.37%、1.36%、1.28%、1.20%。
由于S2與C3層特征圖之間為全連接時(shí),使得連接數(shù)量過(guò)多,降低網(wǎng)絡(luò)的運(yùn)算速率;而固定連接結(jié)構(gòu)受到經(jīng)驗(yàn)的影響,不能普遍適用。離散粒子群算法在無(wú)經(jīng)驗(yàn)指導(dǎo)的情況下智能優(yōu)化S2與C3層特征圖之間的連接,可以消除冗余連接,從而提高了效率。因此采用DPSO優(yōu)化后的網(wǎng)絡(luò)使識(shí)別率高于其他連接結(jié)構(gòu)的網(wǎng)絡(luò)。證明了將DPSO用來(lái)優(yōu)化特征圖連接能夠使卷積神經(jīng)網(wǎng)絡(luò)在無(wú)經(jīng)驗(yàn)指導(dǎo)下獲得較好的識(shí)別效果。
實(shí)驗(yàn)中NN表示神經(jīng)網(wǎng)絡(luò);DBN表示深度信念網(wǎng)絡(luò);CNN-ELU網(wǎng)絡(luò)結(jié)構(gòu)與3.1.1節(jié)中描述相同;CNN-F網(wǎng)絡(luò)如圖1,用反向傳播算法訓(xùn)練;CNN-F-PSO網(wǎng)絡(luò)結(jié)構(gòu)與CNN-F相同,用PSO訓(xùn)練網(wǎng)絡(luò)。CNN-F-HPSO網(wǎng)絡(luò)采用混合PSO訓(xùn)練網(wǎng)絡(luò)。
由表2和表3可以看出,卷積神經(jīng)網(wǎng)絡(luò)效果普遍優(yōu)于NN和DBN網(wǎng)絡(luò),說(shuō)明CNN結(jié)構(gòu)更適合用于提取二維圖像特征。本文采用混合PSO優(yōu)化參數(shù)及特征圖間的連接防止網(wǎng)絡(luò)過(guò)早陷入局部最優(yōu),并有效利用特征圖間的信息,使得在相同的迭代次數(shù)時(shí),本文算法識(shí)別率略高于其他算法。在達(dá)到幾乎相同甚至更高的識(shí)別率時(shí),本文方法較傳統(tǒng)CNN方法需要更少運(yùn)行時(shí)間,從而表明本文方法的可行性。
表2 不同訓(xùn)練方法不同訓(xùn)練次數(shù)的誤識(shí)別率對(duì)比 %
表3 傳統(tǒng)CNN方法與本文方法識(shí)別錯(cuò)誤率與消耗時(shí)間對(duì)比
表4 各種方法誤識(shí)率對(duì)比
表4中其他方法是國(guó)內(nèi)外學(xué)者在MNIST數(shù)據(jù)集上的研究成果[14]。由表4可知,本文方法優(yōu)于上述傳統(tǒng)方法,但也不是最優(yōu)方法,因?yàn)橄鄬?duì)于其他卷積網(wǎng)絡(luò),本文方法網(wǎng)絡(luò)較淺,特征圖數(shù)較少,且沒(méi)有對(duì)圖像進(jìn)行移動(dòng)、縮放、傾斜、壓縮等人為的扭曲變形預(yù)處理,也沒(méi)有進(jìn)行去斜處理和寬度歸一化處理。但本文方法加速了網(wǎng)絡(luò)收斂,相對(duì)上述傳統(tǒng)方法,提高了識(shí)別率,證明該方法的可行性。
CIFAR-10數(shù)據(jù)集包含10類(lèi)彩色圖像,其中有50 000個(gè)訓(xùn)練樣本,10 000個(gè)測(cè)試樣本。簡(jiǎn)單地對(duì)CIFAR-10進(jìn)行灰度化等預(yù)處理操作后,稱(chēng)之為CIFAR-10- gray。數(shù)據(jù)的預(yù)處理方式與文獻(xiàn)[15]的相同,即先灰度化,再均值方差歸一化,然后白化處理;網(wǎng)絡(luò)迭代訓(xùn)練次數(shù)同樣是50次。網(wǎng)絡(luò)結(jié)構(gòu)設(shè)置8C-8S-16C-16S-240F也與文獻(xiàn)[15]中的3種結(jié)構(gòu)相同。本文將文獻(xiàn)[15]中的3種網(wǎng)絡(luò)結(jié)構(gòu)稱(chēng)為CNN-1、CNN-2、CNN-3網(wǎng)絡(luò),它們的激活函數(shù)均用ReLUs-Softplus[15],池化方式分別為最大池化、隨機(jī)池化、概率加權(quán)池化。結(jié)果對(duì)比如表5所示。
表5 不同方法的誤識(shí)率對(duì)比 %
由于只對(duì)數(shù)據(jù)集進(jìn)行灰度化預(yù)處理,并且灰度化也會(huì)損失一些重要特征,從表5可知文中方法并沒(méi)有達(dá)到非常好的效果,但仍略微優(yōu)于文獻(xiàn)[15]中的CNN-1、CNN-2、CNN-3網(wǎng)絡(luò)的識(shí)別效果,證明了本文方法不僅在MNIST數(shù)據(jù)集上有較好的識(shí)別效果,應(yīng)用于CIFAR-10數(shù)據(jù)集上也是有效可行的。
基于混合PSO的卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練方法與其他方法相比提高了訓(xùn)練效率,并在訓(xùn)練時(shí)間接近時(shí),網(wǎng)絡(luò)識(shí)別率得到提高;達(dá)到同樣的識(shí)別效果,本文方法收斂需要的訓(xùn)練次數(shù)較少。因此本文方法加速了誤差收斂,只需少量次數(shù)迭代訓(xùn)練網(wǎng)絡(luò)就能達(dá)到甚至優(yōu)于其他傳統(tǒng)方法的識(shí)別效果。雖然優(yōu)化結(jié)構(gòu)和參數(shù)時(shí)增加了訓(xùn)練復(fù)雜度,但經(jīng)優(yōu)化后的網(wǎng)絡(luò)提高了信息處理效率,因此比較適合識(shí)別大規(guī)模數(shù)據(jù)。
[1]LECUN Y, BENGIO Y, HINTON G.Deep learning[J].Nature, 2015, 215: 436-444.
[2]戴曉愛(ài), 郭守恒, 任淯, 等.基于堆棧式稀疏自編碼器的高光譜影像分類(lèi)[J].電子科技大學(xué)學(xué)報(bào), 2016, 45(3):382-386.DAI Xiao-ai, GUO Shou-heng, REN Yu, et al.Hyperspectral remote sensing image classification using the stacked sparse autoencoder[J].Journal of University of Electronic Science and Technology of China, 2016, 45(3): 382-386.
[3]ARORA C, SABETZADEH M, BRIAND L, et al.Automated checking of conformance to requirements templates using natural language processing[J].IEEE Transactions on Software Engineering, 2015, 41(10):944-968.
[4]ZHANG Zhong, WANG Chun-heng , XIAO Bai-hua, et al.Cross-view action recognition using contextual maximum margin clustering[J].IEEE Transactions on Circuits and Systems for Video Technology, 2014, 24(10): 1663-1668.
[5]LECUN Y, BOSER B, DENKER J S, et al.Backpropagation applied to handwritten zip code recognition[J].Neural Computation, 1989, 1(4): 541-551.
[6]LECUN Y, BOTTOU L, BENGIO Y, et al.Gradient-based learning applied to document recognition[J].Proceedings of the IEEE, 1998, 86(11): 2278-2324.
[7]YUAN Q, YIN G.Analyzing convergence and rates of convergence of particle swarm optimization algorithms using stochastic approximation methods[J].IEEE Transactions on Automatic Control, 2015, 60(7): 1760-1773.
[8]OULLRTTE R, BROWNE M, HIRASAWA K.Genetic algorithm optimization of a convolutional neuralnetwork for autonomous crack detection[C]//Congress on Evolutionary Computation.Portland: IEEE, 2004, 1: 516-521.
[9]FEDOROVICI L O, PRECUP R E, DRAGAN F, et al.Evolutionary optimization-based training of convolutional neural networks for OCR applications[C]//2013 17th International Conference on System Theory, Control and Computing (ICSTCC).Sinaia: IEEE, 2013: 207-212.
[10]LIU Dong, JIANG Qi-long, CHEN J X. Binary inheritance learning particle swarm optimisation and its application in thinned antenna array synthesis with the minimum sidelobe level[J].IET Microwaves, Antennas & Propagation, 2015,9(13): 1386-1391.
[11]CLEVERT D A, UNTERTHINER T, HOCHREITER S.Fast and accurate deep network learning by exponential linear units (ELUs)[C]//International Conference on Learning Representations.San Juan: Computer Science,2016: arXiv:1511.07289.
[12]XIONG Shi-fu, WU Guo, LIU Di-yuan.The Vietnamese speech recognition based on rectified linear units deep neural network and spoken term detection system combination[C]//9th International Symposium on Chinese Spoken Language Processing (ISCSLP).Singapore: IEEE,2014: 183-186.
[13]LI Y H, ZHAN Z H, LIN S J, et al.Competitive and cooperative particle swarm optimization with information sharing mechanism for global optimization problems[J].Information Sciences, 2015, 293: 370-382.
[14]LECUN Y, CORTES C, BURGES C J C.The MNIST database of handwritten digits[EB/OL].[2016-07-12].http://yann.lecun.com/exdb/mnist/.
[15]余萍, 趙繼生, 張潔.基于非線(xiàn)性修正函數(shù)的卷積神經(jīng)網(wǎng)絡(luò)圖像識(shí)別研究[J].科學(xué)技術(shù)與工程, 2015, 15(34):221-225.YU Ping, ZHAO Ji-sheng, ZHANG Jie.Image recognition of convolutional neural networks based on rectified nonlinear units function[J].Science Technology and Engineering, 2015, 15(34): 221-225.