王 琳,周 捷,林海飛,2,李文靜,張宇少
(1.西安科技大學(xué) 安全科學(xué)與工程學(xué)院,陜西 西安 710054;2.西部煤礦瓦斯災(zāi)害防控陜西省高等學(xué)校重點(diǎn)實(shí)驗(yàn)室,陜西 西安 710054)
由于井下地質(zhì)構(gòu)造復(fù)雜,瓦斯在煤體中分布具有復(fù)雜性和不確定性等特點(diǎn)。瓦斯含量精準(zhǔn)預(yù)測可以有效預(yù)防瓦斯爆炸、煤與瓦斯突出等災(zāi)害的發(fā)生,對保證煤礦安全高效運(yùn)行具有重要意義[1,2]。
井下直接測定法及地勘鉆孔解析法等瓦斯含量直接測定方法工作量大,工作周期長。隨著智能算法和機(jī)器學(xué)習(xí)理論的豐富完善,基于深度學(xué)習(xí)的瓦斯含量預(yù)測方法已經(jīng)成為一種趨勢。人工神經(jīng)網(wǎng)絡(luò)[3,4]、灰色理論[5]、多元回歸[6,7]等預(yù)測方法的應(yīng)用較廣泛,魏國營[8]等采用主成分分析法對瓦斯含量影響因素進(jìn)行特征提取,建立基于自適應(yīng)混合粒子算法優(yōu)化后的支持向量回歸機(jī)優(yōu)化模型。付華[9]提出基于變分模態(tài)分解和差分的預(yù)測方法對Elman網(wǎng)絡(luò)進(jìn)行優(yōu)化,該方法可以實(shí)現(xiàn)對工作面瓦斯?jié)舛鹊木珳?zhǔn)預(yù)測,吻合度高達(dá)95.2%。田水承[10]等人通過研究GRA-GASA-SVM模型,解決傳統(tǒng)網(wǎng)格尋優(yōu)算法取值范圍無法確定的問題,建立瓦斯含量預(yù)測參數(shù),然后通過十折交叉驗(yàn)證可以驗(yàn)證本模型預(yù)測穩(wěn)定性更優(yōu)。邱春容[11]等提出了DBN-PSO-SVR瓦斯?jié)舛阮A(yù)測方法,結(jié)果表明該算法預(yù)測性能較優(yōu)越。劉瑩[12]、賈澎濤[13]等融合環(huán)境因素與時(shí)序數(shù)據(jù),提出了基于LSTM模型的瓦斯?jié)舛阮A(yù)測模型,該模型可實(shí)現(xiàn)瓦斯?jié)舛榷嗖筋A(yù)測。鄭麗媛[14]、邵良杉[15]等利用粒子群優(yōu)化最小二乘支持向量機(jī),獲得了模型最優(yōu)參數(shù),對瓦斯涌出量和滲透率進(jìn)行預(yù)測。
綜上所述,機(jī)器學(xué)習(xí)算法雖具有較高預(yù)測精度,但是單一模型可能會(huì)因?yàn)殡S機(jī)性導(dǎo)致模型泛化性能較差。因此,本研究提出基于五折交叉驗(yàn)證的Stacking集成方法,通過煤厚、埋深、底板標(biāo)高與圍巖特性等因素對瓦斯含量進(jìn)行預(yù)測。在深度信念網(wǎng)絡(luò)(DBN)、長短期記憶(LSTM)、最小二乘支持向量機(jī)(LSSVM)、自適應(yīng)增強(qiáng)(Adaboost)以及Elman算法中首先選擇精度最高的三種基模型;其次,對單個(gè)及集成模型進(jìn)行預(yù)測性能優(yōu)選,選出排名前四的模型;最后,經(jīng)過指標(biāo)優(yōu)選得到最優(yōu)融合瓦斯含量預(yù)測模型。采用平均絕對誤差(MAE)、判定系數(shù)(R2)、均方根誤差(RMSE)、平均相對誤差(MRE)及平均絕對百分比誤差(MAPE)五個(gè)指標(biāo)對集成模型進(jìn)行綜合評估,確保預(yù)測模型的準(zhǔn)確性。
煤層瓦斯含量受埋藏深度、地質(zhì)構(gòu)造、煤層厚度、水分、灰分、揮發(fā)分等因素影響。煤層埋深越深使瓦斯向地表移動(dòng)的距離加長,瓦斯越難逸散,儲(chǔ)存瓦斯含量越大[16]。煤層厚度越大,煤層瓦斯含量越高,兩者呈正相關(guān)關(guān)系[17]。煤的變質(zhì)程度越高,水分越低,揮發(fā)分越小,瓦斯生成量越大,煤對瓦斯的吸附作用越大[18]。
選取不同礦區(qū)的銅川煤礦、恒源煤礦以及五里堠煤礦等,采用煤層厚度、煤層深度、水分、灰分以及揮發(fā)分等五種因素對瓦斯含量的影響進(jìn)行分析,具體數(shù)據(jù)見表1。
表1 不同礦區(qū)瓦斯含量及影響因素Table 1 Gas content and influencing factors of different mines
不同礦區(qū)煤層瓦斯含量與埋深、煤厚和水分、灰分以及揮發(fā)分等影響因素的線性關(guān)系如圖1所示,由圖1可以看出煤層瓦斯含量與各影響因素之間線性判定系數(shù)較低(R2=0.01~0.33),它們之間不存在明顯線性關(guān)系。因此,需建立非線性模型實(shí)現(xiàn)不同礦區(qū)煤層瓦斯含量精準(zhǔn)預(yù)測。
圖1 不同礦區(qū)瓦斯含量與各指標(biāo)之間的關(guān)系Fig.1 Linear fitting between gas content and indicators in different mines
選用R2、MAE、MRE、RMSE和MAPE作為數(shù)據(jù)和模型的評價(jià)指標(biāo)。R2取值范圍為[0,1],R2越接近1,說明擬合效果越好。MAE的差值被絕對值化,不存在正負(fù)抵消,能更好地反映預(yù)測值與真實(shí)值之間誤差的實(shí)際情況,值越靠近0,精度越高。MRE的值在0到1之間,越小表示預(yù)測的準(zhǔn)確性越高。RMSE比均方誤差能更好描述數(shù)據(jù)也更容易感知數(shù)據(jù),RMSE的取值范圍為[0,+∞),當(dāng)?shù)玫降闹翟浇咏?,模型預(yù)測效果越理想。MAPE將每個(gè)點(diǎn)的誤差歸一化,降低個(gè)別點(diǎn)絕對誤差帶來的影響,MAPE值越小,計(jì)算準(zhǔn)確度更高,模型擬合結(jié)果越好。R2、MAE、MRE、RMSE和MAPE的計(jì)算公式見式(1)~(5)。
1.3.1 數(shù)據(jù)標(biāo)準(zhǔn)化
為消除不同數(shù)據(jù)之間單位的互相影響以及加快模型訓(xùn)練速度,需將原始數(shù)據(jù)進(jìn)行無量綱化處理。將原數(shù)據(jù)進(jìn)行零-均值規(guī)范化(Z-score標(biāo)準(zhǔn)化),得到一組均值為0,標(biāo)準(zhǔn)差為1的新序列。經(jīng)過式(6)—(7)的計(jì)算,消除不同數(shù)值量級對預(yù)測模型的影響[19]。
式中,σ為總體數(shù)據(jù)的標(biāo)準(zhǔn)差;N為總樣本的數(shù)量;x為觀測值;μ為總體數(shù)據(jù)的均值。
1.3.2 數(shù)據(jù)插補(bǔ)
為減少數(shù)據(jù)缺失對研究結(jié)果造成影響,需對缺失數(shù)據(jù)進(jìn)行插補(bǔ)。缺失數(shù)據(jù)常用插補(bǔ)方法有均值插補(bǔ)法、線性插補(bǔ)法、多重插補(bǔ)法和最近鄰插補(bǔ)法[20]。為能得到比較好的插補(bǔ)效果,用除缺失值以外其他數(shù)據(jù)組進(jìn)行插補(bǔ)實(shí)驗(yàn),得到完整數(shù)據(jù)集的插補(bǔ)精度。選擇高精度的插補(bǔ)方法對不同礦區(qū)原本缺失數(shù)據(jù)進(jìn)行插補(bǔ)。利用均插補(bǔ)法、線性插補(bǔ)法、修正Akima插值法及最鄰近值插補(bǔ)法得到插補(bǔ)數(shù)據(jù),將插補(bǔ)結(jié)果與實(shí)際值歸一化后,經(jīng)過計(jì)算得到均方誤差并進(jìn)行對比,結(jié)果見表2。
表2 礦區(qū)利用不同插補(bǔ)法插補(bǔ)的數(shù)據(jù)Table 2 Data interpolated using different interpolation methods for the mines
由表2可知,最鄰近值插補(bǔ)法的均方根誤差最大;線性插補(bǔ)和修正插補(bǔ)的均方根誤差相差不大;均值插補(bǔ)法的均方根誤差最小,為0.459,插補(bǔ)值與原始數(shù)據(jù)之間的離散性最小,符合要求。因此,本文采用均值插補(bǔ)。具體插補(bǔ)數(shù)據(jù)見表3。
表3 礦區(qū)均值插補(bǔ)具體數(shù)據(jù)Table 3 Average values of the mining area interpolated with specific data
集成學(xué)習(xí)通過給定數(shù)據(jù)訓(xùn)練多個(gè)基學(xué)習(xí)器,用融合模型策略得到增強(qiáng)模型,比單個(gè)學(xué)習(xí)器具有更好的預(yù)測精度和泛化性能[21]?;鶎W(xué)習(xí)模型是集成框架中最重要的部分,需遵循“優(yōu)而不同”的原則進(jìn)行挑選?!皟?yōu)”是指模型有好的模擬能力,“不同”是指選擇的基學(xué)習(xí)模型在預(yù)測方式上存在差異[22]。集成學(xué)習(xí)方法首先經(jīng)過基學(xué)習(xí)器預(yù)測得到初步結(jié)果,然后將初步結(jié)果經(jīng)過元學(xué)習(xí)器組合生成新的結(jié)果[23]。
在建立模型過程中,采用交叉驗(yàn)證的方法避免Stacking集成過程中出現(xiàn)過擬合。Stacking集成共分為兩層,第一層中每個(gè)基學(xué)習(xí)器利用訓(xùn)練集進(jìn)行一次數(shù)據(jù)模擬,得到不同參數(shù)的基學(xué)習(xí)器。將得到的基學(xué)習(xí)器的預(yù)測結(jié)果進(jìn)行融合,形成一個(gè)新數(shù)據(jù)集。第二層中元學(xué)習(xí)器將新數(shù)據(jù)集再次訓(xùn)練,組合各基學(xué)習(xí)器優(yōu)勢,得到最終集成模型。
本研究對深度信念網(wǎng)絡(luò)(DBN)、Elman、長短期記憶(LSTM)、最小二乘支持向量機(jī)(LSSVM)以及自適應(yīng)增強(qiáng)(Adaboost)五種算法進(jìn)行選擇,選取精度最高的前三種算法作為Stacking集成基學(xué)習(xí)器。訓(xùn)練過程如圖2所示,具體步驟為:按比例劃分訓(xùn)練集和測試集;使用五折交叉訓(xùn)練每個(gè)基學(xué)習(xí)器;將基學(xué)習(xí)器訓(xùn)練結(jié)果整合成新數(shù)據(jù)集,對元學(xué)習(xí)器進(jìn)行訓(xùn)練,得到最終結(jié)果。
圖2 Stacking集成學(xué)習(xí)框架Fig.2 Stacking integrated learning framework
2.2.1 深度信念網(wǎng)絡(luò)(DBN)
深度信念網(wǎng)絡(luò)由若干個(gè)受限玻爾茲曼機(jī)(RBM)組成。受限玻爾茲曼機(jī)由可視層和隱含層兩部分組成,在同一層中,每個(gè)神經(jīng)元之間互不聯(lián)系[24]。
對于計(jì)算給定狀態(tài)(v,h)的受限玻爾茲曼機(jī)的能量函數(shù)如下式所示:
式中,aj為可視層的閾值;bi為隱含層的閾值;wij為輸入層里第i個(gè)可視層節(jié)點(diǎn)和第j個(gè)隱含層節(jié)點(diǎn)之間的權(quán)重值;v和h分別為可視層節(jié)點(diǎn)數(shù)和隱含層節(jié)點(diǎn)數(shù)。
2.2.2 Elman神經(jīng)網(wǎng)絡(luò)
Elman網(wǎng)絡(luò)是動(dòng)態(tài)反饋型網(wǎng)絡(luò),它能夠反饋、儲(chǔ)存和利用過去時(shí)刻的輸出信息,同時(shí)實(shí)現(xiàn)靜態(tài)系統(tǒng)建模,也能實(shí)現(xiàn)動(dòng)態(tài)系統(tǒng)映射[25]。但由于算法為基于梯度下降法,存在訓(xùn)練速度慢和易陷入局部極小點(diǎn)的缺點(diǎn),難以達(dá)到全局最優(yōu)。
2.2.3 長短期記憶(LSTM)
長短期記憶是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò),該模型是為解決傳統(tǒng)RNN在長序列訓(xùn)練中梯度消失的問題[26],使網(wǎng)絡(luò)可以更好的收斂。
長短期記憶網(wǎng)絡(luò)模型由輸入層、隱含層、全連接層和輸出層四部分組成[27],輸入門決定了有多少新的信息加入到細(xì)胞中,遺忘門控制每一刻的信息防止被遺忘,輸出門則決定書否會(huì)有信息輸出。
2.2.4 最小二乘支持向量機(jī)(LSSVM)
不同于傳統(tǒng)向量機(jī),最小二乘支持向量機(jī)(LSSVM)是基于一組等式約束提出的,只需求解一個(gè)方程式就能得到閉式解,能夠加快訓(xùn)練速度[28]。
LSSVM的計(jì)算公式為:
式中,K(x,xK)為核函數(shù),可取徑向基核,多項(xiàng)式核,線性核等;b為常量;αK為拉格朗日常數(shù)。
2.2.5 自適應(yīng)增強(qiáng)(Adaboost)
Adaboost算法是一種提升方法,它能將多個(gè)弱分類器組合成一個(gè)強(qiáng)分類器,在前一個(gè)分錯(cuò)的弱分類器的樣本權(quán)值會(huì)得到加強(qiáng),更新后的權(quán)重樣本將被用來再次訓(xùn)練下一個(gè)新的弱分類器[29]。
弱分類器中誤差率最低的訓(xùn)練樣本集在權(quán)值分布中的誤差為:
式中,H(x)為樣本集上的誤差率;ei是被H(x)誤分類樣本是權(quán)值之和;wi為每個(gè)訓(xùn)練樣本的權(quán)值大小,y用于表示訓(xùn)練樣本的類別標(biāo)簽。
利用Stacking集成模型對不同礦區(qū)的41組數(shù)據(jù)進(jìn)行預(yù)測,包括數(shù)據(jù)處理、模型初選和模型優(yōu)選三部分,具體預(yù)測流程如圖3所示。
圖3 Stacking集成模型建立流程Fig.3 Building process of the stacking integration model
1)樣本數(shù)據(jù)處理。對獲得的數(shù)據(jù)集進(jìn)行缺失值插補(bǔ)及z-score標(biāo)準(zhǔn)化。
2)融合模型初選。采用五種基學(xué)習(xí)器對數(shù)據(jù)進(jìn)行訓(xùn)練后,得出訓(xùn)練集預(yù)測結(jié)果。選擇其中MAE<0.6且MRE<0.02的三個(gè)模型作為Stacking的基模型。
3)融合模型優(yōu)選。將選出的三種基模型進(jìn)行兩兩以及三者同時(shí)集成得到四種集成模型,將單個(gè)模型與集成模型進(jìn)行訓(xùn)練,選擇四個(gè)預(yù)測模型作為優(yōu)化模型。
4)融合模型驗(yàn)證。最后選擇MAE<0.2、RMSE<0.3且MAPE<10的模型作為最優(yōu)預(yù)測模型,對預(yù)測模型采用驗(yàn)證集對比分析。
為對比五種基學(xué)習(xí)器預(yù)測結(jié)果,利用Matlab軟件得到五種基學(xué)習(xí)器的訓(xùn)練精度,采用平均絕對誤差(MAE)和平均相對誤差(MRE)作為評價(jià)標(biāo)準(zhǔn)對預(yù)測結(jié)果進(jìn)行分析。將41組數(shù)據(jù)分別帶入五種基學(xué)習(xí)器,記錄訓(xùn)練集的預(yù)測結(jié)果,每個(gè)基學(xué)習(xí)器的預(yù)測結(jié)果見表4。
表4 基學(xué)習(xí)器預(yù)測結(jié)果Table 4 Base learner prediction results
從表4可以看出,五個(gè)算法的MAE和MRE都較小,但是LSSVM、Adaboost和DBN三個(gè)算法的平均相對誤差和平均絕對誤差結(jié)果較為穩(wěn)定,表明這三個(gè)算法預(yù)測精度較高,在Stacking集成模型中表現(xiàn)較好。
選用這三種算法作為Stacking集成的基學(xué)習(xí)器。在構(gòu)建集成模型的過程中有兩步,基學(xué)習(xí)器的訓(xùn)練和數(shù)據(jù)的集成?;鶎W(xué)習(xí)器訓(xùn)練包括Adaboost模型、LSSVM模型以及DBN模型訓(xùn)練,數(shù)據(jù)集成則是將三個(gè)基學(xué)習(xí)器的預(yù)測數(shù)據(jù)進(jìn)行整合,利用原始數(shù)據(jù)集得到最終預(yù)測結(jié)果。Stacking集成模型訓(xùn)練過程如圖4所示。
圖4 Stacking集成模型訓(xùn)練過程Fig.4 Training process of the stacking integration model
對五種基學(xué)習(xí)器進(jìn)行初選后,選擇LSSVM、Adaboost和DBN進(jìn)行Stacking集成,建立Stacking-LSSVM-Adaboost、Stacking-LSSVM-DBN、Stacking-Adaboost-DBN和Stacking-LSSVM-Adaboost-DBN四種預(yù)測模型。由表5可知,七種模型的預(yù)測精度均高于0.8,單一算法中Adaboost每一折精度均較高,在兩兩集成模型中,Stacking-Adaboost-DBN的精度最高,為0.927。集成模型的精度普遍比單個(gè)算法的精度高,證明了集成算法的優(yōu)越性。
表5 訓(xùn)練集各算法預(yù)測精度Table 5 Prediction accuracy of each algorithm in the training set
根據(jù)算法優(yōu)選規(guī)則,將平均準(zhǔn)確率高于0.9的Adaboost、Stacking-LSSVM-Adaboost、Stacking-Adaboost-DBN和Stacking-LSSVM-Adaboost-DBN四個(gè)模型作為優(yōu)化模型。
選用R2、MAE、RMSE和MAPE作為Adaboost、Stacking-LSSVM-Adaboost、Stacking-Adaboost-DBN和Stacking-LSSVM- Adaboost-DBN四個(gè)模型的評價(jià)指標(biāo)。具體評價(jià)指標(biāo)數(shù)值見表6。從表6可知,四個(gè)優(yōu)選模型中Stacking-LSSVM-Adaboost-DBN的R2最高為0.951,且該模型的MAE、RMSE和MAPE都比兩兩集成模型的數(shù)據(jù)小。該模型滿足MAE<0.2、RMSE<0.3且MAPE<10,說明該模型訓(xùn)練效果比其他模型好。因此選擇Stacking-LSSVM-Adaboost-DBN模型作為最優(yōu)算法。
表6 不同模型評價(jià)指標(biāo)Table 6 Evaluation indicators of the models
選出最優(yōu)算法后對不同礦區(qū)瓦斯含量及影響因素進(jìn)行預(yù)測,將得到的訓(xùn)練集數(shù)據(jù)和預(yù)測集數(shù)據(jù)與實(shí)際數(shù)據(jù)進(jìn)行對比,如圖5所示。從圖中可以看出預(yù)測值與真實(shí)值之間標(biāo)準(zhǔn)差最大為0.340,最小僅為0.123,預(yù)測得到的數(shù)據(jù)與實(shí)際數(shù)據(jù)相差不大,說明優(yōu)選模型具有很好的預(yù)測效果。
圖5 Stacking-LSSVM-Adaboost-DBN預(yù)測結(jié)果Fig.5 Prediction results of the Stacking-LSSVM-Adaboost-DBN model
1)采用Elman、RF、Adaboost、DBN及LSSVM五種算法進(jìn)行五折交叉驗(yàn)證,得到各算法的平均絕對誤差和平均相對誤差。根據(jù)模型初選規(guī)則,選擇LSSVM、Adaboost、DBN作為Stacking集成模型基學(xué)習(xí)器。
2)對LSSVM、Adaboost、DBN、Stacking-LSSVM-Adaboost、Stacking-LSSVM-DBN、Stacking-Adaboost-DBN和Stacking-LSSVM-Adaboost-DBN七個(gè)模型進(jìn)行優(yōu)選,選出R2>0.9的四個(gè)模型分別為Adaboost、Stacking-LSSVM-Adaboost、Stacking-Adaboost-DBN和Stacking-LSSVM-Adaboost-DBN,可知集成模型的精度普遍高于單個(gè)算法。
3)根據(jù)R2、MAE、RMSE和MAPE四個(gè)評價(jià)指標(biāo)對四種優(yōu)選模型進(jìn)行評價(jià),得到最終優(yōu)選模型為Stacking-LSSVM-Adaboost-DBN,模型精度為0.951,MAE為0.170,RMSE為0.203以及MAPE為7.41。從預(yù)測結(jié)果知三者集成模型精度最高,驗(yàn)證了集成模型的可行性。