李 娜 沈 楠 段友祥
(中國石油大學(xué)(華東)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 青島 266580)
人工智能的發(fā)展為多個科技領(lǐng)域的進(jìn)步帶來了諸多契機(jī),對數(shù)據(jù)預(yù)測方法的研究產(chǎn)生了重要影響。近年來機(jī)器學(xué)習(xí)的各種模型呈現(xiàn)爆炸式增長,眾多學(xué)者專家發(fā)現(xiàn),單一的機(jī)器學(xué)習(xí)模型往往會產(chǎn)生一些欠/過擬合的問題,在此背景下,多模型融合的方法應(yīng)運(yùn)而生。融合模型主要包括Bagging、Boosting、Blending 及Stacking 四種,由于其易于理解、效果較好,在電力[1]、金融[2]、故障預(yù)測[3]等多方面有廣泛的應(yīng)用。
作為地質(zhì)導(dǎo)向的關(guān)鍵技術(shù),隨鉆測井的進(jìn)步能夠?yàn)闇y井人員在鉆井實(shí)施過程中的決策提供輔助,幫助技術(shù)人員準(zhǔn)確指導(dǎo)鉆頭行進(jìn)方向,保證鉆頭在目的層穿行,從而提升鉆井的鉆遇率,提高油氣的產(chǎn)量[4]。目前,人工智能與隨鉆測井的結(jié)合越來越緊密,許多國內(nèi)外學(xué)者開展了相關(guān)研究:Popa A等[5]通過人工智能和經(jīng)典模型提出了一種地層動態(tài)預(yù)測優(yōu)化水平井布置的方案;Mohamed I M 等[6]利用測井?dāng)?shù)據(jù),通過訓(xùn)練多種不同的機(jī)器學(xué)習(xí)方法進(jìn)行地質(zhì)的分類和預(yù)測;Gupta K D 等[7]通過深度神經(jīng)網(wǎng)絡(luò)和井眼圖像標(biāo)記油井的剩余深度。
在實(shí)時的隨鉆測井技術(shù)中,由于地下向MWD系統(tǒng)傳輸數(shù)據(jù)的速率受限,通常僅能接收到上下兩道方位的伽馬,與完井的四/八道伽馬相比,兩道伽馬所提供的信息較少,更加準(zhǔn)確的方位伽馬預(yù)測能夠?qū)罄m(xù)伽馬成像精度、地層識別效果及傾角計(jì)算結(jié)果有重要的影響,因此對方位伽馬的預(yù)測是實(shí)時隨鉆測井的一項(xiàng)必要工作。目前在隨鉆數(shù)據(jù)的預(yù)測主要采用插值方法,由于方位伽馬數(shù)據(jù)具有非線性的特征,該方法并不能準(zhǔn)確的描述方位伽馬信息。
本文提出一種基于Stacking 融合模型的隨鉆方位伽馬預(yù)測模型,以大量的四道伽馬數(shù)據(jù)作為訓(xùn)練集,通過組合多種基學(xué)習(xí)器提升預(yù)測模型的泛化能力,實(shí)現(xiàn)預(yù)測模型的訓(xùn)練過程。實(shí)驗(yàn)表明,本文方法在隨鉆方位伽馬數(shù)據(jù)的預(yù)測中能夠達(dá)到較高的精度,在隨鉆測井的前期數(shù)據(jù)處理中有較好的應(yīng)用。
Stacking[8]作為一種集成學(xué)習(xí)框架,總體分為兩層結(jié)構(gòu):第一層由多種基學(xué)習(xí)器組成,各基學(xué)習(xí)器預(yù)測結(jié)果將作為第二層的輸入數(shù)據(jù);第二層為元學(xué)習(xí)器,該層訓(xùn)練模型負(fù)責(zé)輸出最終的預(yù)測結(jié)果。Stacking的融合模型學(xué)習(xí)框架如圖1所示。
圖1 Stacking集成學(xué)習(xí)框架示意圖
其算法基本流程如下:
步驟1:將數(shù)據(jù)集D={(xi,yi),i=1,2,…,n}劃分為大小相同的k個子集D={D1,D2,…Dk}。其中k為基模型個數(shù),xi,yi分別為第i個樣本的特征向量和對應(yīng)的預(yù)測值。
步驟2:訓(xùn)練基模型形成新數(shù)據(jù)集D′。定義基模型Bk對Dk中的樣本xi的預(yù)測結(jié)果為Pki,則有新的數(shù)據(jù)集D′={(yi,p1i,…,pki),i=1,2,…,n}。
步驟3:基于新的數(shù)據(jù)集對元學(xué)習(xí)器預(yù)測模型進(jìn)行訓(xùn)練。
梯度提升決策樹(GBDT)由多棵回歸決策樹組成,擁有較好的泛化能力,在回歸預(yù)測中具有發(fā)現(xiàn)多種特征、提升準(zhǔn)確度的優(yōu)勢[9]。GBDT 通常使用加法模型,通過迭代減小數(shù)據(jù)的誤差完成訓(xùn)練,其具體流程如下:
1)初始化損失函數(shù)擬合一棵決策樹:
2)迭代:
記迭代輪數(shù)為k,樣本為i,損失函數(shù)的負(fù)梯度滿足式(2):
其中,k=1,2,…,K,i=1,2,…,I。以rki作為模型的殘差估計(jì)值,利用(xi,rki)擬合一棵回歸樹,并設(shè)葉節(jié)點(diǎn)區(qū)域?yàn)镽kj,j代表回歸樹葉節(jié)點(diǎn)個數(shù)。
然后線性搜索估計(jì)Rkj的值,從而使損失函數(shù)的值盡可能的小,具體表達(dá)式如式(3):
3)更新回歸樹fk(x),得到回歸樹f(x),具體表達(dá)式如式(4):
其中,x∈Rkj。上述流程將輸入的訓(xùn)練集數(shù)據(jù)D={(x1,y1),…,(xI,yI)} ,通過K次迭代,得到最終的強(qiáng)學(xué)習(xí)器f(x),依據(jù)該結(jié)果對數(shù)據(jù)進(jìn)行回歸預(yù)測。
1)隨機(jī)森林
隨機(jī)森林[10]是一種集成學(xué)習(xí)的方法,通過大量的決策樹分支的投票結(jié)果作為最終的輸出,具有靈活、準(zhǔn)確率高等優(yōu)點(diǎn),在醫(yī)學(xué)[11]、油田[12]等多領(lǐng)域有極為廣泛的應(yīng)用?;居?xùn)練思路為:通過Bootstrap方法生成多個訓(xùn)練集,并對各個訓(xùn)練集構(gòu)造決策樹;隨機(jī)選取m個樣本屬性,依據(jù)某種策略選取其中一個屬性作為決策樹節(jié)點(diǎn)的分裂屬性;每個節(jié)點(diǎn)重復(fù)進(jìn)行分裂,直到到達(dá)葉子節(jié)點(diǎn),通過上述步驟建立大量的決策樹,從而構(gòu)造成隨機(jī)森林。
2)消去樹
消去樹具有計(jì)算簡單、計(jì)算效率高等優(yōu)點(diǎn),引用消去樹以達(dá)到減少計(jì)算圖的可到達(dá)性,常應(yīng)用于潮流計(jì)算[13]等場景。得到消去樹的基本思路為:對于一個稀疏正定矩陣A,將其分解為A=LLT,矩陣L為下三角矩陣。通過廣度優(yōu)先搜索(BFS)矩陣L的有向圖,在BFS 過程中,對當(dāng)前節(jié)點(diǎn)搜索最近的節(jié)點(diǎn),并將其定為當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn),沒有父節(jié)點(diǎn)的將作為消去樹的根,從而得到消去樹。
3)支持向量機(jī)
支持向量機(jī)(SVM)用于回歸,能夠避免高維空間的高難度計(jì)算,同時適用于解決小樣本問題,且具有較強(qiáng)的泛化能力,SVM的回歸模型目前廣泛應(yīng)用于故障分析[14]、文本分析[15]等多領(lǐng)域。SVM回歸模型的基本原理為:通過放寬預(yù)測值的誤差,即圍繞f(x)規(guī)定誤差范圍并最小化損失,并將SVM 回歸模型轉(zhuǎn)換為式(5):
其中,C為正則常數(shù),式(5)包含預(yù)測值落入的范圍及不敏感損失函數(shù)誤差的契合度。
4)K近鄰
K 近鄰(KNN)作為一種基于距離的機(jī)器學(xué)習(xí)算法,具有模型易于理解、對異常值不敏感等優(yōu)點(diǎn),常用于解決分類或回歸問題,在圖像識別[16]等領(lǐng)域有廣泛應(yīng)用。KNN 的基本思想為一個樣本i,若與數(shù)據(jù)集中的k個樣本相似,那么將認(rèn)為這k個樣本與樣本i屬于同一類別,通常在度量樣本之間距離時采用歐式距離。
5)長短期記憶網(wǎng)絡(luò)
長短期記憶網(wǎng)絡(luò)(LSTM)由于其特殊的門結(jié)構(gòu),適用于處理具有序列特征的數(shù)據(jù),且能夠很大程度上避免訓(xùn)練過/欠擬合的問題,目前廣泛應(yīng)用于語音識別[17]、故障檢測[18]等領(lǐng)域。LSTM 的遺忘門、輸入門、輸出門接收上一數(shù)據(jù)組的輸出ht-1及當(dāng)前的狀態(tài)xt,同時處理前一記憶單元的狀態(tài)Ct-1,經(jīng)過當(dāng)前記憶單元的內(nèi)部運(yùn)算后,產(chǎn)生新的狀態(tài)Ct向下傳遞,最后由輸出門及非線性函數(shù)運(yùn)算得到輸出結(jié)果ht。
Stacking集成的學(xué)習(xí)方式通過組合多個預(yù)測模型的信息生成訓(xùn)練集,由元學(xué)習(xí)器進(jìn)行組合預(yù)測達(dá)到融合的目的,這一技術(shù)能夠有效避免單一模型在訓(xùn)練過程中精度遞減等問題,通常能達(dá)到比單一模型更理想的效果。第一層預(yù)測模型的單一學(xué)習(xí)器需具有優(yōu)異的性能,且應(yīng)組合不同種類學(xué)習(xí)器,從而獲得更多樣的第一層訓(xùn)練結(jié)果;第二層預(yù)測模型選擇的元學(xué)習(xí)器應(yīng)具有較強(qiáng)的泛化能力。
本文選用隨機(jī)森林、消去樹、支持向量機(jī)、K 近鄰、長短期記憶網(wǎng)絡(luò)作為第一層預(yù)測模型的基學(xué)習(xí)器:隨機(jī)森林具有較強(qiáng)的抗干擾及抗過擬合能力,有較強(qiáng)的泛化能力;消去樹性能較好且計(jì)算效率高;支持向量機(jī)擁有堅(jiān)實(shí)的理論基礎(chǔ),能夠快速抓住關(guān)鍵樣本的特征;K 近鄰原理簡單,不需要估計(jì)參數(shù);長短期記憶網(wǎng)絡(luò)善于處理具有序列特征的數(shù)據(jù),在訓(xùn)練過程中能避免一定程度的梯度爆炸/消失的問題。在第一層預(yù)測模型中,以泊松相關(guān)系數(shù)對各算法進(jìn)行相關(guān)性分析,從而觀測所選算法的差異性,以充分發(fā)揮不同類型算法組合的優(yōu)勢,泊松系數(shù)的計(jì)算公式如式(6),其中xˉ和yˉ為各個向量的平均值:
選用GBDT 作為第二層預(yù)測模型的元學(xué)習(xí)器,該模型具有并行處理的能力,有較好的泛化能力、抗過擬能力及嚴(yán)謹(jǐn)?shù)睦碚撝?。選用5 折交叉驗(yàn)證,Stacking 的隨鉆方位伽馬預(yù)測模型框架設(shè)計(jì)如圖2所示。
圖2 Stacking的隨鉆方位伽馬預(yù)測模型框架
完井的隨鉆測井資料往往包含八道完整的伽馬數(shù)據(jù),將各深度上的八道伽馬數(shù)據(jù)分別拆出第一道+第五道和第三道+第七道作為訓(xùn)練數(shù)據(jù)及樣本標(biāo)簽,具體示意圖如圖3所示。
圖3 完井訓(xùn)練數(shù)據(jù)示意圖
由于鉆井資料較少,且干擾因素較大,需要補(bǔ)充更多的訓(xùn)練數(shù)據(jù)以增加結(jié)果的準(zhǔn)確性及可信度,本文采用文獻(xiàn)[19]中的隨鉆方位伽馬正演數(shù)據(jù)計(jì)算公式,通過計(jì)算機(jī)仿真的方法對測井響應(yīng)進(jìn)行模擬,構(gòu)造地層模型,基本計(jì)算方法如式(7):
設(shè)定正演模型為砂巖和泥巖,相關(guān)的地層參數(shù)如表1所示。
表1 正演地層模型相關(guān)參數(shù)
為驗(yàn)證Stacking 集成框架下的隨鉆方位伽馬預(yù)測性能,本文將Stacking 模型與各單模型預(yù)測的結(jié)果及樣條插值結(jié)果進(jìn)行對比。數(shù)據(jù)集以國內(nèi)X油井的完井資料為例,該井發(fā)育良好且具有清晰的地層分界,隨鉆伽馬數(shù)據(jù)在方位上變化多樣。為準(zhǔn)確描述各方法間的差異,選取該井中隨機(jī)深度的數(shù)據(jù)為例進(jìn)行預(yù)測,結(jié)果如圖4所示。
圖4 各算法預(yù)測結(jié)果對比
圖中Y 軸代表伽馬數(shù)據(jù)的屬性值,X 軸代表伽馬數(shù)據(jù)索引。圖4(a)~圖4(c)分別代表本文方法、樣條插值與單一模型(隨機(jī)森林)對于第3 道伽馬數(shù)據(jù)的預(yù)測結(jié)果,由圖可見,Stacking模型的預(yù)測結(jié)果與實(shí)際數(shù)據(jù)最吻合,優(yōu)于單一模型及樣條插值。樣條插值法僅在整體趨勢上與伽馬實(shí)際數(shù)據(jù)保持一致;單一模型預(yù)測結(jié)果與實(shí)際數(shù)據(jù)相近,但在某些數(shù)據(jù)(如伽馬數(shù)據(jù)索引27 附近)上,仍存在一定的誤差;Stacking 融合預(yù)測模型的結(jié)果與實(shí)際數(shù)據(jù)最為接近,能實(shí)現(xiàn)對隨鉆方位伽馬數(shù)據(jù)的準(zhǔn)確預(yù)測。
為進(jìn)一步驗(yàn)證本文方法的有效性,以RMSE、MAE 及MRE 為評價指標(biāo),通過計(jì)算各誤差值驗(yàn)證本文算法與各單一模型算法的性能,具體結(jié)果如表2所示。
表2 預(yù)測結(jié)果的誤差分析
由表2 可見,Stacking 融合的伽馬數(shù)據(jù)預(yù)測模型性能最好,優(yōu)于其他單一模型的預(yù)測結(jié)果。
為驗(yàn)證本文方法在實(shí)際生產(chǎn)中的效果,本文對實(shí)際井場的實(shí)時隨鉆伽馬數(shù)據(jù)進(jìn)行預(yù)測。實(shí)驗(yàn)選用國內(nèi)東部X油井,該井基于國內(nèi)自主研發(fā)的一體化近鉆頭隨鉆地質(zhì)導(dǎo)向系統(tǒng),總進(jìn)尺約860m。截取其中2400m~2460m 數(shù)據(jù)為例,通過本文方法對實(shí)時的上、下兩道伽馬數(shù)據(jù)進(jìn)行預(yù)測,最終實(shí)際效果如圖5所示。
圖5 實(shí)際中的效果
由圖5 可見,通過本文方法對兩道伽馬數(shù)據(jù)進(jìn)行預(yù)測處理,得到的伽馬成像更加清晰,方位信息更加充足,為后續(xù)的地層分析奠定了良好的基礎(chǔ),有利于測井工作的展開。
針對實(shí)時隨鉆測井過程中,由于傳輸速率等問題導(dǎo)致的伽馬數(shù)據(jù)較少,后續(xù)地層分析困難的問題,本文提出了基于隨鉆方位伽馬數(shù)據(jù)的Stacking融合學(xué)習(xí)預(yù)測模型,融合了多種不同類型的單一預(yù)測模型,令各模型發(fā)揮自己單獨(dú)優(yōu)勢的同時彼此互補(bǔ),使隨鉆方位伽馬的預(yù)測結(jié)果更加準(zhǔn)確。通過實(shí)驗(yàn)表明,本文方法能夠有效地對方位伽馬數(shù)據(jù)進(jìn)行預(yù)測,且效果優(yōu)于樣條插值及單一模型的預(yù)測方法。通過對實(shí)時的上、下兩道伽馬進(jìn)行預(yù)測,擴(kuò)充方位伽馬至四道,可以滿足后續(xù)地層分析對方位伽馬數(shù)據(jù)的要求,為整個地質(zhì)導(dǎo)向過程提供的技術(shù)支持,具有實(shí)際應(yīng)用價值。