劉 聰 張新英
(中原工學(xué)院信息商務(wù)學(xué)院,河南 鄭州 450007)
?
集成極限學(xué)習(xí)機在手寫體數(shù)字識別中的應(yīng)用
劉聰張新英
(中原工學(xué)院信息商務(wù)學(xué)院,河南鄭州450007)
摘要:本文提出了一種ELM_Adaboost算法:把ELM(Extream leanring machine)作為弱分類器,訓(xùn)練ELM預(yù)測樣本輸出,通過Adaboost算法得到多個ELM弱分類器組成的強分類器。利用MATLAB GUI編寫一套手寫體數(shù)字識別系統(tǒng),采集大量的學(xué)習(xí)樣本,提取數(shù)字樣本的“十三點網(wǎng)格特征”,使用ELM_Adaboost建立分類器。結(jié)果表明,該算法能夠達(dá)到98.5%的識別率,為手寫體數(shù)字識別提供指導(dǎo)性作用。
關(guān)鍵詞:極限學(xué)習(xí)機;集成學(xué)習(xí);手寫體數(shù)字識別
隨著國家信息化進(jìn)程的加速,在郵政編碼、統(tǒng)計報表、財務(wù)報表、銀行票據(jù)等處理大量字符信息錄入的場合,對手寫數(shù)字識別系統(tǒng)的應(yīng)用需求越來越強烈,對于主要都是由阿拉伯?dāng)?shù)字及少量特殊符號組成的各種編號和統(tǒng)計數(shù)據(jù),處理這類信息的核心技術(shù)是手寫體數(shù)字識別。將識別系統(tǒng)用于數(shù)字信息自動處理領(lǐng)域,節(jié)省人力,提高效率,加快信息流動,可創(chuàng)造巨大的經(jīng)濟效益。因此,手寫數(shù)字的識別研究有著重大的現(xiàn)實意義。
考慮到傳統(tǒng)神經(jīng)網(wǎng)絡(luò)(BP、RBF等)在訓(xùn)練過程中易陷入局部最優(yōu)解,參數(shù)調(diào)整復(fù)雜,最近由新加坡學(xué)者提取出的一種新前饋神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法—極限學(xué)習(xí)機,它隨機設(shè)置前饋神經(jīng)網(wǎng)絡(luò)的初始權(quán)值,通過求解輸出權(quán)值的最小二乘解來完成網(wǎng)絡(luò)的訓(xùn)練。整個過程不需要迭代,相對BP等算法有極快的速度、良好的泛化性。將極限學(xué)習(xí)機應(yīng)用于模式識別領(lǐng)域已經(jīng)得到很多專家學(xué)者的關(guān)注。
針對傳統(tǒng)神經(jīng)網(wǎng)絡(luò)用于模式識別的過程中存在容易陷入局部極小值、收斂速度慢、解決小樣本問題效果差等情況,將傳統(tǒng)神經(jīng)網(wǎng)絡(luò)與Adaboost算法相結(jié)合,引入到分類及預(yù)測的問題中已經(jīng)得到許多學(xué)者的研究[1]。本文將Adaboost與ELM算法相結(jié)合用于手寫體數(shù)字識別中,進(jìn)一步增強ELM分類器的泛化性,提高手寫體數(shù)字的識別率。
極限學(xué)習(xí)機是Huang等提出的一種單隱層前饋神經(jīng)網(wǎng)絡(luò)的新學(xué)習(xí)算法。它隨機給定輸入權(quán)值矩陣和隱含層偏差,輸出權(quán)值矩陣?yán)米钚《私庥嬎愕玫健?/p>
假設(shè)給定N個訓(xùn)練樣本集(xi,ti),其中 xi=[xi1,xi2,……,xin]T∈Rn,ti=[ti1,ti2,……,tim]T∈Rm,ELM網(wǎng)絡(luò)的激活函數(shù)g(x),隱含層節(jié)點數(shù)目為L,則ELM算法的訓(xùn)練步驟如下所示:①隨機給定網(wǎng)絡(luò)的隱含層連接權(quán)值(ai,……,bi),i=1,……,L;②隱含層激勵函數(shù)為g(x)的前饋神經(jīng)網(wǎng)絡(luò)的輸出可以表示為βi∈Rm。該式可以簡化為:Hβ=Y。
Adaboost算法是一種自適應(yīng)提升迭代算法,核心思想是將多個弱分類器的輸出結(jié)果合成一個新的結(jié)果而產(chǎn)生有效分類。給定原始樣本集D(x,y),從中選取m組數(shù)據(jù)作為訓(xùn)練樣本,將m組數(shù)據(jù)初始權(quán)重都設(shè)置為1/m。用弱分類器訓(xùn)練T次,根據(jù)得到的結(jié)果更新訓(xùn)練數(shù)據(jù)權(quán)重。分類結(jié)果越好的分類器權(quán)重越大,經(jīng)過T次迭代,可得到一個強分類器,即是由若干弱分類器加權(quán)得到。ELM_Adaboost模型即把ELM神經(jīng)網(wǎng)絡(luò)作為弱分類器,反復(fù)訓(xùn)練ELM神經(jīng)網(wǎng)絡(luò)預(yù)測樣本輸出,通過Adaboost算法得到多個ELM神經(jīng)網(wǎng)絡(luò)弱分類器組成的強分類器。編程實現(xiàn)方法如下。
2.1樣本選擇和網(wǎng)絡(luò)初始化
從網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)庫中選擇m組訓(xùn)練數(shù)據(jù),初始化測試數(shù)據(jù)的分布權(quán)值Dl(i)=1/m,根據(jù)樣本輸入輸出維數(shù)確定ELM網(wǎng)絡(luò)的隱含層節(jié)點數(shù)目,初始化ELM網(wǎng)絡(luò)權(quán)值與閾值。
2.2弱分類器訓(xùn)練
訓(xùn)練第t個弱分類器時,用訓(xùn)練數(shù)據(jù)訓(xùn)練ELM網(wǎng)絡(luò)并且預(yù)測訓(xùn)練數(shù)據(jù)輸出,得到預(yù)測序列g(shù)(t)的預(yù)測誤差和et,誤差和et的計算公式為:
式中,g(t)為預(yù)測分類結(jié)果,y為期望分類結(jié)果。
2.3計算預(yù)測序列權(quán)重
根據(jù)預(yù)測序列g(shù)(t)的預(yù)測誤差et計算序列的權(quán)重at,權(quán)重計算公式為:
2.4測試數(shù)據(jù)權(quán)重調(diào)整
根據(jù)預(yù)測序列權(quán)重at調(diào)整下一輪訓(xùn)練樣本的權(quán)重,調(diào)整公式為:
式中,Bt是歸一化因子,目的是權(quán)重比例不變的情況下使分布權(quán)值和為1。
2.5強分類器函數(shù)
訓(xùn)練T輪后得到T組弱分類函數(shù)f(gt,at),由T組弱分類函數(shù)f(gt,at)組合得到了強分類函數(shù)h(x):
3.1樣本采集
為了獲取手寫體數(shù)字樣本,本文利用MATLAB GUI編寫了一套手寫體數(shù)字樣本采集系統(tǒng),利用getframe函數(shù)保存手寫體數(shù)字圖片??紤]到不同人的書寫習(xí)慣問題,本文采集了10個人手寫從0~9的數(shù)字圖片,每張圖片數(shù)量為50個,則樣本數(shù)量為5 000個。
3.2圖片預(yù)處理
由于MATLAB的采樣時間跟不上鼠標(biāo)的滑行速度,會造成斷點,影響最終的識別率。因此,需要對采集到的圖像進(jìn)行預(yù)處理。為了方便特征提取,本文采取的圖像預(yù)處理步驟為灰度化→腐蝕膨脹→取反→二值化→縮小字符范圍。
網(wǎng)格特征已經(jīng)被廣泛應(yīng)用于數(shù)字識別的特征提取中,并已經(jīng)被證明具有很好的效果。本文提取的“十三點網(wǎng)格特征”內(nèi)容如下:①把字符水平分成4份,垂直分成2份,分別統(tǒng)計這8個區(qū)域的白像素的個數(shù),得到8個特征,如圖a所示;②水平和垂直各劃兩條線把水平和垂直分割成3份,統(tǒng)計這4條線穿過的白像素個數(shù),得到4個特征,如圖b所示;③字符圖像全部白像素數(shù)目作為1個特征,如圖c所示。綜合①②③中的特征,一共得到一個13維的特征。
圖1 數(shù)字識別的特征提取
本文針對手寫體數(shù)字識別,建立了一套樣本采集庫并提取了數(shù)字樣本的網(wǎng)格特征。本文同時提出了一種ELM_Adaboost算法,進(jìn)一步增強了ELM分類器的泛化性。與傳統(tǒng)分類器進(jìn)行比較,將該算法其應(yīng)用于手寫體數(shù)字識別中,提高了識別率。
參考文獻(xiàn):
[1]張威,魏冬生.基于Adaboost與支持向量機的人臉特征提取[J].微電子學(xué)與計算機,2007(5):69-72.
中圖分類號:TP391.41
文獻(xiàn)標(biāo)識碼:A
文章編號:1003-5168(2016)02-0027-02
收稿日期:2016-01-26
作者簡介:劉聰(1988-),女,碩士,研究方向:控制工程與模式識別。
Integration Extream Leanring Machine Used in Handwritten Numeral Recognition
Liu CongZhang Xinying
(College of Information and Business,Zhongyuan University of Technology,Zhengzhou Henan 450007)
Abstract:An algorithm called ELM_Adaboost was proposed in this paper.Firstly,taking ELM(extream leanring machine)as a weak classifier,and then training ELM algorithm and predictting the output of sam?ples;Finally,obtaining a strong classifiers by the plurality of the ELM weak classifiers through the ada?boost algorithm.A set of handwritten numeral recognition system was composed by MATLAB GUI,and a large number of learning samples were collected,the Thirteen point grid feature of the digital sample was extracted,ELM_Adaboost was used to build the classifier.The results showed that the algorithm could achieve a recognition rate of 98.5%,which provides a guiding role for handwritten numeral recognition.
Keywords:extream leanring machine;ensemble learning;handwritten numeral recognition