• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于卷積神經(jīng)網(wǎng)絡的手寫數(shù)字識別

      2017-08-16 10:26:01李斯凡高法欽
      關鍵詞:手寫訓練樣本識別率

      李斯凡,高法欽

      (浙江理工大學信息學院, 杭州 310018)

      ?

      基于卷積神經(jīng)網(wǎng)絡的手寫數(shù)字識別

      李斯凡,高法欽

      (浙江理工大學信息學院, 杭州 310018)

      在LeNet-5模型的基礎上,改進了卷積神經(jīng)網(wǎng)絡模型,對改進后的模型及網(wǎng)絡訓練過程進行了介紹,推導了網(wǎng)絡模型訓練過程中涉及到的前向和反向傳播算法。將改進的模型在MNIST字符庫上進行實驗,分析了卷積層不同濾波器數(shù)量、每批數(shù)量、網(wǎng)絡學習率等參數(shù)對最終識別性能的影響,并與傳統(tǒng)識別方法進行對比分析。結果表明:改進后的網(wǎng)絡結構簡單,預處理工作量少,可擴展性強,識別速度快,具有較高的識別率,能有效防止網(wǎng)絡出現(xiàn)過擬合現(xiàn)象,在識別性能上明顯優(yōu)于傳統(tǒng)方法。

      卷積神經(jīng)網(wǎng)絡;手寫數(shù)字;識別;LeNet-5

      0 引 言

      手寫數(shù)字識別是利用機器或計算機自動辨認手寫體阿拉伯數(shù)字的一種技術,是光學字符識別技術的一個分支[1]。該技術可以應用到郵政編碼、財務報表、稅務系統(tǒng)數(shù)據(jù)統(tǒng)計、銀行票據(jù)等手寫數(shù)據(jù)自動識別錄入中。由于不同的人所寫的字跡都不相同,對大量的手寫體數(shù)字實現(xiàn)完全正確地識別不是一件簡單的事情。隨著全球信息化的飛速發(fā)展和對自動化程度要求的不斷提高,手寫體數(shù)字識別的應用需求急迫[2],因此,研究一種準確又高效的識別方法有著重要的意義。

      傳統(tǒng)的識別方法如最近鄰算法[3]、支持向量機[4]、神經(jīng)網(wǎng)絡[5-7]等,對復雜分類問題的數(shù)學函數(shù)表示能力以及網(wǎng)絡的泛化能力有限,往往不能達到高識別精度的要求,隨著科技的發(fā)展和科學研究的不斷深入,卷積神經(jīng)網(wǎng)絡[8-10](convolutional neural networks,CNNs)的出現(xiàn)為解決這個問題提供了可能,它最初由美國學者Cun等[11]提出,是一種層與層之間局部連接的深度神經(jīng)網(wǎng)絡。作為深度學習中最成功的模型之一,其已成為當前圖像識別領域的研究熱點。但研究發(fā)現(xiàn),卷積神經(jīng)網(wǎng)絡在識別訓練過程中會出現(xiàn)過擬合現(xiàn)象。本文詳細介紹了基于LeNet-5進行優(yōu)化改進的卷積神經(jīng)網(wǎng)絡模型及其算法的實現(xiàn)過程,在算法的實現(xiàn)部分加入懲罰項,避免過擬合現(xiàn)象發(fā)生。在此基礎上,分析了不同網(wǎng)絡參數(shù)對識別的收斂速度和性能的影響。與傳統(tǒng)方法相比,本文的改進模型減少了預處理工作量,同時還有效避免了人工提取特征的不足,提高了識別率和魯棒性。

      1 卷積神經(jīng)網(wǎng)絡

      卷積神經(jīng)網(wǎng)是一種主要用于二維數(shù)據(jù)處理的深度神經(jīng)網(wǎng)絡模型,它能夠學習大量輸入與輸出之間的映射關系。由卷積層和采樣層交替組成,每一層有多個特征圖,卷積層的每一個神經(jīng)元與上一層的一個局部區(qū)域相連,這種局部連接使網(wǎng)絡具有更少的參數(shù),有利于訓練。通過卷積層的運算,可以使原信號特征增強并且降低噪聲。通過采樣層降低特征圖的分辨率并抽樣出圖片的顯著特征,使模型具有抗噪能力,在保留圖像有用信息的同時又降低了特征的維度。

      1.1 LeNet-5網(wǎng)絡模型

      LeNet-5是典型的卷積神經(jīng)網(wǎng)絡模型,網(wǎng)絡包含輸入一共有8層,除去輸入和輸出,中間的連接層C1到F6可看成是隱含層,輸入層由32×32個感知節(jié)點組成,接著是交替出現(xiàn)的卷積層和抽樣層,C1是第一個隱藏層也稱卷積層,進行卷積運算,S2層是采樣層,實現(xiàn)抽樣,C3作為第三隱藏層,進行卷積操作,然后經(jīng)隱藏層S4進行二次抽樣,其后是三個神經(jīng)元(節(jié)點)數(shù)分別為120、84、10的全連接層。LeNet-5網(wǎng)絡模型結構如圖1所示。

      圖1 LeNet-5結構

      1.2 卷積神經(jīng)網(wǎng)絡模型結構設計

      對原始的LeNet-5模型進行如下改進:在LeNet-5網(wǎng)絡中,激勵函數(shù)是雙曲正切函數(shù),現(xiàn)將sigmoid函數(shù)作為網(wǎng)絡的激勵函數(shù),使網(wǎng)絡各層的輸出均在[0,1]范圍內(nèi),并去掉C5層,直接將經(jīng)S4二次采樣的特征圖與F6以全連接的方式連接,同時改變各層神經(jīng)元的個數(shù)。具體模型結構如圖2所示,對比改進前后的模型可以看到,改進后的網(wǎng)絡隱含層只有5層,模型神經(jīng)元數(shù)量減少了很多,具有更少的參數(shù),所以訓練的時間也會大大的縮短,同時由于改進后的網(wǎng)絡依舊是卷積層和采樣層交替出現(xiàn),所以改進的網(wǎng)絡仍保留了圖像對位移、縮放和扭曲的不變性和良好魯棒性的優(yōu)點。

      圖2 改進的網(wǎng)絡模型結構

      模型結構中,輸入層輸入規(guī)格為28×28的手寫數(shù)字圖片,接下來是交替出現(xiàn)的卷積和采樣層,C1層是第一個卷積層,該層有6個24×24的特征圖,這一層特征圖中的每個神經(jīng)元是輸入的圖像與一個5×5卷積核進行卷積操作,然后經(jīng)過激活函數(shù)輸出形成的,在卷積時,同一特征映圖上的神經(jīng)元權值相同,網(wǎng)絡可以并行的學習,卷積層的結果作為下一層(即S2層,也稱采樣層)的輸入,S2層特征圖中的每一個神經(jīng)節(jié)點與C1層中相應的特征圖以2×2的區(qū)域相連,經(jīng)過采樣層后特征圖的個數(shù)不變,但輸出大小在兩個維度上都縮小2倍。C3是第2個卷積層,S4是第2個采樣層,其后連接的是單層感知器,將S4層的12個特征圖展開,最后是與S4層以全連接的方式相連得到輸出的輸出層,含有10個節(jié)點對應10種輸出類別,整個CNN網(wǎng)絡模型一共有3966個參數(shù),與LeNet-5模型的60000個參數(shù)相比,參數(shù)個數(shù)大大減少。

      1.3 卷積神經(jīng)網(wǎng)絡訓練算法

      1.3.1 網(wǎng)絡訓練過程

      網(wǎng)絡模型的訓練過程可分為兩個階段:

      第一階段,前向傳播:

      a)在開始訓練前,建立網(wǎng)絡并進行初始化設置,設置網(wǎng)絡層數(shù)以及卷積核大小,用小的隨機數(shù)對所有權值進行初始化,設置學習率和迭代次數(shù),選定訓練樣本和測試樣本集;

      b)然后將訓練樣本(x,y)輸入網(wǎng)絡,通過各層網(wǎng)絡得到輸出t。

      第二階段,反向傳播:

      a)計算實際輸出與相應的理想輸出的均方誤差;

      b)反向傳播對權值參數(shù)優(yōu)化,通過梯度下降法,計算網(wǎng)絡中誤差對權值的偏導數(shù),調(diào)整權值矩陣,更新權值和偏置,不斷進行迭代直到滿足預先設定的迭代次數(shù)要求,訓練完成。

      1.3.2 算法實現(xiàn)

      下面對訓練中的相關算法的具體實現(xiàn)進行介紹,實驗中用l表示當前層,那么當前層的輸出可以表示為:

      xl=f(ul),ul=Wlxl-1+bl

      (1)

      其中:ul為l層(當前層)的輸入;Wl為l層特征圖的權值;xl-1為上一層的輸出;bl為當前層的額外偏置(也稱基);f為激活函數(shù),實驗中將sigmoid函數(shù)作為激活函數(shù)。

      使用卷積核對上一層的特征圖進行卷積,然后通過激活函數(shù),得到卷積層的輸出特征圖。卷積層的計算形式如式(2)所示:

      (2)

      采樣層中,對上一卷積層的特征圖進行下采樣,采樣后輸入輸出特征圖數(shù)量不變,其計算形式如下:

      (3)

      其中:n表示從卷積層到抽樣層的窗口大小,Mj表示選擇的輸入特征圖的集合。

      對單個樣本(x,y),它經(jīng)網(wǎng)絡產(chǎn)生的誤差可用代價函數(shù)表示,如式(4)所示:

      (4)

      網(wǎng)絡在前向傳播過程中,使用每個訓練樣本的誤差的總和表示全部訓練集上的誤差,對于m個訓練樣本((x1,y1),(x2,y2),…,(xm,ym))的誤差,可用平方誤差代價函數(shù)表示:

      (5)

      為了防止網(wǎng)絡出現(xiàn)過擬合,實驗時在平方誤差代價函數(shù)中加入懲罰項:

      (6)

      其中:yi表示第i個樣本的理想輸出。ti表示第i個樣本對應網(wǎng)絡的實際輸出。 第一項是均方差項,用來表示代價函數(shù),第二項是權重衰減項,用來減小權重的幅度,防止過度擬合。λ為權重衰減參數(shù) ,用于控制公式中兩項的相對重要性。

      在反向傳播過程中,對層l的每個神經(jīng)元對應的權值的權值更新,需要先求層l的每一個神經(jīng)節(jié)點的靈敏度,那么對于第n層(輸出層)每個神經(jīng)節(jié)點根據(jù)式(7)計算靈敏度:

      (7)

      激活函數(shù)的具體函數(shù)形式為:

      (8)

      對式(8)求導可得:

      (9)

      因此輸出層的靈敏度可表示為:

      (10)

      對l=n-1,n-2,…,2的各個層,當前層l每個神經(jīng)節(jié)點i對應的靈敏度計算公式如下:

      (11)

      將式(11)中的n-1與n替換為l與l+1,就可以得到:

      (12)

      那么l=n-1,n-2,…,2的各個層的靈敏度為:

      δl=Wl+1δl+1xl(1-xl)

      (13)

      那么各層中誤差對W和b的偏導數(shù)就可以表示如下:

      (15)

      最后就可以按照如下公式對層l中的參數(shù)W和b進行調(diào)整和更新,其中η表示學習率:

      (16)

      (17)

      實驗通過識別率來度量手寫字符的識別結果,識別率計算公式如下:

      誤識別率/%=錯誤識別個數(shù)/樣本總數(shù)×100

      (18)

      2 實驗結果及分析

      2.1 實驗數(shù)據(jù)

      實驗所用的數(shù)據(jù)來自MNIST手寫數(shù)字字符庫,該字符庫中含有0~9的訓練數(shù)據(jù)集和測試數(shù)據(jù)集兩種圖片,包括60000個樣例的訓練樣本集和10000個樣例的測試樣本集,每張圖片的灰度級是8,大小為28*28,圖3為部分樣本,分別從MNIST字符庫的訓練樣本集和測試樣本集中隨機抽取2000個和1000個樣本作為本實驗中的訓練樣本和測試樣本。

      圖3 字符庫部分樣本

      2.2 實驗結果分析與討論

      由于訓練樣本較多,無法實現(xiàn)一次性將全部樣本輸入到網(wǎng)絡,因此采取分批次輸入,使網(wǎng)絡得到充分訓練,為研究每批輸入到網(wǎng)絡中的樣本數(shù)量對識別率的影響,分別將單次輸入網(wǎng)絡的樣本圖片數(shù)量設置為一批輸入50、100、200,得到的實驗結果如圖4所示。

      圖4 每批輸入樣本數(shù)量對識別性能的影響

      圖4中,橫坐標表示網(wǎng)絡訓練過程中的迭代次數(shù),縱坐標表示測試樣本集的誤識別率。從圖4中可以看出,隨著迭代次數(shù)的增加,誤識別率逐漸減小,網(wǎng)絡逐漸達到收斂狀態(tài),當每批輸入50個樣本到網(wǎng)絡時,迭代30次左右就可以取得較高的識別率,識別效果明顯,對樣本訓練時,單次輸入樣本數(shù)量越少,網(wǎng)絡收斂速度越快,同時誤識別率比單次輸入100和200個樣本都要低。

      在訓練樣本、測試樣本數(shù)量相同,每批輸入的樣本數(shù)也相同的情況下,對網(wǎng)絡的規(guī)模進行調(diào)整,分別將卷積層C1和C2的濾波器數(shù)量設置為2和8、6和12、10和16,測試網(wǎng)絡規(guī)模對泛化性能的影響,圖5為對訓練集和測試集數(shù)據(jù)使用不同網(wǎng)絡規(guī)模進行識別的結果。

      圖5 網(wǎng)絡規(guī)模對識別性能的影響

      從圖5中可以看出,在迭代30次以后,可達到高于90%的識別率,隨著迭代次數(shù)增加,不同網(wǎng)絡規(guī)模對樣本的識別率越來越高,但變化不大,可認為這時網(wǎng)絡達到收斂,取得最佳識別效果,網(wǎng)絡結構為6-6-12-12時,收斂速度最快,識別效果也比較好,這是因為這時的網(wǎng)絡規(guī)模在2000個訓練樣本下能得到充分訓練。同時,網(wǎng)絡性能達到一定程度后,繼續(xù)增加網(wǎng)絡中各層的規(guī)模,網(wǎng)絡也可以較快的收斂,但對識別率影響不大,這是因為網(wǎng)絡規(guī)模增大后,相應需要學習的參數(shù)也增加了,網(wǎng)絡要充分訓練需要的樣本相應也會增加,而實驗中的2000個訓練樣本可能無法滿足實際訓練要求,使網(wǎng)絡無法得到充分訓練,實驗表明,減小網(wǎng)絡規(guī)模,網(wǎng)絡的泛化能力有降低趨勢,但增加網(wǎng)絡規(guī)模,網(wǎng)絡的泛化能力并沒有明顯的提高,但仍具有較強的穩(wěn)定性能和可擴展性。

      如果學習率設置不合理,會使網(wǎng)絡陷入局部極小值,導致無法收斂,出現(xiàn)過擬合現(xiàn)象。為分析網(wǎng)絡學習率對網(wǎng)絡識別結果的影響,分別將網(wǎng)絡學習率設置為0.2、0.5、1.0、1.2、2.0,實驗結果如圖6所示。

      圖6 不同學習率下的識別結果

      從實驗結果可以看出:網(wǎng)絡學習率越大,收斂速度也越快,網(wǎng)絡識別率相對高一些,當學習率取值為2.0時,開始網(wǎng)絡識別率會下降的很快,隨著迭代次數(shù)增加,識別率很高,但會出現(xiàn)在一個值附近上下波動,不穩(wěn)定,這是學習率取值過大,學習的速度較快引起的??梢钥吹阶R別曲線平穩(wěn)下降,沒有出現(xiàn)過擬合現(xiàn)象。

      在式(4)中已經(jīng)詳述了訓練樣本在前向傳播過程中產(chǎn)生的誤差,本文建立的網(wǎng)絡模型,在不同學習率下,樣本集在網(wǎng)絡中訓練產(chǎn)生的均方誤差如圖7所示。

      圖7 網(wǎng)絡在不同學習率下訓練的誤差曲線

      在圖7中,橫坐標表示訓練樣本的數(shù)量,縱坐標表示計算得到的均方誤差,對網(wǎng)絡用幾個不同的學習速率進行訓練,從訓練后誤差變化曲線可以看出,在訓練過程中,隨著輸入樣本數(shù)量的增加,均方誤差逐漸減小,直到網(wǎng)絡達到一個較穩(wěn)定的值。隨著訓練的進行,當學習率取值為1.0時,均方誤差下降的速度比0.2和0.5時要快,學習率取0.2時,均方誤差的曲線在一段時間變化比較平穩(wěn),收斂速度相對較慢,這是學習率取值偏小的緣故,隨著樣本數(shù)量的增加,收斂速度越快,識別效果也越好。

      為了分析CNN網(wǎng)絡的識別性能,利用幾種常用的識別方法對MNIST字符庫進行識別,結果如表1所示。

      表1 幾種常用方法識別結果

      從表1可以看出,卷積神經(jīng)網(wǎng)絡模型在MNIST手寫數(shù)字字符庫上的誤識別率為0.98%,和其它識別方法相比,其誤識別率更低,表明此方法在手寫體數(shù)字識別方面具有一定的優(yōu)勢。

      3 結 語

      本文對LeNet-5神經(jīng)網(wǎng)絡模型進行了改進,改進后的網(wǎng)絡模型結構簡單,具有更少的參數(shù),使得網(wǎng)絡在相同訓練集上訓練消耗的時間更短。由于本文建立的網(wǎng)絡中間層是卷積層和采樣層的交替出現(xiàn),在網(wǎng)絡中添加或減少網(wǎng)絡層數(shù)容易實現(xiàn),網(wǎng)絡靈活性好,具有很強的擴展性,網(wǎng)絡結構可以根據(jù)實際需要進行調(diào)整,以滿足實際識別要求,與其它常用的分類方法相比,具有明顯的優(yōu)勢。研究結果表明,改進后的網(wǎng)絡能夠很好地提取輸入數(shù)據(jù)特征,識別率較高,懲罰項的加入消除了網(wǎng)絡識別過程中的過擬合現(xiàn)象。同時,通過對識別性能的研究還發(fā)現(xiàn),每批輸入樣本數(shù)量越小,其識別率越高,網(wǎng)絡收斂速度越快,識別性能越好。減少卷積層濾波器數(shù)量,對應的網(wǎng)絡規(guī)模變小,網(wǎng)絡的泛化能力會下降,但增加網(wǎng)絡規(guī)模,網(wǎng)絡的泛化能力沒有太大變化。

      本文的研究可為后續(xù)在識別方面卷積神經(jīng)網(wǎng)絡模型結構的設計提供參考。基于卷積神經(jīng)網(wǎng)絡的識別要取得良好的效果,往往需要大量的訓練樣本,但在實際分類問題中,難以獲取到大量的樣本,在樣本數(shù)量有限的情況下,如何提高網(wǎng)絡的識別性能還有待進一步研究。

      [1] 關保林,巴力登.基于改進遺傳算法的BP神經(jīng)網(wǎng)絡手寫數(shù)字識別[J].化工自動化及儀表,2013,40(6):774-778.

      [2] 馬寧,廖慧惠.基于量子門神經(jīng)網(wǎng)絡的手寫體數(shù)字識別[J].吉林工程技術師范學院學報,2012,28(4):71-73.

      [3] BABU U R, CHINTHA A K, VENKATESWARLU Y. Handwritten digit recognition using structural, statistical features and k-nearest neighbor classifier[J]. International Journal of Information Engineering & Electronic Business,2014,6(1):62-68.

      [4] GORGEVIK D, CAKMAKOV D. Handwritten digit recognition by combining SVM classifiers[C]// The International Conference on Computer as a Tool. IEEE,2005:1393-1396.

      [5] 杜敏,趙全友.基于動態(tài)權值集成的手寫數(shù)字識別方法[J].計算機工程與應用,2010,46(27):182-184.

      [6] 劉煬,湯傳玲,王靜,等.一種基于BP神經(jīng)網(wǎng)絡的數(shù)字識別新方法[J].微型機與應用,2012,31(7):36-39.

      [7] ZHANG X, WU L. Handwritten digit recognition based on improved learning rate bp algorithm[C]// Information Engineering and Computer Science (ICIECS), 2010 2nd International Conference on IEEE,2010:1-4.

      [8] BARROS P, MAGG S, WEBER C, et al. A multichannel convolutional neural network for hand posture recognition[C]//International Conference on Artificial Neural Networks. Springer International Publishing,2014:403-410.

      [9] 宋志堅,余銳.基于深度學習的手寫數(shù)字分類問題研究[J].重慶工商大學學報(自然科學版),2015,32(8):49-53.

      [10] 呂國豪,羅四維,黃雅平,等.基于卷積神經(jīng)網(wǎng)絡的正則化方法[J].計算機研究與發(fā)展,2014,51(9):1891-1900.

      [11] CUN Y L, BOSER B, DENKER J S, et al. Handwritten digit recognition with a back-propagation network[C]// Advances in Neural Information Processing Systems 2. Morgan Kaufmann Publishers Inc.,1990:396-404.

      (責任編輯: 陳和榜)

      Handwritten Numeral Recognition Based on Convolution Neural Network

      LISifan,GAOFaqin

      (School of Information Science and Technology, Zhejiang Sci-Tech University, Hangzhou 310018, China)

      The convolution neural network model is improved on the basis of LeNet-5 model. The improved model and the network training process are introduced, and forward and back propagation algorithms of network model in the process of training are deduced. The improved model is tested on the MNIST character library, and the effects of different filter number at the convolution layer, quantity of each batch and network learning ratio on the performance of the final recognition are analyzed. Meanwhile, and the traditional identification methods are compared with the recognition method in this paper. The experimental results show that the improved network structure is simple, with small workload of pretreatment, strong extensibility, fast recognition and high recognition rate. It can effectively prevent the network over-fitting phenomenon. The recognition performance is significantly superior to traditional methods.

      convolution neural network; handwritten numbers; recognition; LeNet-5

      10.3969/j.issn.1673-3851.2017.05.021

      2016-09-16 網(wǎng)絡出版日期:2017-01-03

      浙江省自然科學基金項目(LY14F030025);國家自然科學基金項目(61402417)

      李斯凡(1991-),女,湖北鄂州人,碩士研究生,主要從事深度學習及大數(shù)據(jù)分析方面的研究。

      高法欽,E-mail: gfqzjlg@126.com

      TP391.4

      A

      1673- 3851 (2017) 03- 0438- 06

      猜你喜歡
      手寫訓練樣本識別率
      手寫比敲鍵盤更有助于學習和記憶
      我手寫我心
      抓住身邊事吾手寫吾心
      基于類圖像處理與向量化的大數(shù)據(jù)腳本攻擊智能檢測
      計算機工程(2020年3期)2020-03-19 12:24:50
      人工智能
      基于真耳分析的助聽器配戴者言語可懂度指數(shù)與言語識別率的關系
      基于集成學習的MINIST手寫數(shù)字識別
      電子制作(2018年18期)2018-11-14 01:48:08
      提升高速公路MTC二次抓拍車牌識別率方案研究
      寬帶光譜成像系統(tǒng)最優(yōu)訓練樣本選擇方法研究
      融合原始樣本和虛擬樣本的人臉識別算法
      電視技術(2016年9期)2016-10-17 09:13:41
      江口县| 杂多县| 合山市| 桂阳县| 平塘县| 吉水县| 河北省| 秦皇岛市| 师宗县| 开原市| 富川| 遂宁市| 顺昌县| 屏东县| 二手房| 黄山市| 仁化县| 高雄市| 新闻| 湖口县| 泽库县| 宝清县| 八宿县| 保康县| 德惠市| 赣榆县| 清苑县| 拉孜县| 香格里拉县| 晴隆县| 宁远县| 伽师县| 嘉定区| 广汉市| 那曲县| 天镇县| 长丰县| 巴中市| 乌鲁木齐市| 东港市| 岳池县|