吳海麗
(太原學院計算機工程系,山西太原030012)
深度學習是一種在淺層網絡的基礎上發(fā)展而來的機器學習模型,其本質就是學習數據的本質特征,通過網絡對于數據的逐層表示并進行降維,從而獲得能揭示事物本質的核心特征。目前,深度學習已經在計算機視覺、無人駕駛、博弈論、自然語言處理和網絡優(yōu)化等方面獲得了廣泛的關注[1]。
卷積神經網絡是計算機視覺中應用最廣泛的一種深度學習網絡,目前已經在各類領域中的各類圖像識別任務中獲得了較好的效果,如人臉識別、指紋識別、車牌識別、目標跟蹤等[2-6]。然而,光照和視角的變化仍然給圖像識別帶來了一定的挑戰(zhàn),為了解決該問題:康曉東等[7]提出了一種結合圖像特征數據和深度信任網絡的彩色圖像識別方法,在構造圖像色彩數據場的前提下,通過小波變換描述圖像的多尺度特征,最后通過無監(jiān)督訓練深度信任網絡,但識別率有待進一步提高。江帆等[8]提出了一種基于CNN-GRNN模型的圖像識別方法,設計了一種新的圖像識別模型,通過卷積網絡提取圖像中的多層特征,并采用廣義回歸神經網絡代替反向傳播神經網絡,從而提高分類器的泛化能力和魯棒性。
以上這些方法主要研究圖像識別方法,然而,當數據量過大時,防止網絡過擬合的能力減弱,為此本文設計了一種改進的卷積神經網絡圖像大數據識別模型,通過在分類器中引入Dropout結構來提高網絡的學習能力,最終提高網絡的識別結果。
卷積神經網絡是隨著深度學習的發(fā)展而進一步廣泛應用的,在圖像處理方面得到了廣泛的應用。通過將卷積模板與上一層的每個特征圖進行卷積,可以得到下一層的特征圖,每一層的特征圖都是由多個二維的平面組成。卷積神經網絡是由輸入層、隱含層和輸出層組成。輸入層主要接收未經處理的原始圖像,而隱含層是多個非線性結構的神經元層,該層也可以包括卷積層、子采樣層和單層的感知器。輸出層則是對特征進行分類。每個神經元的結構如圖1所示。
圖1 卷積神經網絡神經元結構
其中,SUM表示輸入元素(多個維度x1,x2,x3和神經元的閾值)的加權和,F(z)表示激活函數,激活函數通常取Sigmoid函數和Tanh函數,Sigmoid函數的值域為(0,1)而Tanh函數的值域為(-1,1)。
深度卷積網絡的特征提取主要是在卷積層進行的,通過對卷積層進行優(yōu)化可以提高分類的準確率,一個具有7個輸出類型的典型的深度神經網絡如圖2所示。
圖2 具有7個輸出類型的深度神經網絡
其中,Input表示輸入層,而輸出層的A、B、C、D、E、F和G表示輸出的7種類型,C1、S2、C3、S4是隱含層神經元,C1為第一個卷積層、S2表示第二個下采樣層、C3為第二個卷積層,而S4表示第4個下采樣層。
軟最大化分類器可以簡稱為Softmax,該分類器在機器學習和深度學習中應用廣泛。對于多分類的問題,分類器最后的輸出有效地判斷出樣本所屬的類別,而Softmax函數則可以將所有的輸出歸一化到(0,1)之間,從而將某樣本歸為最近于1的類別所屬的分類,軟最大化方法采用的歸一化公式如下:
其中,Yi表示原始的第i個輸出對于具有n個輸出的軟最大化層。
對于這n個輸出,選取最接近于1的值s作為最終的識別類別:
現有的深度神經網絡模型往往通過全連接并通過BP網絡進行分類,采用加入Dropout機制的軟最大化分類器,該網絡具有更好的函數逼近能力。
從圖3中可以看出,提出的改進的卷積神經網絡模型,該模型是由兩個部分構成:卷積神經網絡和改進的分類器網絡。其工作原理為:首先將原始的輸入圖片輸入到整個模型的輸入層,然后經過整個卷積層,即一系列的卷積和下采樣,得到特征圖像;接著,通過一個全連接層構成一維的列向量,將該向量連入改進的分類器網絡,從而得到最終的分類結果。
圖3 文中所提模型
1.3.1 特征的生成
特征的生成過程可以描述為下列步驟:
(1)原始數據的輸入:特征生成部分是一種端到端的模型,因此,可以直接將圖片輸入到模型中,而無需太多的預處理操作。
(2)隱含層是由卷積層和降采樣層組成。卷積層是利用多個卷積核對上一層的特征圖進行卷積操作,從而獲得多個特征圖像,卷積操作的公式為:
其中,x(n)和h(n)分別是卷積操作的輸入和權。
因此,對于某個原始的圖片map,假設上一層的特征圖的輸出為,而當前層的第i個特征map的輸入為,權值為,且閾值為,則輸出特征圖表示為:
(3)池化層:池化層的目標是進行下采樣,目的是進一步的降下維,池化層神經元的輸出為:
其中,down()表示第l-1層的第j個特征map的下采樣。
(4)全連接層:全連接層的作用是將上一層的二維結構轉為單個向量的輸出,當輸入表示為x,輸入權矩陣W和偏置向量b時,則表示為全連接層的每個神經元的輸出hw,b(x)可以表示為:
1.3.2 改進的分類器
為了進一步提高所提模型的識別能力,本文在軟最大化分類器的基礎上進一步采用了Dropout機制。它的運行機制如下:在訓練過程的每輪迭代中,隨機地選擇神經網絡中某些層的單元并丟棄,然后開始網絡的訓練和優(yōu)化。訓練過程中每個神經元都以p的概率被保留,而以1-p的概率被丟棄。而在測試階段,每個神經元都存在,權重參數w乘以p,則得到的Dropout的期望值為px。
采用改進的軟最大化分類器作為分類器。在傳統的軟最大化分類器的基礎上,更好地防止完了過的過擬合能力,獲得更好的識別結果。
改進的分類器如圖4所示。
圖4 分類層網絡結構
為了驗證所提方法,對MNIST數據集,采用Matlab2012環(huán)境對所提的方法進行驗證。實驗中所采用的參數為:首先對原始圖片進行預處理,將圖片變換為128*128,然后將其作為輸入層的輸入,卷積層1采用的卷積核為6個通道的5*5的模板,接下來是池化層1,采用2*2的模板進行池化,卷積層2采用12個通道的5*5的模板,接下來是2*2的池化層2,然后是全連接層為150個。網絡訓練完1次和2次后得到的均方誤差如圖5(a)和(b)所示。
圖5 均方誤差預測結果
為了進一步驗證所提方法的優(yōu)越性,將所提的方法與原始的卷積方法、文獻[7]方法和文獻[8]所提的方法進行比較,結果如表1。
表1 各類方法的比較結果
從圖5和表1均可發(fā)現,所提的方法具有較高的識別率,同時與其它方法相比,具有更低的誤識率,在更短的時間內,能達到更低的分類均方誤差。
為了實現圖像大數據的識別,提出了一種改進的深度卷積網絡圖像識別模型。該模型通過引入Dropout機制來建立軟最大化分類器,實現對圖像的有效識別。為了驗證所提方法的有效性,采用MNIST圖像識別數據庫作為實驗數據,在Matlab中進行仿真,實驗結果表明所提的方法具有更高的識別準確率。同時與其它方法相比,所提的方法具有更低的誤識率,在更短的時間內,能達到更低的分類均方誤差。