楊 浩,馬建紅
(河北工業(yè)大學(xué) 計算機(jī)科學(xué)與軟件學(xué)院,天津 300401)
正則化參數(shù)求解方法研究
楊 浩,馬建紅
(河北工業(yè)大學(xué) 計算機(jī)科學(xué)與軟件學(xué)院,天津 300401)
針對BP神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練過程中出現(xiàn)的過擬合問題,提出了利用一階原點矩,二階原點矩,方差和極大似然估計概念的推廣來計算L2正則化中正則化參數(shù)λ值的方法。該方法通過對算法數(shù)據(jù)集[X,Y]中的X矩陣進(jìn)行運算得到的四個λ值,BP神經(jīng)網(wǎng)絡(luò)算法訓(xùn)練時通常采用的是貝葉斯正則化方法,貝葉斯正則化方法存在著對先驗分布和數(shù)據(jù)分布依賴等問題,而利用上述概念的推廣計算的參數(shù)代入L2正則化的方法簡便沒有應(yīng)用條件限制;在BP神經(jīng)網(wǎng)絡(luò)手寫數(shù)字識別的實驗中,將該方法與貝葉斯正則化方法應(yīng)用到實驗中后的算法識別結(jié)果進(jìn)行比較,正確率提高了1.14-1.50個百分點;因而計算得到的λ值應(yīng)用到L2正則化方法與貝葉斯正則化方法相比更能使得BP神經(jīng)網(wǎng)絡(luò)算法的泛化能力強(qiáng),證明了該算法的有效性。
BP神經(jīng)網(wǎng)絡(luò);貝葉斯正則化;矩法估計;極大似然估計;方差;L2正則化
機(jī)器學(xué)習(xí)中常常遇到高維小樣本數(shù)據(jù),高維小樣本數(shù)據(jù)的變量空間維數(shù)很高,而樣本空間維數(shù)并不高,因此往往會為建模帶來一系列的問題,例如,訓(xùn)練樣本數(shù)量的不足會導(dǎo)致過擬合問題,模型的泛化能力很差,極端情況下訓(xùn)練樣本數(shù)小于變量數(shù)會導(dǎo)致建模過程需要求解病態(tài)的欠定方程組,進(jìn)而導(dǎo)致模型的解不唯一,過擬合的時候,擬合函數(shù)的系數(shù)往往非常大,過擬合中擬合函數(shù)需要顧忌每一個點,最終形成的擬合函數(shù)波動很大。在某些很小的區(qū)間里,函數(shù)值的變化很劇烈。這就意味著函數(shù)在某些小區(qū)間里的導(dǎo)數(shù)值(絕對值)非常大,由于自變量值可大可小,所以只有系數(shù)足夠大,才能保證導(dǎo)數(shù)值很大,而正則化是通過約束參數(shù)的范數(shù)使其不要太大,所以可以在一定程度上減少過擬合情況。
正則化方法可分為迭代正則化方法,直接正則化方法,L1和L2正則化方法與貝葉斯正則化方法。迭代方法如Landweber迭代法[1]和共軛梯度法(Conjugate Gradient,CG)[2],但是迭代方法中又引入了確定迭代次數(shù)等新的參數(shù)確定問題。直接正則化方法有截斷奇異值(Singular Value Decomposition,TSVD)方法[3]與潔洪諾夫正則化(Tikhonov Regularization,TR)[4],潔洪諾夫正則化方法是在解決不適定問題中應(yīng)用廣泛的正則化方法,但由于這種方法具有飽和效應(yīng),不能使正則解與準(zhǔn)確解的誤差估計達(dá)到階數(shù)最優(yōu),傅初黎[5]等對潔洪諾夫正則化方法進(jìn)行了改進(jìn),提出了迭代的潔洪諾夫正則化方法,但未能使得其解決非線性算法的正則化參數(shù)問題,并且增加了迭代次數(shù)的確定問題。迭代正則化方法和直接正則化方法主要應(yīng)用于線性問題的求解,并不能解決BP神經(jīng)網(wǎng)絡(luò)的非線性問題的正則化問題。
避免過擬合是BP神經(jīng)網(wǎng)絡(luò)算法設(shè)計中的一個核心任務(wù)。通常采用增大數(shù)據(jù)量,測試樣本集的方法或者采用正則化的方法對算法性能進(jìn)行提升。目前在BP神經(jīng)網(wǎng)絡(luò)算法正則化方面主要的解決辦法是采用貝葉斯正則化方法(Bayesian Regularization,BR)和L2正則化方法。貝葉斯正則化由潔洪諾夫正則化方法發(fā)展而來的。在性能函數(shù)誤差反饋的基礎(chǔ)上,加上了權(quán)值的反饋以此提高算法的泛化能力,但貝葉斯正則化方法得到λ值的準(zhǔn)確性存在依賴數(shù)據(jù)的分布和先驗概率的問題[6-11]。L2正則化方法則需要確定它的正則化參數(shù)λ值,但目前尚未有有效的方法進(jìn)行計算。
因此研究一種計算L2正則化中正則化參數(shù)λ值的方法是一件很有意義的一件事。本文通過應(yīng)用統(tǒng)計中的矩法估計,方差和極大似然估計的概念推廣的計算方法來得到正則化參數(shù)λ值,并應(yīng)用到L2正則化方法中與采用貝葉斯正則化方法和人工選取得到的正則化參數(shù)確定正則化參數(shù)進(jìn)行實驗對比,人工選取正則化參數(shù),如從λ=0.1,按照一定的步長增長如0.1,對比不同值得情況下,代價函數(shù)取得較小值時且假設(shè)函數(shù)未發(fā)生過擬合時的值,實驗表明本論文中的方法得到的正則化參數(shù)值λ應(yīng)用到L2正則化方法中相比于貝葉斯正則化方法更能夠使得代價函數(shù)值小且假設(shè)函數(shù)不發(fā)生過擬合的現(xiàn)象。
BP神經(jīng)網(wǎng)絡(luò)[12-14]是基于前饋和反向傳播算法的神經(jīng)網(wǎng)絡(luò),包含輸入層、隱含層和輸出層,隱藏層節(jié)點數(shù)越多,隱藏層神經(jīng)元數(shù)目越多,神經(jīng)網(wǎng)絡(luò)泛化能力越差,并且當(dāng)遇到高維特征向量會給BP神經(jīng)網(wǎng)絡(luò)分類器帶來過擬合的風(fēng)險,影響B(tài)P神經(jīng)網(wǎng)絡(luò)在新的數(shù)據(jù)集上的識別率,也就是說BP神經(jīng)網(wǎng)絡(luò)的泛化表現(xiàn)不符合預(yù)期要求。
由L2范數(shù)而來的L2正則化方法,L2正則化就是在代價函數(shù)后面再加上一個正則化項:
(1)
C0代表原始的代價函數(shù),后面一項是L2正則化項表示所有參數(shù)w平方的和,除以訓(xùn)練集的樣本大小n。λ就是正則項參數(shù),權(quán)衡正則項與C0項的比重,另外一個系數(shù)1/2,是為了后面求導(dǎo)的結(jié)果方便,后面那一項求導(dǎo)會產(chǎn)生一個2,與1/2相乘剛好湊整。
L2正則化避免overfitting,推導(dǎo)如下:
(2)
(3)
可以發(fā)現(xiàn)L2正則化項對b的更新沒有影響,但是對于w的更新有影響:
(4)
(5)
L2正則化項有讓w“變小”的效果,更小的權(quán)值w,表示網(wǎng)絡(luò)的復(fù)雜度更低,對數(shù)據(jù)的擬合更好即奧卡姆剃刀法則,而在實際應(yīng)用中,也驗證了這一點,L2正則化的效果往往好于未經(jīng)正則化的效果。
在BP神經(jīng)網(wǎng)路的代價函數(shù)后面添加正則化項如下:
(1 -yk(i)log(1 - (hθ(x(i)))k)]+
(6)
統(tǒng)計中的方差[15],是各個數(shù)據(jù)(X1X2...Xn)分別與其平均數(shù)之差的平方的和的平均數(shù)。在許多實際問題中,研究方差即偏離程度有著重要意義。
極大似然估計[15],設(shè)總體X服從某類離散型分布,它的概率密度函數(shù)為P(x;θ),(X1,X2,...Xn)是取自總體的一個樣本,在一次實驗中獲得樣本值(X1,X2,...Xn)的概率為:
(7)
設(shè)(X1,X2,...Xn)是取自總體X~b(m,p)的樣本,其中0
總體X的概率函數(shù)為:
(8)
因此似然函數(shù)為:
(9)
(10)
解得p的估計值:
(11)
以上是矩法估計、方差和極大似然估計的概念介紹,下面是對矩法估計、方差和極大似然概念的推廣過程。
矩法估計、極大似然估計和方差在向量形式數(shù)據(jù)上的應(yīng)用舉例。假設(shè)判斷一個燈泡質(zhì)量的優(yōu)劣,當(dāng)燈泡壽命在4 500小時以上時,我們判斷燈泡質(zhì)量是優(yōu),燈泡壽命在4 500小時以下,判斷是劣,總共測試n=5 000個燈泡,如第一個燈泡壽命x1=4 600,第二個燈泡壽命x2=1 800等,根據(jù)每個燈泡的壽命xi得到每個燈泡對應(yīng)的評價,x1為優(yōu),x2為劣等,因而得到5 000個燈泡壽命數(shù)據(jù)及優(yōu)劣評價,同時得到的是一維的1行5 000列的燈泡壽命數(shù)據(jù)的向量(x1x2...xn),n=5 000。此時燈泡壽命數(shù)據(jù)組成的向量用于矩法估計時,計算一階原點矩公式如下:
(12)
計算二階原點矩公式如下:
(13)
在計算極大似然估計時,用這個向量數(shù)據(jù)計算燈泡壽命的平均值除以燈泡個數(shù)得到極大似然估計值,計算公式如下:
(14)
通過計算燈泡的平均壽命,算出每個燈泡與燈泡平均壽命值差值的平方,從而得到一組新的1行5 000列的向量(x1x2...xn),新的向量中的數(shù)據(jù)累加之后除以總數(shù)n就會得到方差,計算公式如下:
(15)
目前,矩法估計、極大似然估計和方差都是對向量形式的數(shù)據(jù)的計算,樣本數(shù)據(jù)Xi,1
(16)
二階原點矩概念的推廣,對算法數(shù)據(jù)集[X,Y]的Xmn矩陣每個xij數(shù)值的平方數(shù)值全部累加并且除以它的個數(shù)和m*n。時間復(fù)雜度為O(m*n),計算公式如下:
(17)
方差概念的推廣,對算法數(shù)據(jù)集[X,Y]的Xmn矩陣每個xij減去xij數(shù)值累加并除以矩陣數(shù)值個數(shù)m*n的平均值之后的平方進(jìn)行累加,除以維數(shù)m*n。時間復(fù)雜度為O(m*n),計算公式如下:
(18)
極大似然估計概念的推廣,對算法數(shù)據(jù)集[X,Y]的Xmn矩陣的xij數(shù)值累加,并且除以維數(shù)m*n。時間復(fù)雜度為O(m*n),計算公式如下:
(19)
例如在一個BP神經(jīng)網(wǎng)絡(luò)算法數(shù)據(jù)集[X,Y]中,X是5 000*400的矩陣,Y是5 000*1的列向量,則上述式子(16)(17)(18)(19)中n=5 000,m=400。
本文BP神經(jīng)網(wǎng)絡(luò)手寫數(shù)字識別實驗研究所使用的數(shù)據(jù)集來自在線課程coursera中吳恩達(dá)的機(jī)器學(xué)習(xí)課程的課后算法編程中提供的數(shù)據(jù)。
數(shù)據(jù)集中有5 000個訓(xùn)練實例,每個訓(xùn)練實例是20像素*20像素的灰度圖像的數(shù)字。通過20*20的像素網(wǎng)格“打開”一個400維的向量。這5 000個訓(xùn)練的例子中的每一個數(shù)字成為一個行向量組成的5 000×400數(shù)據(jù)矩陣X。
圖1 100個手寫數(shù)字訓(xùn)練圖像
Octave設(shè)計實現(xiàn)一個包含兩個隱藏層的BP神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)參數(shù)選擇如表1所示。
表1 實驗中的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
本文實驗中,BP神經(jīng)網(wǎng)絡(luò)輸入端是5 000*400的矩陣,λ是從-1開始以步長0.1增長至2。其中當(dāng)λ=0時,代價函數(shù)較小為0.287 63,實驗中測試集的手寫數(shù)字識別率達(dá)到了96.5%,泛化表現(xiàn)不錯。
通過對數(shù)據(jù)集5 000*400矩陣按照上述原理中的計算方法進(jìn)行四個數(shù)值的運算,利用推廣的一階原點矩概念計算的結(jié)果是0.131 34,代價函數(shù)值是0.300 26,利用推廣的二階原點矩概念計算結(jié)果是0.104 31,代價函數(shù)是0.297 66,利用推廣的方差概念得到的λ值是0.087 055,代價函數(shù)值是0.296 00,利用推廣的極大似然估計概念得到的值是0.131 34,代價函數(shù)是0.300 26。將一階原點矩0.131 34作為λ的值,經(jīng)過訓(xùn)練之后,在實驗中的測試集上手寫數(shù)字識別率達(dá)到了96.18%,將二階原點矩0.104 01作為λ的值,經(jīng)過訓(xùn)練之后在測試集上識別率達(dá)到了96.42%,將方差0.087 055作為λ的值,經(jīng)過訓(xùn)練之后,在測試集上識別率達(dá)到了96.06%,將極大似然估計得到的0.087 055作為λ的值,經(jīng)過訓(xùn)練之后,在測試集上識別率達(dá)到了96.18%。由數(shù)據(jù)集[X,Y]中的X進(jìn)行矩法估計中一階矩估計、二階矩估計、方差及極大似然估計概念推廣的公式簡單計算就可以得到λ值,并且算法有著不錯的泛化表現(xiàn)。
為進(jìn)一步驗證所提方法的有效性,和貝葉斯正則化進(jìn)行了比較。由貝葉斯正則化方法計算得到正則化參數(shù)值0.999 9作為λ的值,代價函數(shù)值是0.383 76,經(jīng)過訓(xùn)練之后,算法識別率達(dá)到了94.92%,低于由矩法估計,方差和極大似然估計概念推廣得到的λ值訓(xùn)練之后手寫數(shù)字識別率的最低值96.06%,即下表2所示。
表2 試驗中對比數(shù)據(jù)
實驗證明,本文對一階原點矩、二階原點矩、方差及極大似然估計的概念推廣計算得到的λ值,并用這4個值作為λ取值計算得到的代價函數(shù)值與人工多次選取找到的最優(yōu)λ值得到的代價函數(shù)值極為接近,泛化表現(xiàn)也很接近。本論文的方法計算得到的λ應(yīng)用到L2正則化方法進(jìn)行算法的訓(xùn)練得到的手寫數(shù)字識別率高于采用貝葉斯正則化方法的算法識別率。
由一階矩估計,二階矩估計,方差和極大似然估計概念的推廣公式對數(shù)據(jù)集[X,Y]中的X矩陣計算得到的λ值,與人工多次選擇正則化參數(shù)相比較效率更高,并且在算法訓(xùn)練之前就可以計算出正則化參數(shù),很好地解決了算法有可能會出現(xiàn)的過擬合問題,減少了因為選取正則化參數(shù)而導(dǎo)致多次計算代價函數(shù)等導(dǎo)致的多余的運算量。
對比在BP神經(jīng)網(wǎng)絡(luò)算法上應(yīng)用廣泛的貝葉斯正則化方法,本文提出的正則化參數(shù)λ計算方法簡單,沒有條件假設(shè)限制,適用BP神經(jīng)網(wǎng)絡(luò),并且實驗證明本文中的方法比貝葉斯正則化算法得到的λ值更能有效減少過擬合,提高算法的泛化表現(xiàn)。
進(jìn)一步的研究應(yīng)該探討本文方法應(yīng)用于深度學(xué)習(xí)網(wǎng)絡(luò)、線性回歸及svm等算法中的可行性。
[1] 謝正超,王 飛,嚴(yán)建華,等.爐膛三維溫度場重建中Tikhonov正則化和截斷奇異值分解算法比較[J].物理學(xué)報,2015,64(24):17-24.
[2] 崔 巖,王彥飛.基于初至波走時層析成像的Tikhonov正則化與梯度優(yōu)化算法[J].地球物理學(xué)報,2015,58(4):1367-1377.
[3] 王 旭,王靜文,王柯元.閾值Landweber在MIT圖像重建中的應(yīng)用[J].東北大學(xué)學(xué)報(自然科學(xué)版),2016,37(4):476-480.
[4] 雷 旎,劉 峰,曾喆昭.基于共軛梯度法的FIR數(shù)字濾波器優(yōu)化設(shè)計[J].計算機(jī)仿真,2014,31(12):179-182.
[5] 傅初黎,李洪芳,熊向團(tuán).不適定問題的迭代Tikhonov正則化方法[J].計算數(shù)學(xué),2006.
[6] 張剛剛.基于Tikhonov正則化的模糊系統(tǒng)辨識[D].遼寧科技大學(xué),2014.
[7] 高鵬毅.BP神經(jīng)網(wǎng)絡(luò)分類器優(yōu)化技術(shù)研究[D].武漢:華中科技大學(xué),2012.
[8] 劉子翔.基于GA和LM算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)在域市空氣質(zhì)量預(yù)測中的應(yīng)用研究[D].濟(jì)南:山東大學(xué),2015.
[9] 趙 攀,陳 懇,汪一聰.基基于圖像參數(shù)的BP網(wǎng)絡(luò)之巖石顆粒體積估算[J].計算機(jī)測量與控制,2009,17(3):571-575.
[10] 鄭德祥,賴曉燕,廖曉麗.基于貝葉斯正則化BP神經(jīng)網(wǎng)絡(luò)的森林資源資產(chǎn)批量評估研究[J].福建林學(xué)院學(xué)報,2013,33(2):132-136.
[11] 劉 源,龐寶君.基于貝葉斯正則化BP神經(jīng)網(wǎng)絡(luò)的鋁平板超高速撞擊損傷模式識別[J].振動與沖擊,2016,35(12):22-27.
[12] 宋 雷,黃 騰,方 劍,等.基于貝葉斯正則化BP神經(jīng)網(wǎng)絡(luò)的GPS高程轉(zhuǎn)換[J].西南交通大學(xué)學(xué)報,2008,43(6):724-728.
[13] Zhang S H,Ou J P.BP-PSO-based intelligent case retrieval method for high-rise structural form selection[J].Science China Technological Sciences,2013,56(4):940-944.
[14] Rakhshkhorshid M ,Teimouri S S A .Bayesian regularization neural networks for prediction of Austenite formation Temperature(Ac1 and Ac3)[J].ScienceDirect.2014,21(2):246-251.
[15]劉達(dá)民,程 巖.應(yīng)用統(tǒng)計[M].北京:化學(xué)工業(yè)出版社,2005.
Research on Method of Regularization Parameter Solution
Yang Hao, Ma Jianhong
(Hebei University of Technology,School of Computer Science and Engineering,Tianjin 300401,China)
Aiming at the over fitting problem of BP neural network algorithm, this method is put forward to calculate the value of the regularization parameter applied to L2 regularization by using the concept of the first order origin moment, the two order origin moment, the variance and the maximum likelihood estimation.This method based on theXmatrix of data sets to compute four value.Compared with the Bayesian regularization method used to train the BP neural network, Bayesian regularization method is depend on the prior distribution and the distribution of data dependence. The calculation method in this paper is simple and has no application conditions. In BP Neural Network handwritten digit recognition experiments, this method compared with the Bayesian regularization method improve the correct rate about 1.14-1.50 percentage points. Therefore, the method in this paper makes the algorithm more efficient.This method is validity.
BPneural network;regularization;maximum likelihood Estimation ;variance;moment estimation ;L2 regularization
2017-02-24;
2017-03-15。
楊 浩(1994-),男,河北石家莊人,碩士研究生,主要從事數(shù)據(jù)挖掘方向的研究。馬建紅(1965-),女,河北保定人,教授,博士生導(dǎo)師,主要從事計算機(jī)輔助創(chuàng)新設(shè)計過程與方法、TRIZ、軟件工程及數(shù)據(jù)挖掘等方向的研究。
1671-4598(2017)08-0226-04
10.16526/j.cnki.11-4762/tp.2017.08.058
TP301.6
A