丁蒙 戴曙光 于恒
摘要:隨著人工智能的發(fā)展,計(jì)算機(jī)對于輸入的手寫字符識別需求越來越大,采用改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)對手寫字符進(jìn)行識別分類。用VGGNet16模型構(gòu)造卷積神經(jīng)網(wǎng)絡(luò)模型,每一層都加上批標(biāo)準(zhǔn)化,通過平均值池化對卷積層進(jìn)行下采樣,利用PRELU激活函數(shù)代替ReLU激活函數(shù),最后通過Softmax分類器對手寫字符圖像進(jìn)行分類。在MNIST手寫數(shù)字?jǐn)?shù)據(jù)集和EMNIST-bymerge手寫字母及數(shù)字?jǐn)?shù)據(jù)集下進(jìn)行實(shí)驗(yàn),改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)模型在MNIST數(shù)據(jù)集中識別準(zhǔn)確率提升到99.65%,在EMNIST數(shù)據(jù)集中識別準(zhǔn)確率為90.37%。因此,改進(jìn)模型識別準(zhǔn)確率較高,適用于手寫字符識別。
關(guān)鍵詞:人工智能;卷積神經(jīng)網(wǎng)絡(luò);手寫字符識別;全局平均池化
DOI: 10. 11907/rjdk.191411
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
中圖分類號:TP317.4
文獻(xiàn)標(biāo)識碼:A
文章編號:1672-7800(2020)001-0275-05
0 引言
智能化信息時(shí)代的到來,使得人工智能與機(jī)器學(xué)習(xí)技術(shù)得到了飛速發(fā)展。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的分支,是一種試圖使用包含復(fù)雜結(jié)構(gòu)或由多重非線性變換構(gòu)成的多個(gè)處理層通過大規(guī)模原始數(shù)據(jù)進(jìn)行高層抽象的算法。典型的深度學(xué)習(xí)網(wǎng)絡(luò)有卷積神經(jīng)網(wǎng)絡(luò)[1-2]( Convolution NeuralN etwork,CNN)、深度置信網(wǎng)絡(luò)[3](Deep Belief Network,DBN)、堆疊自動(dòng)編碼器[4](Stacked Auto Encoders,SAE)3種類型。深度學(xué)習(xí)技術(shù)在圖像分類方面有顯著效果,其中CNN能夠?qū)斎霐?shù)據(jù)的二維結(jié)構(gòu)進(jìn)行處理,避免了將二維數(shù)據(jù)轉(zhuǎn)成一維數(shù)據(jù)時(shí)丟失輸入圖像的空間結(jié)構(gòu)特征分布,因此在圖像處理方面能夠得到了更好的結(jié)果。2014年,由牛津大學(xué)計(jì)算機(jī)視覺幾何組( Visual Geometry Group)和Google DeepMind公司研究院共同研發(fā)的深度卷積神經(jīng)網(wǎng)絡(luò)VGCNet[5]模型在ILSVRC2014圖像分類和定位項(xiàng)目比賽中分別取得第二、第一名的成績。
手寫字符識別應(yīng)用廣泛,在數(shù)據(jù)信息處理與存儲、辦公自動(dòng)化和人機(jī)交互等方面扮演著重要角色,是圖像處理與模式識別的一個(gè)重要組成部分。Cortes等[6]在1995年提出了利用SVM分類器進(jìn)行手寫字符識別,Amit等[7]在1997年通過最鄰近分類對手寫字符進(jìn)行識別。不過上述兩種方法容易受外界影響,特征表達(dá)能力不足。早在1990年,文獻(xiàn)[2]就提出了卷積神經(jīng)網(wǎng)絡(luò),Goodfellow等[8]在2013年通過在卷積層加Maxout操作對手寫字符進(jìn)行識別。由于卷積神經(jīng)網(wǎng)絡(luò)參數(shù)眾多,因此Lin[9]提出用mlpconv層和全局平均池化對手寫字符進(jìn)行識別,以更少量的參數(shù)達(dá)到同樣效果。文獻(xiàn)[10]提出使用隨機(jī)池化代替最大值池化進(jìn)行手寫字符識別。卷積層使用ReLU激活函數(shù),可能會將負(fù)值特征信息丟棄導(dǎo)致分類出現(xiàn)錯(cuò)誤,因此文獻(xiàn)[11]提出了一種參數(shù)修正線性單元( Parametric Rectified linear unit.PReLU)代替ReLU激活函數(shù)對手寫字符進(jìn)行識別。2015年,文獻(xiàn)[12]提出用基于CNN和SVM的}昆合卷積神經(jīng)網(wǎng)絡(luò)對手寫字符進(jìn)行識別,使手寫數(shù)字識別準(zhǔn)確率達(dá)到了99.15%,文獻(xiàn)[21]使用融合卷積神經(jīng)網(wǎng)絡(luò)模型對手寫數(shù)字進(jìn)行識別,準(zhǔn)確率達(dá)到了99.36%。本文基于VGCNet16模型,用全局平均池化代替全連接層以減少訓(xùn)練參數(shù),利用PReLU作為激活函數(shù)保留負(fù)值特征信息,采用批標(biāo)準(zhǔn)化[13]( Batch Normalization,BN)操作加速收斂過程,在MNIST數(shù)據(jù)集[15]上與其它方法對比驗(yàn)證模型的有效性,在EM-NIST-bymerge數(shù)據(jù)集[16]上評估模型識別英文和數(shù)字有效性。
1 卷積神經(jīng)網(wǎng)絡(luò)模型VGGNet
VCCNet模型是由牛津大學(xué)計(jì)算機(jī)視覺幾何組和Google DeepMind公司研究院共同研發(fā)的深度卷積神經(jīng)網(wǎng)絡(luò)模型。如圖1所示,在VGGNet16模型中,整組結(jié)構(gòu)都包含五組卷積層,每個(gè)卷積層后面跟隨著一個(gè)池化層,5組卷積層中包含級聯(lián)的卷積層越來越多。在卷積層中使用非常小的感受野,其卷積核大小為3x3,卷積步長為1。池化層采用最大值池化,池化核大小為2x2,步長為2。最后三層為全連接層,前兩層每層均有4 096個(gè)通道,第3個(gè)通道為Softmax分類層。全連接層的配置相同,因此隱藏層都配備了修正線性單元ReLU。
2 卷積神經(jīng)網(wǎng)絡(luò)改進(jìn)方法
傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)模型,采用ReLU激活函數(shù)丟棄負(fù)值特征信息,全連接層的參數(shù)占所有參數(shù)的絕大部分,導(dǎo)致模型收斂速度慢。改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)模型應(yīng)用PReLU激活函數(shù)保留負(fù)值特征信息,使用全局平均池化代替全連接層以減少參數(shù)數(shù)量,用批標(biāo)準(zhǔn)化操作使模型更快收斂。
2.1 批標(biāo)準(zhǔn)化
訓(xùn)練深層神經(jīng)網(wǎng)絡(luò)是復(fù)雜的,在網(wǎng)絡(luò)訓(xùn)練中,每一層的參數(shù)是不斷更新變化的,這導(dǎo)致每層的輸入分布逐漸發(fā)生偏移變動(dòng),整體分布慢慢往非線性函數(shù)取值區(qū)間的上下限靠近,使得后向傳播時(shí)底層神經(jīng)網(wǎng)絡(luò)梯度消失,引起In -ternal Covariate Shift現(xiàn)象,從而減慢訓(xùn)練速度。在神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練中,可以采用批標(biāo)準(zhǔn)化操作以避免Internal Co-variate Shift發(fā)生。
在卷積神經(jīng)網(wǎng)絡(luò)中,BN使用權(quán)值共享策略,每一個(gè)特征圖為一個(gè)小批次B,再求得特征圖里所有神經(jīng)元的均值和方差,對特征圖做歸一化操作。本文網(wǎng)絡(luò)BN層位于激活函數(shù)后面,此時(shí)前向傳導(dǎo)如下:
z=BN(g(Wu+ b))
(7)
其中,u為BN層的輸入,W為權(quán)重,b為偏差,g(.)為激活函數(shù),z為輸出。
2.2 PReLU激活函數(shù)
修正線性單元對于深度卷積神經(jīng)網(wǎng)絡(luò)必不可少。應(yīng)用ReLU激活函數(shù)可能會出現(xiàn)部分神經(jīng)元永遠(yuǎn)不會被激活,相應(yīng)參數(shù)也永遠(yuǎn)不會被更新的情況,為了避免這種情況的發(fā)生,本文采用PReLU激活函數(shù)。ReLU與PReLU的區(qū)別如圖2所示。
2.3 全局平均池化(Global Average Pooling,GAP)
傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)中,全連接層的作用是將卷積層與Softmax層連接起來,將卷積層產(chǎn)生的特征圖展開成向量并對向量做乘法以降低其維度,最后通過Softmax層中進(jìn)行分類,其操作如圖3(a)所示。然而,全連接層參數(shù)量過大,導(dǎo)致訓(xùn)練速度降低,容易過度擬合,從而阻礙整個(gè)網(wǎng)絡(luò)的泛化能力。本文采用全局平均池化層替代全連接層,在卷積層生成若干個(gè)特征圖后,全局平均池化對每個(gè)特征圖取平均值,將生成的向量直接送入Softmax層中進(jìn)行分類,其操作如圖3(b)所示。全局平均池化相對于全連接層的一個(gè)優(yōu)點(diǎn)是,通過強(qiáng)制映射特征和類別之間的對應(yīng)關(guān)系,它更接近卷積結(jié)構(gòu)。因此,特征圖可以容易地解釋為類別置信圖。另一個(gè)優(yōu)點(diǎn)是在全局平均池化中沒有要優(yōu)化的參數(shù),因此在這一層中避免了過擬合。同時(shí),全局平均池對空間信息進(jìn)行了求和,從而對輸入的空間平移具有更強(qiáng)的魯棒性。
2.4 改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)
改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)模型基本結(jié)構(gòu)主要由5個(gè)卷積塊、5個(gè)BN層、5個(gè)池化層、1個(gè)全局平均池化層和一個(gè)Soft-max層組成。網(wǎng)絡(luò)具體配置和參數(shù)數(shù)量如表1所示。
3 實(shí)驗(yàn)結(jié)果與分析
為了評估模型性能,本文在MNIST數(shù)據(jù)集和收集的英文數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)。采用基于Pvthon語言的Keras深度學(xué)習(xí)框架,實(shí)驗(yàn)平臺為Windowsl0 64位操作系統(tǒng),硬件環(huán)境為2.3 CHz Intel Core i5-6300HQ和NVDIA GeForce CTX950M CPU。
3.1 MNIST數(shù)據(jù)集
MNIST數(shù)據(jù)集包含了70 000張手寫數(shù)字圖像,其中訓(xùn)練樣本有60 000個(gè),測試樣本有1 000個(gè),每張圖像的大小為28x28。設(shè)置epoch為100. batch設(shè)置為500,每個(gè)epoch需要訓(xùn)練120次,總迭代訓(xùn)練次數(shù)為12 000次。卷積層步長設(shè)置為1,池化層步長設(shè)置為2,采用Adam優(yōu)化算法[17]進(jìn)行網(wǎng)絡(luò)訓(xùn)練,用反向傳播算法調(diào)整網(wǎng)絡(luò)權(quán)值,用交叉熵函數(shù)衡量訓(xùn)練損失,采用自適應(yīng)學(xué)習(xí)速率對訓(xùn)練集樣本進(jìn)行學(xué)習(xí),訓(xùn)練結(jié)果如圖4所示。經(jīng)過100次迭代準(zhǔn)確率已達(dá)到 99.65%。
本文通過以下實(shí)驗(yàn)進(jìn)行對比,方案一采用傳統(tǒng)的VCG模型,方案二是加了Batch Normalization的VGC模型,方案三是采用PReLU作為激活函數(shù)的VCC模型,方案四是全局平均池化層代替全連接層的VGC模型,方案五是本文提出的用全局平均池化代替全連接層,利用PReLU作為激活函數(shù),加入Batch Normalization的VCC模型。實(shí)驗(yàn)結(jié)果如圖5與表2所示。其中圖5為訓(xùn)練過程中的損失曲線,表2為5種方案測試集的最大準(zhǔn)確率。從圖5可以看出,加入BatchN ormalization之后,神經(jīng)網(wǎng)絡(luò)收斂更快,使用PReLU激活函數(shù)之后,效果比原來的更好,全局平均池化因?yàn)闇p少了訓(xùn)練參數(shù),也較VGC模型收斂稍快,本文改進(jìn)VGC模型收斂更快,參數(shù)更少,且測試準(zhǔn)確率最高,達(dá)99.65%,驗(yàn)證了本文模型的有效性。
為進(jìn)一步驗(yàn)證模型的有效性,本文將提出的方法與近幾年手寫字符識別的方法進(jìn)行對比試驗(yàn),實(shí)驗(yàn)結(jié)果如表3所示。文獻(xiàn)[18]表明通過減少全連接層參數(shù)可以提高識別準(zhǔn)確率到99.29%,文獻(xiàn)[19]通過在隱藏層設(shè)置SVM輔助分類器提高學(xué)習(xí)過程,使識別準(zhǔn)確率達(dá)到了99.61%,文獻(xiàn)[20]通過一種融合卷積神經(jīng)網(wǎng)絡(luò)使識別準(zhǔn)確率為99.10%,文獻(xiàn)[21]通過基于PCA及k-鄰近算法識別準(zhǔn)確率為94%,文獻(xiàn)[22]在TensorFlow平臺使用CNN卷積神經(jīng)網(wǎng)絡(luò)使識別準(zhǔn)確率達(dá)到99.36%,文獻(xiàn)[23]基于深度殘差網(wǎng)絡(luò)識別準(zhǔn)確率為99.45%。而本文方法識別準(zhǔn)確率明顯高于其它文獻(xiàn)所提方法,極大降低了手寫數(shù)字分類錯(cuò)誤率。
3.2 EMNIST-bymerge數(shù)據(jù)集
為進(jìn)一步驗(yàn)證模型有效性,繼續(xù)在EMNIST-bymerge英文數(shù)字?jǐn)?shù)據(jù)集[16]上進(jìn)行實(shí)驗(yàn)。所選的數(shù)據(jù)集訓(xùn)練集有697 932張圖片,測試集有116 323張圖片,圖片大小為28x28。圖片包括0-9、小寫字母a-z和大寫字母A-Z,因?yàn)椴糠謹(jǐn)?shù)字和英文大小寫字母(例如0和0,w、v和z等字母的大小寫)不能分辨,因此只分類47種,部分?jǐn)?shù)據(jù)集圖片顯示如圖6所示。
用本文提出的模型在EMNIST-bymerge數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),訓(xùn)練結(jié)果如圖7所示。EMNIST-bymerge數(shù)據(jù)集測試中將BP神經(jīng)網(wǎng)絡(luò)設(shè)定為10 000個(gè)神經(jīng)元,并對數(shù)據(jù)集進(jìn)行測試,得到的測試準(zhǔn)確率為80.87%+0.05%,本文使用改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)模型在數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)得到的測試準(zhǔn)確率為90.37%,因此本文提出的模型極大提高了測試準(zhǔn)確率,驗(yàn)證了其對手寫字符識別的有效性。
4 結(jié)語
本文提出了一種基于VCCNet的改進(jìn)模型,通過對每層輸入進(jìn)行Batch Normalization,用PReLU激活函數(shù)以保留特征圖的負(fù)值信息,全局平均池化減少參數(shù)數(shù)量,最后輸入到Softmax層中進(jìn)行分類。本文在MNIST手寫數(shù)字?jǐn)?shù)據(jù)集上進(jìn)行實(shí)驗(yàn)并與其它方法對比,實(shí)驗(yàn)表明,改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)模型對手寫字符識別準(zhǔn)確率更高,具有更好的魯棒性和泛化能力。本文還在EMNIST-bymerge手寫英文數(shù)字?jǐn)?shù)據(jù)集上進(jìn)行實(shí)驗(yàn),將數(shù)據(jù)集的測試準(zhǔn)確率從80.87%提高到90.37%。因此,本文提出的改進(jìn)模型可以應(yīng)用于手寫數(shù)字和手寫英文識別。后續(xù)研究可圍繞以下方面開展:①使用手寫漢字等數(shù)據(jù)集,進(jìn)一步驗(yàn)證網(wǎng)絡(luò)結(jié)構(gòu)的泛化能力;②對改進(jìn)模型作進(jìn)一步研究,例如采用隨機(jī)池化等方式,進(jìn)一步提高識別準(zhǔn)確率;③采用其它深度學(xué)習(xí)算法,如ResNet或者DenseNet等模型在手寫字符方面作進(jìn)一步探討;④本文方法應(yīng)用不限于手寫字符方面,例如可應(yīng)用于人臉表情識別等圖像分類領(lǐng)域,在人臉表情數(shù)據(jù)集上進(jìn)行測試驗(yàn)證。
參考文獻(xiàn):
[1]
LECUN Y,BOTTOU L,BENCIO Y,et al.Gradient-based learningapplied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11):2278-2324.
[2]
LECUN Y,BOSER B E,DENKER J S,et al.Hanchvritten digit rec-ognition with a back-propagation network[C].Advances in neural in—formation processing systems, 1990: 396-404.
[3]
HINTON G E,OSINDERO S, TEH Y W.A fast learning algorithm fordeep belief nets[J]. Neural Computation, 2006, 18(7):1527-1554.
[4]
HINTON G E,Salakhutdinov R R.Reducing the dimensionalitv of da-to with neural networks[J]. Science, 2006, 5786( 313): 504-507.
[5]
SIMONYAN K,ZISSERMAN A.Very deep convolutional networks forlarge-scale image recognition[EB/OL]. https://arxiv.org/abs/1409. 1556.
[6]
CORTES C, VAPNIK V.Support-vector net,vorks[J].Machine Learn-ing,1995, 20(3):273-297.
[7]
AMIT Y, GEMAN D, WILDER K.Joint induction of shape featuresand tree classifiers [J]. IEEE Transactions on Pattern Analvsis&Ma-chine Intelligence, 1997( 11): 1300-1305.
[8]
GOODFELLOW I J,WARDE-FARLEY D. MIRZA M,et al. Maxoutnet,vorks[C]. The 30th International Conference on Machine Learn-ing, 2013:1319-1327.
[9]
LIN M,CHEN Q, YAN S. Network in network[ C]. International Con-ference on Learning Representations( ICLR), 2014: 1-10.
[10] ZEILER M D, FERGUS R.Stochastic pooling for regularization ofdeep convolutional neural networks[C].Proceedings of the Interna-tional Conference on Learning Representation( ICLR), 2013: 1-9.
[11]
CLOROT X, BORDES A, BENCIO Y.Deep sparse rectifier neuralnetworks[C].Proceedings of the Fourteenth International Conferenceon Artificial Intelligence and Statistics, 201 l:3 15-323.
[12]
HE K, ZHANC X, REN S,et al. Delving deep into rectifiers: sur-passing human-level performance on imagenet classification[C].Pro-ceedings of the IEEE International Conference on Computer Vision,2015:1026-1034.
[13]
YU N, JIAO P,ZHENG Y. Handwritten digits recognition base on im-proved LeNet5 [Cl.The 27th Chinese Control and Decision Confer-ence.2015:4871-4875.
[14]
IOFFE S,SZEGEDY C.Batch normalization: accelerating deep net-work training by reducing internal covariate shift [C].ICML'15 Pro-ceedings of the 32nd International Conference on Machine Learning,2015:448-458.
[15]
LECUN Y, CORTES C. The mnist database of handwritten digits[Z].2010.
[16]
COHEN G,AFSHAR S, TAPSON J, et al. EMNIST: an extension ofMNIST to handwritten letters[DB/OL]. https://arxiv.org/pdf/1702.05 373.pdf.
[17]
KINCMAD P,BA J. Adam:a method for stochastic optimization[ EB/OL]. https: //newzoo.com/insights/articles.
[18]
YANG Z, MOCZULSKI M,DENIL M,et al. Deep fried convnets[C].Proceedings of the IEEE International Conference on Computer Vi-sion,2015:1476-1483.
[19]
LEE C Y, XIE S,GALLAGHER P, et al. Deeply-supervised nets[C]. Artificial Intelligence and Statistics, 2015: 562-570.
[20] 陳玄,朱榮,王中元.基于融合卷積神經(jīng)網(wǎng)絡(luò)模型的手寫數(shù)字識別[J].計(jì)算機(jī)工程,2017( 11):187-192.
[21]顧潘龍,史麗紅.基于PCA及k-鄰近算法的復(fù)雜環(huán)境數(shù)字手寫體識別[J].電子技術(shù),2018, 47(10):44-48.
[22] 陳昊,郭海,劉大全,等.基于TensorFlow的手寫數(shù)字識別系統(tǒng)[J].信息通信,2018 (3):46.
[23]趙朋成,馮玉田,羅濤,等.基于深度殘差網(wǎng)絡(luò)的手寫體數(shù)字識別[J].工業(yè)控制計(jì)算機(jī),2017,30( 10):82-83.
(責(zé)任編輯:孫娟)
作者簡介:丁蒙(1995-),女,上海理工大學(xué)光電信息與計(jì)算機(jī)工程學(xué)院碩士研究生,研究方向?yàn)閳D像處理、機(jī)器視覺;戴曙光(1957-)男,上海理工大學(xué)光電信息與計(jì)算機(jī)工程學(xué)院教授、博士生導(dǎo)師,研究方向?yàn)闄C(jī)器視覺、圖像處理;于恒(1998-),男,上海理工大學(xué)光電信息與計(jì)算機(jī)工程學(xué)院學(xué)生,研究方向?yàn)閳D像處理。