基于Adam优化深度神经网络快速确定瓦斯抽采半径*

2022-08-06 03:30郝天轩陈国印赵立桢唐一举
中国安全生产科学技术 2022年6期
关键词:实测值半径瓦斯

郝天轩,陈国印,赵立桢,唐一举

(1.河南理工大学 安全科学与工程学院,河南 焦作 454000;2.河南省瓦斯地质与瓦斯治理重点实验室—省部共建国家重点实验室培育基地,河南 焦作 454000;3.煤炭安全生产河南省协同创新中心,河南 焦作 454000)

0 引言

煤炭在我国能源结构中占着非常大的比重,对经济和社会的发展有着不可替代的作用,然而随着煤炭不断开采,煤与瓦斯突出等灾害问题也严重威胁着煤矿企业的安全生产。预抽煤层瓦斯是防治煤与瓦斯突出的有效措施,钻孔布置间距是煤层瓦斯抽采设计的关键,有效抽采半径是钻孔布置间距的一个十分重要的依据[1]。如果设计的钻孔间距过小,很容易发生串孔事故,同时也增加了煤矿企业的安全成本,加剧了采掘接替紧张的局面;如果设计的钻孔间距过大,则会形成抽采盲区,易于引发煤矿安全事故[2]。所以,确定出合理的有效抽采半径,对煤矿企业安全生产具有重要意义。

目前,有效抽采半径的测定方法分为理论分析法、数值模拟法和现场实测法。理论分析法中的理论模型与现场实际存在一定偏差,且基本假设过于理想化,无法完全表征抽采钻孔周围煤体与瓦斯的流固耦合作用过程,致使有效半径理论分析结果存在较大误差,甚至存在与实际瓦斯抽采情况相差甚远的现象[3];数值模拟法首先通过收集某矿的瓦斯基础参数,然后建立某矿工作面抽采钻孔周围瓦斯流动数学模型,目前大多数人依据建立好的数学模型,并使用COMSOL模拟软件作为辅助工具来实现有效抽采半径数值预测[4-5];现场实测法包括瓦斯压力降低法、瓦斯含量指标法、示踪气体法和钻屑指标法。现场测试法测试难度大,人为因素干扰影响大,测试成本费用高,测量的效果还易受其他因素影响。上述方法计算其他矿的有效抽采半径时,还需要重复上述的繁琐操作过程,进而才能测得有效抽采半径。由此造成了大量的时间、财力等浪费,因此,提出1种只需输入矿井的主要影响参数,就能够快速较准确地确定出矿井有效抽采半径的方法,对于开展现场工作具有十分重要的现实意义。

鉴于此,本文提出基于Adam算法优化深度神经网络模型预测有效抽采半径数值的方法。该预测模型充分利用深度神经网络强大的非线性以及深度神经网络学习能力,可挖掘和学习不精确并带有噪声的有效数据集中复杂的深层关系[6]。最后利用训练好的最优模型并结合Python编程语言,开发出计算有效抽采半径的软件,利用该软件输入矿井5个主要基本参数可以快速且较准确地计算出有效抽采半径的数值。同时,选取四季春煤矿和鹤煤六矿进行了实例验证。

1 基于Adam算法优化深度神经网络模型

深度神经网络算法是将输入数据映射到目标数据,尝试在迭代中不断改变权值从而减小预测解与目标解之间的差别,使目标解和模型解之间的误差最小[7]。通过神经网络回归出来的并不是1个函数,而是1个训练出来的预测模型,没有相应的固定函数形式,而是n个数字特征,并且每层网络间的数字特征是相互关联的。

1.1 深度神经网络模型

由输入层、隐含层和输出层组成深度神经网络预测模型,深度神经网络模型网络拓扑结构中隐含层层数至少2层,如图1所示。深度神经网络预测模型的突出特点在于其具备多个隐含层,每层的神经元个数可使用经验公式自行选择。输入层和输出层神经元个数由具体实例问题决定,从输入层到输出层网络单元间每一条链路都是1条可学习训练的全连接链。与浅层神经网络相比,深度神经网络预测模型有远超过浅层网络的表达能力,对于复杂问题的处理能力表现得更好更强[8]。

图1 深度神经网络预测模型网络拓扑结构

通常输入层称为第1层,输出层称为最后1层。假设第i层有ni个神经元,这些神经元输入组成的向量为zi,输出组成的向量为hi,令u=hI以区分最终输出与隐含层的输出,据深度神经网络预测模型计算规则有式(1)~(2):

zi=wizi-1+bi,i=1,2,3,…,I

(1)

hi=fi(zi)

(2)

式中:wi∈Rni×ni-1为第i-1层到i层的权值矩阵;bi∈Rni为第i层的偏置向量;fi为第i层的激活函数。激活函数是模仿人脑神经元的阈值激活特性,向深度神经网络预测模型中引入非线性特征。

本文隐含层和输出层都选择ReLU函数作为激活函数,因其训练收敛速度更快,网络稀疏性更强。ReLU[9]函数如式(3):

fi(zi)=max(0,zi)

(3)

预测模型进行误差反向传播能够对超参数偏置和权重优化调整,本文选择均方误差MSE函数作为预测模型的损失函数,MSE[10]函数如式(4):

(4)

1.2 基于Adam算法优化深度神经网络预测模型

预测模型使用误差反向传播对偏置及权重参数调优。为了计算出实际输出预测值,损失函数选择MSE,因为MSE函数能够很好地表达出预测值和实际输出值的误差大小,函数形式如式(4)所示。

深度神经网络预测模型训练的目标是基于随机梯度下降Adam算法[11],使均方误差MSE不断减小,最终得到全局最优解为止。Adam算法是1种学习率自适应矩估计,寻找全局最优的优化算法,Adam引入了二次梯度校正。Adam算法结合了AdaGrad算法和RMSProp算法的优势,Adam算法相对于其他种类算法有一定的优越性,是比较常用的算法之一。Adam算法可高效地计算,所需内存少,超参数可很直观地解释,并且基本上只需极少量的调参等。但Adam算法的收敛性,在某些特殊情况下可能会不收敛。

Adam算法[8]优化更新实现的具体过程如下:

Require:初始学习率η(默认为0.001)

Require:一阶矩、二阶矩估计的指数衰减速率β1,β2在区间[0,1)内,(一阶矩β1,二阶矩β2分别默认为0.9和0.999)

Require:用于数值稳定的小常数δ(默认为10-8)

Require:初始参数θ

初始化一阶矩向量s=0

初始化二阶矩向量r=0

初始化时间步t=0

While没有达到停止准则do

从训练集中采包含n个样本{x(1),…,x(n)}的小批量,对应目标为y(i)。

更新时间步:t←t+1

更新有偏一阶矩估计:s←β1s+(1-β1)g

更新有偏二阶矩估计:r←β2r+(1-β2)g⊙g

应用更新:θ←θ+Δθ

End while

基于Adam算法优化深度神经网络有效抽采半径预测模型的预测流程如图2所示。

图2 基于Adam算法优化神经网络模型的有效抽采半径预测流程

2 基于Adam算法优化深度神经网络有效抽采半径预测模型

2.1 有效抽采半径预测模型的训练数据集

研究数据来源于知网近十年有关瓦斯有效抽采半径的硕士、期刊论文[12-17]。通过对这些搜集到的参考文献分析得出抽采负压对有效抽采半径影响较小,影响因素比较大的有煤层瓦斯初始渗透率、钻孔直径、抽采时间、地应力、煤层初始瓦斯压力。除此之外,还考虑到增加负压给煤矿企业带来的经济成本投入、实际效果及技术施工难度,因此,不考虑抽采负压作为训练数据的参数。确定煤层瓦斯初始渗透率、钻孔直径、抽采时间、地应力、煤层初始瓦斯压力作为神经网络方法训练数据的输入值,有效抽采半径作为目标输出值。本文收集整理的训练样本包括经过验证的模拟值和实测值,共计970组学习样本。所有数据样本每组均由煤层瓦斯初始渗透率、钻孔直径、抽采时间、地应力、煤层初始瓦斯压力及目标值有效抽采半径组成。

2.2 基于Adam算法有效抽采半径预测模型

隐含层神经元个数选取依据经验公式以及实际训练效果而定。通过对预测模型的实际训练效果考察,最终确定本文神经网络预测模型的网络拓扑结构为5-8-8-8-8-1,如图3所示,输入层5个神经元,隐含层4层,每层神经元个数都是8,输出层1个神经元。隐含层和输出层激活函数都选择ReLU函数,损失函数选择MSE,并采用Adam算法训练模型,设置的一些超参数已在1.2节介绍。此外,为了验证预测效果准确性,在训练前数据集全部打乱,使选取的测试样本没有任何规律可循,防止出现一些不必要的误差。

图3 有效抽采半径预测模型网络拓扑结构

首先输入层输入煤层瓦斯初始渗透率X1、钻孔直径X2、抽采时间X3、地应力X4、煤层初始瓦斯压力X5等5个基本参数,接着初始化权重和偏置,然后进行前向传播由输入层到隐含层再到输出层,输出层得到的输出预测值与样本中输出目标值Y有效抽采半径参数进行均方误差MSE处理,最后将得到的均方误差MSE作为损失函数进行反向传播调整权重和偏置。如此反复不断迭代,最大迭代次数5 000次,使MSE达到最小为止,这即是完整的神经网络处理过程。通过输入的数据集进行不断更新调整并优化神经网络模型,直到最后训练得到1个预测输出值和目标值误差最小的神经网络预测模型。最后保存训练出的最优模型,利用该预测模型输入其他某矿的上述5个基本参数即可以进行有效抽采半径数值的预测。

2.3 测试结果与分析

同样,首先也要打乱测试集,然后从测试数据集中随机选取2组数据作为测试数据,每组14个测试数据,把每组测试数据输入训练好的最优模型预测输出值,然后把测试数据得到的预测输出值与测试数据样本的输出值绘制在1个图上进行对比分析。如图4~5所示,实线代表预测输出值,虚线代表测试数据样本的输出值,从2个图中可看出预测模型得到的预测值和测试数据样本输出值拟合的曲线较好。从而也验证预测模型预测效果较好。

图4 第1组测试数据对比

图5 第2组测试数据对比

3 软件研发与应用

3.1 软件设计及实现

软件设计遵循一致性原则、兼容性原则、适应性原则、指导性原则、结构性原则。软件开发利用纯开源工具,极大降低了开发成本。

3.1.1 软件开发平台

操作系统:Windows10操作系统。Python库:Pyside2,TensorFlow。IDE(集成开发环境):Pycharm。

3.1.2 软件实现方法

前端基于Python Qt平台界面设计与开发,后端使用基于Python语言的TensorFlow包进行模型的训练、保存及调用,最后打包为.exe文件。

运行.exe文件,程序会动态加载利用Python Qt平台设计出软件界面的.ui文件,以及加载保存的最优预测模型.h5文件,并把预测模型的.h5文件作为1个预测模型使用,利用这个模型即可以根据输入的基本参数计算出瓦斯有效抽采半径。

3.1.3 软件使用

运行软件后进入登录界面,接着点击登录界面(如图6所示)的【登录】按钮即可跳转到有效抽采半径计算主界面。进入到主界面以后,可看到界面上有输入参数一栏和有效抽采半径计算一栏,在输入参数一栏的地应力(MPa)、钻孔直径(mm)、抽采时间(d)、煤层初始瓦斯压力(MPa)、煤层初始渗透率(m2×10-16)提示文本参数后输入框,输入需要计算的参数数值。最后在有效抽采半径计算一栏点击【计算】按钮,即可看到计算出的结果显示在有有效抽采半径数值文字提示的单行文本框中,如图7所示。

图6 登录界面

图7 计算出结果界面

如果想要再次重新计算,只需在有效抽采半径主界面输入参数一栏输入需要计算的参数数值,再次点击【计算】按钮,计算出的结果依然显示在有效抽采半径计算一栏的单行文本框内。

3.2 实际工程应用

为了验证保存好的基于Adam算法有效抽采半径预测模型的准确性和适用性,本文选取样本以外的其他2个矿进行有效抽采半径计算验证。选取四季春煤矿和鹤煤六矿进行有效抽采半径预测,计算出结果界面如图7所示,并记录下计算值,其中收集的四季春煤矿已经给出数值模拟值、理论分析值以及实测值,鹤煤六矿给出了数值模拟值和实测值,最后对2个矿的瓦斯有效抽采半径的计算值、给出的其他值与实测值进行对比分析,四季春煤矿有效抽采半径结果对比见表1,鹤煤六矿有效抽采半径结果对比见表2。

从表1可看出,计算值与实测值的相对误差随着抽采时间增加变化不大,相对误差均稳定在10%之内;理论计算值与实测值的相对误差随着抽采时间增加先减小后增加;数值模拟值与实测值的相对误差先是随着时间增加而减小,后随时间增大而变大,并且相对误差出现了超过10%的情况。由此可清楚地得到3个数值与实测值的相对误差大小,总体来说神经网络预测计算值的效果比较好,也可看出预测效果随着抽采时间的增加变的越来越好。从表2可看出,计算值与实测值几乎相等,计算值和实测值的相对误差为1%,而数值模拟值与实测值相对误差较大,这也说明本文模型的预测效果比较理想。

表1 四季春煤矿有效抽采半径结果对比

表2 鹤煤六矿有效抽采半径结果对比

4 结论

1)根据收集到的970组数据集进行训练,不断优化更新基于Adam算法的有效抽采半径预测模型,最终得到基于Adam算法的深度神经网络最优预测模型。

2)通过对COMSOL模拟软件得到的数值、神经网络计算得到的数值及实测数值进行对比分析,可发现神经网络模型计算数值与实测值比较接近,也说明神经网络预测模型适用性较强。

3)以训练好的最优神经网络模型为基础,开发出有效抽采半径数值计算软件,使用该软件计算出有效抽采半径的方法与其他预测瓦斯有效抽采半径方法相比,操作更加简单、效率更高,不易受人为因素的影响,可为暂不具备现场测试条件的矿井抽采设计提供一定的参考依据。

猜你喜欢
实测值半径瓦斯
6NOC2022年6月6月CERNET2国内互联互通总流量降50G
直击多面体的外接球的球心及半径
矿井瓦斯涌出量预测
基于Ansys屋盖不同单元类型下的模态分析
11采区永久避难硐室控制瓦斯涌出、防止瓦斯积聚和煤层自燃措施
一种基于实测值理论计算的导航台电磁干扰分析方法
将相等线段转化为外接圆半径解题
浅析比重瓶法实测土粒比重
高瓦斯矿井防治瓦斯异常涌出措施的应用
哈瓦斯与埃及考古学