王梓橋 劉沛豐 郝峰 王錚 崔現(xiàn)偉
摘要:本文基于深度學(xué)習(xí)技術(shù)搭建卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks-簡(jiǎn)稱(chēng)CNN),用MNIST數(shù)據(jù)集作為訓(xùn)練以及測(cè)試樣本設(shè)計(jì)了一個(gè)手寫(xiě)數(shù)字識(shí)別技術(shù)應(yīng)用系統(tǒng)。系統(tǒng)采用ReLu的激活函數(shù),實(shí)驗(yàn)結(jié)果表明對(duì)手寫(xiě)數(shù)字的識(shí)別準(zhǔn)確精度可以達(dá)到98.6%。
關(guān)鍵詞:手寫(xiě)數(shù)字識(shí)別;深度學(xué)習(xí);卷積神經(jīng)網(wǎng)絡(luò)
中圖分類(lèi)號(hào):TP391.413 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2018)11-0078-02
0 引言
近年來(lái),隨著深度學(xué)習(xí)的飛速發(fā)展以及卷積神經(jīng)網(wǎng)絡(luò)在圖像識(shí)別的研究取得突破性進(jìn)展,手寫(xiě)數(shù)字識(shí)別問(wèn)題已成為該領(lǐng)域的一個(gè)熱點(diǎn)。傳統(tǒng)的人工提取圖像特征方式逐漸被基于深度學(xué)習(xí)的深層網(wǎng)絡(luò)學(xué)習(xí)特征方式所取代。針對(duì)手寫(xiě)數(shù)字識(shí)別問(wèn)題的研究具有較大的學(xué)術(shù)價(jià)值,該技術(shù)實(shí)用性強(qiáng)且應(yīng)用廣泛。卷積神經(jīng)網(wǎng)絡(luò)是近年發(fā)展起來(lái),并引起廣泛重視的一種高效識(shí)別方法。由于該網(wǎng)絡(luò)避免了對(duì)圖像的復(fù)雜前期預(yù)處理,可以直接輸入原始圖像,因而得到廣泛應(yīng)用[1-2]。
本文基于深度學(xué)習(xí)技術(shù)搭建卷積神經(jīng)網(wǎng)絡(luò)模型,探索了激活函數(shù)和學(xué)習(xí)速率的影響,并獲得了較好的實(shí)驗(yàn)效果。
1 深度學(xué)習(xí)簡(jiǎn)介
深度學(xué)習(xí)的概念來(lái)自于人工神經(jīng)網(wǎng)絡(luò)的研究,是機(jī)器學(xué)習(xí)的發(fā)展與延伸,也是其第二次浪潮。20世紀(jì)90年代初,各種淺層機(jī)器學(xué)習(xí)模型被提出,成為當(dāng)時(shí)的主流。而在2006年,深度學(xué)習(xí)的概念由Hinton等人提出,從此開(kāi)啟深度學(xué)習(xí)在學(xué)術(shù)界和工業(yè)界的浪潮。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中一種基于對(duì)數(shù)字進(jìn)行表征學(xué)習(xí)的方法,其動(dòng)機(jī)在于建立、模擬人腦進(jìn)行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),它模仿人腦的機(jī)制來(lái)解釋數(shù)據(jù),例如圖像、聲音和文本。深度機(jī)器學(xué)習(xí)方法有監(jiān)督學(xué)習(xí)與無(wú)監(jiān)督學(xué)習(xí)之分,例如,卷積神經(jīng)網(wǎng)絡(luò)就是一種深度的監(jiān)督學(xué)習(xí)下的機(jī)器學(xué)習(xí)模型,而深度置信網(wǎng)絡(luò)(Deep Belief Nets,簡(jiǎn)稱(chēng)DBNs)就是一種無(wú)監(jiān)督學(xué)習(xí)下的機(jī)器模型。本文實(shí)驗(yàn)采用的是CNN模型。
2 模型構(gòu)建
手寫(xiě)數(shù)字識(shí)別系統(tǒng)的結(jié)構(gòu)采用分層設(shè)計(jì),主要包括:輸入層、兩層卷積層、兩層池化層、兩層全連接層、Softmax輸出層共八層結(jié)構(gòu)。結(jié)構(gòu)如圖1所示。
第一層卷積層:設(shè)置輸入為每個(gè)圖像處理后得到的像素矩陣(28*28*1)。設(shè)置卷積核的大小為5*5,步長(zhǎng)為1。設(shè)置卷積層深度為32。深度過(guò)大會(huì)導(dǎo)致運(yùn)算時(shí)間變長(zhǎng),甚至導(dǎo)致過(guò)擬合問(wèn)題,而通過(guò)調(diào)整參數(shù)發(fā)現(xiàn)深度為32是一個(gè)最合適的值,可以得到最好的準(zhǔn)確率。輸出為在此層經(jīng)過(guò)卷積運(yùn)算后得到卷積層節(jié)點(diǎn)矩陣(24*24*32)。
第一層池化層:設(shè)置輸入為上一層運(yùn)算所得到的卷積層節(jié)點(diǎn)矩陣(24*24*32)。設(shè)置過(guò)濾器大小為2*2,步長(zhǎng)為1。輸出為在此層進(jìn)行最大池化后得到池化層節(jié)點(diǎn)矩陣(12*12*10)。
第二層卷積層:設(shè)置輸入為上一層池化后得到的節(jié)點(diǎn)矩陣(12*12*10)。設(shè)置卷積核大小為5*5,卷積層深度為64。輸出為卷積層節(jié)點(diǎn)矩陣(8*8*64)。
第二層池化層:設(shè)置輸入為上一層運(yùn)算所得到卷積層節(jié)點(diǎn)矩陣(8*8*64)。設(shè)置過(guò)濾器大小為2*2,步長(zhǎng)為1。輸出為池化層節(jié)點(diǎn)矩陣(4*4*64)。
第一層全連接層:設(shè)置輸入為由第四層池化層的輸出轉(zhuǎn)化而成的一維矩陣。輸出由前向傳播算法得到。
第二層全連接層:輸入與第一層全連接層相同。
Softmax層:通過(guò)Softmax回歸處理全連接層的輸出結(jié)構(gòu)得到分類(lèi)結(jié)果。
3 參數(shù)選擇
常用的激活函數(shù)有Sigmoid函數(shù)、Tanh函數(shù)、ReLu函數(shù)。經(jīng)對(duì)比實(shí)驗(yàn)得出結(jié)論:ReLu函數(shù)并不需要輸入歸一化來(lái)防止它們達(dá)到飽和,所以本文實(shí)驗(yàn)采用ReLu函數(shù)作為激活函數(shù)。
學(xué)習(xí)速率對(duì)于手寫(xiě)數(shù)字識(shí)別系統(tǒng)的影響很大,當(dāng)學(xué)習(xí)速率過(guò)大時(shí),會(huì)導(dǎo)致權(quán)重?cái)[動(dòng)幅度過(guò)大,只能在代價(jià)函數(shù)最小值點(diǎn)附近來(lái)回波動(dòng),從而無(wú)法獲得最小值點(diǎn);當(dāng)學(xué)習(xí)速率過(guò)小時(shí),不僅會(huì)大幅增加學(xué)習(xí)時(shí)間,還浪費(fèi)了計(jì)算機(jī)資源。因此應(yīng)合理選擇學(xué)習(xí)速率。本文實(shí)驗(yàn)采用指數(shù)衰減的方式設(shè)置學(xué)習(xí)速率,可以保證訓(xùn)練速度前期較快、后期減慢,利于得到最優(yōu)解。
4 實(shí)驗(yàn)
使用MNIST訓(xùn)練數(shù)據(jù)集訓(xùn)練5000次,設(shè)置每迭代100次輸出一次日志,得到準(zhǔn)確率。經(jīng)過(guò)5000次訓(xùn)練后準(zhǔn)確率保持在一個(gè)穩(wěn)定水平。為了使結(jié)果更加直觀,繪制如下準(zhǔn)確率隨訓(xùn)練次數(shù)變化的折線(xiàn)圖。經(jīng)過(guò)5000次訓(xùn)練后準(zhǔn)確率保持在一個(gè)穩(wěn)定水平,如圖2所示。最終測(cè)試結(jié)果準(zhǔn)確率為98.6%。
5 結(jié)語(yǔ)
在這項(xiàng)工作中,我們探索了卷積神經(jīng)網(wǎng)絡(luò)技術(shù)在手寫(xiě)數(shù)字識(shí)別領(lǐng)域的應(yīng)用。實(shí)驗(yàn)所用的MNIST數(shù)據(jù)集具有一定權(quán)威性,其樣本規(guī)模較大,數(shù)字圖片來(lái)源廣泛。我們采用了ReLu作為激活函數(shù),優(yōu)化了學(xué)習(xí)速率,在實(shí)驗(yàn)數(shù)據(jù)集上獲得了98.6%的高準(zhǔn)確率。
參考文獻(xiàn)
[1]Pradeep J, Srinivasan E, Himavathi S. Neural network based handwritten character recognition system without feature extraction. IEEE International Conference on Computer Communication and Electrical Technology (ICCCET),2011:40-44.
[2]Ian Goodfellow,Yoshua Bengio, Aaron Courville. Deep Learning.MIT Press. http://www.deeplearningbook.org,2016.
Application of Handwritten Digit Recognition Technology Based on Deep Learning
WANG Zi-qiao,LIU Pei-feng, HAO Feng, WANG Zheng, CUI Xian-wei
(School of Computer Science, North China University of Technology, Beijing? 100144)
Abstract:In this paper, we build a Convolutional Neural Networks (CNN) based on deep learning technology, and designs a handwritten digit recognition system. We use MNIST data set as our training and testing set. ReLu activation function is employed to improve recognition accuracy. Experimental results show that the accuracy of recognition of handwritten digits can be 98.6%.
Key words:handwritten digit recognition; deep learning; convolutional neural network