郝 帥,王懷秀,劉最亮
(1.北京建筑大學 電氣與信息工程學院,北京 102616;2.華陽新材料科技集團有限公司,山西 陽泉 045000)
近年來,隨著現代化大型礦井建設的發展以及煤炭開采的不斷深入,陷落柱的存在嚴重威脅著煤礦的生產安全,同時影響煤礦安全高效發展。為此需要尋找一種方法能夠比較準確地識別礦區地下陷落柱,為煤礦高產高效提供有力的技術支持[1]。
目前,高精度三維地震勘探技術已在地質異常體識別領域得到廣泛應用。高精度三維地震資料具有數據量大,信息豐富,空間分辨率高的特征,可以較為精細地反映地震振幅、相位的變化,可以用于精細的斷層、陷落柱及地質異常體的解釋。多維環境中的各種信息,包括幾何學、運動學、動力學和統計特征都包含在這些多維地震數據之中。它們通常用地震屬性來描述[2]。目前,針對各種不同地質任務提出的地震屬性達到上百種之多,這些地震屬性能用來凸顯地質異常體的地質特征,并在一定程度上輔助地震解釋工作。白瑜等[3]應用相干體屬性分析技術在研究區域成功地識別多處小規模的陷落柱,在實現對地質構造的解釋的同時也彌補了常規三維地震解釋不能很好地識別小規模陷落柱的不足;李強等[4]通過分析陷落柱的屬性特征及實例對比,證實相干、曲率、傾角、紋理等地震屬性分析技術均可以有效提高陷落柱識別的準確度和可靠性。上述方法雖然取得了一定的成果,但是存在單一屬性信息量少,往往不能全面反應地質體特征;存在多解性可能導致片面結果,并且需要主觀判斷和解釋經驗的問題。因此,需要一種聯合多種地震屬性的解釋方法[5]。
隨著計算機水平的高速發展,機器學習的出現為地震解釋提供了更多的工具。它能綜合利用多種地震屬性來對陷落柱進行識別。LI Dong 等[6]討論了多種傳統機器學習算法在陷落柱識別工作中的可行性,證明了將機器學習算法應用于地質構造預測,可以有效地提高地震解釋的效率。但是基于機器學習的地震構造解釋方法對原始地震數據質量和屬性值有較高的要求。因此,改進機器學習算法和提高算法容錯性成為未來研究的方向[7]。
目前主要使用機器學習算法中的監督分類算法來實現對地質異常體進行識別的目的,即使用既有特征數據又有標簽的數據進行訓練,讓模型學習到特征和標簽之間的關聯,使得模型在面對只有特征而沒有標簽的數據時,可以判斷出其標簽值。但是這類方法存在1 個缺陷,即當訓練樣本數據集存在數據不平衡情況時,就會導致模型的分類效果下降[8]。對于地震多屬性數據集來說,當非陷落柱數據數量明顯多于陷落柱數據數量時,分類結果將向非異常體方向偏移,導致目標的預測準確率降低。為了解決數據不平衡帶來的分類結果偏移問題,國內外學者研究并提出了大量解決方法。其中比較經典的是CHAWLA 等[9]在2002 年提出的1 種改進的隨機過采樣SMOTE 算法,該算法不是簡單的隨機抽樣,重復原始樣本,而是由公式生成的新的人工樣本。但是SMOTE 算法也會在一定程度上增加樣本正負類之間的不平衡性。
為了克服上述問題并更好地識別陷落柱,構建了1 種基于K-means SMOTE 結合隨機森林的機器學習分類模型,首先利用K-means 方法找出原始負類的中心點,再根據SMOTE 過采樣方法得出“新增負類”,將原始數據集中的負類全部替換為“新增負類”,再次利用SMOTE 算法得出“新數據集”,有效地克服了類間和類內的不平衡和經典SMOTE 算法的缺點[10];再結合隨機森林分類算法,將地震多屬性數據集作為學習樣本來對陷落柱進行識別。
地震屬性是通過三維地震勘探技術得到的能夠反映陷落柱構造特征的數據,盡管這些地震屬性都在一定程度上可以對陷落柱進行解釋,但是過多的屬性還是會難免造成信息的冗余[11]。為了進一步提高陷落柱識別的精度,需要對屬性進行評估。首先,通過計算屬性之間的相關系數得到各個屬性之間的相關性關系;再通過分析屬性之間相關系數的絕對值大小來判斷屬性之間的相關性強弱,相關系數的絕對值大小和相關性成正比關系。
在分析完各個地震屬性之間相關性關系后,再進行R 型聚類分析。該分析的目的是評估各屬性之間的相關性,將相關性較強的地震屬性聚為一簇,以便得到更直觀的屬性之間相關性關系[12]。最終通過結合隨機森林重要性分析,對屬性值和標簽值相關性進行分析,使得最終選擇的屬性與其他屬性和目標值之間都存在較好的相關性。
在對地震屬性進行評估之后,將多余的地震屬性從屬性數據集種篩選出去完成對屬性的選擇,為了使優選的屬性能夠滿足陷落柱識別的任務,所優選的地震屬性需要具備2 個標準:①不能盲目選擇地震屬性,并且不是屬性數量越多越好,而是需要選擇有限個屬性使模型的識別準確率達到最高;②應該獨立統計每1 個地震屬性,相關性較強的屬性不應放在同1 個數據集中用來進行分類,相關性較強的屬性應該放在一起進行討論,組成1 個屬性簇,再根據屬性重要性分析,從每個簇中只選取1 個屬性作為最具代表性的屬性組成數據樣本。
K-means SMOTE 采用常用的K-means 聚類算法和SMOTE 過采樣方法相結合,以用來對數據集進行平衡處理。該方法的思想是設法在安全區域進行過采樣來避免噪聲的產生并同時解決類別間的不平衡和類別內的不平衡問題[13]。K-means SMOTE 算法原理圖如圖1。
圖1 K-means SMOTE 算法原理圖Fig.1 K-means SMOTE algorithm schematic
1)使用K-means 對整個空間進行聚類。在所有樣本中,隨機選擇個數據點并將其作為樣本聚類中心:C1、C2、C3、…、CK。
2)計算每個樣本到聚類中心的距離d:
式中:xi∈D;D 為樣本合集;CK∈C。
3)將樣本分配到最近的集群中。xi∈Cnearest,Cnearest為最近的樣本集群。
4)重新計算集群中心:
式中:μi為新的集群中心;Ci為樣本聚類中心。5)重復上述步驟2)~步驟4),直到聚類中心不再改變。
6)過濾少數類較少的聚類,選擇少數類較多的聚類,合成新的少數類樣本。
7)在每1 個經過過濾的簇中執行SMOTE 過采樣算法:
式中:rand(0,1)為0~1 之間的隨機數;Xnew為1個新的合成少數類樣本;xc為從過濾的簇中的最近鄰集群中隨機選擇的少數類樣本;~x 為表示過濾后的聚類中的少數類樣本。
隨機森林是Breiman 于2001 年基于隨機決策樹的概念提出1 種高級集成學習算法。它首先利用Bagging 算法的思想結合幾個傳統的決策樹分類模型來改善泛化誤差,并結合隨機特征選擇技術來參與每個基決策樹的節點劃分過程。這種集成方法集成了多個模型并相互補充,與單個決策樹分類器相比,隨機森林具有更高的預測精度和不易發生過擬合的優點且能較好地處理高維度數據,并且能夠分析各個樣本特征對分類結果的重要性[14]。具體的隨機森林實現步驟如下:
1)假設訓練集有N 個樣本,利用Bootstrap 法有放回的抽取樣本(每次隨機選取1 個,然后返回繼續選擇),最終選擇好了N 個樣本用來組成訓練決策樹的訓練集。
2)假設樣本中包含H 個屬性,隨機從這H 個屬性中選取h 個屬性(h≤H)用于每1 顆決策樹的每個節點的分裂。然后從其中選擇1 個最具有分類能力的屬性作為該節點的分裂屬性。
3)用步驟2)的方式來形成決策樹的每1 個節點。直到不能分裂為止。
4)按照步驟1)~步驟3)建立大量決策樹,構成隨機森林。分類結果按照樹分類器的投票量而定。
構建隨機森林需要通過經驗選擇合適的超參數n_estimators(森林中樹的個數)和max_tepth(樹的最大深度)使得模型的分類效果達到預期。人工選擇參數需要不斷地對2 個參數進行組合并比較模型準確率,既增加了工作量又耗費時間。所以提出利用網格搜索與交叉驗證的方式來尋找使模型得分最高的參數組合,實現自動超參數尋優。
網格搜索法是1 種窮舉搜索的超參數尋優算法,該算法具有較強的通用性,并且簡單高效適合對較少的參數進行尋優。其本質就是將參數空間劃分成若干個網格,通過遍歷網格交叉點處所有參數組合來對需要訓練的模型進行優化,同時計算其對應模型的準確率。只有遍歷網格平面的所有節點,才能得到使準確率最高的參數組合。隨機森林通過網格搜索得到最優參數值,最優參數得到的模型可以使用網格搜索參數best_score,即模型的平均交叉驗證得分來評估分類效果的好壞,得分越高表明該分類模型的分類效果越好。
同時隨機森林在分析不同的樣本特征時會展現出不同的分類效果并且在對不平衡數據集進行訓練時,模型的預測精度會向多數類樣本進行偏移。因此在此基礎上提出了1 種對隨機森林模型進行優化的方法,分為3 個步驟:①利用前期的地震屬性優選工作,挑選出使模型分類準確率最高的特征組合作為樣本特征,評價指標為模型的準確率Precision;②利用K-means SMOTE 算法對樣本數據集進行處理獲得平衡的地震多屬性數據集,用該數據集作為訓練樣本訓練隨機森林分類模型;③利用網格搜索和交叉驗證的方法對隨機森林的超參數n_estimators和max tepth 進行尋優,以期獲得最高得分的隨機森林分類模型。基于改進的隨機森林模型識別陷落柱的過程,可看作1 個監督學習過程,同時也是1 個二分類問題,即將地震多屬性數據分成“陷落柱”和“非陷落柱”2 類;每個樣本的特征為優選后地震屬性組成。改進的分類模型構建過程如圖2。
圖2 改進的分類模型構建過程Fig.2 Improved classification model building process
以山西新元煤礦首采區東翼南部礦區煤層為研究區。研究區行政區劃屬晉中地區壽陽縣,勘探范圍由以下坐標點連線圈定,東西寬2 km,南北長1.5 km,勘探面積3.0 km2。
研究區含煤地層主要為二疊系下統山西組。其中3#煤層屬主要可采煤層,煤層厚度2.41~3.60 m,平均厚3.18 m,頂板為砂質泥巖、泥巖,底板為砂質泥巖,屬穩定煤層。從以前研究本區進行的二維地震資料來看,區內陷落柱較為發育,構造復雜程度應屬中等。研究區域陷落柱構造圖如圖3。
圖3 研究區域陷落柱構造圖Fig.3 Structural diagram of collapsed column in the study area
選取首采區東翼南部礦區作為研究區域,研究中利用三維地震勘探成果,按照5×5 網格提取出研究區域3#煤層所對應x、y 坐標及相關屬性信息,結合專家經驗最終提取了12 種地震屬性(方差體、均方根振幅、平均能量、傾角、瞬時頻率、瞬時相位、最大振幅、最大能量、最小振幅、總振幅、中值振幅、主頻),對該區域內的屬性數據進行分類標記,共得到5 360 個數據點。其中代表無地質異常構造的數據點有4 496 個,用標簽值“0”來表示;代表陷落柱的數據點只有864 個,用標簽值“1”來表示。由此可見,數據集中2 個不同類別的樣本數量之間存在較大的差異,即存在數據不平衡現象。
1)對12 種地震屬性進行相關性分析,計算得到的屬性之間相關系數見表1。
表1 地震屬性之間相關性分析Table 1 Correlation analysis between seismic attributes
2)利用R 型聚類分析將相關性較高的地震屬性聚為一簇。R 型聚類結果圖如圖4。
圖4 R 型聚類結果圖Fig.4 R-type clustering result graph
3)根據隨機森林重要性分析,從每個簇中選出與目標相關性最高的地震屬性作為最終的樣本特征。隨機森林重要性分析如圖5。聚類模型效果圖如圖6。
由圖6 可知:優選6 個屬性時,隨機森林分類模型的準確率達到最高。這時瞬時相位、總振幅、中值振幅的相關性較高聚為1 簇;均方根振幅、平均能量、最大振幅、最大能量的相關性較高聚為1 簇;瞬時頻率和主頻的相關性較高聚為1 簇;其余屬性相對獨立。由此優選出中值振幅、主頻、最小振幅、最大振幅、傾角、方差作為最終的樣本特征。
圖6 聚類模型效果圖Fig.6 Clustering model rendering
首先利用K-means SMOTE 算法對數據集進行平衡處理,最終陷落柱和非陷落柱的數據點數量均為4 496 個,從中選取70%的數據作為訓練樣本,其余的作為測試樣本。利用網格搜索與交叉驗證的方法對隨機森林的超參數(n_estimators 和max_depth)進行尋優,把隨機森林模型的得分作為評價指標。最終確定n_estimators=61,max depth=18 時模型的分類效果最好,準確率達到92%。
但在2 698 個測試樣本中有259 個實測陷落柱樣本,剩下的都是通過K-means SMOTE 算法合成的。因此,為了驗證隨機森林模型的有效性,僅計算實際259 個測試樣本的混淆矩陣準確率達到87%。
為了對建立的隨機森林模型效果進行評價以判定其是否具有有效性和優越性,作為對比;同時使用另外3 種機器學習算法與之比較,3 種機器學習分類算法分別是決策樹算法、KNN 算法、BP 神經網絡算法。對于二分類問題,為了對分類器的評估更全面,利用召回率(recall)、準確率(Precision)和f1 score 等評估指標來評估模型的分類效果。可以將樣本劃分為:真正例(True Positive,TP);假正例(False Positive,FP);假負例(False Negative,FN);真負例(True Negative,TN)。然后就可以構建混淆矩陣計算相應的指標,分類結果混淆矩陣見表2。
表2 分類結果混淆矩陣Table 2 Classification results confusion matrix
查準率P,又稱準確率(Preciscin):
召回率R,又稱查全率(Recall):
準確率和召回率整合在一起的判定標準F1為:
算法對比分析見表3。
由表3 可知:經過K-means SMOTE 處理后的數據集作為輸入,隨機森林模型預測準確率、召回率、F1-score 相較于其他算法模型均得到了相應的提高。
表3 算法對比分析Table 3 Algorithm comparative analysis
將預測為陷落柱的數據點導入軟件,并結合陷落柱實際揭露的構造進行對比,模型預測效果圖如圖7。
圖7 模型預測效果圖Fig.7 Model prediction rendering
由圖7 可知:陷落柱數據點預測較為吻合,進一步證明了模型具有良好的精度,數據點預測較為精確;其中測試集中1 349 個非異常體數據點有1 114個被預測正確;259 個實測陷落柱數據點有225 個被預測正確。
1)綜合分析屬性與屬性之間的相關性和屬性與目標值之間的相關性并且優選出相對獨立且與目標值相關性高的屬性作為訓練數據,可以有效降低數據集的維度并提高模型預測精度,提高預測工作的效率。
2)基于隨機森林算法的陷落柱識別模型融合了各個不同地震屬性識別陷落柱的優勢,從多個角度來分析識別陷落柱,相較于單一屬性更為精確并且基本與人工解釋和實際揭露相吻合,所以模型具有良好的適用性。
3)陷落柱數據點和非地質異常體數據點的數量將直接影響模型識別的準確率。因此通過改善數據集的不平衡程度,可以提高模型識別的準確率。