柴瑞敏 佀稱稱
1(遼寧工程技術大學電子與信息工程學院 遼寧 葫蘆島 125105)2(遼寧工程技術大學研究生學院 遼寧 葫蘆島 125105)
?
一種改進的深度置信網絡及其在自然圖像分類中的應用
柴瑞敏1佀稱稱2
1(遼寧工程技術大學電子與信息工程學院遼寧 葫蘆島 125105)2(遼寧工程技術大學研究生學院遼寧 葫蘆島 125105)
深度置信網絡DBN (deep belief network) 由受限玻爾茲曼機RBM (restricted Boltzmann machine)堆疊而成。針對RBM只能接受二值輸入而導致的信息丟失問題,給出將可視層節點替換為具有高斯噪音的實數節點的解決方法,并且用線性修正節點替代隱層的Sigmoid節點。線性修正單元具有良好的稀疏性,可以很好地提高網絡性能。DBN自底向上逐層訓練網絡,初始化網絡的參數。在自然圖像數據庫中與傳統DBN以及BP神經網絡做分類性能比較,實驗結果表明,改進的DBN的圖像平均分類正確率以及時間復雜度都得到了較好的改善。
深度置信網絡受限玻爾茲曼機線性修正單元
基于BP神經網絡分類算法在圖像樣本局限的情況下,其表述能力有限。訓練過程中BP神經網絡[1]易陷入局部最小,神經網絡初始參數的選擇不當會對神經網絡的分類性能造成很大的影響,且其收斂速度很緩慢。深度置信神經網絡是由RBM[2]組成的深層次網絡,是深度學習的一種。2006年,Hinton等人[3]提出基于DBN的貪心逐層非監督學習過程,該方法解決了傳統BP神經網絡訓練過程中存在的一系列問題。
DBN是由標準RBM組成。本文的主要貢獻是用具有高斯噪音的實數節點替代DBN的二進制可視節點,并用線性修正節點替代二進制隨機隱層節點,進一步提高DBN的性能。
深度置信網絡的圖像分類模型是由多個RBMs和一層BP神經網絡構成[4]。DBN自底向上逐層地訓練,首先無監督訓練第一個RBM得到初始的權值,然后將訓練好的輸出作為下一個RBM的輸入,逐層訓練,至到訓練完所有的RBMs。
1.1線性修正單元
為進一步提高網絡性能,本文引入線性修正單元[5-8]替代隱含層原有的S型單元節點。
線性修正單元函數為max(0,x),其函數曲線如圖1所示。

圖1 線性修正和sigmoid函數

如圖2所示,本文的深度置信結構包括一個Gaussian-Bernoulli RBM、兩個Bernoulli-Bernoulli RBM以及一層BP神經網絡節點。三個RBM采用無監督訓練的機制進行訓練,BPNN采用有監督的機制進行訓練。整個訓練過程都盡可能減少原始輸入信息的遺漏。最終將實際輸出和期望輸出之間的誤差進行反向傳播,利用最速下降法調整整個網絡的參數,尋找網絡的最優。

圖2 深度置信網絡網絡結構
1.2Bernoulli-Bernoulli RBM
RBM結構如圖3所示,包含一個可視層和一個隱層,它的單元僅有0或1兩個狀態,RBM層間連接層內各個節點之間無連接,也即當給定可視層狀態時,隱含層各單元的活狀態是獨立的;反之,給定隱含層狀態時,可視層各單元的狀態是相互獨立的。

圖3 RBM結構圖
在RBM中,其能量函數如下:
(1)
式中,v、h分別代表可視層和隱含層的狀態向量,θ={wij,ai,bj}是RBM的參數,wij是可視層和隱層之間的權值,ai是可視層單元i的偏置量,bj是隱層單元j的偏置量。基于能量函數得到(v,h|θ)的概率分布,公式如下:
(2)
式中,z(θ)是歸一化因子,已知P(v,h|θ)可以求出其邊緣概率密度分布為:
(3)
網絡學習的目的就是極大的擬合輸入,也即最大化式(3),根據對數極大似然函數公式得求參公式:
(4)
根據式(4)和梯度下降準則求取參數的更新公式:
Δwij=ε(
(5)
Δai=ε(
(6)
Δbj=ε(
(7)
式中,ε為學習率,<>data和<>model分別是數據期望和模型本身的期望,模型期望很難計算得到,Hinton提出一種對比差異算法替代模型期望,對比差異算法只需要k次迭代就可以求取模型期望,一般情況下k=1。CD算法[13]先根據輸入值初始化可見層,然后根據可視層的值和條件分布算出隱層各單元的值,反過來也可利用隱層和條件分布計算可視層各單元的值。利用CD算法計算出的參數更新公式為:
Δwij=ε(
(8)
Δai=ε(
(9)
Δbj=ε(
(10)
1.3Gaussian-Bernoulli RBM
最基本的RBM的可視單元和隱層單元都是隨機二進制單元。為了方便處理來自自然圖像的連續數據,在線性單元中加入獨立的高斯噪聲使得RBM可以處理連續輸入,其能量函數變成:
(11)
式中,σ為加有高斯噪聲的可視節點的標準方差向量。在GBRBM[14-16]中,可視節點和隱層節點的條件分布為:
(12)
(13)
其參數也是運用CD學習算法進行訓練學習,參數計算公式為:
(14)
(15)
Δbj=ε(
(16)
1.4DBN的訓練
DBN的訓練包括預訓練和微調兩個部分,過程如下:
(1) 預訓練:以圖像的特征向量作為可視層的輸入,依據G-BRBM的訓練方法訓練第一個RBM,以第一個RBM的輸出作為下個B-BRBM的輸入,以B-BRBM的訓練方式訓練第二個和第三個RBM。訓練完成后得到DBM的初始參數。
(2) 微調:以最后一個RBM的輸出作為BP神經網絡的輸入,BP神經網絡的實際輸出與標準輸出作比較得出誤差,依梯度最速下降準則自頂向下依次修改DBN的權值。
本文結合顏色、紋理以及形狀三個方面總共36維圖像低層特征向量描述圖像基本信息[17],其特征向量為DBN的輸入,所以DBN的可視層總共36個節點。第一個隱層和第二個隱層均采用75個節點單元,第三個隱層用100節點。本文對10類圖像進行分類,所以最后的BP神經網絡有10個節點。本文方法與傳統深度置信網絡以及BP神經網絡作比較。傳統深度置信網絡與本文方法采用相同的結構,BP神經網絡的輸入節點和輸出節點和本文采用的方法也相同。
具體算法流程如圖4所示。

圖4 圖像分類算法流程
(1) 本文用的是Corel圖像數據庫,圖像庫包含10類1000幅圖像,每類分別有100幅圖像,每類選取90幅總共900幅圖像作為訓練集,其余作為測試集。
(2) 提取圖像的低層特征向量(包括顏色、形狀和紋理三個方面的信息總共36維)。由于三方面特征的取值范圍不同,三方面的特征之間沒有可比性,為此我們對特征向量做歸一化處理,歸一化公式:
(17)
式中,xmax和xmin為特征取值最大和最小。
(3) 選取訓練集對DBN進行預訓練和微調,得到有良好參數的DBN。10種類別的圖像分別對應10種輸出。每種類別的輸出其相應BP神經網絡輸出節點只有一個處于開狀態。
(4) 用測試集測試DBN,觀察分類結果。根據DBN的輸出判別輸入圖像對應類別。
本實驗的實驗環境為Visual C++ 6.0,計算機配置為Intel?Pentium?B960,2.2 GHz CPU,2 GB內存、500 GB硬盤。
本文用的是Corel圖像庫,Corel圖像庫是做圖像分析和處理的常用圖像庫。圖像庫中總共有1000幅10類圖像,10類圖像包括:海灘、建筑、大象、花、馬、公共汽車、人、山、恐龍和食物。實驗過程中將每類圖像分為10組,每組10幅圖像,其中一組與其余9類圖像的9組總共100幅作為測試集,其余900幅作為訓練集。訓練測試完畢后,再重新組合分配一下,進行訓練和測試,直到圖像庫中的每幅圖像都充當過訓練集和測試集,這樣其結果統計比較方便,圖像數據也比較有說服力。
3.1實驗結果
10類圖像的分類結果如圖5所示。

圖5 圖像分類結果
由圖5可以清晰地看出10類圖像的分類正確率,其中恐龍的分類正確率最高為99%,大象的分類正確率最低為82%。建筑、大象和人的分類正確率都小于90%。每類的分類正確率都不一樣。
3.2本文算法與其他算法比較
3.2.1分類正確率比較
本文方法與使用BP神經網絡以及基本深度置信網絡的算法相比較。每種算法都使用相同的圖像數據庫進行分類。表1和圖6展示了各分類的結果。

表1 不同方法分類性能比較

圖6 三種算法各類正確率統計
從表1可以看出,傳統BP神經網絡的平均分類正確率為64.3%,遠遠低于深度學習網絡的平均分類正確率。本文融合高斯噪音和線性修正單元的深度置信網絡算法的平均分類正確率為91.9%。
從圖6可以看出,恐龍、花、馬的分類正確性比較高,人、大象和建筑的分類性能比較低一些。其各類分類正確性都各不相同,其不同主要因為圖像低層特征向量和高層語義之間存在著語義鴻溝,也即在所表述的語義相同的情況下其特征向量存在很大的差別。例如語義為海灘的兩幅圖像其特征向量相差很大。關于如何縮短語義鴻溝問題也是當下研究的一個熱點。
3.2.2時間復雜度比較
表2給出了各個算法的時間復雜度。本文方法的時間復雜度為11.81,比BP神經網絡方法快了6.31,比傳統DBN遞減了4.05。引入高斯噪聲對DBN的收斂速度影響不大。

表2 分類算法時間復雜度比較
BP 神經網絡因隨機初始化權值參數而容易陷入局部最優并且訓練時間較長。RBM 網絡訓練模型的過程可以看作對一個深層 BP 網絡權值參數的初始化從而克服BP神經網絡的上述缺點。本文方法使用的線性修正單元使隱層單元產生更加稀疏的表示,大大提高了訓練速度。但是由于本文算法的復雜性,其時間復雜度的簡化仍舊是未來研究的重點。
隨著數字圖像的全方位應用,數字圖像分析處理的相關算法大量出現,本文提出的融合高斯噪音和線性修正函數的DBN經實驗證明對圖像分類的性能有很大的提高。
DBN是最近幾年出現的一種研究熱點,現在的研究主要在節點激活函數、結構模型。關于其網絡層數、尋找全局最優、數據表示等方面有很大的發展空間。深度學習的應用也會進一步擴大,將會推動相關行業巨大進步。
[1] Simon Haykin.神經網絡原理[M] .葉世偉,史忠植,譯.北京:機械工業出版社,2004.
[2] 劉建偉,劉媛,羅雄麟.玻爾茲曼機研究進展[J].計算機研究與發展,2014,51(1):1-16.
[3] Hinton G E,Osindero S,Teh Y-W.A fast learning algorithm for deep belief nets [J].Neural Computation,2006,18(7):1527-1554.
[4] 孫勁光,蔣金葉,孟祥福,等.深度置信網絡在垃圾郵件過濾中的應用[J].計算機應用,2014,34(4):1122-1125.
[5] Nair V,Hinton G E.Rectfied Linear Units Improve Restricted Boltzmann Machines [C]//Proceedings of the 27th International Conference on Machine Learning.Toronto:University of Toronto,2010:807-814.
[6] Glorot X,Bordes A,Bengion Y.Deep Sparse Rectifier Neural Networks [C]//Proceedings of the 14th International Conference on Artificial ntelligence and Statistics (AISTATS).USA:W&CP 15,2011,15:315-323.
[7] 劉建偉,劉媛,羅雄麟.深度學習研究進展[J].計算機應用研究,2014,31(7):1921-1930,1942.
[8] Zeiler M D,Ranzato M,Monga R,et al.On rectified linear units for speech processing[C]//Acoustics,Speech and Signal Processing (ICASSP),2013 IEEE International Conference on.Vancouver,BC:2013:3517-3521.
[9] Plahl C,Sainath T N,Ramabhadran B,et al. Improved pre-training of Deep Belief Networks using Sparse Encoding Symmetric Machines [C]//2012 IEEE International Conference on Acoustics,Speech and Signal Processing (ICASSP).Kyoto:IEEE,2012:4165-4168.
[10] Gavrilescu M.Proposed architecture of a fully integrated modular neural network-based automatic facial emotion recogintion system based on Facial Action Coding System [C]//Communication (COMM),2014 10th International Conference on.Bucharest:IEEE,2014:1-6.
[11] Oriol Vinyals,Li Deng.Are Sparse Representations Rich Enough for Acoustic Modeling?[J/OL].INTERSPEECH,2012(1):1-4.http://citeseerx.ist.psu.edu/.
[12] Rifai S,Vincent P,Muller X,et al.Constractive auto-encoders:Explicit invariance during feature extraction[C]//Proceedings of the 28th International Conference on Machine Learning.Washington:Bellevue,2001:833-840.
[14] Chen H,Murray A F.Continuous restricted Boltzmann machine with an implementable training algorithm[J].IEEE Proceedings-Vision,Image and Signal Processing,2003,150(3):153-158.
[15] Hinton G E,Salakhutdinov R R.Reducing the Dimen sionality of Data with Neural Networks[J].Science,2006,313(5786):504-507.
[16] 孫勁光,蔣金葉,孟祥福,等.一種數值屬性的深度置信網絡分類方法[J].計算機工程與應用,2014,50(2):112-116.
[17] 郭文強,侯勇嚴.數字圖像處理[M].西安:西安電子科技大學出版社,2009.
AN IMPROVED DEEP BELIEF NETWORK AND ITS APPLICATION IN NATURAL IMAGE CLASSIFICATION
Chai Ruimin1Si Chenchen2
1(School of Electronics and Information Engineering,Liaoning Technical University,Huludao 125105,Liaoning,China)2(InstituteofGraduate,LiaoningTechnicalUniversity,Huludao125105,Liaoning,China)
DBN (deep belief network) is stacked by RBM (restricted Boltzmann machine).RBM can only accept two-valued input,which causes the problem of information loss.Aiming at this problem,we solve it by replacing the visual layer nodes with real number nodes containing Gauss noise,and use rectified linear nodes instead of hidden layer Sigmoid node.Rectified linear unit has good sparsity,and can well enhance network performance.DBN uses bottom-up method to train network layer by layer,and initialises network parameters.Comparison of classification performance between traditional DBN and BP neural network is conducted on nature image datasets.Experimental result indicates that in improved DBN the average classification accuracy of images and the time complexity are both improved significantly.
Deep belief networkRestricted Boltzmann machinesRectified linear unit
2015-03-31。柴瑞敏,副教授,主研領域:數據庫,數據挖掘,圖形圖像處理。佀稱稱,碩士生。
TP391.41
A
10.3969/j.issn.1000-386x.2016.09.052