基于数据填补-机器学习的煤与瓦斯突出预测效果研究*
时间:2022-12-03 20:10:05 来源:柠檬阅读网 本文已影响 人
陈利成,陈建宏
(中南大学 资源与安全工程学院,湖南 长沙 410083)
煤与瓦斯突出是发生在煤矿井下的重大动力灾害之一,是复杂的非线性突出影响因素在失控演化过程中的灾变行为[1]。随着采掘深度和强度的增加,煤与瓦斯突出事故频发,严重影响煤矿的安全生产。因此,及时、准确预测煤与瓦斯突出事故,对煤矿安全生产具有重大现实意义。
国内外研究学者针对煤与瓦斯突出预测进行了大量研究,提出多种预测方法[2-9]。其中,李冬等[2]基于SVM,PNN和自然伽马曲线,得到了瓦斯含量、构造煤分布和煤层顶板岩性的参数数据,组成1套综合的突出预测方法;
温廷新等[3]使用灰色关联和因子分析提取煤与瓦斯突出指标,通过量子遗传算法检索LSSVM的最优的惩罚参数和核函数参数;
念其锋等[4]建立了网络分析法和联系熵耦合的预测模型,预测结果符合工程实际,表明该方法确定指标权重和危险性预测的合理性;
张友谊等[5]基于地质因素,构建了煤与瓦斯突出多耦合预测模型。然而,在机器学习或模式识别领域中,数据集优化带来的分类或预测精度的提高通常会高于算法改进带来的提高[6]。现实中煤与瓦斯突出的非事故数据很容易获得,而事故发生后监测设备毁坏导致事故数据较少且时有缺失。事故数据的稀缺导致建立的预测模型存在精确度低、过拟合等问题。
鉴于此,本文利用多重插补(Multiple Imputation,MI)和随机森林填补(MissForest,MF)对煤与瓦斯突出事故数据进行预处理,填补完整的数据通过SVM,ELM,RF 3种机器学习算法训练,预测煤与瓦斯突出事故,并将结果进行对比分析。
数据缺失分为完全随机缺失(MCAR)、随机缺失(MAR)、非随机缺失(MNAR)3种。数据完全随机缺失和随机缺失分别如式(1)和式(2)所示,若式(1)Xmis中的缺失数据与Xmis相关则为非随机缺失。
P(G|X)=P(G|Xobs,Xmis)=P(G|φ)
(1)
P(G|X)=P(G|Xobs,φ)
(2)
式中:Xobs为不含缺失值的完全变量;
Xmis为含有缺失值的不完全变量;
G=(g1,g2,…,gn),gi=1表示X不缺失,gi=0表示数据缺失;
φ为与数据集中任何变量都无关的参数。
1.1 多重插补MI
MI是Rubin[10]基于单一插补的基础上提出的,具体过程是通过为每个缺失值构造1个以上的预设值,得到若干个完全数据集,对所有数据集采取同样的处理方法,最后综合所有处理结果,得到缺失数据的推断值。MI步骤如图1所示。
图1 MI步骤Fig.1 MI steps
1.2 随机森林RF及随机森林填补MF
随机森林(Random Forest,RF)是Breiman[11]提出的1个包含多个决策树的分类器,其以分类回归树CART为基本分类器,利用Bootstrap方法重采样,随机产生N个数据集S1,S2,…,SN。根据每个数据集生成相应的决策树T1,T2,…,TN,在树的每个节点处从M个属性中随机挑选m个属性(m≤M),再根据Gini指标选取最优属性进行分支生长。每棵树都充分生长,不进行剪枝操作。根据生成的树分类器对测试集X进行预测,得到对应的类别C1(X),C2(X),…,CN(X)。N个决策树中得票最多的类别即测试集X所属的类别。随机森林算法流程如图2所示。
图2 随机森林算法流程Fig.2 Process of random forest algorithm
使用RF填补数据的步骤如下[12]:
1)用单一插补或均值填补等方法对数据集X的所有缺失值进行初步填补,填补后的矩阵记为Xoldimp。
2)用不含缺失值的完全变量构建随机森林,随机森林构建流程如图2所示。
3)将不完全变量作为特征变量输入,随机森林预测缺失值,填补后新的矩阵记为Xnewimp。
4)重复3),直到新的Xnewimp与上1个Xoldimp的差值首次增加。
1.3 支持向量机SVM
支持向量机(SupportVector Machine,SVM)的主要思想就是在高维空间建立1个或1组分类超平面,使得不同类别的样本点之间的隔离边缘最大化。对于二分类问题可转换成带约束的最小值问题[13],如式(3)~(5)所示:
(3)
s.t.yi[(ωxi+b)]≥1-σi
(4)
i=1,2,…l,σi≥0
(5)
式中:ω为与超平面垂直的向量;
xi为输入样本;
yi为2个类别值;
b为位移;
l是样本数。
为求解上述问题,引入拉格朗日函数,如式(6)所示:
(6)
式中:αi>0,为拉格朗日乘子。
将x作非线性映射Φ:Rn→H,H为高维映射空间,最终得到的最优分类函数如式(7)所示:
(7)
1.4 极限学习机ELM
极限学习机(Extreme Learning Machine,ELM)作为1种新型前馈神经网络学习算法,与传统神经网络相比,不使用任何基于梯度的技术,只对参数进行1次调优,所以具有学习速度快、泛化性能好的优点[14]。任意1个有P个隐含层节点的单隐含层神经网络如式(8)所示:
(8)
式中:g(x)为激活函数;
Wi为输入权重;
βi为输出权重;
bi为第i个单元的偏置。
(9)
用矩阵表示为Hβ=T,其中H为隐含层节点输入,β为输出权重,T为期望输出。
Wi和bi一旦随机确定,问题可以转换为求解输出权重矩阵的最小二乘解。输出权重矩阵β=H-1T,其中H-1是H的Moore-Penrose广义逆。
2.1 煤与瓦斯突出参数选取
每个矿山的地质条件不同、煤层赋存情况存在差异,煤与瓦斯突出的危险性也因此差异巨大。诱发煤与瓦斯突出的因素众多且往往相互关联,参数的选取是预测模型的基础,选取的参数要具备科学性、系统性和易取性等。煤与瓦斯突出是能量的释放过程,师皓宇等[15]通过对煤与瓦斯突出前后能量的分析,研究了瓦斯含量对突出的影响。研究表明:煤与瓦斯突出释放能量值来源与路径无关,与瓦斯含量和瓦斯压力相关。此外,瓦斯放散初速度、孔隙率、煤层坚固性系数对于突出的灵敏度较高。故选取X1瓦斯含量、X2瓦斯压力、X3瓦斯放散初速度、X4孔隙率、X5煤层坚固性系数作为预测参数。本文选取某矿山煤与瓦斯突出数据133组,其中事故数据62组(27组包含缺失数据),非事故数据71组(不含缺失数据)。部分数据见表1。
2.2 数据填补
SPSS中提供3种多重插补方法,分别是回归预测法(RPM)、倾向得分法(PSM)和马尔可夫链蒙特卡罗法(MCMC)。表1的数据为非单调缺失,所以采用MCMC法对缺失数据进行填补[16]。使用R中的MissForest包对数据进行处理,迭代5次后,OOBerror收敛于2.14%,得到填补后的矩阵。为展示数据填补效果,将MI和MissForest填补后的数据的若干参数与原始数据(Raw Data,RD)进行比较,比较结果见表2。
表1 煤与瓦斯突出数据集Table 1 Data sets of coal and gas outburst
表2 填补前后的平均值与标准差Table 2 Mean values and standard deviation before and after imputation
由表2可知,2种填补方法的瓦斯放散初速度平均值与原始数据差异较大,而孔隙率和煤层坚固性系数的差异几乎可以忽略;
在标准差方面,RF填补的3种缺失参数均小于原始数据,且缺失数据越少,标准差的变化越明显,MI对标准差的影响低于RF填补。
2.3 RF、SVM、ELM参数确定
为保证3种机器学习算法对煤与瓦斯突出预测的准确率达到最高,需要对相应参数进行调整。RF中决策树棵数影响模型的泛化性能,一般来说,随机森林中决策树的棵数越多,模型的预测效果越好,运行速度也相应变慢,此外决策树棵数越多,模型越容易过拟合。因此在保证模型预测效果的同时,应选择尽量少的决策树棵数。具体步骤如下:设定决策树棵数为50~1 000之间,步长50,每个模型运行100次,预测准确率取均值,模型在不同决策树棵数下的预测准确率如图3所示。决策树棵数为200~300,400~500之间时,预测准确率较高,综合考虑预测准确率和拟合效果,最终确定决策树棵数为250。
图3 随机森林中决策树棵数对性能的影响Fig.3 Influence of number of decision tree on performance in random forest
SVM中需要调节的参数主要是惩罚参数c和核函数参数g。目前最常用的方法是让c和g在一定范围内取值,通过交叉验证(CrossValidation,CV),找到该范围内最佳的c和g。设定c和g范围为-10~10之间,通过K折交叉验证,得到最佳的c为9.765 6×10-4,最佳的g为9.765 6×10-4。
ELM只需确定隐含层神经元个数和激活函数,就可以完成建模。将隐含层神经元个数设为5~200之间,步长为5,分别在sigmoid,sin,hardlim3种激活函数下运行,预测准确率如图4所示。隐含层神经元个数对预测性能的影响较大,但并非神经元个数越多越好。考虑到预测准确率及避免过拟合的情况,确定激活函数为sigmoid,隐含层神经元个数为15。
图4 不同激活函数下隐含层神经个数对性能的影响Fig.4 Influence of number of hidden layer neurons on performance under different activation functions
2.4 煤与瓦斯突出预测
事故数据总计62组,其中参数完整的计35组,为验证2种数据填补算法的有效性,将填补后的数据和原始数据分别输入3种机器学习算法进行测试,即构建9种煤与瓦斯突出预测模型。对填补前后的数据集进行归一化处理,消除量纲的影响。在Matlab中使用randperm函数分别构建填补前后数据集。填补前,从非事故数据集中随机选取53组,事故数据集中随机选取26组,总计79组作为训练集,剩余27组作为测试集;
填补后,从非事故数据集中随机选取54组,事故数据集中随机抽取48组,总计102组数据作为训练集,剩余31组数据作为测试集。数据集的差异会影响预测结果,为减少预测误差,每种模型运行100次,对预测结果取均值,最终结果见表3。
表3 模型评价结果Table 3 Results of models evaluation
本文采用总体准确率(Overall Accuracy,OA)、局部准确率(Local Accuracy,LA)和运行时间(T)作为模型的性能评价指标[17]。
1)OA:测试集中分类正确的样本数占总样本数的比例,体现模型的综合性能,如式(10)所示:
(10)
式中:C为分类正确的样本数;
T为测试集总样本数。
2)LA:测试集中事故样本和非事故样本中正确分类样本数所占的比例。LA(0)为非事故样本中正确分类样本数所占的比例,LA(1)事故样本中正确分类样本数所占的比例,体现了模型对事故数据和非事故数据的预测精度,,如式(11)所示:
(11)
式中:C(i)为分类正确的事故数据或非事故数据个数;
T(i)为事故数据或非事故数据个数,i=0时为非事故数据,i=1时为事故数据。
3)T:模型的运算速度,T越小,模型运算速度越快,运行成本就越低。
不同模型下的评价参数如图5所示。
由图5可知,OA最高为MF-RF模型,最低为RD-SVM模型;
从数据处理方法来看,经MI和MF处理后的数据,总体正确率高于原始数据;
从预测算法来看,OA从高到低分别为:RF>ELM>SVM,即使用RF预测煤与瓦斯突出的总体正确率最高,其次是ELM,最后是SVM;MI对OA的提升率为0.98%~1.11%,MF对OA的提升率为5.13%~7.50%。各模型的OA从高到低分别为:MF-RF>MI-RF>MF-ELM>MF-SVM>RD-RF>MI-ELM>RD-ELM>MI-SVM>RD-SVM。
文献[16]中使用MI-SVM模型,其OA为88.87%,与本文得到的结果相近,而MF填补后的数据,其预测准确率都要高于文献[16]中所得结果,说明在预测煤与瓦斯突出事故中,MF的填补效果要高于MI。
在LA中,较为重要的是LA(1),因为预测煤与瓦斯是否突出的目的是要控制事故,减少事故造成的人员伤亡和财产损失。LA(1)最高的为MF-RF模型,最低的为RD-SVM模型;
由表3可知,MI-RF模型和MF-RF模型的LA(1)大于LA(0),说明通过数据填补后,RF算法对于煤与瓦斯突出预测的敏感度提高,对于事故的预测准确率甚至高于对非事故的预测准确率。
从运算时间来看,由于填补后的数据集增大,运算时间相应增加,且MI处理后的T大于MF处理后的T;
从预测算法看,T从高到低分别是:RF>SVM>ELM。
综上所述,经过数据填补,煤与瓦斯突出的事故数据增加,整体上提升预测结果的准确率,但运行时间也相应增加。MissForest总体准确率高于MI,运行时间低于MI,故MissForest效果更好。
1)利用数据填补算法MI和MF处理煤与瓦斯突出事故数据,扩大机器学习的训练集,填补后的数据标准差减小,数据稳定性增强。
2)随着数据填补后预测准确率提升,运行时间也相应增加。MissForest总体准确率更高,运行时间更短,其数据填补效果好于MI。
3)使用OA,LA,T指标评价模型性能,从预测算法上看,对煤与瓦斯突出预测的OA从高到低分别为RF>ELM>SVM,T从低到高分别为ELM