馬建宇 孟祥 趙瑩
摘要:針對(duì)傳統(tǒng)手寫體數(shù)字識(shí)別精度不高的問(wèn)題,本文設(shè)計(jì)了一種基于脈沖神經(jīng)神經(jīng)網(wǎng)絡(luò)的手寫體數(shù)字識(shí)別算法。該算法首先對(duì)輸入的手寫體數(shù)字進(jìn)行預(yù)處理,然后提取手寫體數(shù)字的二值圖像輪廓和筆畫次序等結(jié)構(gòu)特征,最后根據(jù)脈沖神經(jīng)網(wǎng)絡(luò)模型分類,預(yù)測(cè)測(cè)試集合樣本。該算法在MNIST字體庫(kù)里的數(shù)據(jù)進(jìn)行實(shí)驗(yàn),精度可達(dá)98.7%,優(yōu)于其它識(shí)別算法。
關(guān)鍵詞:手寫體數(shù)字識(shí)別;預(yù)處理;脈沖神經(jīng)網(wǎng)絡(luò)
中圖分類號(hào):TP391.41;TP183 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2019)05-0081-01
0 引言
手寫體數(shù)字識(shí)別屬于模式識(shí)別問(wèn)題,在金融、財(cái)稅和數(shù)據(jù)識(shí)別領(lǐng)域有著廣泛的應(yīng)用。手寫體數(shù)字識(shí)中最重要的部分是手寫體數(shù)字圖像識(shí)別時(shí)的特征提取,而脈沖神經(jīng)網(wǎng)路具有較好的圖像特征提取能力[1-4],因此應(yīng)用該算法可以使手寫體數(shù)字識(shí)別精度得到很大的提高,實(shí)驗(yàn)結(jié)果表明,精度可達(dá)到98.7%,明顯優(yōu)于其它算法。
1 手寫體數(shù)字識(shí)別流程
手寫體數(shù)字識(shí)別流程如圖1所示。
1.1 脈沖神經(jīng)網(wǎng)絡(luò)
這個(gè)模型表示一個(gè)神經(jīng)元的電位[5],膜電位V(t)由微分方程演化為:
當(dāng)V(t)≥VT,一個(gè)脈沖被發(fā)出并傳送到下游的突觸,在脈沖后,膜電位被重置為其靜態(tài)值,我們?cè)诜抡鏁r(shí)設(shè)EL=-70mv,VT=20mv,C=300pF,gL=30nS。生物神經(jīng)元在一個(gè)脈沖發(fā)出后立即進(jìn)入一個(gè)不應(yīng)期,在此期間另一個(gè)脈沖不能發(fā)出。我們通過(guò)將膜電位保持在V(t)=EL的短時(shí)間內(nèi),在產(chǎn)生一個(gè)尖峰后,tref=3ms來(lái)實(shí)現(xiàn)這一點(diǎn)。我們還通過(guò)剪切將膜電位限制在[EL,VT]范圍內(nèi)。到達(dá)突觸的脈沖的權(quán)值為w,將在其下游神經(jīng)元產(chǎn)生后突觸電流(Isyn(t)),表達(dá)式如下[6]:
這里,ti表示第i個(gè)到達(dá)的脈沖的時(shí)間;*是卷積運(yùn)算符號(hào);變量 τ1 =5msand,τ2=1.25ms分別表示c(t)的下降和上升時(shí)間常數(shù)。
1.2 網(wǎng)絡(luò)結(jié)構(gòu)
我們建立的脈沖神經(jīng)網(wǎng)絡(luò)模型包括三層[7],即輸入層、卷積層和輸出層,結(jié)構(gòu)如圖2所示。由于MNIST圖像為28×28像素,我們的網(wǎng)絡(luò)輸入層有784個(gè)神經(jīng)元,輸出層有10個(gè)神經(jīng)元,每個(gè)神經(jīng)元對(duì)應(yīng)一個(gè)特定的數(shù)字。輸入層神經(jīng)元通過(guò)12個(gè)事先固定的3×3大小的卷積核與8112個(gè)隱層神經(jīng)元連接。連接這個(gè)隱藏層和輸出層的突觸使用NormAD算法[8]進(jìn)行訓(xùn)練。
2 結(jié)果與分析
本文采用MNIST數(shù)據(jù)集里的50000張手寫體數(shù)字做訓(xùn)練,選擇5000張做測(cè)試實(shí)驗(yàn),得測(cè)試結(jié)果如表1所示,從表中數(shù)據(jù)可以看出,本文提出的算法的手寫體數(shù)字的識(shí)別精度優(yōu)于其它三種算法。
3 結(jié)語(yǔ)
本文提出了一種用于手寫數(shù)字識(shí)別的高度緊湊、高效的三層脈沖神經(jīng)網(wǎng)絡(luò),該神經(jīng)網(wǎng)絡(luò)對(duì)MNIST數(shù)據(jù)集的正確率達(dá)到98.7%。網(wǎng)絡(luò)中的所有信息都以稀疏的生物峰速率在峰域內(nèi)編碼和處理。我們的研究表明,與簡(jiǎn)單的速率編碼方法相比[4],使用脈沖精確時(shí)間進(jìn)行分類具有較好的準(zhǔn)確性。
參考文獻(xiàn)
[1] 朱書眉.基于卷積神經(jīng)網(wǎng)絡(luò)的手寫體數(shù)字識(shí)別[J].數(shù)字技術(shù)與應(yīng)用,2018,36(11):44-46.
[2] Shruti R. Kulkarni. Spiking neural networks for handwritten digit recognition—Supervised learning and network optimization[J]. Neural networks,2018(103):118-127.
[3] 高諾.采用卷積神經(jīng)網(wǎng)絡(luò)的數(shù)字手寫體識(shí)別的研究[J].齊魯工業(yè)大學(xué)學(xué)報(bào),2018,32(5)45-49.
[4] 馬媛媛.卷積神經(jīng)網(wǎng)絡(luò)及其在手寫體數(shù)字識(shí)別中的應(yīng)用[J].湖北工程學(xué)院學(xué)報(bào),2017,37(6):66-72.
[5] 辛平.三相電流型PWM整流器的能量成型控制[J].煤礦機(jī)械,2016,37(8):132-134.
[6] 劉德君.基于能量成型的雙足機(jī)器人解耦控制[J].控制與決策,2012,27(12):1890-1892.
[7] 曲萍萍.一種有效的組合電路測(cè)試生成算法[J].機(jī)床與液壓,2018,46(18):100-103.
[8] 周振雄.精密六自由度平面懸浮平臺(tái)懸浮位置控制[J].機(jī)床與液壓,2018,46(24):125-127.