查文舒,喬 奇,劉子雄,李道倫
(1.合肥工業(yè)大學 數(shù)學學院,安徽 合肥 230601; 2.中海油田服務股份有限公司 油田生產(chǎn)研究院,天津 300450)
測井數(shù)據(jù)在研究地層結構和地下油氣資源分布起到至關重要的作用,地質勘探工程師通過對測井數(shù)據(jù)的分析可以清晰地摸清地下油氣儲層集的狀況,并以測井數(shù)據(jù)為基礎建立更為準確的地質模型。然而在現(xiàn)實開采的過程中,由于地殼自然變動和一些人為干預,經(jīng)常會出現(xiàn)測井數(shù)據(jù)與真實數(shù)據(jù)相差很大或者缺失的情況,重新測井會付出很多人力和物力。為了避免資源浪費,研究者根據(jù)已獲得的數(shù)據(jù)生成目標測井曲線。在沒有機器學習和深度學習的情況下,研究者提出根據(jù)地質信息建立一些模型預測油氣田產(chǎn)量[1]和反演測井曲線[2]。然而有些物理模型是在研究者自己定義的很多假設情況下建立的,沒有以真實的復雜地層情況為依據(jù),在建立模型時也摻雜著研究者的主觀考慮,可能導致生成的測井曲線與真實的測井曲線存在較大差異。此外,由于各種測井數(shù)據(jù)之間存在不同的內(nèi)在聯(lián)系,部分研究者應用一些傳統(tǒng)的分析方法(如回歸分析法、GIS組件技術等)完成對測井曲線的生成[3-4]。但是,由于地下情況和地質存在很強的不確定性,數(shù)據(jù)間的映射關系也表現(xiàn)得極其復雜,傳統(tǒng)方法的預測效果不是很理想。
近年來,隨著機器學習和神經(jīng)網(wǎng)絡的發(fā)展,人工神經(jīng)網(wǎng)絡方法逐漸在科學和工程領域得到廣泛的應用,不少研究者使用人工神經(jīng)網(wǎng)絡預測測井曲線[5]、氣井積液[6]、碳酸鹽巖儲層孔隙度[7]和水合物的生成[8]。人工神經(jīng)網(wǎng)絡是一種點對點的映射關系,與傳統(tǒng)的預測方法相比,這種方法能夠反映測井數(shù)據(jù)之間存在的非線性關系。但是這種方法忽略了測井曲線隨深度變化的影響和數(shù)據(jù)的前后聯(lián)系,尤其是無法有效處理序列數(shù)據(jù)問題[9],違背了地質學分析思想,因此生成的測井曲線的準確性需要進一步提高。
人工神經(jīng)網(wǎng)絡對先前的信息無法進行保存和利用,不能預測與序列有關的數(shù)據(jù),有研究者通過結合小波變換[10]、奇異譜分析[11]等一系列方法,對人工神經(jīng)網(wǎng)絡進行改進,但是改進效果并不理想。隨著智能時代的到來,循環(huán)神經(jīng)網(wǎng)絡(recurrent neural network,RNN)[12]逐漸被地質研究者所應用,RNN單元內(nèi)存在一個自循環(huán)結構,可以使上一個序列特征輸出與下一個序列特征輸入一同作為模型的輸入被傳送到網(wǎng)絡模型中,保留了之前狀態(tài)的信息,解決了數(shù)據(jù)之間前后互相影響的問題。RNN在學習過程中可以使有效信息在網(wǎng)絡中流動使用,基于RNN的方法不僅考慮了各條測井曲線之間的相互聯(lián)系而且還展示出測井曲線隨井深度變化的趨勢,符合地質學分析思想。
長短期記憶(long short-term memory, LSTM)[13]神經(jīng)網(wǎng)絡是一種改進和完善的RNN模型;該網(wǎng)絡架構通過對細胞單元精心設計,將“門”結構使用在每個自循環(huán)結構中,通過“門”結構模仿生物神經(jīng)元信息的傳導模式,對信息去除和保留做出選擇,解決了普通RNN中梯度產(chǎn)生的問題。在機器翻譯評測[14]、交通流預測[15]、故障時間序列預測[16]等領域都取得了較好的結果。部分學者運用LSTM網(wǎng)絡方法進行了測井曲線的補全與人工合成[17]、儲層物性參數(shù)預測[18]、鉆前測井曲線預測[19]等,也取得了較好的效果。雙向長短期記憶(bidirectional long short-term memory, Bi-LSTM)[20]神經(jīng)網(wǎng)絡增加了從后向前的計算過程,對全局的概念有更好的掌握。已有學者運用Bi-LSTM研究監(jiān)控機器健康[21]、英語閱讀理解[22]等,也都取得了較好的效果。
相關系數(shù)是衡量數(shù)據(jù)之間是否有聯(lián)系的量,相關系數(shù)的大小可以反映數(shù)據(jù)之間相關程度的高低。在同一地層下,不同測井曲線之間也會存在不同的相關性,根據(jù)相關性的大小,選擇合適的預測模型,在一定程度上能夠減小樣本數(shù)據(jù),提高預測精度。本文利用測井曲線之間的相關性,使用Bi-LSTM,完成對測井曲線的預測。
RNN的輸入不同于一般的神經(jīng)網(wǎng)絡,它是基于時間特殊性考慮的,每個單元的輸入不僅包含了當前需要輸入的信息,而且還包括前面狀態(tài)的信息。RNN的展開示例如圖1所示。
圖1 RNN的展開示例
從圖1可以看出,RNN實質上是對序列中的每個單元作同樣的計算,循環(huán)的過程就就是對h連續(xù)執(zhí)行的過程。
在實際操作的過程中,RNN僅對前面幾步的信息有記憶,不能做到很長時間的記憶,因此一般結構的RNN逐漸淡出了大家的視野。文獻[13]提出LSTM神經(jīng)網(wǎng)絡結構,大大延長了記憶周期,可以保留之前很長時間的信息。LSTM單元細胞結構如圖2所示。
LSTM可以通過一個特殊的結構“門”精準地控制單元狀態(tài)信息的增加和減少。“門”會控制信息傳輸?shù)谋壤?下面對所謂的“門”結構進行解釋。
圖2 LSTM單元細胞結構
第1個“門”是遺忘門,它的作用是將一部分信息從單元狀態(tài)中刪除。起決策作用的是sigmoid層,遺忘門根據(jù)之前的狀態(tài)向量值st-1和當前的輸入向量值xt對所有的單元狀態(tài)做出選擇。遺忘門表達式為:
ft=σ(Wf[xt,st-1]+bf)
(1)
其中:σ為激活函數(shù);Wf為權值矩陣;bf為偏置項。
第2個“門”是輸入門。RNN不僅需要“忘記”之前的部分信息,重要的是補充最新的信息到記憶中,這就需要通過輸入門來完成這一操作,它可決定單元狀態(tài)中哪些新信息可以被保留下來,輸入門表達式為:
it=σ(Wi[xt,st-1]+bi)
(2)
其中:Wi為權值矩陣;bi為偏置項。
(3)
其中:Wc為權值矩陣;bc為偏置項。
(4)
其中,*為哈達瑪積。
第3個“門”是輸出門,表達式為:
ot=σ(Wo[xt,st-1]+bo)
(5)
其中:Wo為權值矩陣;bo為偏置項。
當前時刻的單元狀態(tài)值ct有多少信息可以作為LSTM的輸出,st由輸出門ot和tanh共同決定,表達式為:
st=ottanhct
(6)
Bi-LSTM網(wǎng)絡模型結合時間序列起始點和終點各自執(zhí)行的LSTM,輸出結果由向前和向后的LSTM狀態(tài)同時決定。Bi-LSTM網(wǎng)絡模型的示意圖如圖3所示。
圖3 Bi-LSTM模型
檢驗各變量之間是否存在相關性可以對其作相關性分析,可以了解變量之間的變化趨勢,確定變量間是否存在關聯(lián),對變量數(shù)據(jù)有初步的了解。因此本文對一些已知的測井曲線進行相關性分析,通過曲線之間的相關性程度大小選擇合適的測井曲線,再利用神經(jīng)網(wǎng)絡預測其他測井曲線,不僅大大節(jié)省了計算量,而且使預測精度大大提高。相關系數(shù)計算公式為:
(7)
本文采用MinMaxScaler歸一化方法對神經(jīng)網(wǎng)絡的輸入數(shù)據(jù)進行處理,使得各種測井數(shù)據(jù)處于合理的分布范圍,防止輸入數(shù)據(jù)之間不同數(shù)量級影響預測結果。歸一化的計算公式為:
(8)
其中:x為輸入的測井數(shù)據(jù)樣本;x′為歸一化的測井數(shù)據(jù);xmin為樣本中的最小值;xmax為樣本中的最大值。對測井數(shù)據(jù)進行歸一化處理,不僅沒有改變數(shù)據(jù)間存在的相關性,而且還解決了數(shù)據(jù)間不同數(shù)量級和取值范圍的影響。
Bi-LSTM網(wǎng)絡模型的訓練過程大體上可以分為如下5個步驟:① 從訓練序列起始點向前執(zhí)行,計算Bi-LSTM的輸出值;② 從訓練序列終點向后執(zhí)行,計算Bi-LSTM的輸出值;③ 將輸出值與真實值進行比較,計算兩者之間的誤差,然后按照與步驟① 和步驟② 計算相反的方向計算隱藏層之間和各細胞單元之間的誤差;④ 根據(jù)步驟③計算的誤差,分別計算各自對應的權重和偏置梯度;⑤ 根據(jù)梯度,應用Adam優(yōu)化算法[22]對相應的權重和偏置進行更新,輸出預測的測井曲線序列。
Bi-LSTM網(wǎng)絡訓練預測框架流程圖如圖4所示。
圖4 Bi-LSTM網(wǎng)絡訓練預測框架
本文采用均方誤差(mean square error)EMS、平均絕對誤差(mean absolute error)EMA對預測效果進行評價,其計算公式分別為:
(9)
(10)
為了測試Bi-LSTM的預測效果,從以下2個實驗進行驗證:Bi-LSTM與LSTM預測對比實驗、基于測井曲線相關性預測測井曲線實驗。實驗目的如下:
(1) 對比Bi-LSTM與LSTM的性能。
(2) 評價Bi-LSTM基于測井曲線相關性預測其他測井曲線的能力。
本實驗采用的是某致密氣井的真實測井數(shù)據(jù),分別利用LSTM和Bi-LSTM基于同一口井中的測井曲線進行預測,并對比2種方法所預測生成的曲線的準確度。從井中獲得測井曲線有井斜DEV、伽馬GR、光電吸收截面指數(shù)PE、孔隙度POR、泥質含量VSH、垂直校正砂巖含量VSND、有機含碳量TOC和補償中子CN 等8條測井曲線。測井段井深為2 700~4 500 m,總長為1 800 m,取樣間隔為0.1 m。訓練集由2 700~4 100 m測井段組成,測試集由4 100~4 500 m測井段組成。實驗中訓練數(shù)據(jù)有14 000組,測試數(shù)據(jù)有4 000組,利用DEV、GR、PE、POR、VSH、VSND、TOC的7條測井曲線作為模型的輸入預測測井曲線CN。采用單向LSTM和Bi-LSTM 2個模型,模型中分別包含2個長短期記憶層,其中隱藏單元個數(shù)是50,模型最后再接一個全連接層,用來輸出結果。為了防止出現(xiàn)過擬合,模型中加入丟棄率為20%的丟棄操作(dropout)。LSTM模型和Bi-LSTM模型對CN曲線的預測結果如圖5、圖6所示。
圖5 單向LSTM模型對CN曲線的預測結果
圖6 Bi-LSTM模型對CN曲線的預測結果
從圖5可以看出,LSTM模型的預測值與真實值存在較大的誤差。從圖6可以看出,Bi-LSTM的整體預測結果比LSTM模型更加接近真實值,能反映測井曲線的真實變化情況,預測精度比LSTM模型有顯著的提高。LSTM和Bi-LSTM 2種模型預測誤差值見表1所列,其中EMS減小58.6%、EMA減小38.2%。結果表明,Bi-LSTM模型比LSTM模型預測精度有很大提高,預測結果更加具有可信度,在測井曲線預測方面,Bi-LSTM模型更加實用和有效。
表1 LSTM與Bi-LSTM誤差值表
本實驗采用的是某地區(qū)致密氣井的測井曲線,包含聲波時差AC、井徑CAL、補償中子CN、井斜方位DAZ、密度DEN、井斜DEV、伽馬GR、光電吸收截面指數(shù)PE、滲透率PERM、孔隙度POR、有機碳含量TOC、垂直校正白云巖含量VDOL、垂直校正白灰?guī)r含量VLIM、垂直校正砂巖含量VSND和泥質含量VSH 15條測井曲線。測井段井深為2 700~4 500 m,總長為1 800 m,取樣間隔為0.1 m。實驗共有14 000組訓練數(shù)據(jù),4 000組測試數(shù)據(jù),訓練集由2 700~4 100 m測井段組成,測試集由4 100~4 500 m測井段組成。采用Bi-LSTM模型,由2個記憶層和1個全連接層構成,其中記憶層中隱藏元個數(shù)為70。為了避免出現(xiàn)過擬合的情況,模型中加入了丟棄率為30%的丟棄操作(dropout)。
在對測井曲線VSH做預測之前,計算VSH與其他測井曲線之間的相關系數(shù),計算結果見表2所列。
表2 VSH與其他測井曲線之間的相關系數(shù)
為了檢驗基于相關性分析的Bi-LSTM測井曲線預測方法的性能,分別做了3次測井曲線VSH的預測實驗,并對比預測結果。實驗一,使用除VSH以外的全部測井曲線(AC、CAL、CN、DAZ、DEN、DEV、GR、PE、PERM、POR、TOC、VDOL、VLIM、VSND)作為Bi-LSTM模型輸入預測測井曲線VSH;實驗二,使用相關系數(shù)絕對值在0.5以上的測井曲線(AC、CN、DEN、DEV、PERM、POR、TOC、VLIM、VSND)作為Bi-LSTM模型輸入預測測井曲線VSH;實驗三,使用相關系數(shù)絕對值在0.8以上的測井曲線(CN、DEN、DEV、PERM、TOC)作為Bi-LSTM模型輸入預測測井曲線VSH。實驗結果如圖7~圖9所示。
從圖7可以看出,以未考慮相關性的測井數(shù)據(jù)作為模型的輸入時,預測結果能描述曲線的大概走向,但是測試值與真實值存在一定的差距。
從圖8中的預測結果,特別是2 700~2 800 m、3 420~3700 m和3 870~4 500 m深度段(見圖8藍色虛線框)的預測結果可以看出,預測值基本與真實值相重合,整體的預測誤差也有明顯減小,其誤差值見表3所列;其中輸入相關性在0.5以上的曲線與輸入未考慮相關性的測井曲線相比,EMS減小19.5%、EMA減小29.6%。
從圖9可以看出,輸入相關系數(shù)在0.8以上的測井曲線預測目標曲線時,整體預測效果比輸入相關系數(shù)在0.5以上的測井曲線的預測效果有進一步的提升,其中3 420~3 690 m和3 900~4 500 m(見圖9中藍色虛線框)井段處的預測值更加接近真實值。
圖7 未考慮相關性的預測結果
圖8 輸入相關系數(shù)在0.5以上測井曲線的預測結果
圖9 輸入相關系數(shù)在0.8以上測井曲線的預測結果
從表3可以看出,輸入相關性在0.8以上的曲線與輸入未考慮相關性的測井曲線相比,EMS減小32.5%、EMA減小35.2%;與相關性在0.5以上的測井曲線相比,EMS減小16.1%、EMA減小7.9%。這說明,Bi-LSTM結合曲線之間的相關性對測井曲線做預測,預測精度會隨著相關性的增大而提高。
表3 Bi-LSTM模型預測誤差值對比
LSTM模型和Bi-LSTM模型預測對比試驗表明,考慮前后關聯(lián)性,即基于Bi-LSTM的預測結果,EMS減小58.6%、EMA減小38.2%。這表明,考慮測井曲線前后關聯(lián)性可以有效提高預測精度。
相對于不考慮相關性的結果,用相關系數(shù)在0.5以上的預測結果,EMS減小19%以上;使用相關系數(shù)在0.8以上的測井曲線進行預測,EMS比使用相關系數(shù)在0.5以上的結果減小16%。因此,預測精度會隨著相關系數(shù)的提高而提高。
本文研究表明,若簡單使用所有已知曲線,測井曲線預測精度可能會降低??紤]相關性后,使用更少的測井曲線且能得到更高的精度。因此,本文方法在測井曲線預測等方面有很好的應用前景。