柴瑞敏 佀稱稱
1(遼寧工程技術(shù)大學(xué)電子與信息工程學(xué)院 遼寧 葫蘆島 125105)2(遼寧工程技術(shù)大學(xué)研究生學(xué)院 遼寧 葫蘆島 125105)
?
一種改進(jìn)的深度置信網(wǎng)絡(luò)及其在自然圖像分類中的應(yīng)用
柴瑞敏1佀稱稱2
1(遼寧工程技術(shù)大學(xué)電子與信息工程學(xué)院遼寧 葫蘆島 125105)2(遼寧工程技術(shù)大學(xué)研究生學(xué)院遼寧 葫蘆島 125105)
深度置信網(wǎng)絡(luò)DBN (deep belief network) 由受限玻爾茲曼機RBM (restricted Boltzmann machine)堆疊而成。針對RBM只能接受二值輸入而導(dǎo)致的信息丟失問題,給出將可視層節(jié)點替換為具有高斯噪音的實數(shù)節(jié)點的解決方法,并且用線性修正節(jié)點替代隱層的Sigmoid節(jié)點。線性修正單元具有良好的稀疏性,可以很好地提高網(wǎng)絡(luò)性能。DBN自底向上逐層訓(xùn)練網(wǎng)絡(luò),初始化網(wǎng)絡(luò)的參數(shù)。在自然圖像數(shù)據(jù)庫中與傳統(tǒng)DBN以及BP神經(jīng)網(wǎng)絡(luò)做分類性能比較,實驗結(jié)果表明,改進(jìn)的DBN的圖像平均分類正確率以及時間復(fù)雜度都得到了較好的改善。
深度置信網(wǎng)絡(luò)受限玻爾茲曼機線性修正單元
基于BP神經(jīng)網(wǎng)絡(luò)分類算法在圖像樣本局限的情況下,其表述能力有限。訓(xùn)練過程中BP神經(jīng)網(wǎng)絡(luò)[1]易陷入局部最小,神經(jīng)網(wǎng)絡(luò)初始參數(shù)的選擇不當(dāng)會對神經(jīng)網(wǎng)絡(luò)的分類性能造成很大的影響,且其收斂速度很緩慢。深度置信神經(jīng)網(wǎng)絡(luò)是由RBM[2]組成的深層次網(wǎng)絡(luò),是深度學(xué)習(xí)的一種。2006年,Hinton等人[3]提出基于DBN的貪心逐層非監(jiān)督學(xué)習(xí)過程,該方法解決了傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中存在的一系列問題。
DBN是由標(biāo)準(zhǔn)RBM組成。本文的主要貢獻(xiàn)是用具有高斯噪音的實數(shù)節(jié)點替代DBN的二進(jìn)制可視節(jié)點,并用線性修正節(jié)點替代二進(jìn)制隨機隱層節(jié)點,進(jìn)一步提高DBN的性能。
深度置信網(wǎng)絡(luò)的圖像分類模型是由多個RBMs和一層BP神經(jīng)網(wǎng)絡(luò)構(gòu)成[4]。DBN自底向上逐層地訓(xùn)練,首先無監(jiān)督訓(xùn)練第一個RBM得到初始的權(quán)值,然后將訓(xùn)練好的輸出作為下一個RBM的輸入,逐層訓(xùn)練,至到訓(xùn)練完所有的RBMs。
1.1線性修正單元
為進(jìn)一步提高網(wǎng)絡(luò)性能,本文引入線性修正單元[5-8]替代隱含層原有的S型單元節(jié)點。
線性修正單元函數(shù)為max(0,x),其函數(shù)曲線如圖1所示。
圖1 線性修正和sigmoid函數(shù)
如圖2所示,本文的深度置信結(jié)構(gòu)包括一個Gaussian-Bernoulli RBM、兩個Bernoulli-Bernoulli RBM以及一層BP神經(jīng)網(wǎng)絡(luò)節(jié)點。三個RBM采用無監(jiān)督訓(xùn)練的機制進(jìn)行訓(xùn)練,BPNN采用有監(jiān)督的機制進(jìn)行訓(xùn)練。整個訓(xùn)練過程都盡可能減少原始輸入信息的遺漏。最終將實際輸出和期望輸出之間的誤差進(jìn)行反向傳播,利用最速下降法調(diào)整整個網(wǎng)絡(luò)的參數(shù),尋找網(wǎng)絡(luò)的最優(yōu)。
圖2 深度置信網(wǎng)絡(luò)網(wǎng)絡(luò)結(jié)構(gòu)
1.2Bernoulli-Bernoulli RBM
RBM結(jié)構(gòu)如圖3所示,包含一個可視層和一個隱層,它的單元僅有0或1兩個狀態(tài),RBM層間連接層內(nèi)各個節(jié)點之間無連接,也即當(dāng)給定可視層狀態(tài)時,隱含層各單元的活狀態(tài)是獨立的;反之,給定隱含層狀態(tài)時,可視層各單元的狀態(tài)是相互獨立的。
圖3 RBM結(jié)構(gòu)圖
在RBM中,其能量函數(shù)如下:
(1)
式中,v、h分別代表可視層和隱含層的狀態(tài)向量,θ={wij,ai,bj}是RBM的參數(shù),wij是可視層和隱層之間的權(quán)值,ai是可視層單元i的偏置量,bj是隱層單元j的偏置量。基于能量函數(shù)得到(v,h|θ)的概率分布,公式如下:
(2)
式中,z(θ)是歸一化因子,已知P(v,h|θ)可以求出其邊緣概率密度分布為:
(3)
網(wǎng)絡(luò)學(xué)習(xí)的目的就是極大的擬合輸入,也即最大化式(3),根據(jù)對數(shù)極大似然函數(shù)公式得求參公式:
(4)
根據(jù)式(4)和梯度下降準(zhǔn)則求取參數(shù)的更新公式:
Δwij=ε(
(5)
Δai=ε(
(6)
Δbj=ε(
(7)
式中,ε為學(xué)習(xí)率,<>data和<>model分別是數(shù)據(jù)期望和模型本身的期望,模型期望很難計算得到,Hinton提出一種對比差異算法替代模型期望,對比差異算法只需要k次迭代就可以求取模型期望,一般情況下k=1。CD算法[13]先根據(jù)輸入值初始化可見層,然后根據(jù)可視層的值和條件分布算出隱層各單元的值,反過來也可利用隱層和條件分布計算可視層各單元的值。利用CD算法計算出的參數(shù)更新公式為:
Δwij=ε(
(8)
Δai=ε(
(9)
Δbj=ε(
(10)
1.3Gaussian-Bernoulli RBM
最基本的RBM的可視單元和隱層單元都是隨機二進(jìn)制單元。為了方便處理來自自然圖像的連續(xù)數(shù)據(jù),在線性單元中加入獨立的高斯噪聲使得RBM可以處理連續(xù)輸入,其能量函數(shù)變成:
(11)
式中,σ為加有高斯噪聲的可視節(jié)點的標(biāo)準(zhǔn)方差向量。在GBRBM[14-16]中,可視節(jié)點和隱層節(jié)點的條件分布為:
(12)
(13)
其參數(shù)也是運用CD學(xué)習(xí)算法進(jìn)行訓(xùn)練學(xué)習(xí),參數(shù)計算公式為:
(14)
(15)
Δbj=ε(
(16)
1.4DBN的訓(xùn)練
DBN的訓(xùn)練包括預(yù)訓(xùn)練和微調(diào)兩個部分,過程如下:
(1) 預(yù)訓(xùn)練:以圖像的特征向量作為可視層的輸入,依據(jù)G-BRBM的訓(xùn)練方法訓(xùn)練第一個RBM,以第一個RBM的輸出作為下個B-BRBM的輸入,以B-BRBM的訓(xùn)練方式訓(xùn)練第二個和第三個RBM。訓(xùn)練完成后得到DBM的初始參數(shù)。
(2) 微調(diào):以最后一個RBM的輸出作為BP神經(jīng)網(wǎng)絡(luò)的輸入,BP神經(jīng)網(wǎng)絡(luò)的實際輸出與標(biāo)準(zhǔn)輸出作比較得出誤差,依梯度最速下降準(zhǔn)則自頂向下依次修改DBN的權(quán)值。
本文結(jié)合顏色、紋理以及形狀三個方面總共36維圖像低層特征向量描述圖像基本信息[17],其特征向量為DBN的輸入,所以DBN的可視層總共36個節(jié)點。第一個隱層和第二個隱層均采用75個節(jié)點單元,第三個隱層用100節(jié)點。本文對10類圖像進(jìn)行分類,所以最后的BP神經(jīng)網(wǎng)絡(luò)有10個節(jié)點。本文方法與傳統(tǒng)深度置信網(wǎng)絡(luò)以及BP神經(jīng)網(wǎng)絡(luò)作比較。傳統(tǒng)深度置信網(wǎng)絡(luò)與本文方法采用相同的結(jié)構(gòu),BP神經(jīng)網(wǎng)絡(luò)的輸入節(jié)點和輸出節(jié)點和本文采用的方法也相同。
具體算法流程如圖4所示。
圖4 圖像分類算法流程
(1) 本文用的是Corel圖像數(shù)據(jù)庫,圖像庫包含10類1000幅圖像,每類分別有100幅圖像,每類選取90幅總共900幅圖像作為訓(xùn)練集,其余作為測試集。
(2) 提取圖像的低層特征向量(包括顏色、形狀和紋理三個方面的信息總共36維)。由于三方面特征的取值范圍不同,三方面的特征之間沒有可比性,為此我們對特征向量做歸一化處理,歸一化公式:
(17)
式中,xmax和xmin為特征取值最大和最小。
(3) 選取訓(xùn)練集對DBN進(jìn)行預(yù)訓(xùn)練和微調(diào),得到有良好參數(shù)的DBN。10種類別的圖像分別對應(yīng)10種輸出。每種類別的輸出其相應(yīng)BP神經(jīng)網(wǎng)絡(luò)輸出節(jié)點只有一個處于開狀態(tài)。
(4) 用測試集測試DBN,觀察分類結(jié)果。根據(jù)DBN的輸出判別輸入圖像對應(yīng)類別。
本實驗的實驗環(huán)境為Visual C++ 6.0,計算機配置為Intel?Pentium?B960,2.2 GHz CPU,2 GB內(nèi)存、500 GB硬盤。
本文用的是Corel圖像庫,Corel圖像庫是做圖像分析和處理的常用圖像庫。圖像庫中總共有1000幅10類圖像,10類圖像包括:海灘、建筑、大象、花、馬、公共汽車、人、山、恐龍和食物。實驗過程中將每類圖像分為10組,每組10幅圖像,其中一組與其余9類圖像的9組總共100幅作為測試集,其余900幅作為訓(xùn)練集。訓(xùn)練測試完畢后,再重新組合分配一下,進(jìn)行訓(xùn)練和測試,直到圖像庫中的每幅圖像都充當(dāng)過訓(xùn)練集和測試集,這樣其結(jié)果統(tǒng)計比較方便,圖像數(shù)據(jù)也比較有說服力。
3.1實驗結(jié)果
10類圖像的分類結(jié)果如圖5所示。
圖5 圖像分類結(jié)果
由圖5可以清晰地看出10類圖像的分類正確率,其中恐龍的分類正確率最高為99%,大象的分類正確率最低為82%。建筑、大象和人的分類正確率都小于90%。每類的分類正確率都不一樣。
3.2本文算法與其他算法比較
3.2.1分類正確率比較
本文方法與使用BP神經(jīng)網(wǎng)絡(luò)以及基本深度置信網(wǎng)絡(luò)的算法相比較。每種算法都使用相同的圖像數(shù)據(jù)庫進(jìn)行分類。表1和圖6展示了各分類的結(jié)果。
表1 不同方法分類性能比較
圖6 三種算法各類正確率統(tǒng)計
從表1可以看出,傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)的平均分類正確率為64.3%,遠(yuǎn)遠(yuǎn)低于深度學(xué)習(xí)網(wǎng)絡(luò)的平均分類正確率。本文融合高斯噪音和線性修正單元的深度置信網(wǎng)絡(luò)算法的平均分類正確率為91.9%。
從圖6可以看出,恐龍、花、馬的分類正確性比較高,人、大象和建筑的分類性能比較低一些。其各類分類正確性都各不相同,其不同主要因為圖像低層特征向量和高層語義之間存在著語義鴻溝,也即在所表述的語義相同的情況下其特征向量存在很大的差別。例如語義為海灘的兩幅圖像其特征向量相差很大。關(guān)于如何縮短語義鴻溝問題也是當(dāng)下研究的一個熱點。
3.2.2時間復(fù)雜度比較
表2給出了各個算法的時間復(fù)雜度。本文方法的時間復(fù)雜度為11.81,比BP神經(jīng)網(wǎng)絡(luò)方法快了6.31,比傳統(tǒng)DBN遞減了4.05。引入高斯噪聲對DBN的收斂速度影響不大。
表2 分類算法時間復(fù)雜度比較
BP 神經(jīng)網(wǎng)絡(luò)因隨機初始化權(quán)值參數(shù)而容易陷入局部最優(yōu)并且訓(xùn)練時間較長。RBM 網(wǎng)絡(luò)訓(xùn)練模型的過程可以看作對一個深層 BP 網(wǎng)絡(luò)權(quán)值參數(shù)的初始化從而克服BP神經(jīng)網(wǎng)絡(luò)的上述缺點。本文方法使用的線性修正單元使隱層單元產(chǎn)生更加稀疏的表示,大大提高了訓(xùn)練速度。但是由于本文算法的復(fù)雜性,其時間復(fù)雜度的簡化仍舊是未來研究的重點。
隨著數(shù)字圖像的全方位應(yīng)用,數(shù)字圖像分析處理的相關(guān)算法大量出現(xiàn),本文提出的融合高斯噪音和線性修正函數(shù)的DBN經(jīng)實驗證明對圖像分類的性能有很大的提高。
DBN是最近幾年出現(xiàn)的一種研究熱點,現(xiàn)在的研究主要在節(jié)點激活函數(shù)、結(jié)構(gòu)模型。關(guān)于其網(wǎng)絡(luò)層數(shù)、尋找全局最優(yōu)、數(shù)據(jù)表示等方面有很大的發(fā)展空間。深度學(xué)習(xí)的應(yīng)用也會進(jìn)一步擴大,將會推動相關(guān)行業(yè)巨大進(jìn)步。
[1] Simon Haykin.神經(jīng)網(wǎng)絡(luò)原理[M] .葉世偉,史忠植,譯.北京:機械工業(yè)出版社,2004.
[2] 劉建偉,劉媛,羅雄麟.玻爾茲曼機研究進(jìn)展[J].計算機研究與發(fā)展,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] 孫勁光,蔣金葉,孟祥福,等.深度置信網(wǎng)絡(luò)在垃圾郵件過濾中的應(yīng)用[J].計算機應(yīng)用,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] 劉建偉,劉媛,羅雄麟.深度學(xué)習(xí)研究進(jìn)展[J].計算機應(yīng)用研究,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] 孫勁光,蔣金葉,孟祥福,等.一種數(shù)值屬性的深度置信網(wǎng)絡(luò)分類方法[J].計算機工程與應(yīng)用,2014,50(2):112-116.
[17] 郭文強,侯勇嚴(yán).數(shù)字圖像處理[M].西安:西安電子科技大學(xué)出版社,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。柴瑞敏,副教授,主研領(lǐng)域:數(shù)據(jù)庫,數(shù)據(jù)挖掘,圖形圖像處理。佀稱稱,碩士生。
TP391.41
A
10.3969/j.issn.1000-386x.2016.09.052