《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 一個感知機神經網絡字符識別器的實現
一個感知機神經網絡字符識別器的實現
2015年電子技術應用第3期
楊 戈1,2,張威強1,黃 靜1
1.北京師范大學珠海分校 信息技術學院,廣東 珠海519087; 2.北京大學深圳研究生院 深圳物聯網智能感知技術工程實驗室,廣東 深圳518055
摘要: 針對英文印刷字體,設計并實現了一個基于感知機神經元網絡的字符識別器,輸入印刷字符“L”和“I”,對識別器進行訓練、學習,以達到識別字符的目的。通過4 000組的實驗數據表明,該識別器對規范印刷的英文字符能高效、準確地識別出來,程序的平均學習次數為6.95次,平均用時0.006 812 56 s,耗時在可接受范圍之內,進而驗證了該字符識別器在實際應用中的可行性。
中圖分類號: TN47
文獻標識碼: A
文章編號: 0258-7998(2015)03-0120-03
Implementation of printed character recognition system based on perceptron artificial neural network
Yang Ge1,2,Zhang Weiqiang1,Huang Jing1
1.College of Information Technology,Beijing Normal University(Zhuhai Campus),Zhuhai 519087,China; 2.Key Laboratory of Engineering Lab on Intelligent Perception for Internet of Things(ELIP),Shenzhen Graduate School, Peking University,Shenzhen 518055,China
Abstract: For English print characters,a character recognition system based on perception artificial neural network is designed and realized in this paper. To achieve the purpose of recognizing printed character,the program which inputs printed character “L” & “I” to the character recognition system is trained. 4000 experimental data sets show that the character recognition system can efficiently and accurately identify the English printing character. The learning times are 6.95 and using time is 0.006 812 56 seconds. These show that it is acceptable and available in practical uses.
Key words : artificial neurons;perceptron;MATLAB

 

0 引言

  目前,在字符識別的研究中,最常見的識別方法就是先建立字符庫,或儲存字符信息模板,或存儲字符特征信息,在進行識別時,將待識別字符與字符庫中的信息進行逐個比對,進而識別出待識別字符。由此衍生出來算法有兩種:基于模板匹配的字符識別法、基于特征統計匹配的字符識別法[1-3]。模板匹配算法的高速識別和特征統計匹配識別算法的簡單原理,讓這兩種算法得以廣泛應用,然而當面對批量圖書文字、字體種類繁多、識別字體模糊等問題時,以上兩種算法在識別準確率、程序魯棒性、適應性上都顯得不夠理想。

  由此,本文運用一種新方法解決以上問題——基于感知機神經網絡的字符識別法。通過仿真實驗,對算法進行改良、數據分析與比較,驗證了全新算法較目前常規算法的卓越性能優勢。

1 字符識別器的設計

  1.1 感知機網絡模型

  感知機神經網絡現在仍處于發展階段,主要應用在模糊識別領域中。在識別字符時,神經元網絡先對待識別字符進行特征提取,然后用所獲得的特征來訓練神經網絡分類器。它的優點是識別器自身可進行學習訓練,識別器的容錯能力強,識別率高。

  其基本思想是將一些類似生物神經元的處理單元構成一個計算網絡,該網絡能夠自動學習如何對“模式”進行識別和分類。

  感知機模型是一種具有權值元素的前饋網絡,通常由感知層S(Sensory)、連接層A(Association)和反應層R(Response)構成[4]。

  1.2 感知機網絡的學習過程


002.jpg

  如圖1所示,當輸入X時,經過神經元的計算,得出實際輸出值。這個實際輸出值與期望輸出值進行比較,并進行誤差計算,如果誤差為0,則輸出;如果誤差不為0,則進行學習,修改閾值t,其算法為e(t,0)[5]。

  閾值被修改后,重復進行以上工作,直至實際輸出數據與期望輸出數據相同,學習結束。

2 字符識別器的實現

2.1 實例


003.jpg

  設計并訓練一個印刷字符分類器。如圖2所示,用位圖形式表示的L和I印刷字符分別用白色和黑色象素表示0和1。分類器用一個離散雙極型感知機構成,有10個輸入權值,包括閾值在內。

  2.2 字符識別器的學習步驟

  (1)初始化

  初始化突觸權值w,在連到神經元k的突觸j上的輸入信號xj被乘以k的突觸權值wkj。突觸權值wkj在[-1,1]隨機產生,產生后固定不變。將A層至R層的連接權向量Wi及輸出單元的閾值t賦予[-1,+1]區間的隨機值[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為程序希望輸出的值

  初始化學習率:

  a1=0.100000;

  a2=0.100000;//a為程序每次學習的學習率

  初始化連接權W:

  r1=rand(3);//隨機矩陣[0,1]

  w=2*r1-1;//隨機矩陣[-1,1];A~R層的權值;w隨

  機產生,產生后固定不變

  初始化閾值t:

  r1=rand;//產生隨機數

  t=r1*2-1;//閾值(隨機產生);t 隨機產生,產生后隨

  學習而被修正

  (2)隨機選取一輸入模式uk加到網絡的輸入端,用于求輸入信號被神經元的相應突觸加權的和uk。這個操作構成一個線性組合器,如式(1)所示[6]:

  1.png

  (3)計算網絡的實際輸出:

  2.png

  式中,uki為第i次uk輸入;f(x)為雙極階函數(激活函數),用來限制神經元輸出振幅。由于它將輸出信號壓制到允許范圍之內的一定值,故而激活函數也稱為壓制函數。通常,一個神經元輸出的正常幅度范圍可寫成單位閉區間[-1,+1]:

  3.png

  (4)計算輸出層單元的期望輸出與實際輸出之間的誤差:

  dk=yk-y(4)

  (5)修正A層各單元與輸出層R之間的連接權與閾值:

  56.png

  式中dk;i=1,2,3…n;N為學習次數;α、β為正常數,稱學習率(0<α<1,0<β<1)。

  (6)返回第(2)步,直到m個輸入模式全部計算完。

  (7)返回第(2)步,反復學習,直到誤差 dk(k=1,2,…,m)趨于零或小于預先給定的誤差。

  (8)學習結束。學習結束后網絡將學習模式分布記憶在連接權之中,當再給網絡提供已記憶的輸入模式時,網絡將計算出期望的輸出yk值,并可根據yk為+1或-1判斷出這一輸入模式屬于記憶中的哪種或接近于哪一種模式[7]。

3 仿真實驗與分析

  3.1 實驗環境

  實驗環境見表1。

001.jpg

  3.2 實驗結果

  (1)第1次學習

  連接權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次學習

  連接權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次學習

  連接權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次學習

  連接權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。

  學習總次數為4次,最終確定的連接權矩陣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。

  程序每次執行結果都不一樣,這是因為步驟(1)中w初始值不同。以上只是其中一種情況。

  3.3 實驗分析

  上述實驗經過了4次學習之后,兩個印刷字符的閾值被鎖定為0.671 4,此時兩圖的學習誤差均為0,結果符合預期要求。

  實驗結果表明,程序會根據隨機產生的連接權進行計算,通過有導師學習逐步改變閾值,并計算出每次學習的誤差,直到學習誤差為0時結束。

  為了驗證這個實驗的準確性,本文對程序進行了4 000次的隨機測試,并對數據進行抽樣記錄。

  根據統計可以看出,要識別出這兩個字符,最多進行10次學習,最少只需學習4次,平均學習6.95次。忽略兩極分布情況,大部分學習次數為[5,8],數據波動小,穩定性較好。

  在源代碼中,加入時間統計代碼“tic;toc;”,便可精確計算每次學習的運行時間,大部分實驗耗時0.004~0.09 s之間,平均耗時0.006 812 56 s。

  根據實驗數據可以看出,感知機字符識別器要想識別兩個字符,平均學習6.95次,耗時0.006 8 s,每識別出一個字符,需耗時0.003 4 s。按此數據推算,完成一段字數為8 000字的文章字符識別,只需要耗時27.201 6 s。據統計,國人對漢字閱讀速度一般為400字/min[8],想要完成8 000字的閱讀,需耗時20 min,而掌握“速讀”技巧的人能以4 000字/min的速度閱讀書籍和資料,完成8 000字的閱讀也需要耗費2 min。通過對比得知,基于感知機網絡的字符識別器的識別速度是普通人的32.64倍數,是頂尖閱讀學者的3.26倍,從識別速度的角度的來看,識別器完全達到了實際應用的要求。

  通過實驗可以看出,基于神經元網絡的字符識別器具有自我學習的能力,在每次的學習過程中,識別器會進行自我糾正;在實際的應用中,該識別器不需要預先建立數據庫,可以減少程序的體積;對字符的噪音、不完整、傾斜等都具有較強的適應能力,容錯能力和魯棒性都要優于另外兩種常用方法;具有較高的并行分布能力和聯想存儲能力,大大提高了字符識別器的識別效率。

4 總結

  本文詳細分析了基于神經元網絡模型的字符識別器,并對這個識別器進行了4 000次的實驗與分析,通過與人腦閱讀速度相比,得出識別器的識別速度是普通人的32.64倍,是專業學者的3.62倍數。從識別率與識別速度兩方面來看,本次試驗達到了設計的要求。

  在未來,字符識別它能大大提高信息采集的速度,減輕人們的工作強度。現在市面上已經有越來越多基于字符識別的產品出現,例如:步步高點讀機等。隨著網絡的普及,大數據時代的來臨,字符識別技術在簽名識別、手寫體和印刷體字符識別、目標檢測與識別、車牌識別等領域都將會揮下重彩濃墨的一筆。

  參考文獻

  [1] 高慶一,逯鵬,劉馳,等.模擬視覺機制的隱蔽目標識別算法研究[J].儀器儀表學報,2012,33(2):11-15.

  [2] 何灝,羅慶生,羅霄.基于強分類器的神經網絡三維目標識別[J].計算機測量與控制,2012,20(7):26-32.

  [3] 曹步清,金毆,賀建飚.基于BP神經網絡的貨幣識別算法設計與實現[J].計算機測量與控制,2007,15(4):20-30.

  [4] 韓英莉,顏云輝.基于BP神經網絡的帶鋼表面缺陷的識別與分類[J].儀器儀表學報,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].農業工程學報,2012,28(7):33-39.

  [7] 陳蕾,黃賢武,仲興榮,等.基于改進BP算法的數字字符識別[J].微電子學與計算機,2004,21(12):4-10.

  [8] 黃志斌,陳鍛生.支持向量機在車牌字符識別中的應用[J].計算機工程,2003,29(5):21-25.


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 日韩日韩日韩日韩 | 日韩欧美精品中文字幕 | 成 人 黄 色 大 片 | 日日射夜夜 | 日韩三级一区二区三区 | 亚洲国产精品高清在线一区 | 国产欧美精品一区aⅴ影院 国产欧美成人一区二区三区 | 亚洲国产成人精彩精品 | 成人黄色一级毛片 | 男女无遮挡在线完整视频 | 免费黄在线观看 | 1024在线视频国产在线播放 | aa级毛片毛片免费观看久 | 好吊妞gao988在线播放 | 日韩伦理影视 | 欧美精品99久久久久久人 | 狂野欧美性猛交xxxx免费按摩 | 国产成人综合亚洲动漫在线 | 一级片黄色免费 | 一个人在线看免费的视频 | 91麻豆精品视频 | 国产欧美激情一区二区三区-老狼 | 天天操精品视频 | 欧美激情一区二区三区 | 日韩特级毛片免费观看视频 | 动漫精品一区二区三区视频 | 日韩欧免费一区二区三区 | 第一国内永久免费福利视频 | 在线亚洲激情 | 99视频在线精品 | 天堂中文在线乱码 | 欧美三级又粗又硬 | 日本的黄色录像 | 国产三级不卡 | 日皮视频免费观看 | 日韩欧美一区二区三区久久 | 久久免费精品高清麻豆 | 小明天天看成人免费看 | 九九网站 | 99成人在线 | 国产成人影院在线观看 |