陳子兆,矯文成
陸軍工程大學(xué)石家莊校區(qū) 指控系統(tǒng)教研室,石家莊050003
隨著AlphaGo[1]以4∶1戰(zhàn)勝人類棋手李世石后,人工智能熱潮席卷全球,近年來政府、企業(yè)越來越關(guān)注于人工智能的研究與應(yīng)用。神經(jīng)網(wǎng)絡(luò)是人工智能和深度學(xué)習(xí)的應(yīng)用基礎(chǔ),同樣受到各方專家學(xué)者的廣泛研究。深度神經(jīng)網(wǎng)絡(luò)[2]是在淺層神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上發(fā)展而來,其嘗試模擬生物大腦神經(jīng)元間的非線性連接,通過逐層的數(shù)據(jù)抽象、特征提取以識(shí)別分類圖像、聲音和其他數(shù)據(jù)類型。
深度置信網(wǎng)絡(luò)(Deep Belief Network)是深度人工神經(jīng)網(wǎng)絡(luò)中最具代表的神經(jīng)網(wǎng)絡(luò)之一,主要由多層受限玻爾茲曼機(jī)(Restricted Boltzmann Machine)堆疊而成。2006年由Hinton等[3]提出后,受到諸多學(xué)者的研究并改進(jìn),例如Welling 等[4]將DBN 數(shù)據(jù)二值輸入擴(kuò)展至非線性指數(shù)族輸入,Wang 等[5]將DBN 網(wǎng)絡(luò)與卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks)結(jié)合,Ning等[6]針對(duì)RBM 網(wǎng)絡(luò)訓(xùn)練效率低提出了廣義冗余消除的概念,延伸出兩項(xiàng)技術(shù)對(duì)大量冗余計(jì)算進(jìn)行優(yōu)化。如今,DBN網(wǎng)絡(luò)作為較為成熟的神經(jīng)網(wǎng)絡(luò)已經(jīng)成功應(yīng)用于時(shí)間序列預(yù)測(cè)[7]、文本檢測(cè)[8]、信號(hào)識(shí)別[9]等諸多領(lǐng)域。
盡管DBN 神經(jīng)網(wǎng)絡(luò)已經(jīng)廣泛應(yīng)用于各行業(yè)領(lǐng)域,但其本身仍存在諸多的缺陷亟待解決。缺陷之一便是在訓(xùn)練過程中容易出現(xiàn)特征同質(zhì)化或者網(wǎng)絡(luò)過擬合而不能夠準(zhǔn)確地提取數(shù)據(jù)特征,致使識(shí)別準(zhǔn)確率急劇下降。解決方案主要有減少特征提取節(jié)點(diǎn)數(shù)和引入稀疏正則項(xiàng)兩種。
目前,專家學(xué)者致力于解決DBN 網(wǎng)絡(luò)過擬合問題的研究。Hinton 等[10]提出一種dropout 的策略以解決網(wǎng)絡(luò)過擬合問題,方法在訓(xùn)練過程中以概率p 隨機(jī)丟棄某些神經(jīng)元,以一種新的網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí)輸入數(shù)據(jù);Hu等[11]針對(duì)dropout策略引入一些低識(shí)別度的權(quán)值使得整體準(zhǔn)確度降低的問題,提出了一種改進(jìn)方案,通過多次dropout策略形成多個(gè)子網(wǎng)絡(luò),選取其中識(shí)別準(zhǔn)確度最高的子網(wǎng)絡(luò)進(jìn)行權(quán)值調(diào)整;Ekanadham[12]提出了一種基于誤差平方和的稀疏化RBM,設(shè)定常量p 以控制隱藏層節(jié)點(diǎn)激活概率;Ji等[13]以相對(duì)熵KL散度作為損失函數(shù),結(jié)合信息論率失真理論提出了一種稀疏化RBM;徐毅等[14]提出了一種基于拉普拉斯函數(shù)的稀疏RBM,通過設(shè)定位置參數(shù)p、μ 來控制稀疏力度。
在矩陣中,若數(shù)值為0 的元素?cái)?shù)遠(yuǎn)多于非0 的元素?cái)?shù),同時(shí)非0 的元素分布排列無規(guī)律時(shí),則稱該矩陣具有稀疏性。常用的正則稀疏函數(shù)有l(wèi)0范數(shù)、l1范數(shù)和l2范數(shù)。因?yàn)榍蠼鈒0范數(shù)是個(gè)NP難題,而在一定條件下求解l1和l2范數(shù)可近似為l0范數(shù)的求解,故而常選用l1和l2范數(shù)作為稀疏正則函數(shù)。本文提出了一種改進(jìn)的稀疏DBN 網(wǎng)絡(luò),選取無均值高斯函數(shù)趨近l0范數(shù)從而達(dá)到稀疏特性。
深度置信網(wǎng)絡(luò)是一個(gè)通過建立觀測(cè)數(shù)據(jù)與標(biāo)簽數(shù)據(jù)之間的聯(lián)合分布從而推斷數(shù)據(jù)樣本分布的網(wǎng)絡(luò)模型,主要由多層限制玻爾茲曼機(jī)(RBM)堆疊構(gòu)成。
限制玻爾茲曼機(jī)是一種具有隨機(jī)性,由可視層v 和隱藏層h 構(gòu)成的無向神經(jīng)網(wǎng)絡(luò),其本質(zhì)是一種基于能量的網(wǎng)絡(luò)模型,其能量函數(shù)為:
其中,θ=[Wij,ai,bj]為RBM 的各項(xiàng)參數(shù),Wij為可視層與隱藏層之間權(quán)值,ai為可視層偏置,bj為隱藏層偏置,n 為可視層節(jié)點(diǎn)數(shù),m 為隱藏層節(jié)點(diǎn)數(shù)。
網(wǎng)絡(luò)可視層v 與隱藏層h 的聯(lián)合概率分布以及可視層v 概率分布分別為:
從而可推導(dǎo)出隱藏節(jié)點(diǎn)的激活概率與可視節(jié)點(diǎn)重構(gòu)激活概率分別為:
采用極大似然法對(duì)可視層v 概率分布求解,同時(shí)結(jié)合對(duì)比散度(CD)算法對(duì)RBM 網(wǎng)絡(luò)訓(xùn)練優(yōu)化,以一步Gibbs 采樣值近似等于平穩(wěn)分布時(shí)的概率分布值,然后對(duì)各參數(shù)求取偏導(dǎo)數(shù)得到參數(shù)更新值:
本節(jié)以三層受限玻爾茲曼機(jī)為例(如圖1),詳細(xì)描述DBN網(wǎng)絡(luò)訓(xùn)練過程:
步驟1 根據(jù)上節(jié)介紹RBM 訓(xùn)練過程,由可視層輸入數(shù)據(jù)對(duì)隱藏層網(wǎng)絡(luò)參數(shù)進(jìn)行調(diào)整更新。
步驟2 結(jié)合貪婪學(xué)習(xí)算法,以第i 層RBM 輸出數(shù)據(jù)作為第i+1 層輸入數(shù)據(jù),逐層訓(xùn)練RBM,得到各層網(wǎng)絡(luò)參數(shù)。
步驟3 以各層訓(xùn)練后的網(wǎng)絡(luò)參數(shù)作為DBN網(wǎng)絡(luò)的初始參數(shù),輸入訓(xùn)練數(shù)據(jù)對(duì)DBN網(wǎng)絡(luò)進(jìn)行全網(wǎng)絡(luò)訓(xùn)練,求得代價(jià)函數(shù)。
步驟4 根據(jù)求得的代價(jià)函數(shù)和BP 反向傳播算法,對(duì)各層網(wǎng)絡(luò)參數(shù)進(jìn)行全局調(diào)優(yōu),直至達(dá)到最大迭代次數(shù)或者搜索至全局(局部)最優(yōu)點(diǎn)。
圖1 DBN(3 hidden layer)結(jié)構(gòu)模型圖
壓縮感知理論[15]表明如果信號(hào)x ∈Rn在正交空間具有稀疏性,那么就可以以低于奈奎斯特采樣頻率的頻率采樣該信號(hào)并且以極大概率準(zhǔn)確地重構(gòu)原始信號(hào),其公式為:
其中A ∈Rm×n為觀測(cè)矩陣,n 為噪聲信號(hào),y 為采樣后的信號(hào)。
當(dāng)觀測(cè)矩陣A 滿足有限等距性質(zhì)(RIP)時(shí),重構(gòu)信號(hào)x 的過程即轉(zhuǎn)變?yōu)橥ㄟ^l0范數(shù)下求解的優(yōu)化問題:
本文以文獻(xiàn)[16]中提出的無均值高斯分布為依據(jù),提出了一種基于無均值高斯分布的稀疏DBN 網(wǎng)絡(luò),通過設(shè)定方差因子σ 控制與范數(shù)0的趨近程度,進(jìn)一步控制隱藏層的稀疏狀態(tài),其中無均值高斯分布函數(shù)如下:
其中xi為隱藏層第i 個(gè)節(jié)點(diǎn)激活概率。
范數(shù)0 定義為向量x 中非0 元素的個(gè)數(shù),即如果假設(shè)函數(shù)為f(x),其表達(dá)式為:
本文中選取的無均值高斯分布函數(shù)有:
即有:
于是可得表達(dá)式:
通過圖2 可以看到,隨著σ 取值的改變,函數(shù)φσ(x)逐漸趨近于階躍函數(shù),即滿足范數(shù)0表示的向量x 中非0元素的個(gè)數(shù)性質(zhì)。
圖2 無均值高斯函數(shù)σ 變換趨近圖
稀疏正則項(xiàng)的表達(dá)式為:
其中pj為隱藏層的激活概率,選取sigmoid函數(shù)作為激活函數(shù),對(duì)上式求取偏導(dǎo)以獲得稀疏正則項(xiàng)對(duì)參數(shù)更新的影響作用:
本文提出的基于無均值高斯分布稀疏正則的DBN網(wǎng)絡(luò)模型(以下簡稱G-DBN)是由多層無均值高斯分布稀疏正則RBM(以下簡稱G-RBM)堆疊而成,通過對(duì)每一層的RBM 網(wǎng)絡(luò)參數(shù)進(jìn)行學(xué)習(xí)更新,從而獲得初始化的DBN網(wǎng)絡(luò)參數(shù)用以訓(xùn)練和測(cè)試。
G-RBM學(xué)習(xí)算法訓(xùn)練過程和偽代碼如下:
輸入?yún)?shù):學(xué)習(xí)率α;沖量p;批量訓(xùn)練batchsizes;正則化參數(shù)λ;網(wǎng)絡(luò)迭代次數(shù)epoch;G-RBM 設(shè)定參數(shù)方差因子σ;初始化網(wǎng)絡(luò)參數(shù)θ(ai,bj,Wij)
輸出參數(shù):訓(xùn)練完成后網(wǎng)絡(luò)參數(shù)θ(ai,bj,Wij)
訓(xùn)練過程:
步驟1 設(shè)定可視層節(jié)點(diǎn)數(shù)i 和隱藏層節(jié)點(diǎn)數(shù)j,并對(duì)G-RBM網(wǎng)絡(luò)參數(shù)ai,bj,Wij初始化為0。
步驟2 輸入訓(xùn)練數(shù)據(jù)v1,默認(rèn)sigmoid函數(shù)作為激活函數(shù),計(jì)算隱藏層h1激活狀態(tài),同時(shí)重構(gòu)可視層v2的激活概率;此處參照Hinton[17]對(duì)于DBN網(wǎng)絡(luò)參數(shù)設(shè)置的指導(dǎo)意見,對(duì)第一輪計(jì)算可視層和隱藏層的激活概率采取0 或1 賦值,對(duì)第二輪計(jì)算隱藏層的激活概率采取實(shí)值賦值,偽代碼如下:
計(jì)算隱藏層激活狀態(tài);
h1=sigmoid(Wij*v1+bj)
對(duì)隱藏層激活概率進(jìn)行0或1賦值;
if h1>0到1之間隨機(jī)數(shù)
then h1=1
else h1=0
重構(gòu)訓(xùn)練數(shù)據(jù)的激活概率v2;
v2=sigmoid(Wij*h1+ai)
if v2>0到1之間隨機(jī)數(shù)
then v2=1
else v2=0
步驟3 再次計(jì)算隱藏層h2激活狀態(tài),偽代碼如下:
h2=sigmoid(Wij*v2+bj)
使用CD-1 算法求得各項(xiàng)參數(shù)的改變量,并更新得到最終網(wǎng)絡(luò)參數(shù):
其中Wv和分別代表當(dāng)前和之前時(shí)刻的權(quán)重改變量。
步驟4 添加求得無均值高斯分布偏導(dǎo)數(shù)后的函數(shù)作為稀疏正則項(xiàng),再次更新參數(shù),偽代碼如下:
步驟5 為了提升網(wǎng)絡(luò)參數(shù)的精度,重復(fù)步驟2~4直至達(dá)到最大網(wǎng)絡(luò)迭代次數(shù),偽代碼如下:
for n=1 to epoch
步驟2;
步驟3;
步驟4;
end
G-DBN網(wǎng)絡(luò)是由多層G-RBM構(gòu)成,其與傳統(tǒng)DBN網(wǎng)絡(luò)訓(xùn)練方式相同,傳統(tǒng)DBN 網(wǎng)絡(luò)訓(xùn)練過程已在前一章節(jié)中介紹,在此不做贅述。
本章選取無稀疏正則的DBN 網(wǎng)絡(luò)模型(以下簡稱NS-DBN)、基于率失真理論的稀疏正則化DBN 網(wǎng)絡(luò)模型[13](以下簡稱SP-DBN)以及本文所提出的基于無均值高斯分布函數(shù)的稀疏正則化DBN(G-DBN)三種網(wǎng)絡(luò)模型,利用互聯(lián)網(wǎng)公開數(shù)據(jù)集ORL和MINIST作為訓(xùn)練和測(cè)試數(shù)據(jù)集,對(duì)三種模型的稀疏程度和分類準(zhǔn)確度進(jìn)行對(duì)比實(shí)驗(yàn),以觀察三種網(wǎng)絡(luò)的性能優(yōu)劣。
本文選取SP-DBN 是基于該模型在實(shí)驗(yàn)過程中未引入人為設(shè)定參數(shù),其他模型方案或多或少引入了人為設(shè)定參數(shù)變量,使得模型方案的主觀變動(dòng)性增大,客觀公正性降低。
為了客觀準(zhǔn)確地衡量不同模型之間的稀疏程度,本文采用Hoyer[18]提出的稀疏性度量公式,對(duì)不同模型之間所提取的特征參數(shù)進(jìn)行稀疏度計(jì)算,其度量公式為:
ORL數(shù)據(jù)集是由英國劍橋Olivetti實(shí)驗(yàn)室于1994年公布,數(shù)據(jù)集包含400 張人臉黑白圖像,其中每組10 幅圖像共40 組,每張圖像都有人臉面部表情和姿態(tài)的變化,該數(shù)據(jù)是目前使用最為廣泛的標(biāo)準(zhǔn)人臉圖像數(shù)據(jù)集之一。本文選取其中每組7幅圖像共計(jì)280幅圖像作為訓(xùn)練樣本用以網(wǎng)絡(luò)訓(xùn)練,選取每組3 幅圖像共計(jì)120 幅圖像作為測(cè)試樣本用以測(cè)試網(wǎng)絡(luò)準(zhǔn)確度。
MINIST 數(shù)據(jù)集是由YannLeCun 等人于1998 年公布,數(shù)據(jù)集包含70 000張手寫黑白圖像,其中每組7 000張共計(jì)10 組,每張圖像由各領(lǐng)域?qū)<覍W(xué)者手寫完成。本文選取其中每組6 000 張圖像共計(jì)60 000 張圖像作為訓(xùn)練樣本用以網(wǎng)絡(luò)訓(xùn)練,選取每組1 000 張圖像共計(jì)10 000張圖像作為測(cè)試樣本用以測(cè)試網(wǎng)絡(luò)準(zhǔn)確度。
實(shí)驗(yàn)中三種網(wǎng)絡(luò)共同參數(shù)設(shè)定為:學(xué)習(xí)率α 為0.01,稀疏正則參數(shù)λ 為0.000 5,沖量p 為0;批量訓(xùn)練batchsizes 為30,網(wǎng)絡(luò)訓(xùn)練搜索迭代次數(shù)為3 000。實(shí)驗(yàn)開發(fā)環(huán)境為Matlab R2014b。
對(duì)于本文提出的基于無均值高斯分布函數(shù)的稀疏DBN模型設(shè)定參數(shù)σ 取值范圍,通過實(shí)驗(yàn)發(fā)現(xiàn),兩種數(shù)據(jù)集各隱藏層的激活概率幾乎全部不為0,如果將σ 設(shè)置過小,便會(huì)對(duì)激活概率的取值過于敏感,即σ 取值過小會(huì)導(dǎo)致稀疏正則項(xiàng)大部分元素取值為1,極少部分取值為0,反而致使稀疏度和準(zhǔn)確率急劇下降。本文通過多次實(shí)驗(yàn)得出σ 取值范圍為0.1至1時(shí)能達(dá)到較好效果。
為了證明本文算法在稀疏性方面和準(zhǔn)確率方面的優(yōu)越性,同時(shí)具有一定的普適性,本節(jié)以雙隱藏層DBN網(wǎng)絡(luò)作為實(shí)驗(yàn)?zāi)P瓦M(jìn)行三組實(shí)驗(yàn)。實(shí)驗(yàn)一為在雙隱藏層數(shù)為250-100條件下,不同σ 取值下G-DBN準(zhǔn)確率的變化情況,實(shí)驗(yàn)結(jié)果如圖3 所示;實(shí)驗(yàn)二為隱藏層數(shù)分別取60、80、100、200、300和400條件下,NS-RBM模型、SP-RBM 模型、當(dāng)σ=0.2 時(shí)的G-RBM 模型和當(dāng)σ=0.3時(shí)的G-RBM模型的稀疏度比較,實(shí)驗(yàn)結(jié)果如圖4和表1所示;實(shí)驗(yàn)三為當(dāng)雙隱藏層數(shù)變化時(shí),四種模型的準(zhǔn)確率比較,實(shí)驗(yàn)結(jié)果如表2所示。
圖3 ORL數(shù)據(jù)集上準(zhǔn)確率隨σ 取值變化圖
從圖3 可以看出,本文提出的G-DBN 在雙隱藏層數(shù)為250-100 的條件下,與沒有稀疏正則化的NS-DBN模型比較準(zhǔn)確率更高,與基于率失真理論的SP-DBN模型比較準(zhǔn)確率普遍更高??梢宰C明在接下來的實(shí)驗(yàn)GDBN模型中選取的σ=0.2 和σ=0.3 具有一定程度的普適性,并非某種特定條件下的優(yōu)越性。
圖4 ORL數(shù)據(jù)集上四種模型稀疏度變化圖
表1 ORL數(shù)據(jù)集上四種模型的平均稀疏度
表2 ORL數(shù)據(jù)集上四種模型的準(zhǔn)確度
從圖4可以看出,隨著隱藏層節(jié)點(diǎn)數(shù)的增加,G-RBM的兩種模型始終保持更好的稀疏性質(zhì),同時(shí)從表1 得知,G-RBM 的兩種模型在六組測(cè)試中,平均稀疏度較NS-RBM和SP-RBM兩種模型有極大的改善,而沒有加入稀疏正則項(xiàng)的NS-RBM稀疏性表現(xiàn)最差。
從表2 可以看出,在ORL 數(shù)據(jù)集上,G-DBN 和SPDBN兩種改進(jìn)方案對(duì)準(zhǔn)確率并沒有很大改善。通過對(duì)數(shù)據(jù)采樣和實(shí)驗(yàn)分析,對(duì)學(xué)習(xí)率和正則化參數(shù)進(jìn)行上下浮動(dòng)不超過10-4范圍的參數(shù)修改,發(fā)現(xiàn)兩種模型的準(zhǔn)確率時(shí)而優(yōu)良時(shí)而差劣,查看各隱藏層激活概率以及網(wǎng)絡(luò)參數(shù)變化發(fā)現(xiàn)波動(dòng)較大。經(jīng)過分析認(rèn)為是由于ORL數(shù)據(jù)集數(shù)據(jù)量過少,訓(xùn)練樣本不夠充分或者測(cè)試樣本量太少造成上述原因,從表2 中可以看出,最大錯(cuò)誤率為0.058 3,即識(shí)別錯(cuò)誤7張圖片,最小錯(cuò)誤率為0.008 3,即識(shí)別錯(cuò)誤1 張圖片,對(duì)適用于大數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí),錯(cuò)誤識(shí)別微量圖片屬于可容忍誤差范圍。
本節(jié)以三隱藏層DBN網(wǎng)絡(luò)作為實(shí)驗(yàn)?zāi)P瓦M(jìn)行三組實(shí)驗(yàn)。實(shí)驗(yàn)四為在三隱藏層數(shù)為200-200-100 條件下,不同σ 取值下準(zhǔn)確率的變化情況,實(shí)驗(yàn)結(jié)果如圖5 所示;實(shí)驗(yàn)五為隱藏層數(shù)分別取60、80、100、200、300 和400 條件下,NS-RBM 模型、SP-RBM 模型、當(dāng)σ=0.6 時(shí)的G-RBM 模型和當(dāng)σ=0.7 時(shí)的G-RBM 模型的稀疏度比較,實(shí)驗(yàn)結(jié)果如圖6和表3所示;實(shí)驗(yàn)六為當(dāng)三隱藏層數(shù)變化時(shí),四種模型的準(zhǔn)確率比較,實(shí)驗(yàn)結(jié)果如表4所示。
圖5 MINIST數(shù)據(jù)集上準(zhǔn)確率隨σ 取值變化圖
圖6 MINIST數(shù)據(jù)集上四種模型稀疏度變化圖
表3 MINIST數(shù)據(jù)集上四種模型的平均稀疏度
表4 MINIST數(shù)據(jù)集上四種模型的準(zhǔn)確度
從圖5 可以看出,本文提出的G-DBN 在三隱藏層數(shù)為200-200-100 的條件下,與沒有稀疏正則化的NSDBN 模型比較準(zhǔn)確率更高,與基于率失真理論的SPDBN 模型比較,在σ >0.4 后準(zhǔn)確率普遍更高??梢宰C明在接下來的實(shí)驗(yàn)G-DBN 模型中選取的σ=0.6 和σ=0.7 具有一定程度的普適性,并非某種特定條件下的優(yōu)越性。
從圖6可以看出,當(dāng)隱藏層節(jié)點(diǎn)數(shù)在60到400之間時(shí),G-RBM的兩種模型始終保持更好的稀疏性質(zhì),同時(shí)從表3得知,G-RBM的兩種模型在六組測(cè)試中,平均稀疏度較NS-RBM和SP-RBM兩種模型有一定的改善,而沒有加入稀疏正則項(xiàng)的NS-RBM稀疏性表現(xiàn)最差。
從表4 可以看出,本文提出的G-DBN 兩種模型在實(shí)驗(yàn)的六組測(cè)試層數(shù)中,準(zhǔn)確率始終高于NS-DBN 和SP-DBN 兩種模型,可以說明SP-DBN 方案能夠提升傳統(tǒng)DBN 模型的分類識(shí)別準(zhǔn)確率,同時(shí)本文提出的改進(jìn)方案較SP-DBN 方案所提升分類識(shí)別準(zhǔn)確率更高。但是由于傳統(tǒng)DBN 分類準(zhǔn)確率已經(jīng)達(dá)到97%以上,所以提升的效果并不是特別明顯。
本文首先介紹了限制波爾茨曼機(jī)和深度置信網(wǎng)絡(luò)訓(xùn)練過程,并提出了一種基于無均值高斯分布函數(shù)的改進(jìn)DBN 模型,同時(shí)在ORL 數(shù)據(jù)集和MINIST 數(shù)據(jù)集上對(duì)所提出的方案與另兩種模型方案進(jìn)行對(duì)比實(shí)驗(yàn)。通過實(shí)驗(yàn)證明,本文所提出的改進(jìn)方案,在稀疏性和準(zhǔn)確率上較前兩種方案更為優(yōu)越,同時(shí)在一定程度驗(yàn)證了所提出的方案具有普適性。但是本文在隱藏層數(shù)對(duì)準(zhǔn)確率和稀疏度的影響實(shí)驗(yàn)中只選取了兩種DBN 模型,在隱藏節(jié)點(diǎn)數(shù)變化過程中也過于單一,缺乏大量實(shí)驗(yàn)做支撐,以上問題都將作為本文日后的研究重點(diǎn)方向。