張昭杰,方石
吉林大學 地球科學學院,長春 130061
烏夏地區(qū)侏羅系地層沉積環(huán)境和地質條件較為復雜,該地區(qū)巖性呈現(xiàn)出縱橫向變化大、成分成熟度低以及非均質性強等特點,使得各種巖性與其測井響應特征多數(shù)為非線性關系。且該地區(qū)地層普遍含泥、含礫,屬于復雜巖性地層,對巖性識別工作產(chǎn)生了許多不利影響。同時,考慮到成本因素導致巖芯資料缺乏,而巖屑錄井采樣間隔較大,人為干擾因素過多,因此無法完整準確地恢復整套地層的真實巖性[1]。目前,常規(guī)的測井巖性識別手段包括交會圖法[2]、聚類方法[3]及人工神經(jīng)網(wǎng)絡[4]、主成分分析[5,6]等數(shù)理統(tǒng)計方法。兩參數(shù)的交會圖一般只能對測井特征明顯的巖性進行有效識別,很難做到全井段或解釋井段的巖性識別[7];聚類分析方法在對巖性進行識別時,選擇不同數(shù)量的聚類中心對識別精度影響較大;人工神經(jīng)網(wǎng)絡方法因其網(wǎng)絡拓撲結構難以確定,易陷入局部最小值等問題,導致巖性識別效果不佳[8];主成分分析法雖然可以有效降低測井數(shù)據(jù)維度從而提高識別精度,卻容易忽略數(shù)值較小但對巖性判定影響較大的測井屬性[9]。
支持向量機(Support Vector Machine,SVM)是Vapnik于1995年基于結構風險最小化原則提出的一種新型機器學習分類方法[10]。本文在支持向量機方法的基礎上,利用遺傳算法對其核函數(shù)和懲罰因子進行尋優(yōu),在巖芯資料有限的情況下,利用測井數(shù)據(jù)對烏夏地區(qū)復雜砂礫巖巖體進行巖性識別,并對BP神經(jīng)網(wǎng)絡預測結果和利用遺傳算法優(yōu)化的支持向量機預測結果進行了比較,論證了使用支持向量機模型對巖性進行識別的高效性與可行性。
支持向量機是一種二類分類模型,是在特征空間上的間隔最大的線性分類器,并且能尋找到全局最優(yōu)解[11]。支持向量機的基本思想是求解一個能夠正確劃分數(shù)據(jù)集的分離超平面,并且保證這個超平面的幾何間距最大化,對于線性可分的數(shù)據(jù)集,其最大幾何間隔的超平面是唯一的。其基本結構如圖1所示。
圖1 支持向量機示意圖Fig.1 Support Vector Machine
一般來講,對于一個給定的訓練數(shù)據(jù)集D={(x1,y1),(x2,y2),…,(xn,yn)},其中,實例xi屬于輸入空間,xi∈X=Rn,yi∈Y={+1,-1},i=1,2,…,N。對于線性可分數(shù)據(jù)集,通過間隔最大化得到的分離超平面可表示為:
ω·x+b=0
(1)
式(1)中,ω為法向量,決定超平面的方向;b為位移項,決定超平面和原點之間的距離,可用(ω,b)來表示。其將特征空間劃分為兩部分,法向量指向的一側為正類,另一側為負類。對于(xi,yi)∈D,若yi=+1,則有ω·x+b>0;若yi=-1,則有ω·x+b<0。令
(2)
為了讓訓練數(shù)據(jù)集的正例和負例距離這個超平面盡量遠,使得分類間隔最大,即滿足:
(3)
對于非線性分類問題,對原始樣本進行劃分是無法通過建立最優(yōu)超平面來完成的。對于這樣的問題,可以在支持向量機中加入一個松弛變量放寬約束并添加一個懲罰因子來進行解決,同時對式(3)使用拉格朗日乘子法,在式中添加拉格朗日乘子對其進行約束,將大間隔劃分超平面問題轉化為對偶問題:
(4)
即:
(5)
0≤αi≤C
求解上述方程后得到:
(6)
式(6)中,αi為拉格朗日乘子,xi為第i個特征向量,yi為xi的類標記,k是支持向量機數(shù)目,b是分類閾值。
非線性分類問題無法用直線(線性模型)把正負類數(shù)據(jù)分開,筆者通過引入“核函數(shù)”(kernel function)的方式,將原特征空間數(shù)據(jù)集通過非線性轉換映射到高維特征空間,利用線性分類方法在高維空間中求解最優(yōu)超平面[12]。最常用的核函數(shù)有徑向基核(RBF),多項式核和Sigmoid核,本文擬選擇采用徑向基核(RBF)作為支持向量機分類模型的核函數(shù)[13]。
(7)
遺傳算法(Genetic Algorithm,簡稱GA)是基于遺傳學機理和模擬自然界生物進化過程而形成的一種過程搜索最優(yōu)解的算法,是一種自組織、自適應的人工智能技術[14],15]。支持向量機模型的建立本質上就是尋求其兩個關鍵參數(shù):核函數(shù)參數(shù)σ和懲罰因子C[16]。這兩個參數(shù)的確定對模型的精度和泛化能力具有很大影響[17]。用遺傳算法搜尋支持向量機巖性識別最佳參數(shù)的流程為:
① 將標準化后的巖性樣本測井數(shù)據(jù)輸入到支持向量機模型中作為訓練樣本。
② 隨機產(chǎn)生一組核函數(shù)參數(shù)和懲罰因子,使用二進制編碼方案對其進行編碼,隨機生成初始群體。
③ 計算初始群體的誤差函數(shù),從而確定群體適應度。誤差函數(shù)值越小,則表明適應度越大。
④ 執(zhí)行交叉和變異算子,按最優(yōu)保留,取代最差為原則對上一代群體進行處理。
⑤ 判斷是否滿足條件,否則返回步驟②,直到得到最優(yōu)參數(shù)組合為止。
烏夏地區(qū)地處準噶爾盆地西北緣,又被稱為烏夏斷裂帶(圖2),其侏羅系地層總體上呈北高南低,并向盆地內變厚的楔狀展布特點[18]。其中下侏羅統(tǒng)齊谷組地層以辮狀河三角洲沉積為主,發(fā)育了泥巖、泥質粉砂巖、中細砂巖和砂礫巖等多種巖性[19,20]。本文以侏羅系地層為例,結合錄井巖性和測井資料,總結層內不同巖性對應的測井響應特征,提取對巖性敏感的測井響應參數(shù),建立GA-SVM巖性識別模型。
圖2 準噶爾盆地烏夏地區(qū)位置圖[20]Fig.2 Location map of study area
由于研究區(qū)巖性較為復雜,因此基于現(xiàn)有資料將研究區(qū)劃分出泥巖、細砂巖、中砂巖及砂礫巖四種主要巖性。本文在烏夏地區(qū)有準確巖芯定名資料的20余口井中,選擇了620個具有代表性的巖芯數(shù)據(jù),其中泥巖150個,泥質粉砂巖115個,中細砂巖165個,砂礫巖190個,提取這4種巖性所代表的測井曲線中的聲波時差(AC)、中子孔隙度(CNL)、密度(DEN)、自然伽馬(GR)地層電阻率(RXO)數(shù)據(jù)建立了5維4類的樣本空間,表1總結出了烏夏地區(qū)4種巖性的測井響應特征。從表1中可以看出,每種巖性對應的測井響應特征差異比較明顯,這就意味著可以利用支持向量機在非線性數(shù)據(jù)集上的分類優(yōu)勢對巖性進行分類。同時本文對所有樣本的測井數(shù)據(jù)進行歸一化處理,統(tǒng)一納入到(0,1)的范圍內,以消除因特征量綱不同所帶來的影響。
支持向量機分類模型準確度的高低很大程度上取決于對該模型核函數(shù)參數(shù)σ和懲罰因子C的選擇,參數(shù)選取不合理會直接影響預測精度。因此本文選擇徑向基核函數(shù)作為支持向量機的核函數(shù),通過遺傳算法計算出其最佳參數(shù)值為(19.346,6.1539)。
在獲得最佳的核函數(shù)參數(shù)σ和懲罰因子C后,將500個巖性樣本作為學習集(表2)進行訓練,得到相應的支持向量機模型,120個巖性樣本作為驗證集用以檢驗該模型在研究區(qū)的巖性識別能力,并與BP神經(jīng)網(wǎng)絡的預測結果進行比對。表3列出了部分測試樣品輸入的測井參數(shù)及識別結果,表4列出了所有測試樣品的分類情況。
表1 烏夏地區(qū)巖性平均測井響應范圍及響應特征
表2 部分訓練樣品的測井參數(shù)值及巖性標識
注:1.泥巖;2.細砂巖;3.中砂巖;4.砂礫巖.
從表3、表4列出的結果可以看出GA-SVM模型在巖性識別方面具備較大的優(yōu)勢,對比用相同的樣本進行訓練得到的BP神經(jīng)網(wǎng)絡模型,GA-SVM模型的識別準確率明顯更高。其中,GA-SVM模型對泥巖和中砂巖的識別準確度最高,分別達到88.6%和88.3%,其次是砂礫巖,準確度為78.6%,最差的是細砂巖,為74.1%。通過對比和分析發(fā)現(xiàn),識別錯誤的樣本主要是將細砂巖誤判為中砂巖和泥巖,由于這兩種巖性物性相似,導致其測井響應特征差異不大。另外,井壁坍塌、裂縫以及巖芯編錄過程中的人工識別誤差也是產(chǎn)生誤判的原因。總體而言,在120個驗證樣品中,GA-SVM方法識別正確的樣品數(shù)為98個,準確率為81.6%, BP神經(jīng)網(wǎng)絡的識別準確率僅為65%。
表3 部分測試樣品的測井參數(shù)值及識別結果
表4 巖性識別統(tǒng)計結果
(1)通過建立測井數(shù)據(jù)和巖性的對應關系,利用支持向量機在非線性問題和小樣本情況下的分類優(yōu)勢,對砂礫巖巖性進行劃分。
(2)砂礫巖形成環(huán)境復雜,非均質性強是造成砂礫巖巖性判別的難點。
(3)遺傳算法的全局搜索策略能夠尋找到最優(yōu)的支持向量機參數(shù),利用遺傳算法對支持向量機巖性識別模型進行優(yōu)化調整,實際數(shù)據(jù)預測得到的總體準確率為81.6%,優(yōu)于BP神經(jīng)網(wǎng)絡。