?

基于自動機器學習的采油井壓裂效果預測方法

2023-02-17 12:29
油氣地質與采收率 2023年1期
關鍵詞:產油量油井機器

蓋 建

(1.國家能源陸相砂巖老油田持續開采研發中心,黑龍江大慶163712;2.中國石油大慶油田有限責任公司勘探開發研究院,黑龍江大慶163712)

水力壓裂是大慶油田開發過程中一種非常重要的增產方式[1-4]。水力壓裂有著較為高額的成本,壓裂后的產油效果直接決定了其經濟效益。因此,亟需通過較為精確的預測模型對壓裂后的產油效果進行提前預判,以達到壓裂方案優化設計的目的。目前,對大慶油田壓裂后產油效果的預測大部分是憑借經驗或者多元線性回歸等簡單模型,導致了預測結果的不確定性強和準確度低。

機器學習是建立高精度預測模型的一種有效方法,正逐漸被應用到油氣田勘探開發的各個領域[5-14]。諸多研究人員用機器學習來評估完井和增產措施的效果[15-18]。目前,機器學習在壓裂中的應用多是針對致密油[7]與頁巖氣[19-21]等非常規儲層;文獻[22]利用機器學習對大慶油田油井壓裂效果進行預測并取得了較高的精度,但存在一些問題:第一,在影響因素分析時,考慮因素不夠全面,沒有將可能影響壓裂效果的壓裂液、壓裂類型等工程因素,以及沉積相、目的層深度等地質因素考慮在內。第二,在影響因素相關性分析與模型特征選擇中,雖然采用了神經網絡等方式,但仍局限于每個影響因素與目標變量之間的單因素分析,沒有考慮影響因素之間的關聯,導致特征選擇不夠客觀。第三,研究中采用的基礎數據集中樣本數量少,可能造成預測模型的普適性與推廣性不足。

機器學習算法的種類較多,每種算法適宜解決的問題不同。目前在使用機器學習算法解決問題時,會遇到以下2 個問題:第一,沒有一種機器學習算法能在所有數據集上都有最好的表現。第二,大部分機器學習算法性能的優劣在很大程度上依賴于超參數優化。以上2個問題會造成即使花費大量時間和精力去進行機器學習建模,仍然無法達到更高的精度。自動機器學習滿足了不同數據集對不同機器學習流程的需求,能夠較好地解決上述2 個問題。目前流行的自動機器學習系統包括Auto-WEKA,Hyperopt-sklean,Auto-sklearn,TPOT 和Auto-Keras 等,它們能在不同的預處理器、分類器、超參數設置等流程之間執行組合優化,從而大大減少用戶的工作量,并且降低機器學習使用者的門檻。應用自動機器學習建立了大慶油田N23區塊的采油井壓裂效果預測模型,并且利用研究成果指導了N23區塊采油井壓裂參數的優化設計。

1 數據準備

壓裂措施數據來自大慶油田N23 區塊,該區塊主要發育薩爾圖、葡萄花和高臺子3個油層。薩Ⅱ、薩Ⅲ和葡Ⅰ是區塊的主力開發油層組,為河流-三角洲沉積。密閉取心資料顯示,油層中的孔隙大部分互相連通,平均孔隙度為26.6%,平均滲透率為1 184.8 mD,以細砂巖為主,含量為47.3%,粒度中值為0.13 mm,分選系數為3.4。該區塊采用5 點法面積井網布井,開發井均為直井,通過向地層注水補充能量。

收集整理了該區塊采油井壓裂措施數據共887井次。數據集包含采油井的地質特征、措施前生產數據、壓裂工程參數和措施效果。地質特征包括采油井坐標、措施目的層厚度、平均深度、滲透率、孔隙度、破裂壓力和沉積相類型;措施前生產數據包括日產油量、含水率、日產液量以及沉沒度;壓裂工程參數包括壓裂方式、壓裂液體積、加砂量、壓裂液類型、混砂比和裂縫條數。措施效果采用采油井壓裂后穩定的日產油量,將該指標作為目標值開展研究。

2 研究方法

2.1 自動機器學習

自動機器學習工作流程(圖1)包括3 個主要部分,分別是元學習(meta learning)、貝葉斯優化(Bayesian optimization)和模型集成(build ensemble)。

圖1 自動機器學習工作流程示意Fig.1 Automatic machine learning process

2.1.1 元學習

為了提高效率,自動機器學習采用元學習[23]來預熱貝葉斯優化流程。元學習可以實現從以前的任務中獲得知識,應用該技術選擇可能在目標數據集上表現良好的機器學習框架實例。從已有數據集庫中選擇與新數據集相似的數據集,將相似數據集的機器學習框架作為初始參數傳遞給貝葉斯優化流程,具體實現方法如下:收集OpenML 存儲庫[24]的開源數據集,對于每一個數據集,評估一組包括常規、信息論相關和統計相關的元特征[25]。然后,在2/3的數據上采用k折交叉驗證進行貝葉斯優化,將剩余的1/3 數據作為測試集,將能使測試集獲得最佳性能的機器學習框架作為最優實例儲存。同時,計算本研究目標數據集Dfrac的元特征,在元特征空間中分別計算所有數據集與Dfrac的L1 范數并排序。Dfrac的L1范數表達式為:

其中,L1 范數能夠定義2 個數據集之間的相似度,L1 范數越小,相似度越高。最后,將與目標數據集相似度最高的25 個已儲存的機器學習框架傳送給貝葉斯優化流程。

2.1.2 貝葉斯優化

貝葉斯優化[26]的原理是通過擬合一個概率模型來捕捉超參數組合與其對應模型性能之間的關系,使用該模型選擇最佳的超參數設置方向,計算超參數組合,用計算的結果更新模型,然后通過不斷迭代使誤差逐漸減小?;跇淠P偷呢惾~斯優化在高維、結構化和部分離散的問題[27]上比基于高斯模型的貝葉斯優化[28]更為理想。而在基于樹模型的貝葉斯優化方法中,基于隨機森林的序列模型算法配置(SMAC)[29]比樹狀結構Parzen 估計方法(TPE)[30]表現更好,因此本研究中使用SMAC。SMAC 使用隨機森林算法[31],通過每次評估1 折并盡早丟棄性能較差的超參數組合,來實現快速交叉驗證。本研究在數據預處理、特征預處理和算法工程3個部分通過貝葉斯優化實現了自動化。

2.1.3 模型集成

自動機器學習利用貝葉斯優化得到了很多性能較好的模型,如果僅保留性能最佳的一個模型而丟棄其他模型,那么在時間和計算力上都比較浪費。因此,儲存性能較好的多個模型并構建一個集成模型。集成模型的效果通常優于單個模型[32-33],而當組成集成模型的各個基礎模型單獨性能很強且產生的誤差不相關時,集成模型的表現會更好。另外,集成模型還會大大地提高模型的泛化能力,防止出現過擬合。采用集成選擇(ensemble selection)來進行模型集成。集成選擇[32]是一個貪婪的過程,它向一個空的集成中迭代地加入模型,力求使集成模型在驗證集上的性能最好。

2.1.4 自動機器學習系統

本次研究采用的自動機器學習系統為Autosklearn2.0[34]。Auto-sklearn 在2016年首次由FEURER 等提出[35],它能夠較好地實現上述3 項技術。與其他機器學習算法和Auto-WEKA,Hyperoptsklean 等比較成熟的自動機器學習系統相比,其在多數數據集上性能更優[35]。Auto-sklearn2.0 在老版本基礎上,對模型選擇、算法組合與策略自動化這3個方面進行了改善,這些算法的優化使得新版本的計算精度相比老版本提高了5 倍[34],筆者采用該自動機器學習系統運算24 h的結果。

2.2 常規機器學習

2.2.1 數據預處理

為了消除特征之間數量級差異的影響,對特征集進行了標準化,即:

另外,按照75%和25%的比例將數據集隨機地劃分為訓練集和測試集。其中,訓練集用于模型訓練和超參數優化,測試集不參與訓練過程,僅用于評價模型的預測性能。

2.2.2 特征重要性評估及特征選擇

評估特征重要性有助于特征選擇,進而提高模型性能。封裝法能夠根據機器學習模型預測效果對特征的重要性進行評分,相比單因素分析更能體現特征對目標變量的影響程度。采用基于隨機森林的封裝法評估特征的重要性并進行特征選擇,其具體實現方法為:對于每一個特征,將隨機森林中每一個子決策樹上該特征形成節點的Gini 指數下降程度進行求和,用這個指標來衡量特征的重要性[36]。與此同時,為了使特征重要性的計算結果更加穩定,運算過程采取7折交叉訓練的形式。然后,采用貪婪過程來進行特征選擇,即根據特征重要性程度由大到小,向算法模型中逐一加入特征,進而得到特征數量與模型精度和穩定性的關系,最終選擇使模型得分高且得分標準差低的特征組合作為下一步模型計算的輸入變量。

2.2.3 模型訓練與優化

采取7 折交叉驗證方式進行超參數優化,通過對比平均交叉驗證誤差來優選模型的所有超參數;然后,用優選的超參數在整個訓練集上進行訓練,并用從未參與模型訓練的測試集來評價算法精度。7 折交叉驗證方式能夠充分高效地利用數據,并能夠穩健地評估超參數性能,減少因數據集隨機劃分而導致的模型不穩定性,避免模型的過擬合。

2.2.4 機器學習算法

為了與先進的自動機器學習進行比較,采取了隨機森林[31]、支持向量回歸[37]和神經網絡[38]這3 種較為成熟、在算法結構上差異較大且在大部分數據集上性能較好的機器學習算法,利用這幾種算法進行建模,并對比算法之間的預測性能。

支持向量回歸是支持向量機的一種形式,它使用不敏感損失系數作為損失函數:

支持向量回歸模型的主要超參數有核函數、不敏感損失系數、懲罰參數和寬度系數,將這幾個參數作為待優化的超參數。

神經網絡是一種由大量神經元相互聯接構成的運算模型。當網絡參數設置不當時,容易導致模型的過擬合現象。因此,為了提高模型的泛化能力,采用了早停技術(圖2)、L2 正則化、批量標準化和dropout的正則化方法。L2正則化表達式為:

圖2 早停技術示意Fig.2 Early stopping technology

神經網絡的調整參數包括激活函數類型、優化器類型、學習率、神經元數和batch_size。

隨機森林是由眾多弱學習器(決策樹)集合而成的一種強學習器。影響該算法精度的2個重要超參數分別為子模型的數量和節點分裂時參與判斷的最大特征數,對這2個參數進行優化。

2.2.5 支持庫、超參數調整及模型評估

采用Scikit-learn 模型包[39]來實現支持向量回歸和隨機森林算法,用基于Python的Keras[40]來構建神經網絡模型。超參數調整則通過網格搜索來完成。將決定系數和均方誤差作為評估模型性能的指標,其表達式分別為:

3 結果分析與討論

3.1 數據統計分析

各個變量之間的線性相關性用Pearson 相關系數進行描述(圖3)。其中,0,1和-1分別為完全線性無關、完全線性正相關和完全線性負相關。另外,采用箱線圖描述壓裂后日產油量與影響因素之間的關系(圖4)。每一個箱線的區間為該組分類數據的第1個四分位到第3個四分位。

從圖3 可以看出,措施前日產油量與壓裂后日產油量的線性相關性最強,Pearson 相關系數為0.70。措施前含水率、日產液量也與目標變量有著較強的相關性,同時,圖4也表征出這些措施前生產數據對壓裂后日產油量有著較為明顯的影響。分析可知,油井實施壓裂的大部分原因是由于近井地帶儲層堵塞等問題造成了產液能力下降,這類問題導致的產液能力下降是一個漸變的過程,而當油井日產液量有一定幅度的異常下降時,就會及時根據情況開展壓裂等措施,很少會等待日產液量下降至原來的一半甚至更少時才采取補救措施,因此,油井日產液量、日產油量這2 個指標能在很大程度上描述油井壓裂后的產油潛力。另外,壓裂前含水率對壓裂后日產油量也有較大的影響,這是由于油井壓裂前含水率能夠在一定程度上描述油井周圍儲層的含油情況,部分油井周圍儲層含油情況較好,含水率較低,但由于日產液量下降等原因造成日產油量較低,需要通過壓裂來增產,這類油井在壓裂后產油效果也較好。

圖3 影響壓裂后日產油量各因素相關性熱力圖Fig.3 Heat map of correlation between various factors affecting oil production rate after hydraulic fracturing

圖4 影響因素與壓裂后日產油量關系箱線圖Fig.4 Box plot of relationship between influencing factors and oil production rate after hydraulic fracturing

Pearson 相關系數只能描述變量之間的線性關系,箱線圖也僅能定性地查看影響因素與目標變量的變化趨勢,而且2 種分析方式均為單因素分析。然而,在實際的壓裂問題中,壓裂后日產油量與影響因素之間可能存在非常復雜的非線性關系,而且受多因素同時影響。因此,需要探究更加適合的方法來進一步評價各個特征對于目標變量的影響程度。

3.2 特征重要性分析及特征選擇

基于隨機森林封裝法的特征重要性評價結果如圖5 所示??傮w來看,壓裂后日產油量受壓裂前各項生產因素影響最大,其次是地質和工程因素。這意味著對采油井生產情況進行實時監測,并依據動態指標合理地選擇壓裂井和目的層對于措施效果更為關鍵。另外,加砂量和壓裂液體積也對壓裂后日產油量起了重要作用。這是因為這2個因素與形成裂縫的長度和導流能力有一定的關系。

圖5 各特征重要程度(Gini指數法)Fig.5 Feature importance based on Gini index

分析模型R2可知(圖6),模型的擬合精度在特征數量為6 后逐漸平緩;特征數量達到15 時,模型不但獲得了較高的精度,且達到了非常低的標準差,即穩定的性能。因此,按照重要程度選取前15個特征作為3種常規機器學習算法的輸入變量進行計算。

圖6 交叉驗證中模型R2平均值與標準差隨特征數量變化關系Fig.6 Relationship between mean value and standard deviation of R2 with feature number in cross validation

3.3 機器學習預測模型建立

支持向量回歸、神經網絡、隨機森林這3種常規機器學習算法與自動機器學習預測模型的預測性能對比結果(表1)顯示,各種算法建立的模型在測試集上性能由好到差依次為自動機器學習、隨機森林、神經網絡和支持向量回歸。隨機森林雖然在測試集上也展現了較好的性能,但是其在訓練集上的R2過高,說明該模型存在著較為嚴重的過擬合現象,模型的泛化能力較弱。從圖7 可以直觀地看出,自動機器學習預測模型在訓練集和測試集上的預測結果均較好。自動機器學習預測模型在測試集上的R2為0.695,均方誤差為7.81,預測結果相對誤差的平均值為18.96%,標準差為16.97%,好于其他算法,因此優選其為最佳的壓裂效果預測模型。為了對比該模型在現有預測水平上的提升效果,從采油與地面工程運行管理系統中提取壓裂方案,查詢壓裂后日產油量預測值,計算實際壓裂后日產油量和方案預測值之間的相對誤差,統計得出測試集的方案預測相對誤差平均值為76.49%,標準差為78.52%。對比可知,本研究建立的壓裂效果預測模型可在目前水平上將預測相對誤差的平均值降低57.53%,標準差降低61.55%,預測精度與穩定性均大幅提高。最優自動機器學習預測模型中各基礎預測器參數信息見表2。

表1 各種算法在數據集上的預測性能Table1 Prediction performance of algorithms on data set

圖7 自動機器學習預測模型的預測值與真實值對比Fig.7 Comparison between predicted values of automatic machine learning prediction model and real values

表2 最優自動機器學習預測模型中各基礎預測器信息Table2 Information of base regressors in optimal automatic machine learning model

4 應用情況

4.1 經濟效益測算

利用本研究建立的模型可大幅提高壓裂后日產油量預測精度,進一步輔助壓裂方案的制定與優化,最大程度提高壓裂投資產生的經濟效益。具體經濟效益測算過程如下:①選取8口已壓裂井,利用自動機器學習預測模型對壓裂參數進行重新優化,得到每口井的最優壓裂方案參數與壓裂效果預測值。②利用上述模型在測試集上的相對誤差平均值來估算每口井措施效果的范圍,并與原方案的實際效果進行對比,求取參數優化后相比于原方案增加的初期日增油量。③壓裂有效期選取4 個月,假設模型優化方案比原方案額外日增油量在壓裂有效期內按指數關系遞減(圖8),有效期末額外日增油量趨于0,再通過求取積分估算有效期內總的額外增油量。④選取油價為70 美元/bbl,匯率為6.37,通過計算即可得到模型優化方案相比原方案的額外經濟效益。從模型優化增加經濟效益測算結果(表3)可以看出,經過模型優化壓裂參數后,選取的8 口井相比原方案平均可額外增加經濟效益3.2×104~27.4×104元/井次,平均為16.1×104元/井次。額外總增油量的表達式為:

表3 模型優化增加經濟效益測算結果Table3 Economic benefits increased by model optimization

圖8 自動機器學習預測模型優化后壓裂方案較原方案額外增油量示意Fig.8 Extra oil increment of optimal scheme compared with the original scheme

4.2 礦場應用案例

為了進一步驗證模型的精度與現場應用的可行性,利用上述建立的自動機器學習預測模型對4口采油井進行壓裂方案的設計與優化。

監測N23 區塊采油井日產液量、產液剖面等各項動態指標變化情況,結合井組注采關系、連通關系等地質條件與地層能量、剩余油飽和度等開發參數,選定4 口采油井開展壓裂措施。壓裂方案設計優化涉及地質和工程2 個方面的參數。首先,模型考慮的各項地質因素主要受壓裂目的層位的影響。分析各采油井的生產層位、產液剖面和連通情況等信息,每口采油井初選3 個目的層進行排列組合。壓裂工程方面選取壓裂液類型和加砂量這2個對模型效果影響較大的參數。加砂量選取12,15,18,21,24 這5 個數值,壓裂液類型則將胍膠壓裂液、締合壓裂液和其他壓裂液作為待選。將每口井的所有選層、加砂量及壓裂液類型進行逐一組合,可得到90 個壓裂方案,詳見表4。將所有壓裂方案參數輸入自動機器學習預測模型進行計算,優選出各采油井的最佳方案如表4 所示。2019 年6 月開始,按最優方案對這4 口采油井實施了壓裂改造,實際效果(表5)表明,壓裂后采油井的日產油量和模型預測值非常接近,本文建立的自動機器學習預測模型對實際礦場的預測性能較好。該自動機器學習預測模型對大慶油田N23區塊的水力壓裂設計與優化具有指導意義,模型經過簡單的參數修改便可預測其他開發區塊,簡單易用,推廣性強。

表4 壓裂參數優化情況Table4 Optimization results of hydraulic fracturing parameters

表5 最優壓裂方案效果預測及施工后實際值Table5 Effect prediction of optimal hydraulic fracturing scheme and actual values after hydraulic fracturing

5 結論

依據礦場壓裂統計數據分析了大慶油田N23區塊的采油井壓裂增產情況,采用自動機器學習建立了一個精度高、穩定性強的采油井壓裂效果預測模型。各項統計結果表明,采油井水力壓裂的各影響因素與壓裂后日產油量存在定性關系;利用封裝法進行了特征重要性評估,得到對模型影響較大的特征為:壓裂前日產油量、含水率、加砂量等。利用自動機器學習建立的預測模型精度高于支持向量回歸、神經網絡和隨機森林這3種常見機器學習算法,模型在測試集上的精度高達0.695,預測相對誤差僅為18.96%,比目前降低了57.53%。經過模型優化的壓裂方案較原方案平均可額外增加經濟效益約3.2×104~27.4×104元/井次;另外,利用自動機器學習預測模型對N23 區塊采油井壓裂增產方案進行了優化,結果顯示,模型計算出的最優參數組合方案實際效果較好,而且現場的實施效果與模型預測值非常相近。自動機器學習預測模型對N23區塊壓裂措施參數設計具有指導作用,現場可行性高,模型推廣性強。

符號解釋

a,b——回歸公式系數;

C'——支持向量回歸算法中的懲罰因子;

dp(Dfrac,Dj)——目標數據集與數據庫中第j個數據集之間的L1范數;

Dfrac——目標數據集;

Dj——數據庫中第j個數據集;

Ein——未包含正則化項的訓練樣本誤差;

i——元特征個數;

j——數據集個數;

k——交叉驗證的折數;

kernel——支持向量回歸算法中的核函數類型;

L——損失函數;

L(z)——不敏感損失函數;

——目標數據集中第i個元特征值;

——第j個數據集中第i個元特征值;

max_features——random forest 算法中尋找最佳分割時要考慮的特征數量;

max_depth——random forest算法中樹的最大深度;

min_samples_split——random forest 算法中拆分內部節點所需的最少樣本數;

MSE——均方誤差;

n——樣本的數量;

n_estimators——random forest算法中決策樹的數量;

n_iter——ard_regression算法中的最大迭代次數;

nω——待學習參數的數量;

R2——決定系數;

t——壓裂后生產天數,d;

tmax——壓裂有效期,d;

V總增油量——額外總增油量,t;

xi——第i個樣本特征在標準化前的數值;

X測試集——測試集特征;

X訓練集——訓練集特征;

——所有樣本目標變量的平均值;

Yi——第i個樣本目標變量的實際值;

——第i個樣本目標變量的模型預測值;

Y訓練集——訓練集目標變量值;

zi——第i個樣本特征在標準化后的數值;

α1,α2,λ1,λ2——ard_regression算法中的模型系數;

ε——不敏感損失系數;

λ——正則化參數;

μ——所有樣本的平均值;

σ——所有樣本的標準差;

ωi——第i個網絡層待學習參數。

猜你喜歡
產油量油井機器
機器狗
機器狗
甘藍型油菜的產油量分析
未來機器城
新型油井水泥消泡劑的研制
一種油井水泥用抗分散絮凝劑
鄂爾多斯盆地合水地區長8段裂縫發育特征及其對產油量的影響
CO2混相驅油井產能預測方法
抽油井間抽周期的灰色預測
基于電阻電容模型的產油量模型的應用及改進
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合