?

大數據下的基于深度神經網的相似漢字識別

2014-01-01 02:55楊釗陶大鵬張樹業金連文
通信學報 2014年9期
關鍵詞:錯誤率手寫分類器

楊釗,陶大鵬,張樹業,金連文

(華南理工大學 電子與信息學院,廣東 廣州 510641)

1 引言

手寫漢字識別技術已取得了較大的進步,然而無約束的手寫漢字識別仍然是漢字識別領域有待解決的問題之一[1]。其中影響識別率的一個重要因素是手寫漢字中存在大量的相似字,如“夫”,“失”和“天”以及“看”,“著”和“春”等,書寫隨意性引起的不規則變形更增加了識別的困難。因此,研究相似漢字識別,是提升無約束手寫漢字識別率的關鍵,該問題的研究最近幾年引起了廣泛關注,例如有學者在梯度特征提取的基礎上采用兩級手寫漢字識別架構來改善系統識別性能[2~4]。第一級采用簡單快速的分類器進行粗分類,分類結果需要以很高的概率測試樣本的正確類別,即獲得相似字表;第二級分類器采用一個速度較慢但性能更好的分類器進行精細分類,即從候選相似字集中挑出正確的標注。Leung針對“相似字對”增加額外的關鍵區域特征來改善二級分類性能[2],Gao提出利用基于復合距離的線性判別分析(LDA, linear discriminant analysis)增強相似字之間的判別信息[3],Tao首次將流形學習算法引入相似字特征選擇,極大地改善了小樣本訓練情況下相似字識別率[4]。然而上述方法都是在經典的梯度特征提取基礎上進行的,且傳統的梯度特征提取方法容易丟失相似字之間細微的鑒別信息,這樣直接制約著后續特征選擇方法以及分類器的性能。

深度神經網(DNN, deep neural network)[5,6]的巨大成功,提供了避免人工設計特征缺陷的方法。深度神經網是一種含有多隱含層且具有特定結構和訓練方法的神經網絡,受大腦對信息層次處理方式的啟發,從低層向上逐層學習更高層次的語義特征,近兩年引起了機器學習領域的廣泛關注[7]。常見的深度神經網包括由多層受限玻爾茲曼機組成的深度信念網(DBN, deep belief network)[8],以及具有卷積結構的深度神經網(CNN, convolutional neural network)[9]。相對于深度信念網,卷積神經網更適合于二維視覺圖像,它直接從原始的像素出發,分布式地提取具有平移和扭曲不變性的特征并實現分類[10]。

卷積神經網是由美國學者 LeCun提出的一種層與層之間局部連接的深度神經網絡[9],在許多領域已取得了成功的應用,如手寫數字、英文字符的識別等。LeCun提出一種 5層的卷積神經網結構(LeNet-5),相比于傳統的神經網絡,極大地改進了手寫數字的識別率[11]。在 LeNet-5的基礎上,Deng[12]、Yuan[13]等人進行輸出錯誤糾正編碼改進(outputs with error-correcting codes)分別用于光學字符和大小寫英文字母識別。除此之外,研究人員還成功地將卷積神經網用于自然場景中的數字[14,15]和字符識別[16,17],并指出卷積神經網能夠學習出優于人工設計的特征。

相比之下,深度卷積神經網在手寫漢字上的研究報道非常少,這是因為卷積神經網是一種深層且復雜的網絡結構,需要大量的訓練樣本[18,19]。與英文、數字這一類的問題相比,漢字屬于大類別,難以針對每一個字收集到大量樣本。然而隨著互聯網的快速發展,云計算技術普及[20],用戶已經能夠享受到越來越多基于云計算的服務。本文利用作者所在實驗室設計的手寫識別云服務平臺,在用戶授權許可的情況下,通過基于云端服務平臺自動獲取海量手寫數據,使得設計基于大數據的手寫識別研究成為可能[21]。

基于上述分析,本文提出了使用具有卷積結構的深度神經網用于相似手寫漢字特征學習和識別,如圖1所示,相對于傳統的方法,它能夠有效避免人工設計梯度特征的缺陷。同時采用云平臺獲取的大數據集更好地訓練深度模型,整個系統可以通過以下步驟實現:1)利用第一級分類器生成相似字表;2)利用大量手寫樣本構成相似字集來訓練卷積神經網;3)在云端采用卷積神經網進行精細分類并返回識別結果到客戶端。

圖1 基于特征提取和基于深度神經網的方法用于相似字識別

2 相似字集生成

2.1 相似字表生成

相似字表生成方法包括基于距離的相似字和基于頻度統計的相似字[22]?;诰嚯x的相似方法認為,相似漢字的特征向量模板在特征空間中“距離”也很近。因此選定一個目標漢字集合后,將特征空間中“距離”最近的K個漢字作為其相似字。該方法生成相似字簡單,但它僅考慮每一類漢字的平均情況,并不能反映各類字體的變形情況。某些漢字類別的樣本離散度很高,此時基于距離的相似字方法有不足之處。所以本文采用基于頻度統計的相似字生成方法來進行相似字的生成[22],其基本原理是將目標字的一些樣本送入分類器,通過分類器的輸出得分排序生成K個候選字。通過統計訓練子集中所有漢字的識別結果,計算識別成目標漢字的頻率,頻率高的漢字類別就是該目標字的相似字。

2.2 相似字樣本生成

云計算為手寫識別提供了新的應用框架,通過云平臺可以建立基于云計算的云手寫識別系統[21]。手寫漢字識別作為一個服務(HCRaaS, handwritten character recognition as a service)駐留云端,客戶端的手寫筆跡通過無線網絡發送到云服務器,云服務器進行識別并將結果返回給客戶端。借助于已有的云手寫平臺,可以獲得大量的手寫數據。利用文獻[21]所述的手寫識別云服務器收集了10組相似字數據,每組10個漢字類別,每個字10 000個樣本,從中分別選擇2組(G1, G2)書寫較工整和2組(G3,G4)書寫相對隨意的手寫漢字樣本做對比實驗,部分手寫樣本如表1所示。

表1 相似字集以及相應的手寫樣本

3 卷積神經網

卷積神經網是一種主要用于二維數據(如圖像視頻)的深度神經網絡模型,可以直接對如原始的圖像等處理對象進行特征學習和分類,需要較少的預處理工作,且有效地避免了人工特征提取方法的缺陷。本文采用的卷積神經網通過共享權值和網絡結構重組將特征學習融入到多層神經網絡中,同時使得整個網絡可以通過反向傳播算法得到很好的訓練并用于分類。卷積神經網由卷積層和采樣層交替組成,每一層都由多個特征圖(feature map)組成,如圖 2所示。卷積層的每一個像素(神經元)與上一層的一個局部區域相連,可以看做一個局部特征檢測器,每個神經元可以提取初級的視覺特征如方向線段、角點等。同時這種局部連接使得網絡具有更少的參數,有利于訓練。卷積層后面通常是一個采樣層,以降低圖像的分辨率,同時使得網絡具有一定的位移、縮放和扭曲不變性。

對于卷積層,前一層的特征圖與多組卷積模板進行卷積運算然后通過激活函數得到該層的特征圖,卷積層的計算形式如下

其中,l代表卷積層所在的層數,k是卷積核,通常是 5×5的模板,b為偏置,f代表激活函數,為1/(1+e-x),Mj表示上一層的一個輸入特征圖。

圖2 卷積神經網結構

采樣層就是對上一卷積層的特征圖做下采樣,得到相同數目的特征圖,計算形式如下

其中,down(·)表示下采樣函數,β表示下采樣系數,同樣b為偏置,f為激活函數1/(1+e-x)。

卷積神經網采用誤差反向傳播來訓練,訓練的參數包括卷積層的卷積核模板k和偏置b,以及采樣層的采樣系數β(本文中取常量0.25)和偏置b。卷積神經網與傳統的神經網絡訓練一樣,采用隨機梯度下降。設誤差函數為:E(k,β,b),則網絡訓練的實質就是梯度?E/?k、?E/?β、?E/?b的計算,具體推導過程見文獻[23]。

本文采用的卷積神經網如圖2所示,輸入層是28×28手寫漢字圖像。C1層是第一個卷積層,該層有8個24×24的特征圖,每個特征圖中的一個像素(節點或神經元)與輸入層相對應的一個 5×5的區域相互連接,共(5×5+1)×8=208個訓練參數。S1層是含有8個大小為12×12特征圖的下采樣層,特征圖中的每一個節點與C1層中相應的特征圖以2×2的區域相互連接,共 1×8=8個偏置參數。C2是第 2個卷積層,具有8個特征圖且每個特征圖的大小為8×8,共(5×5+1)×8×8=1 664 個參數。S1 與 C2 層的連接在特征提取中取了重要的作用。S2是第2個采樣層,具有8個特征圖且每個特征圖的大小為4×4,共1×8=8個偏置參數。最后一層是含有10個節點的輸出層,對應著輸出類別,與S2層進行全連接,共 4×4×8×10=1 280個參數。整個 CNN 模型含有208+8+1 664+8+1 280=3 168個參數。

4 實驗結果及分析

4.1 實驗數據

對于從云平臺上整理得到的相似手寫漢字數據,考慮到漢字書寫的隨意程度直接影響著最終的識別率,本文分別選擇2組書寫較工整和2組書寫相對隨意無約束的手寫漢字樣本進行對比實驗。每一組相似字包含10個漢字類別,每個漢字有10 000個樣本。表1列出了該4組相似字以及相應的手寫樣本,其中G1、G2書寫相對工整,G3、G4書寫相對隨意。

為了驗證卷積神經網在相似字識別中的性能,將卷積神經網與基于特征提取的支持向量機(SVM,support vector machine)和最近鄰分類器(1-NN,1-nearest neighbors)進行對比。對于SVM和1-NN,首先將所有樣本轉化為64×64的脫機圖像,然后提取梯度特征[24],得到每個樣本為512維的特征向量。而對于CNN,將手寫數字圖像直接壓縮到28×28,這樣減少CNN的參數,從而提高訓練速度。

4.2 實驗結果

實驗采用如圖2所示的卷積神經網結構,采用Liblinear[25]用于SVM分類實驗,1-NN采用最小歐氏距離進行分類。為了分析 CNN的性能并考慮到訓練樣本對分類結果的影響,實驗中分別使用了不同大小的訓練樣本做對比實驗(“Tr-Ts”分別表示每個字的訓練樣本和測試樣本個數)。表 2中列出了幾種方法的錯誤識別率,其中最后一列“錯誤率減少”指標是指本文所提出的CNN方法相對1-NN和SVM的錯誤率下降的百分比。

相似字識別作為手寫漢字識別系統的一個重要部分,其模型運行速度以及存儲量大小值得考慮。實驗中以“Tr-Ts”分別為1 000~200和3 000~200的情形下所有測試樣本(10類漢字,所以測試樣本大小均為2 000)的分類時間來評估算法的運行速度(實驗機器,Intel i7-2600 CPU, 3.4 GHz, 16.0 G RAM),以模型的參數個數來計算模型的存儲量。統計結果如表3所示。

4.3 實驗結果分析及討論

表2 幾種方法錯誤率對比實驗結果

對比表2中的數據,當訓練樣本增加時,1-NN、SVM、CNN的錯誤率都整體下降,且本文采用的CNN模型具有更低的錯誤率。特別是在書寫較為隨意的情況下,隨著訓練樣本的增加,CNN錯誤率下降更為明顯。這表明大數據對深度卷積神經網絡的性能提升是十分關鍵的,因為隨著樣本的增加,CNN能夠更好地進行分布式的深度學習,自動學習特征并進行分類。SVM和1-NN性能較差的原因是在特征提取過程中丟失了細微的鑒別信息,相比而言,1-NN的識別性能最差,這主要是因為1-NN分類器是基于歐氏空間距離最小的假設,然而實際特征空間并不完全與歐氏空間一致。

從表3可以看出,在運算效率方面SVM最優,CNN其次,這是因為CNN是一種深層的神經網絡,而SVM是一種兩層的淺層網絡結構,且SVM所用的輸入特征(512維)比 CNN所用的輸入特征(28×28=784維)維數要明顯低。相比之下,1-NN最慢,且1-NN會隨著訓練樣本的增加變得更慢,其中SVM和CNN都在合理的時間范圍內;在存儲量上,線性SVM的參數主要由特征維數和類別數決定(512×10=5 120),相比之下CNN存儲量更低,有明顯的優勢。

表3 幾種方法運算效率(每2 000個漢字)與存儲量對比

為了進一步分析CNN的性能,圖3給出G3組相似字在每個字訓練樣本為1 000、測試樣本為200、和訓練樣本為3 000、測試樣本為1 000時的訓練誤差、訓練集錯誤率、測試集錯誤率曲線??梢钥闯?,CNN在相似字識別上具有較好的性能,隨著迭代次數的增加,訓練誤差減少的同時,訓練集和測試集的錯誤率均平穩下降,沒有出現過擬合現象。

5 結束語

圖3 卷積神經網的訓練誤差、訓練集錯誤率和測試集錯誤率曲線

本文提出利用深度卷積神經網自動學習相似手寫漢字特征并進行識別,同時采用相似漢字的大數據集來訓練模型參數以進一步提高識別率。實驗結果表明,相比傳統方法而言:1) 深度卷積神經網能夠自動學習有效特征并進行識別,避免了人工設計特征的缺陷;2) 隨著訓練數據的增大,深度卷積神經網在降低錯誤識別率方面表現得更為顯著,大數據訓練對提升深度神經網絡的識別率作用明顯;3) 深度神經網應對書寫隨意性的能力強,在漢字書寫較隨意的情況下,有較好的識別結果;4) 與SVM相比,深度神經網在保證合理的運算效率的同時,存儲量指標有較大優勢。

[1] LIU C L, YIN F, WANG Q F,et al. ICDAR 2011 Chinese handwriting recognition competition[A]. Proceedings of IEEE International Conference on Document Analysis and Recognition[C]. Beijing, China,2011. 1464-1469.

[2] LEUNG K C, LEUNG C H. Recognition of handwritten Chinese characters by critical region analysis[J]. Pattern Recognition, 2010,43(3): 949-961.

[3] GAO T F, LIU C L. High accuracy handwritten Chinese character recognition using LDA-based compound distances[J]. Pattern Recognition, 2008, 41(11): 3442-3451.

[4] TAO D P, LIANG L Y, JIN L W,et al. Similar handwritten Chinese character recognition by kernel discriminative locality alignment[J].Pattern Recognition Letters, 2014, 35(1): 186-194.

[5] BENGIO Y. Learning deep architectures for AI[J]. Foundations and trends in Machine Learning, 2009, 2(1):1-127.

[6] BENGIO Y, COURVILLE A. Deep Learning of Representations[M].Handbook on Neural Information Processing. Springer Berlin Heidelberg, 2013.

[7] DENG L, HINTON G, KINGSBURY B. New types of deep neural network learning for speech recognition and related applications: an overview[A]. Proceedings of IEEE International Conference on Acoustics, Speech, and Signal Processing[C]. Vancouver, Canada,2013.

[8] HINTON G E, SALAKHUTDINOV R R. Reducing the dimensionality of data with neural networks[J]. Science, 2006, 313(5786): 504-507.

[9] LECUN Y, BOSERB, DENKER J S,et al. Handwritten digit recognition with a back-propagation network[A]. Advances in neural information processing systems[C]. Denver, United States, 1990. 396-404.

[10] LECUN Y, KAVUKCUOGLU K, FARABET C. Convolutional networks and applications in vision[A]. Proceedings of IEEE International Symposium onCircuits and Systems[C]. Paris, France, 2010.253-256.

[11] LECUN Y, BOTTOU L, BENGIO Y,et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998,86(11): 2278-2324.

[12] DENG H, STATHOPOULOS G, SUEN C Y. Error-correcting output coding for the convolutional neural network for optical character recognition[A]. Proceedings of IEEE International Conference on Document Analysis and Recognition[C].Barcelona, Spain, 2009.581-585.

[13] YUAN A, BAI G, JIAO L,et al. Offline handwritten English character recognition based on convolutional neural network[A]. Proceedings of IAPR International Workshop on Document Analysis Systems[C].Gold Cost, QLD, 2012. 125-129.

[14] NETZER Y, WANG T, COATES A,et al. Reading digits in natural images with unsupervised feature learning[A]. NIPS Workshop on Deep Learning and Unsupervised Feature Learning[C]. Granada, Spain,2011.

[15] SERMANET P, CHINTALA S, LECUN Y. Convolutional neural networks applied to house numbers digit classification[A].Proceedings of IEEE International Conference on Pattern Recognition[C].Tsukuba,Japan, 2012. 3288-3291.

[16] COATES A, CARPENTER B, CASE C,et al. Text detection and character recognition in scene images with unsupervised feature learning[A]. Proceedings of IEEE International Conference on Document Analysis and Recognition[C]. Beijing, China, 2011. 440-445.

[17] WANG T, WU D J, COATES A,et al. End-to-end text recognition with convolutional neural networks[A]. Proceedings of IEEE International Conference on Pattern Recognition[C].Tsukuba, Japan, 2012.3304-3308.

[18] SIMARD P, STEINKRAUS D, PLATT J C. Best practices for convolutional neural networks applied to visual document analysis[A]. Proceedings of IEEE International Conference on Document Analysis and Recognition[C]. Edinburgh, UK, 2003.958-963.

[19] CIRESAN D C, MEIER U, GAMBARDELLA L M,et al. Convolutional neural network committees for handwritten character classification[A]. Proceedings of IEEE International Conference on Document Analysis and Recognition[C]. Beijing, China, 2011. 1135-1139.

[20] VAQUERO L M, CACERES J, MORAN D. The challenge of service level scalability for the cloud[J]. International Journal of Cloud Applications and Computing (IJCAC), 2011, 1(1):34-44.

[21] GAO Y, JIN L W, HE C,et al. Handwriting character recognition as a service: a new handwriting recognition system based on cloud computing[A]. Proceedings of IEEE International Conference on Document Analysis and Recognition[C]. Beijing, China, 2011. 885-889.

[22] LIU Z B, JIN L W. A static candidates generation technique and its application in two-stage LDA Chinese character recognition[A]. Proceedings of Chinese Control Conference[C]. Hunan, China, 2007.571-575.

[23] BOUVRIE J. Notes on Convolution Neural networks[R]. MIT CBCL,2006.

[24] BAI Z L, HUO Q. A study on the use of 8-directional features for online handwritten Chinese character recognition[A]. Proceedings of IEEE International Conference on Document Analysis and Recognition[C]. Seoul, Korea, 2005. 262-266.

[25] FAN R E, CHANG K W, HSIEH C J,et al. LIBLINEAR: a library for large linear classification[J]. The Journal of Machine Learning Research, 2008, 9: 1871-1874.

猜你喜歡
錯誤率手寫分類器
我手寫我心
抓住身邊事吾手寫吾心
小學生分數計算高錯誤率成因及對策
基于集成學習的MINIST手寫數字識別
基于差異性測度的遙感自適應分類器選擇
基于實例的強分類器快速集成方法
正視錯誤,尋求策略
解析小學高段學生英語單詞抄寫作業錯誤原因
深度學習在手寫漢字識別中的應用綜述
基于層次化分類器的遙感圖像飛機目標檢測
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合