楊順輝,郭珍珍,張洪寶,高明亮
1(中國石油化工股份有限公司 石油工程技術(shù)研究院,北京 100101)
2(西南石油大學(xué) 計算機(jī)科學(xué)學(xué)院,成都 610500)
3(西北民族大學(xué) 電氣工程學(xué)院,蘭州 730124)
近代工業(yè)革命后,能源成為了人類社會生活中賴以生存生活的重要構(gòu)成部分.石油資源被稱為“工業(yè)的血液”[1],不僅是一種不可再生的資源,更是國家生存和發(fā)展不可或缺的戰(zhàn)略資源,是當(dāng)今世界各國的經(jīng)濟(jì)命脈.石油的形成過程極其復(fù)雜緩慢,不可再生的石油資源就變得十分關(guān)鍵.伴隨著經(jīng)濟(jì)社會的快速發(fā)展,帶動著自然資源的消耗也逐年增大,對石油、天然氣等自然資源的使用急劇增長[2].全球從陸地到海洋,從淺層到中層、再到深層的勘探來滿足日常的生活需求.經(jīng)過長達(dá)多年來的石油勘探,我國在淺層和中層的石油儲量已經(jīng)基本勘探清楚,剩下不多井正在開采.然而,這已遠(yuǎn)遠(yuǎn)無法滿足社會需要[3].同時,由于實際鉆井過程施工情況復(fù)雜,工況變化多樣,獲取的錄井參數(shù)環(huán)境呈現(xiàn)出明顯的非平穩(wěn)性,并且采用人為的方式獲取錄井參數(shù)成本昂貴,影響因素極多難以考慮完全,鉆井效率受到嚴(yán)重的影響.因此,如何提高鉆井效率、提升鉆井速度是當(dāng)今國內(nèi)外研究的熱點課題[4].
在鉆井工程中,鉆頭鉆破巖石加深鉆孔的速度稱為機(jī)械鉆速.機(jī)械鉆速是反映鉆井效率的一個關(guān)鍵指標(biāo),受到鉆頭尺寸、鉆井參數(shù)、巖石巖性等諸多因素的影響和制約[5],它與開采成本、開采時間有著直接關(guān)聯(lián)[4].鉆速預(yù)測對于鉆井參數(shù)的確定和鉆井成本的優(yōu)化是必要的.鉆井機(jī)械鉆速的準(zhǔn)確預(yù)測,能夠有效地估算鉆井周期,從而根據(jù)預(yù)測結(jié)果優(yōu)化配置資源,可以減少鉆井開采成本、增大石油產(chǎn)量,這對于企業(yè)降低鉆井施工成本、減少鉆井風(fēng)險,對于國家能夠解決能源緊缺問題等有著重大意義.
隨著大數(shù)據(jù)技術(shù)的飛速發(fā)展以及數(shù)據(jù)規(guī)模的急速增長,采用機(jī)器學(xué)習(xí)的方法對數(shù)據(jù)進(jìn)行挖掘并應(yīng)用到鉆井過程當(dāng)中,與基于物理模型的方法相比,機(jī)械鉆速的預(yù)測精度有著顯著的提高.傳統(tǒng)的機(jī)器學(xué)習(xí)方法通常建立于數(shù)據(jù)獨立同分布這一假設(shè)之上[6],然而在實際鉆井過程中,不同的油田信息具有明顯不同的模式,現(xiàn)有的機(jī)器學(xué)習(xí)方法使用已鉆井?dāng)?shù)據(jù)預(yù)測新油田時,預(yù)測精度顯著下降,如何高效地進(jìn)行機(jī)械鉆速預(yù)測并將其應(yīng)用于后續(xù)各種油田處理在石油領(lǐng)域中面臨著長期的挑戰(zhàn).優(yōu)秀的網(wǎng)絡(luò)模型皆是基于大量標(biāo)注數(shù)據(jù)集(如COCO、ImageNet)訓(xùn)練得到,然而實際應(yīng)用中高質(zhì)量且具有標(biāo)簽的大型井下數(shù)據(jù)集資源匱乏,難以支撐優(yōu)秀網(wǎng)絡(luò)模型,可能產(chǎn)生嚴(yán)重的過擬合問題.遷移學(xué)習(xí)不受訓(xùn)練數(shù)據(jù)集與目標(biāo)數(shù)據(jù)之間關(guān)系的約束,能夠根據(jù)不同任務(wù)之間的相似性,實現(xiàn)源域的已有知識遷移,可有效解決過擬合問題.目前,遷移學(xué)習(xí)方法已經(jīng)在鉆井工程中的巖性識別、鉆頭選擇、異常工況檢測等多種場景得到了廣泛的應(yīng)用[7].針對鉆井過程中機(jī)械鉆速預(yù)測這一回歸問題,本文以真實歷史鉆井?dāng)?shù)據(jù)鉆頭尺寸、鉆壓等字段為特征,以機(jī)械鉆速為標(biāo)簽,采用將遷移學(xué)習(xí)與物理模型相結(jié)合的方法,提出一種基于集成遷移學(xué)習(xí)的機(jī)械鉆速預(yù)測模型.實踐中,采用真實鉆井?dāng)?shù)據(jù),嘗試了包括linear regression (線性回歸)[8]、傳統(tǒng)的AdaBoost 回歸、只有目標(biāo)域數(shù)據(jù)進(jìn)行訓(xùn)練和幾種先進(jìn)的基于特征與基于實例的遷移學(xué)習(xí)方法[9]等建模方法,采用多種回歸評價指標(biāo)衡量模型的性能,證明了本文提出的方法進(jìn)行跨領(lǐng)域機(jī)械鉆速預(yù)測的有效性,鉆速預(yù)測精度也得到顯著提高.
在鉆井過程中,提速提效是永恒不變的追求目標(biāo).機(jī)械鉆速(ROP)的準(zhǔn)確預(yù)測可顯著縮短鉆井作業(yè)時間,節(jié)約鉆井成本.機(jī)械鉆速受到多種因素的影響和制約,有可控因素和不可控因素[10].可控因素是指通過一定的設(shè)備和技術(shù)手段可進(jìn)行人為調(diào)節(jié)的因素,如地面機(jī)泵設(shè)備、鉆頭尺寸、鉆井液性質(zhì)、鉆壓、轉(zhuǎn)速.不可控因素是指客觀存在的因素,如所鉆的地層巖性、儲層埋藏深度以及地層壓力等.針對機(jī)械鉆速預(yù)測,其研究進(jìn)展大體可以分為3 個階段: 用現(xiàn)場數(shù)據(jù)直接統(tǒng)計出鉆速方程,考慮所鉆地層性質(zhì)和鉆頭結(jié)構(gòu)的鉆速方程,用計算機(jī)仿真方法來預(yù)測機(jī)械鉆速.
國內(nèi)外學(xué)者都提出了各自與地層特性和鉆頭結(jié)構(gòu)性質(zhì)相關(guān)的鉆速方程.1974年,Bourgoyne 等[11]將機(jī)械鉆速視為鉆頭壓力、轉(zhuǎn)速等8 個參數(shù)的函數(shù),但該方法存在局限性,只適用于牙輪鉆頭情況.2008年,Rastegar 等[12]在前人的基礎(chǔ)上提出改進(jìn)的ROP 預(yù)測模型,同時考慮了鉆頭水力參數(shù)、鉆頭的磨損情況和巖石強(qiáng)度等因素的影響.傳統(tǒng)的物理建模方法給機(jī)械鉆速預(yù)測帶來了可見的影響,但方法大多根據(jù)專業(yè)知識經(jīng)驗,建模方法高度依賴于巖石巖性,模型泛化性能不佳.且由于校準(zhǔn)需要進(jìn)行不斷變化,從而限制了其函數(shù)的形式.隨著大數(shù)據(jù)和機(jī)器學(xué)習(xí)的迅速發(fā)展,很多學(xué)者開始將機(jī)器學(xué)習(xí)方法應(yīng)用到機(jī)械鉆速預(yù)測方面.2004年,Rommetveit 等[13]提出了一種新型的鉆井自動化模擬系統(tǒng),通過對比實測數(shù)據(jù)和預(yù)測數(shù)據(jù)得到鉆井過程中的實時診斷結(jié)果,但是該系統(tǒng)還處在功能設(shè)想階段,目前尚未實現(xiàn)全部功能,且考慮的ROP 影響因素較少; 2008年,Bahari 等[14]基于文獻(xiàn)[11]提出的模型井結(jié)合遺傳算法計算了機(jī)械鉆速預(yù)測模型參數(shù),但該研究只對ROP 進(jìn)行了計算預(yù)測,并沒有作進(jìn)一步的優(yōu)化分析.在數(shù)據(jù)量較充足、數(shù)據(jù)質(zhì)量較高的條件下,采用多元回歸[15]等機(jī)器學(xué)習(xí)方法構(gòu)建的預(yù)測模型的預(yù)測準(zhǔn)確度較高,能夠在當(dāng)前設(shè)備和資源條件下準(zhǔn)確找尋影響機(jī)械鉆速的若干個核心因素.
傳統(tǒng)的機(jī)器學(xué)習(xí)方法大多借助監(jiān)督學(xué)習(xí)的推動,依賴于已有數(shù)據(jù),即需要足夠多的標(biāo)注好的訓(xùn)練樣本進(jìn)行學(xué)習(xí),在數(shù)據(jù)樣本稀少的場景下,性能會顯著下降.對新領(lǐng)域執(zhí)行機(jī)器學(xué)習(xí)常遇到標(biāo)注稀缺問題,獲取大量標(biāo)注數(shù)據(jù)成本較高且耗時,嚴(yán)重制約了經(jīng)典監(jiān)督學(xué)習(xí)方法的效果.同時,伴隨著多領(lǐng)域、多媒體大數(shù)據(jù)的不斷涌現(xiàn),如何研究自動方法對其進(jìn)行跨領(lǐng)域分類和組織變得愈加重要[16].在機(jī)器學(xué)習(xí)的領(lǐng)域中,已經(jīng)開發(fā)了許多用于遷移學(xué)習(xí)的方法,通過將在源數(shù)據(jù)上的預(yù)訓(xùn)練模型遷移到感興趣的目標(biāo)數(shù)據(jù)上,遷移學(xué)習(xí)思想被證明是更具有普遍有用的.遷移學(xué)習(xí)放寬了經(jīng)典監(jiān)督學(xué)習(xí)中關(guān)于訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)服從獨立同分布這一基本假設(shè),將相似但具有不同分布的源域和目標(biāo)域數(shù)據(jù)映射到同一個特征空間,盡可能地保留映射后數(shù)據(jù)的屬性同時縮小數(shù)據(jù)的維度,最小化兩個領(lǐng)域的概率分布差異.當(dāng)源域和目標(biāo)域數(shù)據(jù)來自不同的分布時,通常采用領(lǐng)域分布自適應(yīng)(domain adaptive,DA)算法[17]來彌補分布差異.
近年來,深度學(xué)習(xí)方法在計算機(jī)視覺中取得了令人矚目的成功.劉勝娃等[18]結(jié)合人工神經(jīng)網(wǎng)絡(luò)技術(shù)領(lǐng)域知識,提出一種基于人工神經(jīng)網(wǎng)絡(luò)的定向井機(jī)械鉆速預(yù)測模型,該模型在數(shù)據(jù)量充足的情況下,預(yù)測準(zhǔn)確性較高.文獻(xiàn)[19]通過建立渤中區(qū)域深層機(jī)械鉆速預(yù)測神經(jīng)網(wǎng)絡(luò)模型,能夠在當(dāng)前特定區(qū)域條件下準(zhǔn)確找尋影響機(jī)械鉆速的若干個核心因素.目前使用的深度網(wǎng)絡(luò)模型假設(shè)訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)為相同的分布,然而在實際鉆井過程中,訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)的分布往往并不相同,高質(zhì)量且具有標(biāo)簽的大型井下數(shù)據(jù)集資源匱乏,難以支撐優(yōu)秀的深度網(wǎng)絡(luò)模型,這導(dǎo)致訓(xùn)練得到的模型魯棒性能較差.遷移學(xué)習(xí)不受源域數(shù)據(jù)與目標(biāo)數(shù)據(jù)之間關(guān)系的約束[9],對于缺乏標(biāo)記數(shù)據(jù)的目標(biāo)任務(wù),有很強(qiáng)的動機(jī)來構(gòu)建有效的學(xué)習(xí)者,利用來自相關(guān)源域的豐富標(biāo)記數(shù)據(jù),將已訓(xùn)練好的模型參數(shù)遷移到新模型進(jìn)行訓(xùn)練.研究表明,先前對象的認(rèn)識與新對象的相似性和聯(lián)系,有助于新對象的學(xué)習(xí).在特定數(shù)據(jù)集或任務(wù)上訓(xùn)練的CNN 模型可以針對不同領(lǐng)域的新任務(wù)進(jìn)行微調(diào).
隨著深度學(xué)習(xí)在各個領(lǐng)域的廣泛應(yīng)用,大量的深度遷移學(xué)習(xí)[20]方法被提出.深度遷移學(xué)習(xí)(deep transfer learning,DTL)通過將深度學(xué)習(xí)與遷移學(xué)習(xí)相結(jié)合,將輔助領(lǐng)域訓(xùn)練的深度模型重用于目標(biāo)領(lǐng)域,能夠有效地降低模型的訓(xùn)練時間,使現(xiàn)有數(shù)據(jù)得到更充分的利用,提高深度網(wǎng)絡(luò)在實際應(yīng)用中的泛化能力.對比傳統(tǒng)的非深度遷移學(xué)習(xí)方法,深度遷移學(xué)習(xí)方法在不同的學(xué)習(xí)任務(wù)上得到一定的提升.神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu)基于豐富標(biāo)記的源域數(shù)據(jù)和標(biāo)注缺失的目標(biāo)域數(shù)據(jù)進(jìn)行訓(xùn)練,根據(jù)目標(biāo)任務(wù)進(jìn)行結(jié)構(gòu)調(diào)整,經(jīng)過目標(biāo)數(shù)據(jù)的再次訓(xùn)練,形成最終的目標(biāo)網(wǎng)絡(luò),能夠有效地促進(jìn)特征的出現(xiàn).若此目標(biāo)網(wǎng)絡(luò)優(yōu)于未經(jīng)遷移的網(wǎng)絡(luò),則該遷移為正遷移,反之則為負(fù)遷移[7].
在遷移學(xué)習(xí)當(dāng)中,包含兩個基本的概念,分別是領(lǐng)域(domain)和任務(wù)(task).領(lǐng)域D是進(jìn)行知識學(xué)習(xí)的主體,主要有數(shù)據(jù)以及生成這些數(shù)據(jù)的概率分布P所組成[21].在遷移學(xué)習(xí)中對應(yīng)兩個基本的領(lǐng)域,分別是源領(lǐng)域(source domain,Ds)和目標(biāo)領(lǐng)域(target domain,DT).源領(lǐng)域是指有知識、有豐富數(shù)據(jù)標(biāo)注的領(lǐng)域,屬于遷移對象.目標(biāo)領(lǐng)域就是需要最終賦予知識的對象,一般來說,目標(biāo)領(lǐng)域當(dāng)中大部分都是未標(biāo)注數(shù)據(jù).任務(wù)T指的是學(xué)習(xí)的目標(biāo),由標(biāo)簽和標(biāo)簽對應(yīng)的函數(shù)組成.遷移學(xué)習(xí)旨在從一個或多個源領(lǐng)域中提取知識,并將知識應(yīng)用于目標(biāo)任務(wù)當(dāng)中.
給定一個有標(biāo)簽的源域數(shù)據(jù)Ds=和一個無標(biāo)簽的目標(biāo)域DT=.兩個領(lǐng)域的數(shù)據(jù)概率分布P(xs)和P(xt)不同,即P(xs)≠P(xt).遷移學(xué)習(xí)的目標(biāo)就是要借助源域DS的先驗知識來學(xué)習(xí)目標(biāo)領(lǐng)域DT的知識(標(biāo)簽)[22].
假定源域和目標(biāo)域的特征空間和樣本空間分別相同,即XS=XT且YS=YT,但兩個領(lǐng)域的特征分布不同,即存在條件概率分布不同QS(ys|xs)≠Q(mào)T(yt|xt)或者邊緣分布不同PS(xs)≠PT(xt).領(lǐng)域自適應(yīng)就是源域和目標(biāo)域不一樣,具體來說,兩個領(lǐng)域的數(shù)據(jù)概率分布不同,但是兩個領(lǐng)域共享相同的特征和類別,其維度是一致的[17].此刻,遷移學(xué)習(xí)的目標(biāo)就是利用有標(biāo)記的數(shù)據(jù)來學(xué)習(xí)一個分類器f來預(yù)測目標(biāo)領(lǐng)域xt.
集成學(xué)習(xí)是通過將許多弱分類器進(jìn)行集成提升為強(qiáng)學(xué)習(xí)器的過程[23].一般來說,用得比較多的是同質(zhì)學(xué)習(xí)器,即同質(zhì)集成中的個體學(xué)習(xí)器屬于同種類型.同質(zhì)學(xué)習(xí)器根據(jù)基學(xué)習(xí)器之間是否存在依賴關(guān)系分為Boosting 系列算法[24]和隨機(jī)森林系列算法.AdaBoost 作為提升算法(Boosting)的一種,根據(jù)基學(xué)習(xí)器的學(xué)習(xí)誤差率來更新訓(xùn)練樣本的權(quán)重值,增加學(xué)習(xí)誤差率高的訓(xùn)練樣本權(quán)重,再基于調(diào)整樣本權(quán)重后的訓(xùn)練集訓(xùn)練基學(xué)習(xí)器,不斷調(diào)整基學(xué)習(xí)器的權(quán)重,將這些弱學(xué)習(xí)器進(jìn)行線性組合形成一個強(qiáng)學(xué)習(xí)器,進(jìn)而達(dá)到提升整體準(zhǔn)確率的效果.算法的性能通過“少數(shù)服從多數(shù)”這一方法進(jìn)行投票決出結(jié)果.隨著集成中基學(xué)習(xí)器數(shù)目的不斷增加,集成的錯誤率將指數(shù)級下降,最終將趨于0.
基于Boosting 的遷移學(xué)習(xí)算法,也稱為TrAdaBoost算法,是由Dai 等[25]提出的一種典型遷移學(xué)習(xí)算法.TrAda-Boost 算法假設(shè)源領(lǐng)域和目標(biāo)域數(shù)據(jù)具有完全相同的特征與標(biāo)簽空間,但兩者的數(shù)據(jù)分布不同.將源域數(shù)據(jù)與部分目標(biāo)域數(shù)據(jù)整合得到訓(xùn)練實例,由于源域與目標(biāo)域之間的分布差異,源域數(shù)據(jù)樣本可能會對目標(biāo)任務(wù)的學(xué)習(xí)有利,有可能沒有,甚至有可能有害.TrAdaBoost 算法通過對訓(xùn)練實例賦予權(quán)重,增加被錯誤分類的目標(biāo)實例的相對權(quán)重[26].當(dāng)源實例被錯誤分類時,降低其權(quán)重值,具體來說,就是給數(shù)據(jù)乘上一個0 到1 的值.在下一次分類,被錯誤分類的樣本對分類模型的影響就會比上一次迭代小一些.通過這種方式,TrAdaBoost 旨在識別和利用與目標(biāo)數(shù)據(jù)最相似的源實例,而忽略那些不相似的實例.TrAdaBoost 算法模型具體描述如圖1.
圖1 TrAdaBoost 模型架構(gòu)圖
將鉆井?dāng)?shù)據(jù)看作連續(xù)的,在統(tǒng)計學(xué)上稱為回歸問題.結(jié)合TrAdaBoost 的原理與傳統(tǒng)的回歸算法產(chǎn)生了新的回歸算法TrAdaBoostR2[27].作為一種基于樣本實例的遷移學(xué)習(xí)方法,TrAdaBoostR2 對每個訓(xùn)練實例進(jìn)行加權(quán),確保遷移的源域知識與目標(biāo)任務(wù)相關(guān).然而,當(dāng)源域樣本數(shù)遠(yuǎn)大于目標(biāo)域時,目標(biāo)實例的總權(quán)重可能需要多次迭代才能接近源實例的總權(quán)重,此時目標(biāo)數(shù)據(jù)的權(quán)重可能會嚴(yán)重偏斜,那些異常值或與源數(shù)據(jù)最不相似的目標(biāo)實例可能會代表大部分權(quán)重[28].其次,即使是那些代表目標(biāo)概念的源實例,它們的權(quán)重最終也趨于零.
基于Bingham (1965)提出的基本ROP 模型[29],已知轉(zhuǎn)速(ROP)、鉆頭壓力(RPM)和鉆頭直徑(Db)等參數(shù),可以通過式(1)計算得到機(jī)械鉆速的預(yù)測值.其中,α 和γ 為巖性模型的經(jīng)驗參數(shù):
物理模型雖然源自鉆井物理原理,但是涉及經(jīng)驗參數(shù)和擬合函數(shù)的約束,這常常會導(dǎo)致較差的結(jié)果.為了克服上述缺點,選擇基于樣本實例遷移方法TrAda-Boost.R2 作為基礎(chǔ),提出一種帶物理模型約束的集成遷移學(xué)習(xí)方法,分兩個階段對樣本實例進(jìn)行調(diào)整.算法在第一階段,源實例的權(quán)重逐漸向下調(diào)整,直到達(dá)到某一個值(該值采用交叉驗證確定得到); 在第二階段,首先對所有源實例的權(quán)重凍結(jié),而目標(biāo)實例的權(quán)重在Ada-Boost.R2 中被正常更新,只有在第2 階段生成的假設(shè)被存儲并用于確定結(jié)果模型的輸出.
假定存在n個源域訓(xùn)練數(shù)據(jù)DS1,···,DSn,m個用于訓(xùn)練的目標(biāo)域數(shù)據(jù)DT1,···,DTm,遷移學(xué)習(xí)的目的就是充分利用有標(biāo)記的源域數(shù)據(jù)來提高目標(biāo)分類器fT的學(xué)習(xí)效率.首先,定義第h次迭代訓(xùn)練實例的權(quán)重向量,其中,wS表示源域數(shù)據(jù)樣本實例的權(quán)重,表示目標(biāo)域數(shù)據(jù)用來訓(xùn)練的m個樣本權(quán)重向量.初始化權(quán)重為:
清空候選基學(xué)習(xí)器并對現(xiàn)有的權(quán)重進(jìn)行規(guī)范化,選擇基學(xué)習(xí)器ft對訓(xùn)練集Dtrain=DS∪DT-train進(jìn)行訓(xùn)練.為了保證模型不會因為目標(biāo)實例劃分成訓(xùn)練集和測試集而造成誤差,采用十折交叉驗證.將目標(biāo)領(lǐng)域數(shù)據(jù)集隨機(jī)劃分10 份,隨機(jī)選擇其中一份作為測試集,剩下的9 份與源實例進(jìn)行整合作為訓(xùn)練集進(jìn)行實驗,依次進(jìn)行10 組實驗.同時,采用Bingham 提出的基本ROP 模型對算法進(jìn)行物理約束,采用式(3)計算基學(xué)習(xí)器ft在DT-test上的誤差值,選取平均絕對誤差最小的用于后續(xù)模型.
其中,(ytp)j表示采用物理模型(即式(1))計算得到的ROP值,ytj表示目標(biāo)域數(shù)據(jù)的真實標(biāo)簽值,(fti)k表示第i個基分類器進(jìn)行k折交叉驗證預(yù)測得到的ROP值.根據(jù)誤差估計來更新訓(xùn)練樣本實例的權(quán)重值,誤差越大,其權(quán)重設(shè)置越小.對其進(jìn)行S次迭代,并對權(quán)重進(jìn)行更新,Zt是一個歸一化的常量,使得最終目標(biāo)實例的權(quán)重為
對源實例的權(quán)重更新采用加權(quán)多數(shù)算法(即WMA[27])機(jī)制,第2 階段首先對所有源實例的權(quán)重凍結(jié),采用Bootstrap 對觀測信息進(jìn)行多次重復(fù)抽樣,建立起充足的樣本,采用基學(xué)習(xí)器對取樣的樣本進(jìn)行預(yù)測,并計算損失函數(shù),采用TrAdaBoostR2 來更新目標(biāo)實例的權(quán)重向量,最后對權(quán)重進(jìn)行規(guī)范化處理,生成的模型被存儲并用于確定結(jié)果模型的輸出.
本文選用決策樹回歸(decision tree regressor)算法[30]作為基學(xué)習(xí)器進(jìn)行集成遷移回歸,對模型參數(shù)進(jìn)行調(diào)整,不斷更新模型權(quán)重.在模型優(yōu)化問題中,通過計算真實值與預(yù)測值的平均絕對誤差(mean absolute error,MAE)作為模型性能的一個衡量指標(biāo).平均絕對誤差作為回歸損失函數(shù)中常用的誤差計算,通過計算預(yù)測值與真實值之間差值絕對值和的均值,可以有效地避免誤差相互抵消,因而可以較準(zhǔn)確地反應(yīng)實際預(yù)測誤差的大小.其中,ypred表示模型最終的預(yù)測值,yi表示相應(yīng)的實際值.
本文提出了一種帶物理模型約束的集成遷移回歸模型來對鉆前機(jī)械鉆速進(jìn)行預(yù)測,算法具體描述如算法1.
算法1.基于集成遷移回歸的機(jī)械鉆速預(yù)測算法輸入: : 源域數(shù)據(jù)集; : 目標(biāo)域數(shù)據(jù)集err DsDT輸出: : 平均絕對誤差MAE 值1. 初始化源域數(shù)據(jù)集,目標(biāo)域數(shù)據(jù)集;fT Ds=[ns×ms]DT=[nT×mT]2. 確定基學(xué)習(xí)器 為決策樹回歸算法;feature=D[:,1:m-1] label=D[:,-1]3. ;4. 采用One-Hot 和Z-score 標(biāo)準(zhǔn)化對數(shù)據(jù)集進(jìn)行預(yù)處理;Dtrain Dtest 5. 將目標(biāo)域劃分為訓(xùn)練集和測試集: 和;nestimatorS K=10 6. 確定最大估計次數(shù),步驟數(shù),;W1i =1/(n+m)7. 初始化權(quán)重為;8. for do D←(Dtrain+Ds)i=1→S 9.10. 清空候選基學(xué)習(xí)器,對現(xiàn)有權(quán)重進(jìn)行規(guī)范化;model 11. 采用TrAdaBoostR2 進(jìn)行訓(xùn)練得到模型;j=1→K 12. for do Dj train=(DS+DT-train)13.14. //對用于訓(xùn)練的目標(biāo)實例進(jìn)行權(quán)重更新Dj trainDT-test 15. 采用TrAdaBoostR2 對進(jìn)行訓(xùn)練并計算的預(yù)測值;16. 采用式(3)計算誤差估計;Wi(j+1)17. 采用式(4)更新權(quán)重;18. 確保目標(biāo)實例總權(quán)重不隨交叉分割而改變;19. end for X 20. 采用Bootstrap 對 進(jìn)行多次重復(fù)采樣;21. 使用基學(xué)習(xí)器更新目標(biāo)實例的權(quán)重向量;Wi 22. 返回樣本權(quán)重 ;23. end for W*24. 得到最優(yōu)的樣本權(quán)重 ;ypred=model(fT,W*)25. 計算目標(biāo)域數(shù)據(jù)的預(yù)測值;26. 采用式(5)計算預(yù)測值與真實值的誤差值 ;err err 27. 返回 .
本論文采用的數(shù)據(jù)集共包括156 次測量,這些測量是從特定區(qū)塊的26 口S 井和3 口WD 井收集得到的歷史鉆井?dāng)?shù)據(jù).實驗數(shù)據(jù)具體描述如表1,每個樣本數(shù)據(jù)包含斜深(depth)、鉆壓(wob)、大鉤載荷(hook_load)、泵壓(spp)、轉(zhuǎn)盤轉(zhuǎn)速(bit_rpm)、泵排量(flow_rate)、扭矩(torque)、地層類型(formation)、鉆頭類型(bit_type)、鉆頭尺寸(bit_size)、巖性類型(lith)等51 個特征參數(shù)和1 個機(jī)械鉆速(ROP)樣本標(biāo)簽.通過對數(shù)據(jù)進(jìn)行預(yù)處理操作,有效保留數(shù)據(jù)樣本在各個維度上的信息分布.同一口井有多次測量,其測量結(jié)果是連續(xù)的,為了保證井口數(shù)據(jù)的完整性和獨立性,將同一鉆井?dāng)?shù)據(jù)作為一個整體,目標(biāo)域共有3 口井?dāng)?shù)據(jù),分別是WD1、WD2 和WD3,采用交叉驗證進(jìn)行模型預(yù)測,通過隨機(jī)選擇目標(biāo)域數(shù)據(jù)將其與源域數(shù)據(jù)整合作為訓(xùn)練集,剩下的鉆井?dāng)?shù)據(jù)作為測試集樣本.
表1 實驗數(shù)據(jù)介紹
本文使用51 個特征參數(shù)作為機(jī)械鉆速預(yù)測模型的輸入,由于數(shù)據(jù)集中的字符類型特征無法被機(jī)器模型學(xué)習(xí),因此在建模時需要將其轉(zhuǎn)化成易于機(jī)器利用的數(shù)值型特征.獨熱編碼(one-hot)用N位狀態(tài)寄存器來對N個狀態(tài)進(jìn)行編碼,從而將類別變量轉(zhuǎn)換為數(shù)值變量,由于one-hot 編碼后的特征值只有0 或1,因此采用該方法不會影響原類別特征在模型中的權(quán)重比例.采用獨熱編碼進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換會將數(shù)據(jù)維度擴(kuò)大,為了進(jìn)一步排除數(shù)據(jù)集維度擴(kuò)大對實驗的影響,再對其采用主成分分析[31]對數(shù)據(jù)維度進(jìn)行降維.同時,利用原始數(shù)據(jù)的均值和標(biāo)準(zhǔn)差對其進(jìn)行標(biāo)準(zhǔn)化,使處理后的數(shù)據(jù)符合標(biāo)準(zhǔn)正態(tài)分布.數(shù)據(jù)的標(biāo)準(zhǔn)化處理能夠有效地提升模型精度,加快訓(xùn)練網(wǎng)絡(luò)的收斂性.Z-Score標(biāo)準(zhǔn)化對樣本數(shù)據(jù)在不同特征維度進(jìn)行伸縮變換,使得不同度量之間的特征具有可比性,并且不會改變原始數(shù)據(jù)的分布,通過將不同量級的數(shù)據(jù)轉(zhuǎn)化為統(tǒng)一量級的Z-Score 分值進(jìn)行比較,能夠在特征提取時有效保留樣本各維度上的信息分布.Z-Score 標(biāo)準(zhǔn)化的數(shù)學(xué)表達(dá)如下,其中 μ,σ表示原始數(shù)據(jù)的均值和標(biāo)準(zhǔn)差.
采用決策樹回歸模型作為該模型的弱學(xué)習(xí)器,同時對模型參數(shù)進(jìn)行調(diào)整,得到具體參數(shù)設(shè)置如表2,其中,n_estimators 表示的是迭代次數(shù),也就是本次實驗中采用弱學(xué)習(xí)器的個數(shù); learning_rate 表示學(xué)習(xí)率;steps 表示的是步驟數(shù); folds 表示的是交叉驗證的折疊次數(shù); max_depth 表示的是每一個學(xué)習(xí)器的最大深度,用于限制回歸樹的節(jié)點數(shù)目.
表2 模型參數(shù)的選擇
對預(yù)處理后的數(shù)據(jù)進(jìn)行模型訓(xùn)練與驗證.根據(jù)領(lǐng)域特點,采用交叉驗證對模型進(jìn)行訓(xùn)練與預(yù)測,通過對目標(biāo)域WD 數(shù)據(jù)中隨機(jī)選擇一份作為測試集,剩下兩口井與源域數(shù)據(jù)整合用于模型訓(xùn)練,使用線性回歸、物理模型作為基線方法,同時,為了驗證該模型的有效性并保證實驗的嚴(yán)謹(jǐn)性,采用傳統(tǒng)的AdaBoostR2 (即沒有采用遷移學(xué)習(xí))模型與基于集成遷移學(xué)習(xí)的機(jī)械鉆速預(yù)測方法進(jìn)行實驗對比.通過對模型參數(shù)的不斷調(diào)節(jié),得到WD1、WD2 和WD3 作為測試集下基于集成遷移學(xué)習(xí)的機(jī)械鉆速方法的MAE 值分別為1.476 04、0.826 26 和0.857 51.本文模型算法的性能在表3 以數(shù)字方式進(jìn)行描述,在圖2 中以圖形方式展示.
表3 該模型算法的性能對比
以WD3 作為測試集為例,得到該實驗設(shè)置下線性回歸、物理模型、AdaBoostR2 和本文提出算法預(yù)測值與真實ROP 值的對比圖.很明顯,從圖2 中可以看到,基于集成遷移學(xué)習(xí)的機(jī)械鉆速模型大大降低了模型的誤差值.與傳統(tǒng)的AdaBoostR2 方法相比,基于集成遷移學(xué)習(xí)的機(jī)械鉆速預(yù)測方法在對峰值進(jìn)行預(yù)測時更接近真實值.具體來說,本文方法在3 種實驗設(shè)置下的性能分別提升0.877 36、-0.077 11 和0.040 2.同時,該模型下的MSE 值也得到了提升,較傳統(tǒng)的Ada-BoostR2 模型MSE 值降低了3.003 6.
圖2 WD3 做測試集下預(yù)測值與真實值對比圖
對實驗數(shù)據(jù)進(jìn)行同類型操作處理,設(shè)計并進(jìn)行對比實驗.本文選擇了6 種先進(jìn)的機(jī)器學(xué)習(xí)方法用于驗證本模型方法的有效性.領(lǐng)域自適應(yīng)(DA)方法通過在一個領(lǐng)域上學(xué)習(xí)的知識遷移到另一個領(lǐng)域上,自適應(yīng)方法分為基于特征的自適應(yīng)、基于實例的自適應(yīng)和基于參數(shù)的自適應(yīng)方法.本文分別選用3 種基于實例的方法(KMM[32]、KLIEP[33]、TrAdaBoostR2[27])和3 種基于特征遷移的方法(DANN[34]、DeepCORAL[35]、MDD[36])用于進(jìn)行實驗對比.同時,添加直接采用目標(biāo)域數(shù)據(jù)進(jìn)行訓(xùn)練(即TgtOnly)作為基線方法.
在實驗設(shè)置上,為了保證井口數(shù)據(jù)的完整性和獨立性,以井為單位選取部分目標(biāo)域數(shù)據(jù)與源域數(shù)據(jù)合并一起進(jìn)行訓(xùn)練,剩下的目標(biāo)域作為測試集,這樣達(dá)到交叉驗證的效果.將本文提出的基于集成遷移學(xué)習(xí)的機(jī)械鉆速預(yù)測方法與其他方法進(jìn)行性能對比,得到實驗結(jié)果如表4.采用TgtOnly 分別對WD1、WD2、WD3 進(jìn)行機(jī)械鉆速預(yù)測,計算預(yù)測值與真實值的最大均值誤差MAE 值分別為9.341 4、3.739 9 和6.632 3.領(lǐng)域自適應(yīng)方法通過將一個領(lǐng)域上學(xué)習(xí)的知識遷移到另一個領(lǐng)域上,其性能遠(yuǎn)遠(yuǎn)好于TgtOnly.同時,采用傳統(tǒng)的TrAdaBoostR2 進(jìn)行對比驗證,得到本文提出的模型效果明顯改善.實驗表明,本文提出的基于集成遷移學(xué)習(xí)的機(jī)械鉆速預(yù)測模型擬合效果最佳,算法的性能遠(yuǎn)遠(yuǎn)好于其他幾種先進(jìn)的領(lǐng)域自適應(yīng)方法,具有較好的魯棒性能.在以WD2 作為測試集中,MAE 值減小到0.826 3,相較于這里面最優(yōu)的方法KMM 誤差減小了1.387 2,性能提升了1.68 倍.
表4 本文方法與其他方法的性能對比
在以WD2 為測試集中,得到本文方法與其他幾種主流機(jī)械鉆速預(yù)測方法在目標(biāo)域數(shù)據(jù)預(yù)測的機(jī)械鉆速值與真實ROP 的對比圖(圖3),從圖中可以清晰地看到,本文算法預(yù)測得到的機(jī)械鉆速值與真實標(biāo)簽值具有良好的一致性,誤差值遠(yuǎn)遠(yuǎn)小于其他幾種主流的機(jī)械鉆速預(yù)測方法,能夠為模型提供相對穩(wěn)定的效果.
圖3 本文方法與其他機(jī)械鉆速預(yù)測方法在WD2 上預(yù)測值與真實值對比圖
為了更直觀進(jìn)行實驗對比,分別計算本文方法與其他幾種機(jī)械鉆速預(yù)測方法的決定系數(shù)(R2)、均方根誤差(RMSE)、均方根相對誤差(RMSRE)和平均絕對百分比誤差(MAPE),多種回歸評價指標(biāo)的對比結(jié)果如圖4 所示.圖4 的結(jié)果表明,本文方法的R2值為0.868 6,RMSE 值為0.999 7,RMSRE 值為0.291 1,MAPE 值為17.67%,在多種評價指標(biāo)中性能最優(yōu).同時圖4 也顯示結(jié)合遷移學(xué)習(xí)的機(jī)械鉆速預(yù)測方法相較于不使用遷移學(xué)習(xí)的方法(TgtOnly)性能有明顯的提升.
圖4 WD2 數(shù)據(jù)集上各種方法多種回歸評價指標(biāo)圖
本文提出了一種結(jié)合物理模型和遷移學(xué)習(xí)的鉆前機(jī)械鉆速預(yù)測方法,能夠在目標(biāo)油田數(shù)據(jù)樣本缺失或標(biāo)注的數(shù)據(jù)樣本較少的情形下更準(zhǔn)確地預(yù)測機(jī)械鉆速.本文方法結(jié)合機(jī)械鉆速物理模型,通過遷移學(xué)習(xí)識別并利用與目標(biāo)數(shù)據(jù)相似的源實例,確保遷移的知識與目標(biāo)任務(wù)相關(guān).實驗表明,本文方法機(jī)械鉆速預(yù)測值與實際值之間具有良好的一致性,與幾種主流機(jī)械鉆速預(yù)測方法相比,在多種回歸評價指標(biāo)中性能最優(yōu).鉆前機(jī)械鉆速的準(zhǔn)確預(yù)測能給施工現(xiàn)場提供高效有力指導(dǎo)依據(jù),為進(jìn)一步有效地提高鉆井效率提供可靠的保障.