《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 深度學(xué)習(xí)最佳深度的確定
深度學(xué)習(xí)最佳深度的確定
2017年微型機(jī)與應(yīng)用第9期
蔡楚華,蘭誠棟,陳康杰
福州大學(xué) 物理與信息工程學(xué)院,福建 福州 350116
摘要: 確定最佳深度可以降低運(yùn)算成本,同時(shí)可以進(jìn)一步提高精度。針對深度置信網(wǎng)絡(luò)深度選擇的問題,文章分析了通過設(shè)定閾值方法選擇最佳深度的不足之處。從信息論的角度,驗(yàn)證了信息熵在每層玻爾茲曼機(jī)(RBM)訓(xùn)練達(dá)到穩(wěn)態(tài)之后會(huì)達(dá)到收斂,以收斂之后的信息熵作為判斷最佳層數(shù)的標(biāo)準(zhǔn)。通過手寫數(shù)字識(shí)別的實(shí)驗(yàn)發(fā)現(xiàn)該方法可以作為最佳層數(shù)的判斷標(biāo)準(zhǔn)。
Abstract:
Key words :

  蔡楚華,蘭誠棟,陳康杰

 ?。ǜV荽髮W(xué) 物理與信息工程學(xué)院,福建 福州 350116)

  摘要:確定最佳深度可以降低運(yùn)算成本,同時(shí)可以進(jìn)一步提高精度。針對深度置信網(wǎng)絡(luò)深度選擇的問題,文章分析了通過設(shè)定閾值方法選擇最佳深度的不足之處。從信息論的角度,驗(yàn)證了信息熵在每層玻爾茲曼機(jī)(RBM)訓(xùn)練達(dá)到穩(wěn)態(tài)之后會(huì)達(dá)到收斂,以收斂之后的信息熵作為判斷最佳層數(shù)的標(biāo)準(zhǔn)。通過手寫數(shù)字識(shí)別的實(shí)驗(yàn)發(fā)現(xiàn)該方法可以作為最佳層數(shù)的判斷標(biāo)準(zhǔn)。

  關(guān)鍵詞:深度置信網(wǎng)絡(luò);信息熵;最佳深度

  中圖分類號(hào):TP391文獻(xiàn)標(biāo)識(shí)碼:ADOI: 10.19358/j.issn.1674-7720.2017.09.017

  引用格式:蔡楚華,蘭誠棟,陳康杰.深度學(xué)習(xí)最佳深度的確定[J].微型機(jī)與應(yīng)用,2017,36(9):57-59,66.

  0引言

  *基金項(xiàng)目: 福建省自然科學(xué)基金資助項(xiàng)目(2014J01234);福建省教育廳基金資助項(xiàng)目(JA15061)

  人工神經(jīng)網(wǎng)絡(luò)是從信息處理角度對人腦神經(jīng)元網(wǎng)絡(luò)進(jìn)行抽象,建立某種簡單模型,按不同的連接方式組成不同的網(wǎng)絡(luò)[1]。2006年之前,多數(shù)的分類、回歸等學(xué)習(xí)方法通常都只是包含一層隱藏層的淺層學(xué)習(xí)模型,其局限性在于在有限樣本和計(jì)算單元情況下對復(fù)雜函數(shù)的表示能力有限。在2006年,多倫多大學(xué)的Hinton教授提出的深度信念網(wǎng)絡(luò)(Deep Belief Network,DBN)[2]的深度學(xué)習(xí),使得人工神經(jīng)網(wǎng)絡(luò)又掀起了另一次浪潮。傳統(tǒng)的淺層神經(jīng)網(wǎng)絡(luò)隨機(jī)初始化網(wǎng)絡(luò)中的權(quán)值,容易出現(xiàn)收斂到局部最小值。針對這一問題,Hinton教授提出使用無監(jiān)督訓(xùn)練的方法先初始化權(quán)值,再通過反向微調(diào)權(quán)值的方法來確定權(quán)值從而達(dá)到更好的效果。除此之外,Mikolov[3]提出的基于時(shí)間的深度神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)主要用于序列數(shù)據(jù)的預(yù)測,有一定的記憶效應(yīng)。而之后對于DBN的研究又?jǐn)U展了一些其他的變種,比如卷積深度置信網(wǎng)絡(luò)(Convolutional Deep Belief Networks,CDBN)[4]等。

  目前深度學(xué)習(xí)在語音識(shí)別、計(jì)算機(jī)視覺等領(lǐng)域已經(jīng)取得了巨大的成功。

  但是對于深度學(xué)習(xí)的研究是近些年才開始的,建模問題是其中的關(guān)鍵問題之一,如何針對不同的應(yīng)用構(gòu)建合適的深度模型是一個(gè)很有挑戰(zhàn)性的問題[5]。DBN目前在應(yīng)用中依然使用經(jīng)驗(yàn)值法來判斷DBN所選用的層數(shù)及其節(jié)點(diǎn)數(shù),其中文獻(xiàn)[67]研究發(fā)現(xiàn)增加DBN的層數(shù)到一定的峰值之后,再次增加DBN的層數(shù)并不能提升系統(tǒng)性能,反而導(dǎo)致訓(xùn)練的時(shí)間過長,從而增加了計(jì)算成本。

  近年來針對DBN層數(shù)的確定已經(jīng)有了一些初步的進(jìn)展,其中高強(qiáng)[8]利用中心極限定理證明了在受限玻爾茲曼機(jī)(Restricted Boltzmann Machine,RBM)訓(xùn)練達(dá)到穩(wěn)態(tài)后對應(yīng)的權(quán)值系數(shù)矩陣元素服從正態(tài)分布,隨著層數(shù)的增加,權(quán)值系數(shù)矩陣越來越趨于正態(tài)分布,以權(quán)值權(quán)重最趨近于正態(tài)分布的程度作為確定深度信念網(wǎng)絡(luò)層數(shù)的依據(jù),通過求出正態(tài)分布滿足率來選擇合適的層數(shù)。潘廣源等人[9]利用設(shè)定重構(gòu)誤差的閾值來確定層數(shù),在重構(gòu)誤差未達(dá)到這個(gè)閾值時(shí)則增加一層,雖然重構(gòu)誤差能夠在一定程度上反映RBM對訓(xùn)練數(shù)據(jù)的似然度,不過并不完全可靠[1011]??梢钥闯霈F(xiàn)在的方法基本上是設(shè)定一個(gè)閾值來進(jìn)行判斷,這樣的做法可能會(huì)導(dǎo)致雖然達(dá)到了閾值但是效果并不是很好的情況。綜合上述情況,本文提出利用在RBM訓(xùn)練達(dá)到穩(wěn)態(tài)后通過計(jì)算隱藏層的信息熵來判斷最佳層數(shù),當(dāng)增加一層RBM后,信息熵也會(huì)增加,當(dāng)信息熵不再增加時(shí)則選取該層作為最佳層數(shù)。

1深度信念網(wǎng)絡(luò)層數(shù)的確定

  2006年,Hinton等人提出了深度置信神經(jīng)網(wǎng)絡(luò),該模型是通過若干個(gè)RBM疊加而成[11]。RBM是一個(gè)兩層模型,分別為可見層和隱藏層,RBM的訓(xùn)練方法為首先隨機(jī)初始化可見層,然后在可見層和隱藏層之間進(jìn)行Gibbs采樣,通過可見層用條件概率分布P(h|v)來得到隱藏層,之后同樣利用P(v|h)來計(jì)算可見層,重復(fù)該過程使得可見層與隱藏層達(dá)到平衡,訓(xùn)練RBM網(wǎng)絡(luò)的目標(biāo)是使得計(jì)算后的可見層的分布最大可能地?cái)M合初始可見層的分布。而以訓(xùn)練數(shù)據(jù)為初始狀態(tài),根據(jù)RBM的分布進(jìn)行一次Gibbs采樣后所獲得樣本與原數(shù)據(jù)的差異即為重構(gòu)誤差[12]。

  其中文獻(xiàn)[9]首先引入了RBM的訓(xùn)練精度隨著深度的增加而提高,并且證明了重構(gòu)誤差與網(wǎng)絡(luò)能量正相關(guān),之后對重構(gòu)誤差的值設(shè)定一個(gè)閾值,如果沒有達(dá)到該閾值則增加一層;如果達(dá)到該閾值則取該層為最佳層數(shù)。通過最后的實(shí)驗(yàn)可以發(fā)現(xiàn),雖然選取第4層為最佳層數(shù),但重構(gòu)誤差在第5層和第6層依然在降低,如果閾值選取得不好,雖然重構(gòu)誤差能夠滿足閾值的條件,但是選擇的層數(shù)得出的結(jié)構(gòu)并不能取得很好的效果。

  故本文提出利用穩(wěn)定后的隱藏層的信息熵來判斷最佳層數(shù)。通過信息論可知,信息熵的物理含義表示信源輸出后,信息所提供的平均信息量,以及信源輸出前,信源的平均不確定性,同時(shí)信息熵也可以說是系統(tǒng)有序化程度的一個(gè)度量,一個(gè)系統(tǒng)越是有序,信息熵則越低,反之信息熵越高。而訓(xùn)練RBM的目標(biāo)是使得系統(tǒng)的能量函數(shù)越小,使系統(tǒng)越有序。所以在RBM訓(xùn)練完之后,信息熵將會(huì)收斂于一個(gè)較小值。

  假設(shè)輸入的矩陣為V=(v1,v2,v3,…,vi),經(jīng)過RBM訓(xùn)練之后的輸出矩陣為Y=(y1,y2,y3,…,yj),經(jīng)過RBM的訓(xùn)練模型可以通過已知的可視節(jié)點(diǎn)得到隱藏節(jié)點(diǎn)的值,即:

  P(Y)=S(WV+B)(1)

  其中W為權(quán)重矩陣,B為偏置矩陣,S(x)為激活函數(shù),一般選取Sigmoid函數(shù),即:

  D(S007`3~YX)YS[U1]~{SLS.png

  信息熵的求解公式為:

  C1}IU)Y1NQ9I~9JD9%EDB0P.png

  根據(jù)Hinton提出的對比散度的算法[13],權(quán)重和偏置會(huì)根據(jù)下式進(jìn)行更新:

  wi,j=wi,j+[P(hi=1|V(0))v(0)j-P(hi=1|V(k))v(k)j](4)

  bi=bi+[P(hi=1|V(0))-P(hi=1|V(k))](5)

  當(dāng)RBM訓(xùn)練到達(dá)終態(tài)后,則權(quán)值wi,j和偏置bi會(huì)逐漸收斂,而v是輸入數(shù)據(jù),是確定值,所以在訓(xùn)練達(dá)到終態(tài)后,p(yi)也會(huì)逐漸收斂,同樣信息熵H(Y)會(huì)收斂于一個(gè)較小值。

  當(dāng)訓(xùn)練完一層之后,將隱藏層作為第2層的可見層輸入并開始訓(xùn)練第2層RBM。根據(jù)信息熵的另一個(gè)物理含義平均信息量可知,在消除不確定性后,信息熵越大則表示所獲得的信息量越多,則隱藏層對于抽取的特征信息量也越大。所以當(dāng)信息熵不再增加時(shí),所表示的信息量也不再增大,將每層的RBM看作為一個(gè)信源,則最后一層的RBM收斂之后信息熵應(yīng)該比其他層的大,這樣輸入到有監(jiān)督學(xué)習(xí)中的信息量才會(huì)最大。所以當(dāng)信息熵不再增加時(shí),則選擇該層作為最佳層數(shù)。

2實(shí)驗(yàn)

  本實(shí)驗(yàn)使用MATLAB進(jìn)行仿真,數(shù)據(jù)庫利用MNIST手寫數(shù)字圖片作為實(shí)驗(yàn)數(shù)據(jù)庫,該數(shù)據(jù)庫包含各種手寫數(shù)字圖片,同時(shí)也包含每一張圖片對應(yīng)的標(biāo)簽,以供機(jī)器學(xué)習(xí)進(jìn)行監(jiān)督學(xué)習(xí)的訓(xùn)練,已有很多不同模式識(shí)別技術(shù)(如KNN、SVM等)利用該數(shù)據(jù)庫作為實(shí)驗(yàn)數(shù)據(jù)庫,故該數(shù)據(jù)庫是評估新方法的比較理想的方式。本實(shí)驗(yàn)將10 000個(gè)樣本用于無監(jiān)督學(xué)習(xí)。其中MNIST的圖像為28×28的像素,所以第一層的輸入為784個(gè)節(jié)點(diǎn),之后每層神經(jīng)元為100個(gè)節(jié)點(diǎn)。

  通過MATLAB計(jì)算出信息熵,每次更新wi,j和bi后計(jì)算一次信息熵,由于有10 000個(gè)樣本,而每次輸入的均為100個(gè)樣本,分100次進(jìn)行輸入,每一層的RBM訓(xùn)練都設(shè)定為50次的迭代次數(shù)。故需要迭代的次數(shù)為5 000次,每更新一次后計(jì)算出新的信息熵,第2層的信息熵如圖1所示??梢钥吹疆?dāng)訓(xùn)練次數(shù)增加時(shí),系統(tǒng)逐漸趨于穩(wěn)定,信息熵逐漸下降并逐漸趨于收斂。

 

001.jpg

  由于要達(dá)到平穩(wěn)后信息熵最大才能使平均信息量最大,所以選取每層3 000次訓(xùn)練之后的信息熵,對這些信息熵求平均值,作為該層的信息熵。表1為不同深度的訓(xùn)練數(shù)據(jù)。通過表1可以看出,隨著深度的增加,信息熵逐漸增加,在增加到第5層時(shí),信息熵相比于第4層計(jì)算的信息熵有所下降,所以選擇第4層作為最佳層數(shù)。通過表1可以看出,在第4層時(shí)誤差率最低,而正確率最高。所以通過信息熵可以判斷出最佳層數(shù)。

002.jpg

3結(jié)論

  深度學(xué)習(xí)在各個(gè)方面都有著很好的應(yīng)用前景,但是其中依然有著諸如建模問題等。本文針對深度置信網(wǎng)絡(luò)(DBN)深度難以選擇的問題進(jìn)行分析,并且指出現(xiàn)有的閾值選擇方法有可能在閾值選取不好時(shí)選取的層數(shù)并不是最佳層數(shù)。因此本文提出利用信息熵作為選擇層數(shù)的選擇標(biāo)準(zhǔn),當(dāng)信息熵沒有明顯增加時(shí)則選擇該層作為最佳層數(shù),通過實(shí)驗(yàn)發(fā)現(xiàn)可以選取到最佳層數(shù),使得效果最好。本文只是針對深度的選擇問題進(jìn)行研究,而對于RBM依然有超參數(shù)的選擇問題,下一步可以探究其他超參數(shù)的選取,從而進(jìn)一步提高算法的收斂速度。

參考文獻(xiàn)

 ?。?] 韓立群.人工神經(jīng)網(wǎng)絡(luò)[M].北京:北京郵電大學(xué)出版社,2006.

  [2] HINTON G E, SALAKHUTDINOV R R. Reducing the dimensionality of data with neural networks[J]. Science,2006, 313(5786): 504507.

 ?。?] MIKOLOV T, SUTSKEVER I, CHEN K, et al. Distributed representations of words and phrases and their compositionality[C]. Advances in Neural Information Processing Systems, 2013:31113119.

 ?。?] LEE H,GROSSE R,ANGANATH R,et al.Unsupervised learning of hierarchical representations with convolutional deep belief networks[J].Communications of the ACM,2011,54(10): 95103.

 ?。?] 陳先昌. 基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)算法與應(yīng)用研究[D]. 杭州:浙江工商大學(xué), 2014.

  [6] MOHAMED A R,DAHL G E,INTON G.Acoustic modeling using deep belief networks[J].IEEE Transactions on Audio,Speech and Language Processing,2012,20(1): 1422.

 ?。?] AHL G E, DONG Y,LI D et al.Contextdependent pretrained deep neual networks for largevocabulary speech recognition[J].IEEE Transactions on Audio Speech and Language Processing,2012,20(1):3042.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。