馮彩英 劉龍飛
【摘??要】為改善傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)缺陷,本文對(duì)傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行改進(jìn)并用于字符識(shí)別研究。首先采集來自互聯(lián)網(wǎng)數(shù)據(jù)集建立樣本庫,選擇合適的BP網(wǎng)絡(luò)參數(shù),并對(duì)樣本庫數(shù)據(jù)進(jìn)行BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練;接著,對(duì)待測(cè)樣本進(jìn)行預(yù)處理操作;最后,采用訓(xùn)練好的網(wǎng)絡(luò)對(duì)待測(cè)樣本進(jìn)行識(shí)別。實(shí)驗(yàn)表明:改進(jìn)算法對(duì)字符識(shí)別正確率達(dá)到了95%以上。
【關(guān)鍵詞】預(yù)處理;字符識(shí)別;BP神經(jīng)網(wǎng)絡(luò);改進(jìn)BP神經(jīng)網(wǎng)絡(luò)
中國(guó)分類號(hào):TP301????????文獻(xiàn)標(biāo)志碼:A
0?引言
在人們的日常生活中,有很多的數(shù)字化信息需要進(jìn)行人工錄入,由于耗時(shí)較長(zhǎng)并且長(zhǎng)時(shí)間工作會(huì)引起疲勞而不可避免地發(fā)生一些意外,這個(gè)問題自然而然成為妨礙信息化發(fā)展和生產(chǎn)力發(fā)展的主要問題。怎樣使人們不再受這種煩瑣而簡(jiǎn)單的重復(fù)勞動(dòng)的困擾,成為識(shí)別領(lǐng)域中的一個(gè)關(guān)鍵問題。手寫數(shù)字識(shí)別是光學(xué)字符識(shí)別技術(shù)的一個(gè)分支,目前大多采用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行識(shí)別,但BP神經(jīng)網(wǎng)絡(luò)存在局部極小值、學(xué)習(xí)速度慢、結(jié)構(gòu)選取上無確定準(zhǔn)則三方面缺陷,影響其識(shí)別效果。為了解決傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)存在的缺陷,本文對(duì)傳統(tǒng)算法進(jìn)行改進(jìn)。
1?傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)
當(dāng)前神經(jīng)網(wǎng)絡(luò)模型中BP神經(jīng)網(wǎng)絡(luò)是用最廣泛的模型之一,它是一種多層前饋人工網(wǎng)絡(luò),在訓(xùn)練過程中采用的是誤差逆向傳播算法。它的學(xué)習(xí)規(guī)則是最速下降法,首先,輸入學(xué)習(xí)樣本,在訓(xùn)練過程中通過誤差反向傳播來不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差最小。具體步驟如下:
Step1:初始化,隨機(jī)給定所有權(quán)值和閾值;
Step2:采集得到訓(xùn)練樣本,并給出期望輸出數(shù)據(jù);
Step3:計(jì)算實(shí)際輸出y
(1.1)
式(1.1)中,f函數(shù)為Sigmoid函數(shù):
(1.2)
Step4:調(diào)整權(quán)值向量,使用反向傳播算法不斷調(diào)整訓(xùn)練網(wǎng)絡(luò)的權(quán)值和誤差;
(1.3)
式(1.3)中,為大于零的增益,為節(jié)點(diǎn)j的誤差,誤差的計(jì)算根據(jù)節(jié)點(diǎn)j的形式不同,由公式(1.4)分別計(jì)算:
(1.4)
Step5:返回第3步重復(fù),直至誤差達(dá)到要求結(jié)束訓(xùn)練。
不難看出,δ學(xué)習(xí)規(guī)則利用迭代運(yùn)算求解權(quán)值問題,但其收斂速度慢且容易陷入局部極小。
2改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)
針對(duì)第1章提到的傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)的缺陷,本章對(duì)傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行改進(jìn)。首先采集得到訓(xùn)練樣本和期望輸出,并給出一組固定的隨機(jī)自由權(quán)值作為輸出層和隱含層之間的權(quán)值;然后,采用傳遞函數(shù)計(jì)算隱含層的實(shí)際輸出,再直接將目標(biāo)輸出作為等式的右邊,而將輸出層與隱含層之間的權(quán)向量作為未知量放于等式左邊建立方程組,從而將求得的方程組的解作為神經(jīng)網(wǎng)絡(luò)的權(quán)向量。具體步驟如下:
Step1:初始化,隨機(jī)給定所有權(quán)值;
Step2:采集得到訓(xùn)練樣本,并給出期望輸出數(shù)據(jù);
Step3:計(jì)算實(shí)際輸出,根據(jù)輸入輸出模式對(duì)計(jì)算隱含層、輸出層各單元實(shí)際輸出;
Step4:計(jì)算輸出層與隱含層之間的權(quán)向量,將目標(biāo)輸出作為等式的右邊,而將輸出層與隱含層之間的權(quán)向量作為未知量放于等式左邊建立方程組,從而將求得的方程組的解作為輸出層與隱含層之間的權(quán)向量;
Step5:迭代調(diào)整權(quán)值向量,神經(jīng)網(wǎng)絡(luò)最后訓(xùn)練的權(quán)值向量為第4步求得的權(quán)向量加上隨機(jī)固定的隱含層與輸入層的權(quán)值。
Step6:返回第3步重復(fù),直至誤差達(dá)到要求結(jié)束訓(xùn)練。
3基于改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)字符識(shí)別的實(shí)現(xiàn)
由于字符經(jīng)過光電掃描或印刷時(shí)字符的質(zhì)量和紙張的質(zhì)量的影響會(huì)產(chǎn)生一些噪聲,這些噪聲的存在給字符特征的提取帶來了困難,為了提高識(shí)別的準(zhǔn)確性,在進(jìn)行字符識(shí)別之前,要對(duì)帶有干擾的字符圖像進(jìn)行預(yù)處理操作。具體流程,如圖(3.1)所示:
對(duì)字符識(shí)別采用改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)算法進(jìn)行實(shí)現(xiàn),主要過程為字符的預(yù)處理、網(wǎng)絡(luò)的訓(xùn)練、調(diào)整各層權(quán)值和最后識(shí)別完成。具體步驟如下:
Step1:對(duì)字符圖像進(jìn)行預(yù)處理操作;
Step2:網(wǎng)絡(luò)訓(xùn)練,根據(jù)第2章的改進(jìn)算法進(jìn)行權(quán)值初始化、權(quán)值向量調(diào)整等來反復(fù)訓(xùn)練網(wǎng)絡(luò),使網(wǎng)絡(luò)達(dá)到要求;
Step3:字符識(shí)別,將處理后的待識(shí)別字符圖像送入訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行識(shí)別;
Step4:輸出識(shí)別結(jié)果。
圖3.1預(yù)處理流程
4?實(shí)驗(yàn)結(jié)果
為了檢驗(yàn)改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)字符識(shí)別的整體效果,網(wǎng)絡(luò)訓(xùn)練的數(shù)據(jù)集來自互聯(lián)網(wǎng),樣本大小為13G左右,測(cè)試數(shù)據(jù)集來自網(wǎng)絡(luò)隨機(jī)挑選的35張印刷體字符圖片,圖片字符包括數(shù)字和大小寫字母。在進(jìn)行網(wǎng)絡(luò)訓(xùn)練時(shí),為了使訓(xùn)練達(dá)到一定精度,設(shè)置初始迭代次數(shù)為1000次。實(shí)驗(yàn)中,首先訓(xùn)練網(wǎng)絡(luò),然后對(duì)待識(shí)別字符圖片進(jìn)行預(yù)處理操作,最后將處理完成的圖片輸入網(wǎng)絡(luò)進(jìn)行識(shí)別測(cè)試,每次讀取一張含有單個(gè)或一串字符的圖片進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如圖4.1-4.3所示。
圖4.1訓(xùn)練過程
(a)字符圖像灰度化?????????????(b)字符圖像二值化
(c)原始圖像?????????????(d)去噪后字符圖像
(e)字符分割
圖4.2預(yù)處理結(jié)果
4.3識(shí)別結(jié)果
本次實(shí)驗(yàn)一共輸入35張圖片,錯(cuò)誤識(shí)別一張,識(shí)別正確率為97.14%。實(shí)驗(yàn)結(jié)果表明,改進(jìn)算法可以順利處理單行的字符圖片;字符處理時(shí)間短,基本上在1s以內(nèi);系統(tǒng)對(duì)圖片去噪能力良好;可以允許字符產(chǎn)生一點(diǎn)點(diǎn)形變。
5?結(jié)論
改進(jìn)算法對(duì)印刷體字符識(shí)別正確率達(dá)到了95%以上,但是算法在識(shí)別一些字形比較相近的字符時(shí),由于分割算法無法對(duì)字符進(jìn)行分割后的排列,導(dǎo)致識(shí)別算法出現(xiàn)錯(cuò)誤。進(jìn)一步改進(jìn)分割算法以提高字符識(shí)別正確率將是下一步的研究重點(diǎn)。
參考文獻(xiàn):
[1]張國(guó)福,岳曉峰.基于神經(jīng)網(wǎng)絡(luò)的字符在線視覺識(shí)別研究[J].光學(xué)技術(shù),2018(1).
[2]饒志雙,黃宗珊.基于BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別[J].科技視界,2018(7).
[3]鄧介一,劉黎志,譚培祥.基于神經(jīng)網(wǎng)絡(luò)的數(shù)字字符識(shí)別系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].軟件導(dǎo)刊,2017,6(5):47-50.
[4]史興宇,鄧洪敏,林宇鋒等.基于人工神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別[J].計(jì)算機(jī)應(yīng)用,2017,37(s1):187-189.
[5]饒志雙,黃宗珊.基于BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別[J].科技視界,2018(7).
[6]Zhao?Z,Yang?Z,Ling?L,et?al.Disease?named?entity?recognition?from?biomedical?literature?using?a?novel?convolutional?neural?network:[J].Bmc?Medical?Genomics,2017,10(Suppl?5):73.
基金項(xiàng)目:
2019年校級(jí)教育教學(xué)改革研究與實(shí)踐項(xiàng)目(2019JGXM25).
作者簡(jiǎn)介:
馮彩英(1987-),女,河南商丘人,碩士,主要從事計(jì)算智能與模式識(shí)別研究.
劉龍飛(1995-),男,河南平頂山人,本科,主要從事模式識(shí)別研究.
(作者單位:商丘工學(xué)院信息與電子工程學(xué)院)