蔡楚華,蘭誠棟,陳康杰
(福州大學(xué) 物理與信息工程學(xué)院,福建 福州 350116)
深度學(xué)習(xí)最佳深度的確定*
蔡楚華,蘭誠棟,陳康杰
(福州大學(xué) 物理與信息工程學(xué)院,福建 福州 350116)
確定最佳深度可以降低運算成本,同時可以進(jìn)一步提高精度。針對深度置信網(wǎng)絡(luò)深度選擇的問題,文章分析了通過設(shè)定閾值方法選擇最佳深度的不足之處。從信息論的角度,驗證了信息熵在每層玻爾茲曼機(jī)(RBM)訓(xùn)練達(dá)到穩(wěn)態(tài)之后會達(dá)到收斂,以收斂之后的信息熵作為判斷最佳層數(shù)的標(biāo)準(zhǔn)。通過手寫數(shù)字識別的實驗發(fā)現(xiàn)該方法可以作為最佳層數(shù)的判斷標(biāo)準(zhǔn)。
深度置信網(wǎng)絡(luò);信息熵;最佳深度
人工神經(jīng)網(wǎng)絡(luò)是從信息處理角度對人腦神經(jīng)元網(wǎng)絡(luò)進(jìn)行抽象,建立某種簡單模型,按不同的連接方式組成不同的網(wǎng)絡(luò)[1]。2006年之前,多數(shù)的分類、回歸等學(xué)習(xí)方法通常都只是包含一層隱藏層的淺層學(xué)習(xí)模型,其局限性在于在有限樣本和計算單元情況下對復(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]提出的基于時間的深度神經(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í)在語音識別、計算機(jī)視覺等領(lǐng)域已經(jīng)取得了巨大的成功。但是對于深度學(xué)習(xí)的研究是近些年才開始的,建模問題是其中的關(guān)鍵問題之一,如何針對不同的應(yīng)用構(gòu)建合適的深度模型是一個很有挑戰(zhàn)性的問題[5]。DBN目前在應(yīng)用中依然使用經(jīng)驗值法來判斷DBN所選用的層數(shù)及其節(jié)點數(shù),其中文獻(xiàn)[6-7]研究發(fā)現(xiàn)增加DBN的層數(shù)到一定的峰值之后,再次增加DBN的層數(shù)并不能提升系統(tǒng)性能,反而導(dǎo)致訓(xùn)練的時間過長,從而增加了計算成本。
近年來針對DBN層數(shù)的確定已經(jīng)有了一些初步的進(jìn)展,其中高強[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òu)誤差能夠在一定程度上反映RBM對訓(xùn)練數(shù)據(jù)的似然度,不過并不完全可靠[10-11]??梢钥闯霈F(xiàn)在的方法基本上是設(shè)定一個閾值來進(jìn)行判斷,這樣的做法可能會導(dǎo)致雖然達(dá)到了閾值但是效果并不是很好的情況。綜合上述情況,本文提出利用在RBM訓(xùn)練達(dá)到穩(wěn)態(tài)后通過計算隱藏層的信息熵來判斷最佳層數(shù),當(dāng)增加一層RBM后,信息熵也會增加,當(dāng)信息熵不再增加時則選取該層作為最佳層數(shù)。
2006年,Hinton等人提出了深度置信神經(jīng)網(wǎng)絡(luò),該模型是通過若干個RBM疊加而成[11]。RBM是一個兩層模型,分別為可見層和隱藏層,RBM的訓(xùn)練方法為首先隨機(jī)初始化可見層,然后在可見層和隱藏層之間進(jìn)行Gibbs采樣,通過可見層用條件概率分布P(h|v)來得到隱藏層,之后同樣利用P(v|h)來計算可見層,重復(fù)該過程使得可見層與隱藏層達(dá)到平衡,訓(xùn)練RBM網(wǎng)絡(luò)的目標(biāo)是使得計算后的可見層的分布最大可能地擬合初始可見層的分布。而以訓(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è)定一個閾值,如果沒有達(dá)到該閾值則增加一層;如果達(dá)到該閾值則取該層為最佳層數(shù)。通過最后的實驗可以發(fā)現(xiàn),雖然選取第4層為最佳層數(shù),但重構(gòu)誤差在第5層和第6層依然在降低,如果閾值選取得不好,雖然重構(gòu)誤差能夠滿足閾值的條件,但是選擇的層數(shù)得出的結(jié)構(gòu)并不能取得很好的效果。
故本文提出利用穩(wěn)定后的隱藏層的信息熵來判斷最佳層數(shù)。通過信息論可知,信息熵的物理含義表示信源輸出后,信息所提供的平均信息量,以及信源輸出前,信源的平均不確定性,同時信息熵也可以說是系統(tǒng)有序化程度的一個度量,一個系統(tǒng)越是有序,信息熵則越低,反之信息熵越高。而訓(xùn)練RBM的目標(biāo)是使得系統(tǒng)的能量函數(shù)越小,使系統(tǒng)越有序。所以在RBM訓(xùn)練完之后,信息熵將會收斂于一個較小值。
假設(shè)輸入的矩陣為V=(v1,v2,v3,…,vi),經(jīng)過RBM訓(xùn)練之后的輸出矩陣為Y=(y1,y2,y3,…,yj),經(jīng)過RBM的訓(xùn)練模型可以通過已知的可視節(jié)點得到隱藏節(jié)點的值,即:
P(Y)=S(WV+B)
(1)
其中W為權(quán)重矩陣,B為偏置矩陣,S(x)為激活函數(shù),一般選取Sigmoid函數(shù),即:
(2)
信息熵的求解公式為:
(3)
根據(jù)Hinton提出的對比散度的算法[13],權(quán)重和偏置會根據(jù)下式進(jìn)行更新:
(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會逐漸收斂,而v是輸入數(shù)據(jù),是確定值,所以在訓(xùn)練達(dá)到終態(tài)后,p(yi)也會逐漸收斂,同樣信息熵H(Y)會收斂于一個較小值。
當(dāng)訓(xùn)練完一層之后,將隱藏層作為第2層的可見層輸入并開始訓(xùn)練第2層RBM。根據(jù)信息熵的另一個物理含義平均信息量可知,在消除不確定性后,信息熵越大則表示所獲得的信息量越多,則隱藏層對于抽取的特征信息量也越大。所以當(dāng)信息熵不再增加時,所表示的信息量也不再增大,將每層的RBM看作為一個信源,則最后一層的RBM收斂之后信息熵應(yīng)該比其他層的大,這樣輸入到有監(jiān)督學(xué)習(xí)中的信息量才會最大。所以當(dāng)信息熵不再增加時,則選擇該層作為最佳層數(shù)。
本實驗使用MATLAB進(jìn)行仿真,數(shù)據(jù)庫利用MNIST手寫數(shù)字圖片作為實驗數(shù)據(jù)庫,該數(shù)據(jù)庫包含各種手寫數(shù)字圖片,同時也包含每一張圖片對應(yīng)的標(biāo)簽,以供機(jī)器學(xué)習(xí)進(jìn)行監(jiān)督學(xué)習(xí)的訓(xùn)練,已有很多不同模式識別技術(shù)(如KNN、SVM等)利用該數(shù)據(jù)庫作為實驗數(shù)據(jù)庫,故該數(shù)據(jù)庫是評估新方法的比較理想的方式。本實驗將10 000個樣本用于無監(jiān)督學(xué)習(xí)。其中MNIST的圖像為28×28的像素,所以第一層的輸入為784個節(jié)點,之后每層神經(jīng)元為100個節(jié)點。
通過MATLAB計算出信息熵,每次更新wi,j和bi后計算一次信息熵,由于有10 000個樣本,而每次輸入的均為100個樣本,分100次進(jìn)行輸入,每一層的RBM訓(xùn)練都設(shè)定為50次的迭代次數(shù)。故需要迭代的次數(shù)為5 000次,每更新一次后計算出新的信息熵,第2層的信息熵如圖1所示??梢钥吹疆?dāng)訓(xùn)練次數(shù)增加時,系統(tǒng)逐漸趨于穩(wěn)定,信息熵逐漸下降并逐漸趨于收斂。
圖1 第二層的信息熵
由于要達(dá)到平穩(wěn)后信息熵最大才能使平均信息量最大,所以選取每層3 000次訓(xùn)練之后的信息熵,對這些信息熵求平均值,作為該層的信息熵。表1為不同深度的訓(xùn)練數(shù)據(jù)。通過表1可以看出,隨著深度的增加,信息熵逐漸增加,在增加到第5層時,信息熵相比于第4層計算的
表1 不同深度的訓(xùn)練數(shù)據(jù)
信息熵有所下降,所以選擇第4層作為最佳層數(shù)。通過表1可以看出,在第4層時誤差率最低,而正確率最高。所以通過信息熵可以判斷出最佳層數(shù)。
深度學(xué)習(xí)在各個方面都有著很好的應(yīng)用前景,但是其中依然有著諸如建模問題等。本文針對深度置信網(wǎng)絡(luò)(DBN)深度難以選擇的問題進(jìn)行分析,并且指出現(xiàn)有的閾值選擇方法有可能在閾值選取不好時選取的層數(shù)并不是最佳層數(shù)。因此本文提出利用信息熵作為選擇層數(shù)的選擇標(biāo)準(zhǔn),當(dāng)信息熵沒有明顯增加時則選擇該層作為最佳層數(shù),通過實驗發(fā)現(xiàn)可以選取到最佳層數(shù),使得效果最好。本文只是針對深度的選擇問題進(jìn)行研究,而對于RBM依然有超參數(shù)的選擇問題,下一步可以探究其他超參數(shù)的選取,從而進(jìn)一步提高算法的收斂速度。
[1] 韓立群.人工神經(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.
[3] 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.
[4] 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.
[5] 陳先昌. 基于卷積神經(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.
[7] 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.
[8] 高強, 陽武, 李倩. DBN層次趨勢研究及其在航拍圖像故障識別中的應(yīng)用[J]. 儀器儀表學(xué)報, 2015, 36(6):1267-1274.
[9] 潘廣源, 柴偉, 喬俊飛. DBN網(wǎng)絡(luò)的深度確定方法[J]. 控制與決策, 2015,30(2):256-260.
[10] HINTON G E. A practical guide to training restricted boltzmann machines[J]. Momentum, 2010, 9(1):599-619.
[11] HINTON G E,OSINDERO S,TEH Y. A fast learning algorithm for deep belief nets[J].Neural Computation,2006,18(7):1527-1554.
[12] 張春霞, 姬楠楠, 王冠偉. 受限波爾茲曼機(jī)簡介[J]. 工程數(shù)學(xué)學(xué)報, 2013,32(2):159-173.
[13] HINTON G. Training products of experts by minimizing contrastive divergence[J]. Neural Computation, 2002,14(8):1771-1800.
Determination of the optimum depth in deep learning
Cai Chuhua,Lan Chengdong,Chen Kangjie
(College of Physics and Information Engineering,F(xiàn)uzhou University,F(xiàn)uzhou 350116,China)
The best depth can reduce operation cost while can improve the precision. Aiming at the problem of deep belief network depth selection, the paper analyzes the deficiencies of setting the threshold value method to select the best depth. From the perspective of information theory, firstly, by verifying the information entropy will converge in each layer of the Boltzmann machine (RBM) after training reaching steady state, convergence of information entropy as criteria for judging the best layers. Through the experiments of handwritten numeral recognition, it can be found that this method can be used as a criterion of the optimal layer.
deep belief network;entropy of information;optimum depth
福建省自然科學(xué)基金資助項目(2014J01234);福建省教育廳基金資助項目(JA15061)
TP391
A
10.19358/j.issn.1674- 7720.2017.09.017
蔡楚華,蘭誠棟,陳康杰.深度學(xué)習(xí)最佳深度的確定[J].微型機(jī)與應(yīng)用,2017,36(9):57-59,66.
2017-01-12)
蔡楚華(1991-),男,碩士研究生,主要研究方向:人工智能。
蘭誠棟(1981-),通信作者,男,博士,講師,主要研究方向:人工智能,視頻編碼。E-mail:16376754@qq.com。
陳康杰(1991-),男,碩士研究生,主要研究方向:視頻編碼,人工智能。