安麗娜 蔣銳鵬
摘? ?要:隨著科技的不斷發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)被廣泛應(yīng)用于各個(gè)領(lǐng)域之中,研究熱點(diǎn)之一就是手寫數(shù)字的識(shí)別。文章基于深度學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò),用MNIST數(shù)據(jù)集作為訓(xùn)練集和測(cè)試集,同時(shí)對(duì)卷積神經(jīng)網(wǎng)絡(luò)中的卷積層、池化層和全連接層以及激活函數(shù)進(jìn)行介紹,并在Python的環(huán)境下輸入手寫數(shù)字圖片,然后通過卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型運(yùn)用到所提供的數(shù)據(jù)集進(jìn)行效果識(shí)別,將卷積神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)集進(jìn)行訓(xùn)練,在訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)中取得了較好的實(shí)驗(yàn)效果,最終該手寫數(shù)字識(shí)別實(shí)驗(yàn)準(zhǔn)確精度可以達(dá)到99.1%。
關(guān)鍵詞:手寫數(shù)字識(shí)別;深度學(xué)習(xí);卷積神經(jīng)網(wǎng)絡(luò)
1? ? MNIST數(shù)據(jù)集介紹
深度學(xué)習(xí)就像人腦學(xué)習(xí)的過程一樣非常復(fù)雜,要通過上課對(duì)新知識(shí)的理論有一定理解之后,再將所學(xué)到的理論知識(shí)運(yùn)用到實(shí)踐中去,經(jīng)過不斷地思考和訓(xùn)練,以及對(duì)實(shí)驗(yàn)參數(shù)的優(yōu)化,才能得到一個(gè)學(xué)習(xí)模型。其中,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)是包含卷積計(jì)算且具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)[1]。本文用MNIST數(shù)據(jù)集[2]作為訓(xùn)練集和測(cè)試集,想要得到一個(gè)好的學(xué)習(xí)模型,根據(jù)圖像數(shù)據(jù)的類型選擇適用的分類器很關(guān)鍵。深度學(xué)習(xí)隨著時(shí)間的推移而更加深入,將深度學(xué)習(xí)運(yùn)用到手寫數(shù)字識(shí)別中也逐步成熟。目前手寫數(shù)字識(shí)別的方法主要有模板匹配法、統(tǒng)計(jì)決策法、句法結(jié)構(gòu)法、模糊判別法、邏輯推理法和神經(jīng)網(wǎng)絡(luò)法等[3-6]。國(guó)內(nèi)外的研究人員也通過自身的努力取得了一定的研究成果和突破,而且大部分研究成果在市場(chǎng)上隨處可見,給人們的生活帶來了極大的便利。
本文研究的主要內(nèi)容是基于卷積神經(jīng)網(wǎng)絡(luò)的圖像識(shí)別方法,將卷積神經(jīng)網(wǎng)絡(luò)和圖像識(shí)別進(jìn)行結(jié)合,在海量的圖像數(shù)據(jù)中得到有效的信息。根據(jù)傳統(tǒng)圖像識(shí)別方法的缺點(diǎn)和不足之處,提出了自己的優(yōu)化模型,并對(duì)影響實(shí)驗(yàn)結(jié)果的參數(shù)進(jìn)行調(diào)整,訓(xùn)練出更有效果的卷積神經(jīng)網(wǎng)絡(luò)模型,改進(jìn)之后的學(xué)習(xí)模型在圖像檢測(cè)中有了較大的進(jìn)步。
2? ? 理論基礎(chǔ)
2.1? 卷積運(yùn)算
文中所提到的卷積實(shí)則是兩個(gè)變量的一種代數(shù)運(yùn)算,卷積運(yùn)算表示:
在此公式中,ω為有意義的概率密度函數(shù),當(dāng)所提供的參數(shù)為負(fù)值時(shí),則ω=0。卷積運(yùn)算過程中的第一個(gè)參數(shù),叫作輸入值,通過運(yùn)算,得到的第二個(gè)參數(shù),叫作核函數(shù)。
2.2? 池化層和激活函數(shù)
在卷積神經(jīng)網(wǎng)絡(luò)模型中通常使用的池化操作有平均值池化(mean-pooling)和最大值池化(max-pooling),均值操作最后的值為平均值,最值操作最后的值為最大值。池化操作和卷積操作不同的是不需要參數(shù)學(xué)習(xí),使用的過程中只需確定好池化的類型以及池化核的特定大小和步長(zhǎng)。
ReLU函數(shù)是深度學(xué)習(xí)和機(jī)器學(xué)習(xí)中運(yùn)用最為廣泛的激活函數(shù)之一,能夠有效避免參數(shù)的數(shù)值過大所引起的梯度飽和現(xiàn)象,并且該函數(shù)可以加快梯度下降法的收斂速度。
ReLU函數(shù)在數(shù)學(xué)中就是一個(gè)分段函數(shù),其表達(dá)式為:
通過函數(shù)的性質(zhì),可以知道梯度在x≥0時(shí)為1,當(dāng)x<0時(shí)為0。
2.3? 全連接層
Softmax分類器是logistic回歸模型在多分類情況上的推廣[7]。令輸入特征x(i)和樣本y(i),k表示向量的維數(shù),該函數(shù)表達(dá)式為:
式中,θ1, θ2, ……,θk∈是模型參數(shù),所有的概率總和為1。
3? ? 實(shí)驗(yàn)分析
該學(xué)習(xí)模型采用MNIST訓(xùn)練數(shù)據(jù)集進(jìn)行圖像識(shí)別,該數(shù)據(jù)集中有訓(xùn)練集和測(cè)試集,共70 000張不同的圖片,其中訓(xùn)練集的圖片有60 000張,測(cè)試集的圖片有10 000張,并且每張圖片都是28×28的像素。在本文數(shù)字圖像識(shí)別中用到的卷積是二維卷積核與二維圖像做卷積操作[8],該實(shí)驗(yàn)在Windows電腦系統(tǒng)下完成,運(yùn)用深度學(xué)習(xí)結(jié)構(gòu)和Python語言編碼進(jìn)行仿真實(shí)驗(yàn)。
本文的卷積神經(jīng)網(wǎng)絡(luò)模型的結(jié)構(gòu)主要包括:輸入層、卷積層、池化層、全連接層、Soft max輸出層。MNIST數(shù)據(jù)集中的圖像是由數(shù)字0~9組成。首先,輸入的圖像通過卷積操作后得到有效信息;其次,確定卷積核的大小以及步長(zhǎng)。全連接層在卷積神經(jīng)網(wǎng)絡(luò)中用于“分類”,以概率的形式去確定識(shí)別結(jié)果。從圖1—2中可以客觀地評(píng)價(jià)本文卷積神經(jīng)網(wǎng)絡(luò)模型的有效性,最終實(shí)驗(yàn)結(jié)果表明手寫數(shù)字的識(shí)別準(zhǔn)確精度可以達(dá)到99.1%。
[參考文獻(xiàn)]
[1]程國(guó)建,岳清清.卷積神經(jīng)網(wǎng)絡(luò)在巖石薄片圖像檢索中的應(yīng)用初探[J].智能計(jì)算機(jī)與應(yīng)用,2018(2):43-46.
[2]林大貴.TensorFlow+Keras深度學(xué)習(xí)人工智能實(shí)踐應(yīng)用[M].北京:清華大學(xué)出版社,2018.
[3]馬媛媛,史加榮.卷積神經(jīng)網(wǎng)絡(luò)及其在手寫體數(shù)字識(shí)別中的應(yīng)用[J].湖北工程學(xué)院學(xué)報(bào),2017(6):68-74.
[4]張翼成,陳欣,楊紅軍,等.基于組合特征的BP神經(jīng)網(wǎng)絡(luò)數(shù)字識(shí)別方法[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2013(3):113-116.
[5]劉高平,趙杜娟,黃華.基于自編碼神經(jīng)網(wǎng)絡(luò)重構(gòu)的車牌數(shù)字識(shí)別[J].光電子·激光,2011(1):144-148.
[6]杜選,高明峰.人工神經(jīng)網(wǎng)絡(luò)在數(shù)字識(shí)別中的應(yīng)用[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2007(2):21-22.
[7]劉洋洋,嵇啟春.一種改進(jìn)的模板匹配的數(shù)字識(shí)別算法[J].工業(yè)控制計(jì)算機(jī),2010(5):76-77.
[8]李金洪.深度學(xué)習(xí)之TensorFlow入門、原理與進(jìn)階實(shí)戰(zhàn)[M].北京:機(jī)械工業(yè)出版社,2018.