孫宇航 劉 洋*③
(①中國石油大學(北京)油氣資源與探測國家重點實驗室,北京昌平 102249; ②中國石油大學(北京)CNPC物探重點實驗室,北京昌平 102249; ③中國石油大學(北京)克拉瑪依校區(qū),新疆克拉瑪依 834000)
縱、橫波速度是地震勘探中的關(guān)鍵參數(shù),在地下構(gòu)造解釋和油藏描述等工作中具有重要作用。通過常規(guī)聲波測井可以得到縱波速度。橫波測井(如偶極子聲波測井)勘探成本太高,在一般情況下,實際地震資料中往往缺少橫波速度信息。因此,有必要研究精確預測橫波速度的方法。
橫波速度預測方法主要分為經(jīng)驗公式法和巖石物理建模法。傳統(tǒng)的經(jīng)驗公式法通過統(tǒng)計學分析縱、橫波速度,擬合得到縱、橫波速度關(guān)系式,由縱波速度預測橫波速度。Pickett[1]通過分析大量測井數(shù)據(jù),得到灰?guī)r的縱、橫波速度經(jīng)驗公式。Castagna等[2]基于碎屑巖中的縱、橫波速度關(guān)系,提出了著名的“泥巖線”公式。此外,不同巖石存在不同的縱、橫波速度擬合公式[3-4]。隨著勘探技術(shù)的發(fā)展,傳統(tǒng)的經(jīng)驗公式法已經(jīng)不能滿足橫波速度預測的精度需求。因此,基于傳統(tǒng)經(jīng)驗公式法,人們在擬合過程中加入密度、自然伽馬和電阻率等參數(shù),提出了多元回歸法[5-7]。經(jīng)驗公式法容易實現(xiàn),計算效率高,但擬合關(guān)系式反映了大量測井數(shù)據(jù)的統(tǒng)計規(guī)律,在實際應(yīng)用時存在較大誤差。
巖石物理建模法主要通過建立巖石物理模型精確地計算巖石的彈性參數(shù),然后基于彈性參數(shù)和橫波速度之間的關(guān)系計算橫波速度。Xu等[8]基于砂巖和泥巖孔隙的幾何形態(tài),提出了砂泥巖儲層的等效介質(zhì)模型——“Xu-White模型”;隨后Xu等[9]基于該模型估算了碳酸鹽巖的孔隙形狀,較為精確地預測了橫波速度。劉欣欣等[10]采用自適應(yīng)遺傳算法計算巖石物理模型的彈性參數(shù)、預測橫波速度并應(yīng)用于體積模量反演,取得了較好效果。羅水亮等對Pride模型[11]和Lee模型[12]進行變形,提出了變形P-L模型,利用地震反演預測橫波速度[13]。此外,鄭旭楨等[14]、唐杰等[15]、熊曉軍等[16]基于巖石物理建模預測橫波速度,均取得了較好效果。利用巖石物理建模法預測橫波速度精度較高,但是算法復雜、所需參數(shù)較多,導致計算效率較低。
經(jīng)驗公式法和巖石物理建模法都是基于橫波速度和其他參數(shù)之間的關(guān)系,利用其他參數(shù)預測橫波速度。經(jīng)驗公式法利用儲層參數(shù)(密度和自然伽馬等)預測橫波速度,巖石物理建模法利用彈性參數(shù)(體積模量和剪切模量等)預測橫波速度,相比而言,儲層參數(shù)更容易獲得。但是在一般情況下,橫波速度和彈性參數(shù)的關(guān)系式較橫波速度和儲層參數(shù)的關(guān)系式更準確,因此提高橫波速度預測精度和預測效率可以從兩方面入手,即建立橫波速度和儲層參數(shù)之間的高精度關(guān)系式或提高提取彈性參數(shù)的效率,后者在目前較難實現(xiàn)。本文主要研究如何精確地建立橫波速度和儲層參數(shù)之間的關(guān)系式。
近年來,機器學習技術(shù)迅速發(fā)展,在不同領(lǐng)域取得了重大進展。機器學習方法主要分為分類、回歸和聚類三種,其中回歸主要處理和預測時序數(shù)列。GRU(gated recurrent unit)神經(jīng)網(wǎng)絡(luò)是基于回歸思想提出的一種機器學習方法,并已經(jīng)成功應(yīng)用于時序數(shù)列的分析和預測。通過引入GRU神經(jīng)網(wǎng)絡(luò),本文提出一種利用儲層參數(shù)預測橫波速度的方法,具體步驟包括神經(jīng)網(wǎng)絡(luò)構(gòu)建、數(shù)據(jù)預處理、樣本訓練和數(shù)據(jù)預測等。選擇D區(qū)測井數(shù)據(jù)測試,結(jié)果表明該方法具有較高精度和較好的適用性。
儲層參數(shù)反映了儲層的具體特征,與橫波速度之間存在著必然聯(lián)系。通常通過測井方法得到儲層參數(shù),目前常用的測井方法包括聲波時差測井、密度測井、自然伽馬測井、中子測井和電阻率測井等。本文主要分析由這些測井方法得到的儲層參數(shù)(縱波速度、密度、自然伽馬值、孔隙度和電阻率)與橫波速度之間的相關(guān)性??v、橫波速度同時受儲層的巖石骨架和孔隙流體影響,因此縱、橫波速度之間存在正相關(guān)關(guān)系;密度直接參與儲層體積模量和剪切模量的計算,間接參與橫波速度的計算,因此密度與橫波速度具有一定相關(guān)性;自然伽馬值反映了儲層骨架中的泥質(zhì)含量,與橫波速度具有正相關(guān)關(guān)系;孔隙度值反映了儲層的地質(zhì)結(jié)構(gòu),直接影響橫波速度;儲層的巖石骨架通常不導電,電阻率主要反映儲層的孔隙流體特征,因此也能反映橫波速度變化。圖1為D區(qū)儲層參數(shù)與橫波速度交會圖。由圖可見:縱波速度(圖1a)、密度(圖1b)和電阻率對數(shù)(圖1e)均與橫波速度呈正相關(guān)(R2約為0.40),其中電阻率對數(shù)與橫波速度的正相關(guān)性最好(R2=0.4492);自然伽馬值(圖1c,R2=0.2241)、孔隙度(圖1d,R2=0.3792)均與橫波速度呈負相關(guān),但前者與橫波速度的負相關(guān)性較弱。
儲層參數(shù)與橫波速度之間存在一定的相關(guān)關(guān)系,但是這種關(guān)系較復雜,很難得到解析解。為此,本文構(gòu)建了GRU神經(jīng)網(wǎng)絡(luò)方法,通過訓練神經(jīng)網(wǎng)絡(luò)逼近橫波速度與儲層參數(shù)之間的關(guān)系,然后預測橫波速度。
圖1 D區(qū)儲層參數(shù)與橫波速度交會圖(a)縱波速度—橫波速度; (b)密度—橫波速度; (c)自然伽馬—橫波速度; (d)孔隙度—橫波速度; (e)電阻率對數(shù)—橫波速度R為兩個變量之間的相關(guān)系數(shù)
GRU神經(jīng)網(wǎng)絡(luò)是LSTM神經(jīng)網(wǎng)絡(luò)(long short term memory network)的一種變體,LSTM神經(jīng)網(wǎng)絡(luò)是在RNN(recurrent neural network)的基礎(chǔ)上發(fā)展起來的。RNN是一種成熟的機器學習方法,在處理時序數(shù)列方面具有著很大優(yōu)勢[17]。RNN中包含信號反饋結(jié)構(gòu),能將t時刻的輸出信息與t時刻之前的信息相關(guān)聯(lián),具有動態(tài)特征和記憶功能。
圖2 RNN結(jié)構(gòu)示意圖[17]
圖4為GRU神經(jīng)網(wǎng)絡(luò)的隱藏層結(jié)構(gòu)示意圖。由圖可見:更新門控制前一時刻的信息對當前時刻的影響程度,更新門的值越大,前一時刻的信息對當前時刻的影響越?。恢刂瞄T控制對前一時刻信息的接收百分比,重置門的值越大,對前一時刻的信息接收的越多。
圖3 LSTM隱藏層結(jié)構(gòu)示意圖[20]“×”表示對兩個向量做○運算(下文詳細說明),“+”表示對兩個向量做和運算
圖4 GRU神經(jīng)網(wǎng)絡(luò)隱藏層結(jié)構(gòu)示意圖[20]
zt=g(Wz·[ht-1,xt])
(1)
rt=g(Wr·[ht-1,xt])
(2)
(3)
(4)
式中:“[ ]”表示兩個向量相連接; “○”是矩陣間的一種計算方法,表示按元素乘,當“○”作用于兩個向量時,運算為
(5)
(6)
(7)
(8)
GRU神經(jīng)網(wǎng)絡(luò)的訓練方法基于反向傳播理論,主要包括四個步驟。
(1)前向計算每個神經(jīng)元的輸出值。
(2)反向計算每個神經(jīng)元的誤差項。GRU神經(jīng)網(wǎng)絡(luò)誤差項的反向傳播包括兩個方面:一個是沿時間的反向傳播,即從當前時刻起,計算每個時刻的誤差項;另一個是將誤差項傳遞到上一層。
(4)利用得到的梯度更新權(quán)重。本文采用隨機梯度下降法(SGD,stochastic gradient descent)計算權(quán)重梯度。普通的批量梯度下降法(BGD,batch gradient descent)在每次迭代過程中把所有的樣本都計算一遍,然后更新梯度;SGD算法是從樣本中隨機抽出一組進行計算然后更新梯度。相對于BGD算法,SGD算法既能夠較好地避免在計算過程中陷入局部極值,又不需要在每次迭代過程中計算所有樣本,能夠兼顧計算效率和計算精度。
圖5為基于GRU神經(jīng)網(wǎng)絡(luò)的橫波速度預測流程。由圖可見,包括輸入層、隱藏層和輸出層,輸入層對儲層參數(shù)進行異常值處理和歸一化處理,并將處理后數(shù)據(jù)輸入到隱藏層。歸一化是為了限定輸入數(shù)據(jù)的最大值和最小值不超過隱藏層函數(shù)和輸出層函數(shù)的限定范圍。本文采用的歸一化公式為
(9)
式中xmin和xmax分別為xi的最小值和最大值。
圖5 基于GRU神經(jīng)網(wǎng)絡(luò)的橫波速度預測流程
當訓練神經(jīng)網(wǎng)絡(luò)時,隱藏層接收數(shù)據(jù)并利用構(gòu)建好的GRU神經(jīng)網(wǎng)絡(luò)計算,將計算結(jié)果傳遞給輸出層;輸出層接收計算結(jié)果并進行反歸一化,提供輸出結(jié)果;將輸出結(jié)果與樣本值比較,迭代更新隱藏層的權(quán)重系數(shù)直至訓練結(jié)束。進行神經(jīng)網(wǎng)絡(luò)預測時,隱藏層接收數(shù)據(jù)并利用訓練好的GRU神經(jīng)網(wǎng)絡(luò)計算,將計算結(jié)果傳遞給輸出層;輸出層接收計算結(jié)果并進行反歸一化,提供橫波速度信息。
利用D區(qū)的30口井的測井數(shù)據(jù)預測橫波速度,將這些井按順序從1到30編號(圖6)。30口井的測井資料(共90000個實測樣本點)包括縱波速度、密度、自然伽馬值、孔隙度、電阻率和橫波速度數(shù)據(jù)。對測井數(shù)據(jù)進行異常值處理和歸一化處理,使這些數(shù)據(jù)的值域為(0,1),然后將其分為90000個二維數(shù)組,每個二維數(shù)組包括輸入值和樣本值兩部分,其中輸入值為xt=(縱波速度,密度,自然伽馬值,孔隙度,電阻率),樣本值=(橫波速度)。每次迭代的輸出結(jié)果為ot=(橫波速度),其中井1包含3000個數(shù)據(jù)點(圖7)。本文采用Matlab編程語言構(gòu)建模型,在構(gòu)建GRU神經(jīng)網(wǎng)絡(luò)時,經(jīng)過反復迭代、測試,在同時考慮計算效率和精度的情況下,選擇具有一個輸入層、三個隱藏層和一個輸出層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。其中學習率為0.02,激活函數(shù)為sigmoid函數(shù)和tanh函數(shù),利用SGD優(yōu)化目標函數(shù)。為了檢驗預測效果,對比本文方法、經(jīng)驗公式法(下文簡稱公式法)和基于最小平方的橫波速度擬合法[22](下文簡稱擬合法)的預測結(jié)果,以相對誤差和相關(guān)系數(shù)作為評價標準。
圖6 D區(qū)井位分布示意圖
圖7 井1的測井數(shù)據(jù)
為了驗證本文方法的預測精度和泛化能力,分別做多數(shù)井訓練、少數(shù)井驗證和少數(shù)井訓練、多數(shù)井驗證的試算。
利用24口井數(shù)據(jù)訓練、6口井數(shù)據(jù)驗證,并采用交叉驗證的方法檢驗本文方法的預測精度和泛化能力。
(1)選擇井2、井5、井13、井15、井23和井24的測井數(shù)據(jù)作為測試樣本,其他測井數(shù)據(jù)作為訓練樣本。
在本文中,作者在探討接受理論視角下看文化缺省的翻譯策略時,主要考慮了兩個主要方面,分別為采用文化置換讓讀者體會到感同身受,以及采用保持異國情調(diào)讓讀者進行一次思想漫步,能夠在書本中體會到異域風情。兩個方面下又分別有滿足其需求的翻譯方法來進行翻譯。楊先生更注重行文的流暢和自如的表達,而榮先生則在處理文化缺省時更偏向使用一些異化的手法或是通過直接介紹給讀者本文化中沒有的文化現(xiàn)象來豐富讀者的認知。兩人的譯本各有千秋。
將訓練樣本對應(yīng)的72000個二維數(shù)組依次輸入到構(gòu)建好的神經(jīng)網(wǎng)絡(luò)中,對神經(jīng)網(wǎng)絡(luò)訓練。然后將測試樣本對應(yīng)的18000個二維數(shù)組依次輸入到訓練好的神經(jīng)網(wǎng)絡(luò)中,輸出預測橫波速度并與實際橫波速度、基于“公式法”預測的橫波速度和基于“擬合法”預測的橫波速度對比。表1為井2、井5、井13、井15、井23和井24的測井數(shù)據(jù)作為測試樣本的橫波速度預測相對誤差。由表可見:對于訓練數(shù)據(jù),本文方法預測的橫波速度相對誤差約為3.00%,小于“擬合法”(4.09%)和“公式法”(4.81%);對于測試數(shù)據(jù),本文方法預測的橫波速度相對誤差略有增大,約為3.19%,仍低于“公式法”和“擬合法”。表2為井2、井5、井13、井15、井23和井24的測井數(shù)據(jù)作為測試樣本的橫波速度預測值與實際值的相關(guān)系數(shù)。由表可見:對于訓練數(shù)據(jù),本文方法的預測結(jié)果與實際值的相關(guān)系數(shù)平均值為0.9837,大于“擬合法”(0.9638)和“公式法”(0.9526);對于測試數(shù)據(jù),本文方法的相關(guān)系數(shù)略有減小,平均值為0.9805,仍大于“公式法”和“擬合法”。
(2)選擇井3、井8、井11、井18、井21和井29的測井數(shù)據(jù)作為測試樣本,其他測井數(shù)據(jù)作為訓練樣本。
將訓練樣本對應(yīng)的72000個二維數(shù)組和測試樣本對應(yīng)的18000個二維數(shù)組按照上文的順序依次輸入,由相對誤差(表3)和相關(guān)系數(shù)(表4)可以看出:①對于訓練數(shù)據(jù),本文方法預測的橫波速度相對誤差平均值為3.01%,小于“擬合法”(4.10%)和“公式法”(4.69%);本文方法的相關(guān)系數(shù)平均值為0.9839,大于“擬合法”(0.9655)和“公式法”(0.9499)。②對于測試數(shù)據(jù),本文方法預測的橫波速度相對誤差略有增大,相關(guān)系數(shù)略有減小,平均值分別為3.20%和0.9797。
(3)選擇井4、井9、井12、井20、井22和井27的測井數(shù)據(jù)作為測試樣本,其他測井數(shù)據(jù)作為訓練樣本。
將訓練樣本對應(yīng)的72000個二維數(shù)組和測試樣本對應(yīng)的18000個二維數(shù)組依次輸入,由相對誤差(表5)和相關(guān)系數(shù)(表6)可見:無論是訓練數(shù)據(jù)還是測試數(shù)據(jù),本文方法預測的橫波速度相對誤差小于“擬合法”和“公式法”,本文方法的預測結(jié)果與實際值的相關(guān)系數(shù)大于“擬合法”和“公式法”。
通過以上交叉驗證算例可以看出,本文方法預測的橫波速度與真實橫波速度的相對誤差更小,相關(guān)系數(shù)更大,證明了該方法具有較高的預測精度和較強的泛化能力。
表1 井2、井5、井13、井15、井23和井24的測井數(shù)據(jù)作為測試樣本的橫波速度預測相對誤差
注:文中只列出了5口訓練井、5口測試井數(shù)據(jù),下同
表2 井2、井5、井13、井15、井23和井24的測井數(shù)據(jù)作為測試樣本的橫波速度預測值與實際值的相關(guān)系數(shù)
表3 井3、井8、井11、井18、井21和井29的測井數(shù)據(jù)作為測試樣本的橫波速度預測相對誤差
表4 井3、井8、井11、井18、井21和井29的測井數(shù)據(jù)作為測試樣本的橫波速度預測值與實際值的相關(guān)系數(shù)
表5 井4、井9、井12、井20、井22和井27的測井數(shù)據(jù)作為測試樣本的橫波速度預測相對誤差
表6 井4、井9、井12、井20、井22和井27的測井數(shù)據(jù)作為測試樣本的橫波速度預測值與實際值的相關(guān)系數(shù)
為了進一步驗證本文方法的泛化能力,利用10口井數(shù)據(jù)訓練、20口井數(shù)據(jù)測試。選擇井2、井4、井7、井8、井9、井14、井19、井20、井22和井29的測井數(shù)據(jù)作為訓練樣本,其他測井數(shù)據(jù)作為測試樣本。
將訓練樣本對應(yīng)的30000個二維數(shù)組依次輸入構(gòu)建好的神經(jīng)網(wǎng)絡(luò)中,對神經(jīng)網(wǎng)絡(luò)訓練。然后將測試樣本對應(yīng)的60000個二維數(shù)組依次輸入到訓練好的神經(jīng)網(wǎng)絡(luò)中,輸出預測橫波速度并與實際橫波速度、基于“公式法”預測的橫波速度和基于“擬合法”預測的橫波速度對比。表7為井2、井4、井7、井8、井9、井14、井19、井20、井22和井29的測井數(shù)據(jù)作為訓練樣本的橫波速度預測相對誤差。由表可見:對于訓練數(shù)據(jù),本文方法預測的橫波速度相對誤差平均值為2.49%,小于多數(shù)井訓練、少數(shù)井驗證;對于測試數(shù)據(jù),本文方法預測的橫波速度相對誤差平均值為3.91%,大于多數(shù)井訓練、少數(shù)井驗證。這是由于減少了訓練樣本的數(shù)量,增加了測試集的樣本數(shù)量所致。但總體來說,本文方法預測的橫波速度相對誤差仍小于“擬合法”和“公式法”。表8為井2、井4、井7、井8、井9、井14、井19、井20、井22和井29的測井數(shù)據(jù)作為訓練樣本的橫波速度預測值與實際值的相關(guān)系數(shù)。由表可見:對于訓練數(shù)據(jù),本文方法預測的橫波速度相對誤差和相關(guān)系數(shù)分別為2.49%和0.9867,預測結(jié)果好于“擬合法”和“公式法”;對于測試數(shù)據(jù),本文方法預測的橫波速度相對誤差和相關(guān)系數(shù)分別為3.92%和0.9686,預測結(jié)果與“擬合法”相當,好于“公式法”。圖8為橫波速度預測值和真實值。由圖可見,預測橫波速度和實際橫波速度曲線趨勢一致,具有很好的匹配度。圖9為橫波速度絕對誤差曲線。由圖可見,訓練井的絕對誤差值小于110m/s,測試井的絕對誤差值小于150m/s,表明本文方法的實用性較好。
表7 井2、井4、井7、井8、井9、井14、井19、井20、井22和井29的測井數(shù)據(jù)作為訓練樣本的橫波速度預測相對誤差
表8 井2、井4、井7、井8、井9、井14、井19、井20、井22和井29的測井數(shù)據(jù)作為訓練樣本的橫波速度預測值與實際值的相關(guān)系數(shù)
圖8 橫波速度預測值和真實值從左至右依次為訓練井2、訓練井29、測試井5和測試井25
圖9 橫波速度絕對誤差曲線從左至右依次為訓練井2、訓練井29、測試井5和測試井25
本文提出了一種基于GRU神經(jīng)網(wǎng)絡(luò)的橫波速度預測方法,利用D區(qū)的測井數(shù)據(jù)訓練、測試,得到以下認識。
(1)橫波速度與縱波速度、密度和自然伽馬等儲層參數(shù)之間存在一定的相關(guān)性。縱波速度、密度和電阻率對數(shù)與橫波速度呈較好的正相關(guān)關(guān)系。自然伽馬值、孔隙度與橫波速度呈負相關(guān)關(guān)系。
(2)利用基于GRU神經(jīng)網(wǎng)絡(luò)的橫波速度預測方法對實際測井數(shù)據(jù)的試算結(jié)果表明:對于多數(shù)井訓練、少數(shù)井驗證,訓練數(shù)據(jù)預測的橫波速度與真實值的相對誤差和相關(guān)系數(shù)分別約為3.00%和0.9837,測試數(shù)據(jù)預測的橫波速度與真實值的相對誤差和相關(guān)系數(shù)分別約3.19%和0.9805;對于少數(shù)井訓練、多數(shù)井驗證,訓練數(shù)據(jù)預測的橫波速度與真實值的相對誤差和相關(guān)系數(shù)分別約為2.49%和0.9867,測試數(shù)據(jù)預測的橫波速度與真實值的相對誤差和相關(guān)系數(shù)分別約3.92%和0.9686。因此本文提出的橫波速度預測方法具有較高的預測精度和較強的泛化能力。
尚需指出,本文方法雖能較為準確地預測橫波速度,但仍然存在兩個主要問題:
(1)本文提出的GRU神經(jīng)網(wǎng)絡(luò)方法是一種有監(jiān)督的機器學習方法,其預測精度依賴于訓練樣本的精度,若訓練樣本的精度不夠,則不能得到精確的預測結(jié)果。因此,有必要研究一種基于無監(jiān)督思想的橫波速度預測方法。
(2)本文采用SGD算法更新梯度的速度相對較快,但由于單個樣本的訓練大多會帶來很多噪聲,因此SGD算法的每次迭代并不都是向著整體最優(yōu)化的方向進行,易造成早期收斂快、晚期收斂慢的現(xiàn)象。