焦微微,巴力登
(新疆大學(xué) 電氣工程學(xué)院,新疆 烏魯木齊 830047)
近些年來,脫機(jī)文字識別在網(wǎng)絡(luò)安全(驗(yàn)證碼識別)、智能交通管理系統(tǒng)(車牌識別)等社會生活的各個領(lǐng)域發(fā)揮著重要作用。在文字識別的探索和研究過程中,學(xué)者和專家已經(jīng)提出了許多有效的識別方法,例如模板匹配法、隱馬爾科夫模型(HMM)、支持向量機(jī)(SVM)、神經(jīng)網(wǎng)絡(luò)法[1-4]等等。在這些方法中,神經(jīng)網(wǎng)絡(luò)具有很強(qiáng)的學(xué)習(xí)性和自適應(yīng)性,而且具有其他傳統(tǒng)方法不具有的并行處理能力[5]、容錯能力和自學(xué)習(xí)功能,因此其在自動化控制、模式識別等領(lǐng)域已經(jīng)實(shí)現(xiàn)應(yīng)用并取得較好的效果。但是在實(shí)際應(yīng)用中傳統(tǒng)神經(jīng)網(wǎng)絡(luò)存在局部最優(yōu)點(diǎn)、過擬合等現(xiàn)象,對其在文字識別中的應(yīng)用造成一定的限制。
本文通過對現(xiàn)有各種文字分類系統(tǒng)深入研究,針對標(biāo)準(zhǔn)BP算法存在局部最優(yōu)解、訓(xùn)練時(shí)間長、收斂速度慢等缺點(diǎn),利用Levenberg-Marquardt(LM)算法對神經(jīng)網(wǎng)絡(luò)模型進(jìn)行優(yōu)化,并通過對手寫數(shù)字和手寫漢字的識別來驗(yàn)證該方法的有效性和可行性。
標(biāo)準(zhǔn)BP算法理論上講雖然具有逼近任意非線性連續(xù)映射的能力。但是在實(shí)際應(yīng)用中容易出現(xiàn)訓(xùn)練時(shí)間長、收斂速度慢、往往收斂于局部極小點(diǎn)等缺陷。所以在實(shí)踐過程中基本上都要對標(biāo)準(zhǔn)BP網(wǎng)絡(luò)進(jìn)行改進(jìn)。目前,改善標(biāo)準(zhǔn)BP網(wǎng)絡(luò)性能的方法主要有以下兩類[6]:第一,采用啟發(fā)式信息技術(shù),如加入動量項(xiàng)、采用自適應(yīng)學(xué)習(xí)率;第二,采用數(shù)值優(yōu)化技術(shù),如牛頓法、共軛梯度法、Levenberg-Marquardt[7](LM)法。采用第一類方法雖然在一定程度上可以改進(jìn)標(biāo)準(zhǔn)BP網(wǎng)絡(luò),但是卻會出現(xiàn)訓(xùn)練速度慢和訓(xùn)練誤差輸出較大的問題。所以本文運(yùn)用數(shù)值優(yōu)化技術(shù)中的LM算法對標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行改進(jìn)。
LM算法是梯度下降法與Newton法的結(jié)合,也可以稱為是Newton法的改進(jìn)形式。LM算法既具有Newton法的局部收斂性,又具有梯度法的全局特性。LM算法是通過自適應(yīng)調(diào)整阻尼因子來達(dá)到收斂特性,此外它所具有的更高迭代收斂速度的優(yōu)點(diǎn)在很多非線性優(yōu)化問題中求得了穩(wěn)定可靠解。
本文采用的LM算法主要優(yōu)化的是BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值,其迭代公式為
式中:e(w) 為實(shí)際輸出與期望輸出Yi的誤差,即;I為單位矩陣;μ為小的正數(shù)(學(xué)習(xí)率);J(w) 為Jacobean矩陣,即
脫機(jī)文字識別系統(tǒng)[8]的整個過程主要分為文字圖片的輸入、預(yù)處理、特征提取和分類識別幾個階段,如圖1所示。
圖1 脫機(jī)文字識別系統(tǒng)的識別過程
預(yù)處理過程主要包括二值化、分割等。預(yù)處理不僅可以增強(qiáng)圖像、減小噪聲和失真,還有助于實(shí)現(xiàn)更高更精確的識別結(jié)果。優(yōu)質(zhì)的圖像對神經(jīng)網(wǎng)絡(luò)模型的建立起到非常重要的作用。因此,在任何文字識別系統(tǒng)中,預(yù)處理[9]階段的存在都是必不可少的。
特征提取的目的是從原始數(shù)據(jù)中抽取出用于區(qū)分不同類型的本質(zhì)特征。特征向量選取的好壞對識別結(jié)果同樣會造成很大的影響。因此所提取出的特征必須具有良好的可靠性、區(qū)別性、相互獨(dú)立性和不關(guān)聯(lián)性。另外為了減少識別系統(tǒng)的負(fù)擔(dān),特征維數(shù)也要適當(dāng)控制。
由于LM-BP算法主要改變的是BP網(wǎng)絡(luò)的權(quán)值和閾值,所以改進(jìn)前后BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)沒有發(fā)生變化,所以本文選用的BP神經(jīng)網(wǎng)三層,其中輸入層神經(jīng)元數(shù)為14;根據(jù)隱含層神經(jīng)元個數(shù)大約為輸入層神經(jīng)元個數(shù)的2倍關(guān)系[10],取28作為隱含層的節(jié)點(diǎn)個數(shù)。
其中LM-BP算法具體步驟如下:
1)給出訓(xùn)練誤差允許值ε、常數(shù)μ0和β(0<β<1),以及初始化權(quán)值和閾值向量w0,并且令k=0,μ=μ0;
2)將提取出的特征向量輸入到BP網(wǎng)絡(luò)中,并計(jì)算網(wǎng)絡(luò)的輸出;
4)計(jì)算Jacobean矩陣J(wk);
5)計(jì)算權(quán)值和閾值的變化率Δw;
6)若E(wk)<ε,轉(zhuǎn)到步驟8);
7)用式(1)更新權(quán)值和閾值向量,并計(jì)算E(wk+1)。若E(wk+1)<E(wk),則令k=k+1,μ=μβ,轉(zhuǎn)到步驟3);否則μ=μ/β,轉(zhuǎn)到步驟5)。
8)滿足終止條件,迭代結(jié)束。
以圖2中的手寫數(shù)字為訓(xùn)練對象,對BP神經(jīng)網(wǎng)絡(luò)及LM算法優(yōu)化后的BP網(wǎng)絡(luò)(LM-BP網(wǎng)絡(luò))進(jìn)行訓(xùn)練,得出圖3和圖4所示的訓(xùn)練曲線,其中訓(xùn)練目標(biāo)精度為0.01。
圖2 手寫數(shù)字圖像
圖3 BP網(wǎng)絡(luò)訓(xùn)練曲線
從圖3可以看出,BP網(wǎng)絡(luò)經(jīng)過5 000步才完成訓(xùn)練過程達(dá)到收斂,訓(xùn)練曲線一直都是緩慢下降,收斂速度很慢,而且最終訓(xùn)練誤差為0.511,未達(dá)到訓(xùn)練誤差目標(biāo)精度。圖4中LM-BP網(wǎng)絡(luò)到7步時(shí),訓(xùn)練誤差為0.005 81,已經(jīng)達(dá)到誤差目標(biāo)精度,收斂速度較快。所以,LM-BP算法不僅加快了收斂速度,而且產(chǎn)生的誤差也很小,是一種可行的BP網(wǎng)絡(luò)改進(jìn)算法。
圖4 LM-BP網(wǎng)絡(luò)訓(xùn)練曲線
如圖5所示的手寫“新疆大學(xué)電氣工程學(xué)院”為訓(xùn)練對象,對改進(jìn)前后神經(jīng)網(wǎng)絡(luò)的性能進(jìn)行對比,同樣可以得出LM-BP算法的收斂速度比標(biāo)準(zhǔn)BP算法要快很多,誤差也小很多。從表1中列出的識別率比較還可以看出,LM-BP算法的識別率要高于標(biāo)準(zhǔn)BP算法,所以改進(jìn)算法確實(shí)有效可行。
圖5 手寫漢字圖像
表1 兩種算法的識別率比較
本文將基于LM-BP神經(jīng)網(wǎng)絡(luò)算法分別用于脫機(jī)手寫數(shù)字和脫機(jī)手寫漢字的識別,通過LM算法優(yōu)化BP網(wǎng)絡(luò)的閾值和權(quán)值,很好地彌補(bǔ)了標(biāo)準(zhǔn)BP算法存在的收斂速度慢、訓(xùn)練時(shí)間長、訓(xùn)練誤差大的缺陷。從實(shí)驗(yàn)結(jié)果可以看出,本算法除了獲得較短的訓(xùn)練時(shí)間、較快的收斂速度和較小的訓(xùn)練誤差之外,還提高了脫機(jī)手寫漢字的識別率,為下一步的研究奠定了基礎(chǔ)。此外,本方法同樣適用于其他文字的識別,例如維吾爾語、蒙古語等。但是在本次研究中訓(xùn)練集的類別還是過于少,且數(shù)字和漢字只能分別進(jìn)行識別。接下來的工作就是盡量克服這一缺點(diǎn),并采用更為合適的特征提取方法,為大字符庫的識別研究做準(zhǔn)備。
:
[1]陳瑋,曹志廣,李劍平.改進(jìn)的模板匹配方法在車牌識別中的應(yīng)用[J].計(jì)算機(jī)工程與設(shè)計(jì),2013,34(5):1808-1811.
[2]KESSENTINI Y,PAQUET T,HAMADOU A B.Off-line handwritten word recognition using multi-stream hidden markov models[J].Pattern Recognition Letters,2010,31(1):60-70.
[3]SHANTHI N,URAISWAMY K.A novel SVM-based handwritten tamil character recognition system[J].Pattern Analysis and Applications,2010,13(2):173-180.
[4]KALAICHELVI V.Application of neural networks in character recognition[J].International Journal of Computer Applications,2012,12(52):183-192.
[5]張玲,張鳴明,何偉.基于BP神經(jīng)網(wǎng)絡(luò)算法的車牌字符識別系統(tǒng)設(shè)計(jì)[J].電視技術(shù),2008,32(S1):140-142.
[6]龔立雄,姜建華.基于L-M算法的BP神經(jīng)網(wǎng)絡(luò)模型機(jī)械加工誤差預(yù)測模型[J].機(jī)床與液壓,2013,41(11):67-71.
[7]孟博,李榮冰,劉建業(yè),等.基于改進(jìn)反向傳播算法的跨音速攻角步長修正研究[J].系統(tǒng)工程與電子技術(shù),2010,32(12):117-119.
[8]BARVE S.Optical character recognition using artificial neural network[J].International Journal of Advanced Research in Computer Engineering&Technology,2012(4):131-133.
[9]PERWEJ Y.Machine recognition of handwritten characters using neural networks[J].International Journal of Computer Applications,2011,12(14):196-204.
[10]楊淑瑩.模式識別與智能計(jì)算——Matlab技術(shù)實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2011:147-157.