艾迪 董海峰



摘 要:為解決傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)中隨機初始化參數(shù)方法的缺陷,提出一種基于決策樹信息增益算法的權(quán)值初始化方法。本文介紹了C4.5決策樹算法和BP神經(jīng)網(wǎng)絡(luò)算法的主要特點,以及闡述了如何利用決策樹算法中信息增益初始化BP神經(jīng)網(wǎng)絡(luò)權(quán)值參數(shù),以避免傳統(tǒng)隨機初始化方法所造成的缺點。并以油氣層敏感性評價的實例進行驗證。實驗表明,該初始化方法提高了BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)效率和準(zhǔn)確度。
關(guān)鍵詞: BP神經(jīng)網(wǎng)絡(luò); 決策樹; 信息增益; 權(quán)值初始化
【Abstract】 In order to solve the defects of the traditional random initialization parameter method, a BP neural network weight initialization method based on decision tree information gain algorithm is proposed. This paper introduces the main features of the C4.5 decision tree algorithm and the BP neural network algorithm, and explains how to use the information gain in the decision tree algorithm to initialize the BP neural network weight parameters, which could avoid the large amount of trial and error caused by the traditional random initialization method. It is verified by an example of oil and gas layer sensitivity evaluation. Experiments show that the initialization method improves the learning efficiency and accuracy of BP neural network.
【Key words】 ?BP neural network; decision tree; information gain; weight initialization
0 引 言
BP神經(jīng)網(wǎng)絡(luò)是人工神經(jīng)網(wǎng)絡(luò)中最常用的算法之一,主要通過誤差反向傳播來達到學(xué)習(xí)模式的目的。其具有較高的模式分類能力和多維度映射能力,在模式分類、模式識別、計算機視覺等領(lǐng)域應(yīng)用較廣。
但在實際情況中,易收斂到局部極小值與收斂速度慢等缺點使得BP神經(jīng)網(wǎng)絡(luò)往往無法達到期望的學(xué)習(xí)效率,而造成這些問題的一個主要原因是權(quán)值參數(shù)不合理的初始化[1]。若神經(jīng)網(wǎng)絡(luò)初始權(quán)值選擇不當(dāng),有可能導(dǎo)致神經(jīng)網(wǎng)絡(luò)初始誤差較大,收斂的方向較差,從而導(dǎo)致上述問題的出現(xiàn)。為此眾多科研工作者進行了大量研究,關(guān)于BP神經(jīng)網(wǎng)絡(luò)權(quán)值的初始化方法主要有:利用正態(tài)分布函數(shù)生成的隨機數(shù)的BP神經(jīng)網(wǎng)絡(luò)權(quán)值初始化方法[2]、利用遺傳算法全局搜索最優(yōu)初始權(quán)值的方法[3]、基于粒子群算法等人工智能算法優(yōu)化初始權(quán)值的方法[4]等等。但由于這些初始化方法都在某種程度上具有隨機性,所以在實際情況中依然存在一些局限。
本文提出基于C4.5決策樹算法的BP神經(jīng)網(wǎng)絡(luò)權(quán)值初始化方法。根據(jù)BP神經(jīng)網(wǎng)絡(luò)與決策樹的分類模式具有等價性[5],以及決策樹算法能夠計算特征的對于樣本的劃分能力,可以在權(quán)值初始化時對劃分能力較大的特征賦予更高的權(quán)值,從而避免初始權(quán)值不當(dāng)造成的初始誤差較大等問題。實驗結(jié)果表明,與傳統(tǒng)的隨機初始化方法相較,該方法有效地減少了初始誤差,提升了神經(jīng)網(wǎng)絡(luò)的訓(xùn)練精度。
1 C4.5決策樹算法概述
采用決策樹算法來初始化BP神經(jīng)網(wǎng)絡(luò)權(quán)值的方法,主要是利用信息增益能夠描述特征劃分能力的特點,從而預(yù)估出各個神經(jīng)元節(jié)點的權(quán)值大小[6]。且由于ID3決策樹算法不支持連續(xù)型特征,以及對多值屬性的偏向等缺陷,所以本文選用C4.5決策樹算法作為權(quán)值初始化方法。針對連續(xù)數(shù)據(jù)的樣本集,C4.5決策樹算法訓(xùn)練步驟具體如下:
Step 1 對訓(xùn)練數(shù)據(jù)集中的連續(xù)數(shù)據(jù)離散化,缺失值補全。
Step 2 分別按照已處理的數(shù)據(jù)集的各個特征計算相應(yīng)的信息增益、信息增益率。
Step 3 按照C4.5決策樹算法,先找出信息增益高于平均水平的特征,再從中選擇增益率最高的特征將當(dāng)前數(shù)據(jù)集劃分為不同的子集,建立相應(yīng)的決策樹。
Step 4 遞歸調(diào)用Step 2、Step 3,直至所有特征都參與決策劃分,并根據(jù)結(jié)果來建立完整決策樹。
C4.5決策樹算法整體流程如圖1所示。
2 BP神經(jīng)網(wǎng)絡(luò)概述
理論上,單隱藏層的BP神經(jīng)網(wǎng)絡(luò)可以逼近任何有理函數(shù),而隨意增加隱藏層的數(shù)目可能導(dǎo)致網(wǎng)絡(luò)結(jié)構(gòu)更加復(fù)雜,進而增加神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時間,降低訓(xùn)練效率[7],因此,本文重點討論單層隱藏層BP神經(jīng)網(wǎng)絡(luò)。該神經(jīng)網(wǎng)絡(luò)由輸入層、隱藏層和輸出層組成,主要學(xué)習(xí)過程可分為正向傳播和反向傳播兩部分。其中,在正向傳播時,樣本數(shù)據(jù)傳入輸入層,經(jīng)過正向傳播至隱藏層,以同樣方式再傳播至輸出層,并在輸出端輸出實際結(jié)果,神經(jīng)網(wǎng)絡(luò)的初始權(quán)值在正向傳播的過程中不產(chǎn)生變化,若實際結(jié)果與期望值的誤差沒有達到標(biāo)準(zhǔn),則誤差由輸出層開始進入反向傳播過程。各層各個節(jié)點的權(quán)值通過梯度下降算法進行更新,直至將所有節(jié)點的權(quán)值更新完畢,再次進行正向傳播。通過反復(fù)的正向傳播和反向傳播使得各個節(jié)點的權(quán)值得到不斷的修正,這2個過程一直循環(huán)交替進行,直到誤差減少至設(shè)定的范圍內(nèi),或者達到迭代次數(shù)為止。神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
4 油氣層敏感性評價實例分析
本文原始數(shù)據(jù)來源于某油田巖石實驗,其中油氣層水敏性主要影響因素為:泥質(zhì)含量、石英含量、蒙脫石含量、伊-蒙含量、膠結(jié)物總量、粒度中值、分選系數(shù)、孔隙度、滲透率、總礦化度[8]。針對油氣層敏感性中水敏指數(shù)進行評價,部分訓(xùn)練樣本見表1。
對訓(xùn)練樣本集進行數(shù)據(jù)離散化處理,使用隨機化算法打亂樣本集順序后,選取處理后樣本數(shù)量的75%為訓(xùn)練樣本,剩余25%為測試樣本。計算訓(xùn)練樣本中特征的信息增益與信息增益率,構(gòu)建C4.5決策樹模型。再將訓(xùn)練樣本進行數(shù)據(jù)歸一化作為BP神經(jīng)網(wǎng)絡(luò)的輸入層,利用信息增益對隨機初始化的權(quán)值進行加權(quán)處理,閾值初始化為0。將處理后的權(quán)值導(dǎo)入神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,誤差達到標(biāo)準(zhǔn)后,輸出評價模型,使用測試樣本檢測評價模型的準(zhǔn)確率。采用完全相同的網(wǎng)絡(luò)結(jié)構(gòu)和初始閾值構(gòu)建BP神經(jīng)網(wǎng)絡(luò),使用基于隨機初始化方法初始化權(quán)值。以相同的數(shù)據(jù)集進行迭代訓(xùn)練,并對比各實驗結(jié)果。平均實驗結(jié)果見表2。
從表2可以看出,基于決策樹的初始化方法平均初始誤差為2.36,低于隨機初始化方法的初始誤差;訓(xùn)練完成后,分類精度提升了1.8%,提升幅度不大,同時訓(xùn)練時間有略微下降。實驗過程中,對基于決策樹算法的權(quán)值初始化方法與隨機初始化方法的訓(xùn)練誤差進行對比,對比繪制結(jié)果如圖5所示。
由圖5的訓(xùn)練誤差曲線可以看出,基于決策樹算法的權(quán)值初始化方法的初始訓(xùn)練誤差小于傳統(tǒng)隨機初始化方法,并優(yōu)先到達誤差最小值。
在此基礎(chǔ)上,研究得出結(jié)論,基于決策樹算法的BP神經(jīng)網(wǎng)絡(luò)權(quán)值初始化方法優(yōu)于隨機初始化方法,主要表現(xiàn)在初始誤差相對較小,模型的分類精度得到提高。同時,研究表明該方法增強了BP神經(jīng)網(wǎng)絡(luò)的收斂能力,提高了學(xué)習(xí)的速度。
5 結(jié)束語
本文提出基于決策樹算法的BP神經(jīng)網(wǎng)絡(luò)權(quán)值初始化方法,并與傳統(tǒng)隨機初始化方法在油氣層敏感性評價實驗中進行了對比。結(jié)果表明, 以該方法初始化權(quán)值的BP神經(jīng)網(wǎng)絡(luò)初始誤差相對較小,評價準(zhǔn)確率更高,具有一定的實用性。同時,對于本文方法的研究優(yōu)越性,則可概述為:
(1)決策樹算法可以評估特征的區(qū)分能力,使得初始權(quán)值更為合理。
(2)大概率避開了局部極小值點。
參考文獻
[1]劉鯖潔,陳桂明,劉小方,等.BP神經(jīng)網(wǎng)絡(luò)權(quán)重和閾值初始化方法研究[J].西南師范大學(xué)學(xué)報(自然科學(xué)版),2010,35(6):137-141.
[2]范業(yè)仙,葉茂枝.BP神經(jīng)網(wǎng)絡(luò)初始化方法研究[J].韶關(guān)學(xué)院學(xué)報,2013,34(12):18-21.
[3]墨蒙,趙龍章,龔嬡雯,等.基于遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)研究應(yīng)用[J].現(xiàn)代電子技術(shù),2018,41(9):41-44.
[4]馮非凡,武雪玲,牛瑞卿,等.粒子群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的滑坡敏感性評價[J].測繪科學(xué),2017,42(10):170-175.
[5]李愛軍,羅四維,劉蘊輝,等.基于熵準(zhǔn)則的神經(jīng)網(wǎng)絡(luò)設(shè)計方法(英文)[J].復(fù)旦學(xué)報(自然科學(xué)版),2004,43(5):721-724,728.
[6]苗煜飛,張霄宏.決策樹C4.5算法的優(yōu)化與應(yīng)用[J].計算機工程與應(yīng)用,2015,51(13):255-258,270.
[7]焦斌,葉明星.BP神經(jīng)網(wǎng)絡(luò)隱層單元數(shù)確定方法[J].上海電機學(xué)院學(xué)報,2013,16(3):113-116,124.
[8]樊世忠,鄂捷年,周大晨,等.鉆井液完井液及保護油氣層技術(shù)[M].東營:石油大學(xué)出版社,1996.