文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2015)03-0120-03
0 引言
目前,,在字符識(shí)別的研究中,,最常見(jiàn)的識(shí)別方法就是先建立字符庫(kù),或儲(chǔ)存字符信息模板,,或存儲(chǔ)字符特征信息,,在進(jìn)行識(shí)別時(shí),將待識(shí)別字符與字符庫(kù)中的信息進(jìn)行逐個(gè)比對(duì),,進(jìn)而識(shí)別出待識(shí)別字符,。由此衍生出來(lái)算法有兩種:基于模板匹配的字符識(shí)別法、基于特征統(tǒng)計(jì)匹配的字符識(shí)別法[1-3],。模板匹配算法的高速識(shí)別和特征統(tǒng)計(jì)匹配識(shí)別算法的簡(jiǎn)單原理,,讓這兩種算法得以廣泛應(yīng)用,然而當(dāng)面對(duì)批量圖書(shū)文字,、字體種類繁多,、識(shí)別字體模糊等問(wèn)題時(shí),以上兩種算法在識(shí)別準(zhǔn)確率,、程序魯棒性,、適應(yīng)性上都顯得不夠理想。
由此,,本文運(yùn)用一種新方法解決以上問(wèn)題——基于感知機(jī)神經(jīng)網(wǎng)絡(luò)的字符識(shí)別法,。通過(guò)仿真實(shí)驗(yàn),對(duì)算法進(jìn)行改良,、數(shù)據(jù)分析與比較,,驗(yàn)證了全新算法較目前常規(guī)算法的卓越性能優(yōu)勢(shì)。
1 字符識(shí)別器的設(shè)計(jì)
1.1 感知機(jī)網(wǎng)絡(luò)模型
感知機(jī)神經(jīng)網(wǎng)絡(luò)現(xiàn)在仍處于發(fā)展階段,,主要應(yīng)用在模糊識(shí)別領(lǐng)域中,。在識(shí)別字符時(shí),神經(jīng)元網(wǎng)絡(luò)先對(duì)待識(shí)別字符進(jìn)行特征提取,,然后用所獲得的特征來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò)分類器,。它的優(yōu)點(diǎn)是識(shí)別器自身可進(jìn)行學(xué)習(xí)訓(xùn)練,識(shí)別器的容錯(cuò)能力強(qiáng),,識(shí)別率高,。
其基本思想是將一些類似生物神經(jīng)元的處理單元構(gòu)成一個(gè)計(jì)算網(wǎng)絡(luò),該網(wǎng)絡(luò)能夠自動(dòng)學(xué)習(xí)如何對(duì)“模式”進(jìn)行識(shí)別和分類,。
感知機(jī)模型是一種具有權(quán)值元素的前饋網(wǎng)絡(luò),,通常由感知層S(Sensory),、連接層A(Association)和反應(yīng)層R(Response)構(gòu)成[4]。
1.2 感知機(jī)網(wǎng)絡(luò)的學(xué)習(xí)過(guò)程
如圖1所示,,當(dāng)輸入X時(shí),,經(jīng)過(guò)神經(jīng)元的計(jì)算,得出實(shí)際輸出值,。這個(gè)實(shí)際輸出值與期望輸出值進(jìn)行比較,,并進(jìn)行誤差計(jì)算,如果誤差為0,,則輸出;如果誤差不為0,,則進(jìn)行學(xué)習(xí),,修改閾值t,其算法為e(t,,0)[5],。
閾值被修改后,重復(fù)進(jìn)行以上工作,,直至實(shí)際輸出數(shù)據(jù)與期望輸出數(shù)據(jù)相同,,學(xué)習(xí)結(jié)束。
2 字符識(shí)別器的實(shí)現(xiàn)
2.1 實(shí)例
設(shè)計(jì)并訓(xùn)練一個(gè)印刷字符分類器,。如圖2所示,,用位圖形式表示的L和I印刷字符分別用白色和黑色象素表示0和1。分類器用一個(gè)離散雙極型感知機(jī)構(gòu)成,,有10個(gè)輸入權(quán)值,,包括閾值在內(nèi)。
2.2 字符識(shí)別器的學(xué)習(xí)步驟
(1)初始化
初始化突觸權(quán)值w,,在連到神經(jīng)元k的突觸j上的輸入信號(hào)xj被乘以k的突觸權(quán)值wkj,。突觸權(quán)值wkj在[-1,1]隨機(jī)產(chǎn)生,,產(chǎn)生后固定不變,。將A層至R層的連接權(quán)向量Wi及輸出單元的閾值t賦予[-1,+1]區(qū)間的隨機(jī)值[5],。
初始化印刷字符L和I的輸入值:
x1=[1 0 0 0,;1 0 0 0;1 0 0 0,;1 1 1 1],;
//用矩陣x1表示印刷字符L
x2=[0 1 0 0;0 1 0 0,;0 1 0 0,;0 1 0 0,;];
//用矩陣x2表示印刷字符I
初始化期望值:
y1=1,;
y2=1,;//變量y為程序希望輸出的值
初始化學(xué)習(xí)率:
a1=0.100000;
a2=0.100000,;//a為程序每次學(xué)習(xí)的學(xué)習(xí)率
初始化連接權(quán)W:
r1=rand(3),;//隨機(jī)矩陣[0,1]
w=2*r1-1,;//隨機(jī)矩陣[-1,1],;A~R層的權(quán)值;w隨
機(jī)產(chǎn)生,,產(chǎn)生后固定不變
初始化閾值t:
r1=rand,;//產(chǎn)生隨機(jī)數(shù)
t=r1*2-1;//閾值(隨機(jī)產(chǎn)生),;t 隨機(jī)產(chǎn)生,,產(chǎn)生后隨
學(xué)習(xí)而被修正
(2)隨機(jī)選取一輸入模式uk加到網(wǎng)絡(luò)的輸入端,用于求輸入信號(hào)被神經(jīng)元的相應(yīng)突觸加權(quán)的和uk,。這個(gè)操作構(gòu)成一個(gè)線性組合器,,如式(1)所示[6]:
(3)計(jì)算網(wǎng)絡(luò)的實(shí)際輸出:
式中,uki為第i次uk輸入,;f(x)為雙極階函數(shù)(激活函數(shù)),,用來(lái)限制神經(jīng)元輸出振幅。由于它將輸出信號(hào)壓制到允許范圍之內(nèi)的一定值,,故而激活函數(shù)也稱為壓制函數(shù),。通常,一個(gè)神經(jīng)元輸出的正常幅度范圍可寫(xiě)成單位閉區(qū)間[-1,,+1]:
(4)計(jì)算輸出層單元的期望輸出與實(shí)際輸出之間的誤差:
dk=yk-y(4)
(5)修正A層各單元與輸出層R之間的連接權(quán)與閾值:
式中dk,;i=1,2,,3…n,;N為學(xué)習(xí)次數(shù);α,、β為正常數(shù),,稱學(xué)習(xí)率(0<α<1,0<β<1),。
(6)返回第(2)步,,直到m個(gè)輸入模式全部計(jì)算完。
(7)返回第(2)步,反復(fù)學(xué)習(xí),,直到誤差 dk(k=1,,2,…,,m)趨于零或小于預(yù)先給定的誤差,。
(8)學(xué)習(xí)結(jié)束。學(xué)習(xí)結(jié)束后網(wǎng)絡(luò)將學(xué)習(xí)模式分布記憶在連接權(quán)之中,,當(dāng)再給網(wǎng)絡(luò)提供已記憶的輸入模式時(shí),,網(wǎng)絡(luò)將計(jì)算出期望的輸出yk值,并可根據(jù)yk為+1或-1判斷出這一輸入模式屬于記憶中的哪種或接近于哪一種模式[7],。
3 仿真實(shí)驗(yàn)與分析
3.1 實(shí)驗(yàn)環(huán)境
實(shí)驗(yàn)環(huán)境見(jiàn)表1,。
3.2 實(shí)驗(yàn)結(jié)果
(1)第1次學(xué)習(xí)
連接權(quán)w:-0.384 5-0.339 0-0.548 2
-0.197 50.888 6-0.658 6
0.141 8-0.210 5-0.344 7
閾值(第1次被修正):t=0.271 4;誤差(第1次被修正):d1=2,;誤差(第1次被修正):d2=2,。
(2)第2次學(xué)習(xí)
連接權(quán)w:-0.184 5-0.339 0-0.548 2
0.002 50.888 6-0.658 6
0.341 8-0.010 5-0.144 7
閾值(第2次被修正):t=0.471 4;誤差(第2次被修正):d1=2,;誤差(第2次被修正):d2=0。
(3)第3次學(xué)習(xí)
連接權(quán)w:0.015 5-0.339 0-0.548 2
0.202 50.888 6-0.658 6
0.541 80.189 50.055 3
閾值(第3次被修正):t=0.671 4,;誤差(第3次被修正):d1=2,;誤差(第3次被修正):d2=0。
(4)第4次學(xué)習(xí)
連接權(quán)w:0.015 5-0.339 0-0.548 2
0.202 50.888 6-0.658 6
0.541 80.189 50.055 3
閾值(第4次被修正):t=0.671 4,;誤差(第4次被修正):d1=0,;誤差(第4次被修正):d2=0。
學(xué)習(xí)總次數(shù)為4次,,最終確定的連接權(quán)矩陣W:
0.015 5-0.339 0-0.548 2
0.202 50.888 6-0.658 6
0.541 80.189 5 0.055 3
閾值:t=0.671 4,;誤差:d1=0;誤差:d2=0,。
程序每次執(zhí)行結(jié)果都不一樣,,這是因?yàn)椴襟E(1)中w初始值不同。以上只是其中一種情況,。
3.3 實(shí)驗(yàn)分析
上述實(shí)驗(yàn)經(jīng)過(guò)了4次學(xué)習(xí)之后,,兩個(gè)印刷字符的閾值被鎖定為0.671 4,此時(shí)兩圖的學(xué)習(xí)誤差均為0,,結(jié)果符合預(yù)期要求,。
實(shí)驗(yàn)結(jié)果表明,程序會(huì)根據(jù)隨機(jī)產(chǎn)生的連接權(quán)進(jìn)行計(jì)算,,通過(guò)有導(dǎo)師學(xué)習(xí)逐步改變閾值,,并計(jì)算出每次學(xué)習(xí)的誤差,直到學(xué)習(xí)誤差為0時(shí)結(jié)束。
為了驗(yàn)證這個(gè)實(shí)驗(yàn)的準(zhǔn)確性,,本文對(duì)程序進(jìn)行了4 000次的隨機(jī)測(cè)試,,并對(duì)數(shù)據(jù)進(jìn)行抽樣記錄。
根據(jù)統(tǒng)計(jì)可以看出,,要識(shí)別出這兩個(gè)字符,,最多進(jìn)行10次學(xué)習(xí),最少只需學(xué)習(xí)4次,,平均學(xué)習(xí)6.95次,。忽略兩極分布情況,大部分學(xué)習(xí)次數(shù)為[5,,8],,數(shù)據(jù)波動(dòng)小,穩(wěn)定性較好,。
在源代碼中,,加入時(shí)間統(tǒng)計(jì)代碼“tic;toc,;”,,便可精確計(jì)算每次學(xué)習(xí)的運(yùn)行時(shí)間,大部分實(shí)驗(yàn)耗時(shí)0.004~0.09 s之間,,平均耗時(shí)0.006 812 56 s,。
根據(jù)實(shí)驗(yàn)數(shù)據(jù)可以看出,感知機(jī)字符識(shí)別器要想識(shí)別兩個(gè)字符,,平均學(xué)習(xí)6.95次,,耗時(shí)0.006 8 s,每識(shí)別出一個(gè)字符,,需耗時(shí)0.003 4 s,。按此數(shù)據(jù)推算,完成一段字?jǐn)?shù)為8 000字的文章字符識(shí)別,,只需要耗時(shí)27.201 6 s,。據(jù)統(tǒng)計(jì),國(guó)人對(duì)漢字閱讀速度一般為400字/min[8],,想要完成8 000字的閱讀,,需耗時(shí)20 min,而掌握“速讀”技巧的人能以4 000字/min的速度閱讀書(shū)籍和資料,,完成8 000字的閱讀也需要耗費(fèi)2 min,。通過(guò)對(duì)比得知,基于感知機(jī)網(wǎng)絡(luò)的字符識(shí)別器的識(shí)別速度是普通人的32.64倍數(shù),,是頂尖閱讀學(xué)者的3.26倍,,從識(shí)別速度的角度的來(lái)看,識(shí)別器完全達(dá)到了實(shí)際應(yīng)用的要求。
通過(guò)實(shí)驗(yàn)可以看出,,基于神經(jīng)元網(wǎng)絡(luò)的字符識(shí)別器具有自我學(xué)習(xí)的能力,,在每次的學(xué)習(xí)過(guò)程中,識(shí)別器會(huì)進(jìn)行自我糾正,;在實(shí)際的應(yīng)用中,,該識(shí)別器不需要預(yù)先建立數(shù)據(jù)庫(kù),可以減少程序的體積,;對(duì)字符的噪音,、不完整、傾斜等都具有較強(qiáng)的適應(yīng)能力,,容錯(cuò)能力和魯棒性都要優(yōu)于另外兩種常用方法,;具有較高的并行分布能力和聯(lián)想存儲(chǔ)能力,大大提高了字符識(shí)別器的識(shí)別效率,。
4 總結(jié)
本文詳細(xì)分析了基于神經(jīng)元網(wǎng)絡(luò)模型的字符識(shí)別器,,并對(duì)這個(gè)識(shí)別器進(jìn)行了4 000次的實(shí)驗(yàn)與分析,通過(guò)與人腦閱讀速度相比,,得出識(shí)別器的識(shí)別速度是普通人的32.64倍,,是專業(yè)學(xué)者的3.62倍數(shù)。從識(shí)別率與識(shí)別速度兩方面來(lái)看,,本次試驗(yàn)達(dá)到了設(shè)計(jì)的要求,。
在未來(lái),字符識(shí)別它能大大提高信息采集的速度,,減輕人們的工作強(qiáng)度。現(xiàn)在市面上已經(jīng)有越來(lái)越多基于字符識(shí)別的產(chǎn)品出現(xiàn),,例如:步步高點(diǎn)讀機(jī)等,。隨著網(wǎng)絡(luò)的普及,大數(shù)據(jù)時(shí)代的來(lái)臨,,字符識(shí)別技術(shù)在簽名識(shí)別,、手寫(xiě)體和印刷體字符識(shí)別、目標(biāo)檢測(cè)與識(shí)別,、車牌識(shí)別等領(lǐng)域都將會(huì)揮下重彩濃墨的一筆,。
參考文獻(xiàn)
[1] 高慶一,逯鵬,,劉馳,,等.模擬視覺(jué)機(jī)制的隱蔽目標(biāo)識(shí)別算法研究[J].儀器儀表學(xué)報(bào),2012,,33(2):11-15.
[2] 何灝,,羅慶生,羅霄.基于強(qiáng)分類器的神經(jīng)網(wǎng)絡(luò)三維目標(biāo)識(shí)別[J].計(jì)算機(jī)測(cè)量與控制,2012,,20(7):26-32.
[3] 曹步清,,金毆,賀建飚.基于BP神經(jīng)網(wǎng)絡(luò)的貨幣識(shí)別算法設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,,2007,,15(4):20-30.
[4] 韓英莉,顏云輝.基于BP神經(jīng)網(wǎng)絡(luò)的帶鋼表面缺陷的識(shí)別與分類[J].儀器儀表學(xué)報(bào),,2006,,27(12):12-21.
[5] EBERLIN L S,DILL A L,,IFA D R,,et al.Cholesterol sulfateimaging in human prostate cancer tissue by desorption electrospray ionization mass spectrometry[J].Analytical Chemistry,2010,,82(9):3430-3434.
[6] 張建華,,祁力鈞,冀榮華,,等.基于粗糙集和BP神經(jīng)網(wǎng)絡(luò)的棉花病害識(shí)別[J].農(nóng)業(yè)工程學(xué)報(bào),,2012,28(7):33-39.
[7] 陳蕾,,黃賢武,,仲興榮,等.基于改進(jìn)BP算法的數(shù)字字符識(shí)別[J].微電子學(xué)與計(jì)算機(jī),,2004,,21(12):4-10.
[8] 黃志斌,陳鍛生.支持向量機(jī)在車牌字符識(shí)別中的應(yīng)用[J].計(jì)算機(jī)工程,,2003,,29(5):21-25.