蓋 建
(1.國(guó)家能源陸相砂巖老油田持續(xù)開(kāi)采研發(fā)中心,黑龍江大慶163712;2.中國(guó)石油大慶油田有限責(zé)任公司勘探開(kāi)發(fā)研究院,黑龍江大慶163712)
水力壓裂是大慶油田開(kāi)發(fā)過(guò)程中一種非常重要的增產(chǎn)方式[1-4]。水力壓裂有著較為高額的成本,壓裂后的產(chǎn)油效果直接決定了其經(jīng)濟(jì)效益。因此,亟需通過(guò)較為精確的預(yù)測(cè)模型對(duì)壓裂后的產(chǎn)油效果進(jìn)行提前預(yù)判,以達(dá)到壓裂方案優(yōu)化設(shè)計(jì)的目的。目前,對(duì)大慶油田壓裂后產(chǎn)油效果的預(yù)測(cè)大部分是憑借經(jīng)驗(yàn)或者多元線(xiàn)性回歸等簡(jiǎn)單模型,導(dǎo)致了預(yù)測(cè)結(jié)果的不確定性強(qiáng)和準(zhǔn)確度低。
機(jī)器學(xué)習(xí)是建立高精度預(yù)測(cè)模型的一種有效方法,正逐漸被應(yīng)用到油氣田勘探開(kāi)發(fā)的各個(gè)領(lǐng)域[5-14]。諸多研究人員用機(jī)器學(xué)習(xí)來(lái)評(píng)估完井和增產(chǎn)措施的效果[15-18]。目前,機(jī)器學(xué)習(xí)在壓裂中的應(yīng)用多是針對(duì)致密油[7]與頁(yè)巖氣[19-21]等非常規(guī)儲(chǔ)層;文獻(xiàn)[22]利用機(jī)器學(xué)習(xí)對(duì)大慶油田油井壓裂效果進(jìn)行預(yù)測(cè)并取得了較高的精度,但存在一些問(wèn)題:第一,在影響因素分析時(shí),考慮因素不夠全面,沒(méi)有將可能影響壓裂效果的壓裂液、壓裂類(lèi)型等工程因素,以及沉積相、目的層深度等地質(zhì)因素考慮在內(nèi)。第二,在影響因素相關(guān)性分析與模型特征選擇中,雖然采用了神經(jīng)網(wǎng)絡(luò)等方式,但仍局限于每個(gè)影響因素與目標(biāo)變量之間的單因素分析,沒(méi)有考慮影響因素之間的關(guān)聯(lián),導(dǎo)致特征選擇不夠客觀。第三,研究中采用的基礎(chǔ)數(shù)據(jù)集中樣本數(shù)量少,可能造成預(yù)測(cè)模型的普適性與推廣性不足。
機(jī)器學(xué)習(xí)算法的種類(lèi)較多,每種算法適宜解決的問(wèn)題不同。目前在使用機(jī)器學(xué)習(xí)算法解決問(wèn)題時(shí),會(huì)遇到以下2 個(gè)問(wèn)題:第一,沒(méi)有一種機(jī)器學(xué)習(xí)算法能在所有數(shù)據(jù)集上都有最好的表現(xiàn)。第二,大部分機(jī)器學(xué)習(xí)算法性能的優(yōu)劣在很大程度上依賴(lài)于超參數(shù)優(yōu)化。以上2個(gè)問(wèn)題會(huì)造成即使花費(fèi)大量時(shí)間和精力去進(jìn)行機(jī)器學(xué)習(xí)建模,仍然無(wú)法達(dá)到更高的精度。自動(dòng)機(jī)器學(xué)習(xí)滿(mǎn)足了不同數(shù)據(jù)集對(duì)不同機(jī)器學(xué)習(xí)流程的需求,能夠較好地解決上述2 個(gè)問(wèn)題。目前流行的自動(dòng)機(jī)器學(xué)習(xí)系統(tǒng)包括Auto-WEKA,Hyperopt-sklean,Auto-sklearn,TPOT 和Auto-Keras 等,它們能在不同的預(yù)處理器、分類(lèi)器、超參數(shù)設(shè)置等流程之間執(zhí)行組合優(yōu)化,從而大大減少用戶(hù)的工作量,并且降低機(jī)器學(xué)習(xí)使用者的門(mén)檻。應(yīng)用自動(dòng)機(jī)器學(xué)習(xí)建立了大慶油田N23區(qū)塊的采油井壓裂效果預(yù)測(cè)模型,并且利用研究成果指導(dǎo)了N23區(qū)塊采油井壓裂參數(shù)的優(yōu)化設(shè)計(jì)。
壓裂措施數(shù)據(jù)來(lái)自大慶油田N23 區(qū)塊,該區(qū)塊主要發(fā)育薩爾圖、葡萄花和高臺(tái)子3個(gè)油層。薩Ⅱ、薩Ⅲ和葡Ⅰ是區(qū)塊的主力開(kāi)發(fā)油層組,為河流-三角洲沉積。密閉取心資料顯示,油層中的孔隙大部分互相連通,平均孔隙度為26.6%,平均滲透率為1 184.8 mD,以細(xì)砂巖為主,含量為47.3%,粒度中值為0.13 mm,分選系數(shù)為3.4。該區(qū)塊采用5 點(diǎn)法面積井網(wǎng)布井,開(kāi)發(fā)井均為直井,通過(guò)向地層注水補(bǔ)充能量。
收集整理了該區(qū)塊采油井壓裂措施數(shù)據(jù)共887井次。數(shù)據(jù)集包含采油井的地質(zhì)特征、措施前生產(chǎn)數(shù)據(jù)、壓裂工程參數(shù)和措施效果。地質(zhì)特征包括采油井坐標(biāo)、措施目的層厚度、平均深度、滲透率、孔隙度、破裂壓力和沉積相類(lèi)型;措施前生產(chǎn)數(shù)據(jù)包括日產(chǎn)油量、含水率、日產(chǎn)液量以及沉沒(méi)度;壓裂工程參數(shù)包括壓裂方式、壓裂液體積、加砂量、壓裂液類(lèi)型、混砂比和裂縫條數(shù)。措施效果采用采油井壓裂后穩(wěn)定的日產(chǎn)油量,將該指標(biāo)作為目標(biāo)值開(kāi)展研究。
自動(dòng)機(jī)器學(xué)習(xí)工作流程(圖1)包括3 個(gè)主要部分,分別是元學(xué)習(xí)(meta learning)、貝葉斯優(yōu)化(Bayesian optimization)和模型集成(build ensemble)。
圖1 自動(dòng)機(jī)器學(xué)習(xí)工作流程示意Fig.1 Automatic machine learning process
2.1.1 元學(xué)習(xí)
為了提高效率,自動(dòng)機(jī)器學(xué)習(xí)采用元學(xué)習(xí)[23]來(lái)預(yù)熱貝葉斯優(yōu)化流程。元學(xué)習(xí)可以實(shí)現(xiàn)從以前的任務(wù)中獲得知識(shí),應(yīng)用該技術(shù)選擇可能在目標(biāo)數(shù)據(jù)集上表現(xiàn)良好的機(jī)器學(xué)習(xí)框架實(shí)例。從已有數(shù)據(jù)集庫(kù)中選擇與新數(shù)據(jù)集相似的數(shù)據(jù)集,將相似數(shù)據(jù)集的機(jī)器學(xué)習(xí)框架作為初始參數(shù)傳遞給貝葉斯優(yōu)化流程,具體實(shí)現(xiàn)方法如下:收集OpenML 存儲(chǔ)庫(kù)[24]的開(kāi)源數(shù)據(jù)集,對(duì)于每一個(gè)數(shù)據(jù)集,評(píng)估一組包括常規(guī)、信息論相關(guān)和統(tǒng)計(jì)相關(guān)的元特征[25]。然后,在2/3的數(shù)據(jù)上采用k折交叉驗(yàn)證進(jìn)行貝葉斯優(yōu)化,將剩余的1/3 數(shù)據(jù)作為測(cè)試集,將能使測(cè)試集獲得最佳性能的機(jī)器學(xué)習(xí)框架作為最優(yōu)實(shí)例儲(chǔ)存。同時(shí),計(jì)算本研究目標(biāo)數(shù)據(jù)集Dfrac的元特征,在元特征空間中分別計(jì)算所有數(shù)據(jù)集與Dfrac的L1 范數(shù)并排序。Dfrac的L1范數(shù)表達(dá)式為:
其中,L1 范數(shù)能夠定義2 個(gè)數(shù)據(jù)集之間的相似度,L1 范數(shù)越小,相似度越高。最后,將與目標(biāo)數(shù)據(jù)集相似度最高的25 個(gè)已儲(chǔ)存的機(jī)器學(xué)習(xí)框架傳送給貝葉斯優(yōu)化流程。
2.1.2 貝葉斯優(yōu)化
貝葉斯優(yōu)化[26]的原理是通過(guò)擬合一個(gè)概率模型來(lái)捕捉超參數(shù)組合與其對(duì)應(yīng)模型性能之間的關(guān)系,使用該模型選擇最佳的超參數(shù)設(shè)置方向,計(jì)算超參數(shù)組合,用計(jì)算的結(jié)果更新模型,然后通過(guò)不斷迭代使誤差逐漸減小?;跇?shù)模型的貝葉斯優(yōu)化在高維、結(jié)構(gòu)化和部分離散的問(wèn)題[27]上比基于高斯模型的貝葉斯優(yōu)化[28]更為理想。而在基于樹(shù)模型的貝葉斯優(yōu)化方法中,基于隨機(jī)森林的序列模型算法配置(SMAC)[29]比樹(shù)狀結(jié)構(gòu)Parzen 估計(jì)方法(TPE)[30]表現(xiàn)更好,因此本研究中使用SMAC。SMAC 使用隨機(jī)森林算法[31],通過(guò)每次評(píng)估1 折并盡早丟棄性能較差的超參數(shù)組合,來(lái)實(shí)現(xiàn)快速交叉驗(yàn)證。本研究在數(shù)據(jù)預(yù)處理、特征預(yù)處理和算法工程3個(gè)部分通過(guò)貝葉斯優(yōu)化實(shí)現(xiàn)了自動(dòng)化。
2.1.3 模型集成
自動(dòng)機(jī)器學(xué)習(xí)利用貝葉斯優(yōu)化得到了很多性能較好的模型,如果僅保留性能最佳的一個(gè)模型而丟棄其他模型,那么在時(shí)間和計(jì)算力上都比較浪費(fèi)。因此,儲(chǔ)存性能較好的多個(gè)模型并構(gòu)建一個(gè)集成模型。集成模型的效果通常優(yōu)于單個(gè)模型[32-33],而當(dāng)組成集成模型的各個(gè)基礎(chǔ)模型單獨(dú)性能很強(qiáng)且產(chǎn)生的誤差不相關(guān)時(shí),集成模型的表現(xiàn)會(huì)更好。另外,集成模型還會(huì)大大地提高模型的泛化能力,防止出現(xiàn)過(guò)擬合。采用集成選擇(ensemble selection)來(lái)進(jìn)行模型集成。集成選擇[32]是一個(gè)貪婪的過(guò)程,它向一個(gè)空的集成中迭代地加入模型,力求使集成模型在驗(yàn)證集上的性能最好。
2.1.4 自動(dòng)機(jī)器學(xué)習(xí)系統(tǒng)
本次研究采用的自動(dòng)機(jī)器學(xué)習(xí)系統(tǒng)為Autosklearn2.0[34]。Auto-sklearn 在2016年首次由FEURER 等提出[35],它能夠較好地實(shí)現(xiàn)上述3 項(xiàng)技術(shù)。與其他機(jī)器學(xué)習(xí)算法和Auto-WEKA,Hyperoptsklean 等比較成熟的自動(dòng)機(jī)器學(xué)習(xí)系統(tǒng)相比,其在多數(shù)數(shù)據(jù)集上性能更優(yōu)[35]。Auto-sklearn2.0 在老版本基礎(chǔ)上,對(duì)模型選擇、算法組合與策略自動(dòng)化這3個(gè)方面進(jìn)行了改善,這些算法的優(yōu)化使得新版本的計(jì)算精度相比老版本提高了5 倍[34],筆者采用該自動(dòng)機(jī)器學(xué)習(xí)系統(tǒng)運(yùn)算24 h的結(jié)果。
2.2.1 數(shù)據(jù)預(yù)處理
為了消除特征之間數(shù)量級(jí)差異的影響,對(duì)特征集進(jìn)行了標(biāo)準(zhǔn)化,即:
另外,按照75%和25%的比例將數(shù)據(jù)集隨機(jī)地劃分為訓(xùn)練集和測(cè)試集。其中,訓(xùn)練集用于模型訓(xùn)練和超參數(shù)優(yōu)化,測(cè)試集不參與訓(xùn)練過(guò)程,僅用于評(píng)價(jià)模型的預(yù)測(cè)性能。
2.2.2 特征重要性評(píng)估及特征選擇
評(píng)估特征重要性有助于特征選擇,進(jìn)而提高模型性能。封裝法能夠根據(jù)機(jī)器學(xué)習(xí)模型預(yù)測(cè)效果對(duì)特征的重要性進(jìn)行評(píng)分,相比單因素分析更能體現(xiàn)特征對(duì)目標(biāo)變量的影響程度。采用基于隨機(jī)森林的封裝法評(píng)估特征的重要性并進(jìn)行特征選擇,其具體實(shí)現(xiàn)方法為:對(duì)于每一個(gè)特征,將隨機(jī)森林中每一個(gè)子決策樹(shù)上該特征形成節(jié)點(diǎn)的Gini 指數(shù)下降程度進(jìn)行求和,用這個(gè)指標(biāo)來(lái)衡量特征的重要性[36]。與此同時(shí),為了使特征重要性的計(jì)算結(jié)果更加穩(wěn)定,運(yùn)算過(guò)程采取7折交叉訓(xùn)練的形式。然后,采用貪婪過(guò)程來(lái)進(jìn)行特征選擇,即根據(jù)特征重要性程度由大到小,向算法模型中逐一加入特征,進(jìn)而得到特征數(shù)量與模型精度和穩(wěn)定性的關(guān)系,最終選擇使模型得分高且得分標(biāo)準(zhǔn)差低的特征組合作為下一步模型計(jì)算的輸入變量。
2.2.3 模型訓(xùn)練與優(yōu)化
采取7 折交叉驗(yàn)證方式進(jìn)行超參數(shù)優(yōu)化,通過(guò)對(duì)比平均交叉驗(yàn)證誤差來(lái)優(yōu)選模型的所有超參數(shù);然后,用優(yōu)選的超參數(shù)在整個(gè)訓(xùn)練集上進(jìn)行訓(xùn)練,并用從未參與模型訓(xùn)練的測(cè)試集來(lái)評(píng)價(jià)算法精度。7 折交叉驗(yàn)證方式能夠充分高效地利用數(shù)據(jù),并能夠穩(wěn)健地評(píng)估超參數(shù)性能,減少因數(shù)據(jù)集隨機(jī)劃分而導(dǎo)致的模型不穩(wěn)定性,避免模型的過(guò)擬合。
2.2.4 機(jī)器學(xué)習(xí)算法
為了與先進(jìn)的自動(dòng)機(jī)器學(xué)習(xí)進(jìn)行比較,采取了隨機(jī)森林[31]、支持向量回歸[37]和神經(jīng)網(wǎng)絡(luò)[38]這3 種較為成熟、在算法結(jié)構(gòu)上差異較大且在大部分?jǐn)?shù)據(jù)集上性能較好的機(jī)器學(xué)習(xí)算法,利用這幾種算法進(jìn)行建模,并對(duì)比算法之間的預(yù)測(cè)性能。
支持向量回歸是支持向量機(jī)的一種形式,它使用不敏感損失系數(shù)作為損失函數(shù):
支持向量回歸模型的主要超參數(shù)有核函數(shù)、不敏感損失系數(shù)、懲罰參數(shù)和寬度系數(shù),將這幾個(gè)參數(shù)作為待優(yōu)化的超參數(shù)。
神經(jīng)網(wǎng)絡(luò)是一種由大量神經(jīng)元相互聯(lián)接構(gòu)成的運(yùn)算模型。當(dāng)網(wǎng)絡(luò)參數(shù)設(shè)置不當(dāng)時(shí),容易導(dǎo)致模型的過(guò)擬合現(xiàn)象。因此,為了提高模型的泛化能力,采用了早停技術(shù)(圖2)、L2 正則化、批量標(biāo)準(zhǔn)化和dropout的正則化方法。L2正則化表達(dá)式為:
圖2 早停技術(shù)示意Fig.2 Early stopping technology
神經(jīng)網(wǎng)絡(luò)的調(diào)整參數(shù)包括激活函數(shù)類(lèi)型、優(yōu)化器類(lèi)型、學(xué)習(xí)率、神經(jīng)元數(shù)和batch_size。
隨機(jī)森林是由眾多弱學(xué)習(xí)器(決策樹(shù))集合而成的一種強(qiáng)學(xué)習(xí)器。影響該算法精度的2個(gè)重要超參數(shù)分別為子模型的數(shù)量和節(jié)點(diǎn)分裂時(shí)參與判斷的最大特征數(shù),對(duì)這2個(gè)參數(shù)進(jìn)行優(yōu)化。
2.2.5 支持庫(kù)、超參數(shù)調(diào)整及模型評(píng)估
采用Scikit-learn 模型包[39]來(lái)實(shí)現(xiàn)支持向量回歸和隨機(jī)森林算法,用基于Python的Keras[40]來(lái)構(gòu)建神經(jīng)網(wǎng)絡(luò)模型。超參數(shù)調(diào)整則通過(guò)網(wǎng)格搜索來(lái)完成。將決定系數(shù)和均方誤差作為評(píng)估模型性能的指標(biāo),其表達(dá)式分別為:
各個(gè)變量之間的線(xiàn)性相關(guān)性用Pearson 相關(guān)系數(shù)進(jìn)行描述(圖3)。其中,0,1和-1分別為完全線(xiàn)性無(wú)關(guān)、完全線(xiàn)性正相關(guān)和完全線(xiàn)性負(fù)相關(guān)。另外,采用箱線(xiàn)圖描述壓裂后日產(chǎn)油量與影響因素之間的關(guān)系(圖4)。每一個(gè)箱線(xiàn)的區(qū)間為該組分類(lèi)數(shù)據(jù)的第1個(gè)四分位到第3個(gè)四分位。
從圖3 可以看出,措施前日產(chǎn)油量與壓裂后日產(chǎn)油量的線(xiàn)性相關(guān)性最強(qiáng),Pearson 相關(guān)系數(shù)為0.70。措施前含水率、日產(chǎn)液量也與目標(biāo)變量有著較強(qiáng)的相關(guān)性,同時(shí),圖4也表征出這些措施前生產(chǎn)數(shù)據(jù)對(duì)壓裂后日產(chǎn)油量有著較為明顯的影響。分析可知,油井實(shí)施壓裂的大部分原因是由于近井地帶儲(chǔ)層堵塞等問(wèn)題造成了產(chǎn)液能力下降,這類(lèi)問(wèn)題導(dǎo)致的產(chǎn)液能力下降是一個(gè)漸變的過(guò)程,而當(dāng)油井日產(chǎn)液量有一定幅度的異常下降時(shí),就會(huì)及時(shí)根據(jù)情況開(kāi)展壓裂等措施,很少會(huì)等待日產(chǎn)液量下降至原來(lái)的一半甚至更少時(shí)才采取補(bǔ)救措施,因此,油井日產(chǎn)液量、日產(chǎn)油量這2 個(gè)指標(biāo)能在很大程度上描述油井壓裂后的產(chǎn)油潛力。另外,壓裂前含水率對(duì)壓裂后日產(chǎn)油量也有較大的影響,這是由于油井壓裂前含水率能夠在一定程度上描述油井周?chē)鷥?chǔ)層的含油情況,部分油井周?chē)鷥?chǔ)層含油情況較好,含水率較低,但由于日產(chǎn)液量下降等原因造成日產(chǎn)油量較低,需要通過(guò)壓裂來(lái)增產(chǎn),這類(lèi)油井在壓裂后產(chǎn)油效果也較好。
圖3 影響壓裂后日產(chǎn)油量各因素相關(guān)性熱力圖Fig.3 Heat map of correlation between various factors affecting oil production rate after hydraulic fracturing
圖4 影響因素與壓裂后日產(chǎn)油量關(guān)系箱線(xiàn)圖Fig.4 Box plot of relationship between influencing factors and oil production rate after hydraulic fracturing
Pearson 相關(guān)系數(shù)只能描述變量之間的線(xiàn)性關(guān)系,箱線(xiàn)圖也僅能定性地查看影響因素與目標(biāo)變量的變化趨勢(shì),而且2 種分析方式均為單因素分析。然而,在實(shí)際的壓裂問(wèn)題中,壓裂后日產(chǎn)油量與影響因素之間可能存在非常復(fù)雜的非線(xiàn)性關(guān)系,而且受多因素同時(shí)影響。因此,需要探究更加適合的方法來(lái)進(jìn)一步評(píng)價(jià)各個(gè)特征對(duì)于目標(biāo)變量的影響程度。
基于隨機(jī)森林封裝法的特征重要性評(píng)價(jià)結(jié)果如圖5 所示??傮w來(lái)看,壓裂后日產(chǎn)油量受壓裂前各項(xiàng)生產(chǎn)因素影響最大,其次是地質(zhì)和工程因素。這意味著對(duì)采油井生產(chǎn)情況進(jìn)行實(shí)時(shí)監(jiān)測(cè),并依據(jù)動(dòng)態(tài)指標(biāo)合理地選擇壓裂井和目的層對(duì)于措施效果更為關(guān)鍵。另外,加砂量和壓裂液體積也對(duì)壓裂后日產(chǎn)油量起了重要作用。這是因?yàn)檫@2個(gè)因素與形成裂縫的長(zhǎng)度和導(dǎo)流能力有一定的關(guān)系。
圖5 各特征重要程度(Gini指數(shù)法)Fig.5 Feature importance based on Gini index
分析模型R2可知(圖6),模型的擬合精度在特征數(shù)量為6 后逐漸平緩;特征數(shù)量達(dá)到15 時(shí),模型不但獲得了較高的精度,且達(dá)到了非常低的標(biāo)準(zhǔn)差,即穩(wěn)定的性能。因此,按照重要程度選取前15個(gè)特征作為3種常規(guī)機(jī)器學(xué)習(xí)算法的輸入變量進(jìn)行計(jì)算。
圖6 交叉驗(yàn)證中模型R2平均值與標(biāo)準(zhǔn)差隨特征數(shù)量變化關(guān)系Fig.6 Relationship between mean value and standard deviation of R2 with feature number in cross validation
支持向量回歸、神經(jīng)網(wǎng)絡(luò)、隨機(jī)森林這3種常規(guī)機(jī)器學(xué)習(xí)算法與自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型的預(yù)測(cè)性能對(duì)比結(jié)果(表1)顯示,各種算法建立的模型在測(cè)試集上性能由好到差依次為自動(dòng)機(jī)器學(xué)習(xí)、隨機(jī)森林、神經(jīng)網(wǎng)絡(luò)和支持向量回歸。隨機(jī)森林雖然在測(cè)試集上也展現(xiàn)了較好的性能,但是其在訓(xùn)練集上的R2過(guò)高,說(shuō)明該模型存在著較為嚴(yán)重的過(guò)擬合現(xiàn)象,模型的泛化能力較弱。從圖7 可以直觀地看出,自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型在訓(xùn)練集和測(cè)試集上的預(yù)測(cè)結(jié)果均較好。自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型在測(cè)試集上的R2為0.695,均方誤差為7.81,預(yù)測(cè)結(jié)果相對(duì)誤差的平均值為18.96%,標(biāo)準(zhǔn)差為16.97%,好于其他算法,因此優(yōu)選其為最佳的壓裂效果預(yù)測(cè)模型。為了對(duì)比該模型在現(xiàn)有預(yù)測(cè)水平上的提升效果,從采油與地面工程運(yùn)行管理系統(tǒng)中提取壓裂方案,查詢(xún)壓裂后日產(chǎn)油量預(yù)測(cè)值,計(jì)算實(shí)際壓裂后日產(chǎn)油量和方案預(yù)測(cè)值之間的相對(duì)誤差,統(tǒng)計(jì)得出測(cè)試集的方案預(yù)測(cè)相對(duì)誤差平均值為76.49%,標(biāo)準(zhǔn)差為78.52%。對(duì)比可知,本研究建立的壓裂效果預(yù)測(cè)模型可在目前水平上將預(yù)測(cè)相對(duì)誤差的平均值降低57.53%,標(biāo)準(zhǔn)差降低61.55%,預(yù)測(cè)精度與穩(wěn)定性均大幅提高。最優(yōu)自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型中各基礎(chǔ)預(yù)測(cè)器參數(shù)信息見(jiàn)表2。
表1 各種算法在數(shù)據(jù)集上的預(yù)測(cè)性能Table1 Prediction performance of algorithms on data set
圖7 自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型的預(yù)測(cè)值與真實(shí)值對(duì)比Fig.7 Comparison between predicted values of automatic machine learning prediction model and real values
表2 最優(yōu)自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型中各基礎(chǔ)預(yù)測(cè)器信息Table2 Information of base regressors in optimal automatic machine learning model
利用本研究建立的模型可大幅提高壓裂后日產(chǎn)油量預(yù)測(cè)精度,進(jìn)一步輔助壓裂方案的制定與優(yōu)化,最大程度提高壓裂投資產(chǎn)生的經(jīng)濟(jì)效益。具體經(jīng)濟(jì)效益測(cè)算過(guò)程如下:①選取8口已壓裂井,利用自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型對(duì)壓裂參數(shù)進(jìn)行重新優(yōu)化,得到每口井的最優(yōu)壓裂方案參數(shù)與壓裂效果預(yù)測(cè)值。②利用上述模型在測(cè)試集上的相對(duì)誤差平均值來(lái)估算每口井措施效果的范圍,并與原方案的實(shí)際效果進(jìn)行對(duì)比,求取參數(shù)優(yōu)化后相比于原方案增加的初期日增油量。③壓裂有效期選取4 個(gè)月,假設(shè)模型優(yōu)化方案比原方案額外日增油量在壓裂有效期內(nèi)按指數(shù)關(guān)系遞減(圖8),有效期末額外日增油量趨于0,再通過(guò)求取積分估算有效期內(nèi)總的額外增油量。④選取油價(jià)為70 美元/bbl,匯率為6.37,通過(guò)計(jì)算即可得到模型優(yōu)化方案相比原方案的額外經(jīng)濟(jì)效益。從模型優(yōu)化增加經(jīng)濟(jì)效益測(cè)算結(jié)果(表3)可以看出,經(jīng)過(guò)模型優(yōu)化壓裂參數(shù)后,選取的8 口井相比原方案平均可額外增加經(jīng)濟(jì)效益3.2×104~27.4×104元/井次,平均為16.1×104元/井次。額外總增油量的表達(dá)式為:
表3 模型優(yōu)化增加經(jīng)濟(jì)效益測(cè)算結(jié)果Table3 Economic benefits increased by model optimization
圖8 自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型優(yōu)化后壓裂方案較原方案額外增油量示意Fig.8 Extra oil increment of optimal scheme compared with the original scheme
為了進(jìn)一步驗(yàn)證模型的精度與現(xiàn)場(chǎng)應(yīng)用的可行性,利用上述建立的自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型對(duì)4口采油井進(jìn)行壓裂方案的設(shè)計(jì)與優(yōu)化。
監(jiān)測(cè)N23 區(qū)塊采油井日產(chǎn)液量、產(chǎn)液剖面等各項(xiàng)動(dòng)態(tài)指標(biāo)變化情況,結(jié)合井組注采關(guān)系、連通關(guān)系等地質(zhì)條件與地層能量、剩余油飽和度等開(kāi)發(fā)參數(shù),選定4 口采油井開(kāi)展壓裂措施。壓裂方案設(shè)計(jì)優(yōu)化涉及地質(zhì)和工程2 個(gè)方面的參數(shù)。首先,模型考慮的各項(xiàng)地質(zhì)因素主要受壓裂目的層位的影響。分析各采油井的生產(chǎn)層位、產(chǎn)液剖面和連通情況等信息,每口采油井初選3 個(gè)目的層進(jìn)行排列組合。壓裂工程方面選取壓裂液類(lèi)型和加砂量這2個(gè)對(duì)模型效果影響較大的參數(shù)。加砂量選取12,15,18,21,24 這5 個(gè)數(shù)值,壓裂液類(lèi)型則將胍膠壓裂液、締合壓裂液和其他壓裂液作為待選。將每口井的所有選層、加砂量及壓裂液類(lèi)型進(jìn)行逐一組合,可得到90 個(gè)壓裂方案,詳見(jiàn)表4。將所有壓裂方案參數(shù)輸入自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型進(jìn)行計(jì)算,優(yōu)選出各采油井的最佳方案如表4 所示。2019 年6 月開(kāi)始,按最優(yōu)方案對(duì)這4 口采油井實(shí)施了壓裂改造,實(shí)際效果(表5)表明,壓裂后采油井的日產(chǎn)油量和模型預(yù)測(cè)值非常接近,本文建立的自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型對(duì)實(shí)際礦場(chǎng)的預(yù)測(cè)性能較好。該自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型對(duì)大慶油田N23區(qū)塊的水力壓裂設(shè)計(jì)與優(yōu)化具有指導(dǎo)意義,模型經(jīng)過(guò)簡(jiǎn)單的參數(shù)修改便可預(yù)測(cè)其他開(kāi)發(fā)區(qū)塊,簡(jiǎn)單易用,推廣性強(qiáng)。
表4 壓裂參數(shù)優(yōu)化情況Table4 Optimization results of hydraulic fracturing parameters
表5 最優(yōu)壓裂方案效果預(yù)測(cè)及施工后實(shí)際值Table5 Effect prediction of optimal hydraulic fracturing scheme and actual values after hydraulic fracturing
依據(jù)礦場(chǎng)壓裂統(tǒng)計(jì)數(shù)據(jù)分析了大慶油田N23區(qū)塊的采油井壓裂增產(chǎn)情況,采用自動(dòng)機(jī)器學(xué)習(xí)建立了一個(gè)精度高、穩(wěn)定性強(qiáng)的采油井壓裂效果預(yù)測(cè)模型。各項(xiàng)統(tǒng)計(jì)結(jié)果表明,采油井水力壓裂的各影響因素與壓裂后日產(chǎn)油量存在定性關(guān)系;利用封裝法進(jìn)行了特征重要性評(píng)估,得到對(duì)模型影響較大的特征為:壓裂前日產(chǎn)油量、含水率、加砂量等。利用自動(dòng)機(jī)器學(xué)習(xí)建立的預(yù)測(cè)模型精度高于支持向量回歸、神經(jīng)網(wǎng)絡(luò)和隨機(jī)森林這3種常見(jiàn)機(jī)器學(xué)習(xí)算法,模型在測(cè)試集上的精度高達(dá)0.695,預(yù)測(cè)相對(duì)誤差僅為18.96%,比目前降低了57.53%。經(jīng)過(guò)模型優(yōu)化的壓裂方案較原方案平均可額外增加經(jīng)濟(jì)效益約3.2×104~27.4×104元/井次;另外,利用自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型對(duì)N23 區(qū)塊采油井壓裂增產(chǎn)方案進(jìn)行了優(yōu)化,結(jié)果顯示,模型計(jì)算出的最優(yōu)參數(shù)組合方案實(shí)際效果較好,而且現(xiàn)場(chǎng)的實(shí)施效果與模型預(yù)測(cè)值非常相近。自動(dòng)機(jī)器學(xué)習(xí)預(yù)測(cè)模型對(duì)N23區(qū)塊壓裂措施參數(shù)設(shè)計(jì)具有指導(dǎo)作用,現(xiàn)場(chǎng)可行性高,模型推廣性強(qiáng)。
符號(hào)解釋
a,b——回歸公式系數(shù);
C'——支持向量回歸算法中的懲罰因子;
dp(Dfrac,Dj)——目標(biāo)數(shù)據(jù)集與數(shù)據(jù)庫(kù)中第j個(gè)數(shù)據(jù)集之間的L1范數(shù);
Dfrac——目標(biāo)數(shù)據(jù)集;
Dj——數(shù)據(jù)庫(kù)中第j個(gè)數(shù)據(jù)集;
Ein——未包含正則化項(xiàng)的訓(xùn)練樣本誤差;
i——元特征個(gè)數(shù);
j——數(shù)據(jù)集個(gè)數(shù);
k——交叉驗(yàn)證的折數(shù);
kernel——支持向量回歸算法中的核函數(shù)類(lèi)型;
L——損失函數(shù);
L(z)——不敏感損失函數(shù);
——目標(biāo)數(shù)據(jù)集中第i個(gè)元特征值;
——第j個(gè)數(shù)據(jù)集中第i個(gè)元特征值;
max_features——random forest 算法中尋找最佳分割時(shí)要考慮的特征數(shù)量;
max_depth——random forest算法中樹(shù)的最大深度;
min_samples_split——random forest 算法中拆分內(nèi)部節(jié)點(diǎn)所需的最少樣本數(shù);
MSE——均方誤差;
n——樣本的數(shù)量;
n_estimators——random forest算法中決策樹(shù)的數(shù)量;
n_iter——ard_regression算法中的最大迭代次數(shù);
nω——待學(xué)習(xí)參數(shù)的數(shù)量;
R2——決定系數(shù);
t——壓裂后生產(chǎn)天數(shù),d;
tmax——壓裂有效期,d;
V總增油量——額外總增油量,t;
xi——第i個(gè)樣本特征在標(biāo)準(zhǔn)化前的數(shù)值;
X測(cè)試集——測(cè)試集特征;
X訓(xùn)練集——訓(xùn)練集特征;
——所有樣本目標(biāo)變量的平均值;
Yi——第i個(gè)樣本目標(biāo)變量的實(shí)際值;
——第i個(gè)樣本目標(biāo)變量的模型預(yù)測(cè)值;
Y訓(xùn)練集——訓(xùn)練集目標(biāo)變量值;
zi——第i個(gè)樣本特征在標(biāo)準(zhǔn)化后的數(shù)值;
α1,α2,λ1,λ2——ard_regression算法中的模型系數(shù);
ε——不敏感損失系數(shù);
λ——正則化參數(shù);
μ——所有樣本的平均值;
σ——所有樣本的標(biāo)準(zhǔn)差;
ωi——第i個(gè)網(wǎng)絡(luò)層待學(xué)習(xí)參數(shù)。