Full waveform inversion gradient construction based on the complex frequency attenuation back propagation operator
-
摘要: 从梯度构建中反传算子的角度出发,本文分析了影响梯度精度的因素, 并提出了一种新的基于复频率衰减反传算子的全波形反演梯度构建法, 以压制梯度构建过程中产生的弧状噪音;针对全波形反演的巨大存储量和精度问题,本文采用限内存的BFGS(L-BFGS)算法进行迭代反演.对平层模型、逆掩断层模型以及凹陷模型的测试结果表明,与常规梯度算法相比,基于复频率衰减反传算子算法所构建梯度的精度得到明显改善.用复杂断块模型进行全波形反演测试,并将其与常规算法得到的反演速度精度进行对比,结果验证了该方法的正确性及其对提高梯度精度的有效性.Abstract: This paper analyzed the factors affecting the gradient accuracy from the view of back propagation operator, and proposed a new method for gradient construction of full waveform inversion based on complex frequency attenuation back propagation operator. The gradient construction noise can be suppressed with the proposed method. During the inversion, the BFGS (L-BFGS) method is adopted to balance the relation between the huge storage capacity and the accuracy. The tests based on single layer model, overthrust fault model and sag model validate that the proposed method can suppress the noise in the gradient construction comparing with the conventional gradient method. Then the full waveform inversion is tested on a complex faulted blocks model, and the inversion accuracy is compared with that of the conventional method, proving that the proposed method in this paper is correct and effective in improving the gradient accuracy.
-
Keywords:
- full waveform inversion /
- gradient operator /
- complex frequency attenuation /
- L-BFGS
-
引言
矿震是由开采而产生的一种诱发性地震,随着矿井的开采,井下聚集大量能量并在超过临界点时释放,严重时会造成顶板事故、冲击地压、煤与瓦斯突出等煤矿突发事故(Ursano et al,2006;李长洪等,2009;Grayson et al,2009;陈光波等,2021)。矿山微震信号拾取对于矿震监测和矿山的安全生产具有重要意义。如何快速准确地识别微震事件和如何进行高质量震相拾取成了矿震检测最急迫的问题(Dubey,Barnard,1997)。矿山微震与天然地震有很大的区别,主要表现在:矿山微震频发且震源位置相对较浅,发震位置与台阵仅相隔几千米,台阵接收到的波形数据中P波与S波的到时接近,难以区分;矿震的震动能量相比天然地震小,持续时间较短,但震源深度较浅,发生的大能量微震事件会诱发灾害,造成的危害大;微震数据尽管也有标记实例,但数据集少,不适合大规模数据集的深度学习。
将微震检测系统用于微震的检测和数据的传递,能够采集矿井中的微震信息。然而由于机器震动、人员车辆走动等环境的影响,检测系统采集到的微震信号中会包含大量的噪声,增加事件的识别难度(陈泽等,2020)。长期以来,微震检测和初至到时拾取都是通过人工或低精度自动算法来完成。人工拾取方法可以通过预处理的方式达到极高的精度,但是耗时长,面对大量微震数据时效率低。传统的自动检测方法,如长短时窗能量比法(short time average over long time average,缩写为STA/LTA),该方法应用于不同矿区和不同信噪比的波形数据时具有较大的误差,且准确率不够稳定,严重时甚至会出现检测后仍需人工重新标注的情况,大大增加了人工成本(Akaike,1974;Allen,1982;Vaezi,van der Baan,2015;Zhang et al,2018;王议迎等,2021)。
早在二十世纪九十年代,深度学习就已应用于地震检测,实现了对波形的广义检测(Dai,Macbeth,1995)。深度学习通过大量有标签的样本实例进行训练,可以挖掘出样本中的深层次特征。基于该特点,深度学习在地震领域的应用取得了不错的成绩。Wang等(2021)提出了基于深度卷积神经网络的Dpick神经网络算法,利用深度卷积的特征提取功能实现了较高精度的P波拾取;Zhou等(2019)提出DetNet+PpkNet的事件检测和相位选取算法,利用长短期记忆网络的时序处理功能,能够较好地拾取P波和S波;Zhu和Beroza (2018)基于U-net网络设计的PhaseNet震相拾取算法,可以同时识别P波和S波。然而,相比较天然地震的检测,矿震存在事件检测和震相拾取的精准度需求高、矿震台站采样频率高、提取数据量大及数据集少等问题,为进行深度学习模型的训练和特征提取增加了困难,使得地震学上的深度学习模型无法完美地应用于实际矿震中(周飞燕等,2017;赵洪宝等,2021)。
鉴于此,本文提出了一种针对小样本的矿山微震事件检测和震相拾取的神经网络方法,并结合数据增强方法(Zhou et al,2019;李安等,2020)在数据集较少的情况下达到训练拾取精度;引入自注意力(self-attention)机制,结合卷积神经网络(convolutional neural networks,缩写为CNN)和门控循环单元(gated recurrent unit,缩写为GRU)构建到时拾取模型,提高模型的精度,以期通过上述研究能够快速有效地识别矿山微震事件,并进行高质量P波到时拾取。
1. 方法
1.1 总体架构
本文主要解决微震事件检测和到时拾取的问题,直接通过输入三分量数据来训练完成。如图1所示,首先对数据进行预处理和数据增强,以便检测和识别;之后检测是否存在微震事件,可以通过卷积神经网络模型来完成,与图像识别类似,将数据输入到事件检测模型(主要由CNN构成,简称CNNDet)中,输出分为“噪声”、“事件开始”和“事件中”三类,该部分会对检测到的事件进行P波到时的预拾取;最后,将具有震相振动波形作为时间序列,采用以GRU为主体、自注意力机制为核心的到时拾取模型(由CNN,GRU和自注意力机制构成,简称CGANet)对其进行精确的震相拾取。
1.2 事件检测模型设计
现如今,大部分地震的微震检测都采用噪声和事件组成的二分类卷积神经网络来完成(Tang et al,2021),但这类卷积神经网络由于采样频率低,其提取的事件波形数据量相对较小,而矿震一般采样率高,提取的事件波形数据量大,会为之后的震相拾取增加负担,增加处理数据的时间成本。因此本文采用三分类卷积网络,在噪声和事件中间增加“事件开始”标签,提取该标签所对应的矿震波形,缩小提取事件的波形,加快处理时间,并进行一定程度的到时预拾取。如图2所示,CNNDet主要由CUnit,FD和softmax构成,其中${\rm{Conv}} ( k{\text{×}}s ) $中k代表卷积核,s表示移动步长,${\rm{MaxPool}} ( k{\text{×}}s ) $中k代表池化核。首先利用多个CUnit对波形数据进行特征提取和压缩。为防止过拟合,每个卷积层都用批量归一化(batch-normalization,缩写为BN)实现正则化,并且在每个卷积层之间都使用池化层来实现下采样,以此来压缩数据和参数,每层CNN的通道数分别设为8,32,64,64;之后是FD模块,该模块由全连接层和Dropout构成,作用是将提取的特征进行总结判断输出。由于波形数据是一维时间序列,采用一维卷积进行特征提取。输入的是三分量波形,有三个通道(一个通道代表一个分量)。最后使用softmax激活函数输出标签的概率,并将检测到的事件进行提取输入到CGANet中。
每层卷积的激活函数为LeakyReLU,形式为:
$$ {\rm{LeakyReLU}} = \max ( 0.25 x , x ) {\text{.}} $$ (1) 1.3 到时拾取模型设计
CGANet的总体框架如图2所示,其主要包括CUnit、GRU单元、注意力机制等几部分。将检测出来的微震事件用CNN来提取特征,CNN通过不断的卷积和池化,从较多的采样点中提取出特征,并将特征维度降低。相比较人眼的识别特征,CNN不仅能够提取一些相对明显的特征,还可以从含噪声的微震事件中提取出一些不易识别的抽象特征,每层CNN的通道数分别设为8,32,64。CNN仅能考虑微震波形的空间信息,而会忽略其中的时间序列,于是在CNN后加入了双向GRU层,每层设置64个神经元,则该网络结构便具有很好的记忆功能,因其拥有无限长的感受野,可提取时序特征。此外,为了能够捕捉时间序列中的依赖关系,充分考虑波形之间不同阶段的状态信息,引入自注意力机制(Vaswani et al,2017;Mousavi et al,2020;李宇等,2023),通过权重参数的调整,使得模型对震相的识别更加精确。最后连接两个全连接层对所有的信息特征进行总结并通过softmax输出。为了防止过拟合,每层都采用Dropout正则化对网络进行优化。
CGANet中的自注意力机制公式表示为:
$$ {\rm{Attention}} ( {\boldsymbol{Q}}, {\boldsymbol{K}}, {\boldsymbol{V}} ) = {\rm{softmax}}\left(\frac{{\boldsymbol{Q}{{\boldsymbol{K}}^{\rm{T}}}}}{{\sqrt {{d_K}} }}\right) {\boldsymbol{V}}\text{,} $$ (2) $$ {\rm{softmax}}{ ( X ) _{ij}} = \frac{{{{\rm{e}}^{{X_{ij}}}}}}{{\displaystyle\sum {{{\rm{e}}^{{X_i}}}} }} \text{,} $$ (3) 式中,Q为当前的特征信息,K为Q下一步可能对应的所有的特征信息,V为权重,${d_K}$为Q和K的维度,当Q=K=V时则为自注意力机制。计算每个特征信息与所有对应信息的关系得分,然后做softmax归一化。自注意力机制中的每个特征值都会和该波形内所有提取的特征信息进行注意力权值计算,学习内部的特征依赖信息以捕捉波形的内部结构。
2. 数据集
本文所用的数据集为2019—2020年山西和辽宁某矿区地面微震监测系统的数据。振动数据波形通过布置在煤矿中的台网设备获取,台站设备由九个宽频带三分量微震台站组成,其空间范围约为6 km×4 km×1 km,原始采样频率为5 kHz。由于矿震发生的位置与台站位置相对较近,震相主要为直达P波。采用的数据为通过人工方式选出的2 278个微震事件。从人工挑选的数据中选取了404条数据作为验证集,其余的1874条数据用于训练集和测试集。
2.1 数据预处理及数据增强
对波形数据集进行预处理。如图3所示,首先采用200 Hz的低通滤波器对其进行滤波,避免高频信号噪声对模型训练的干扰,其次,对数据集进行最大值归一化。采用数据增强方法,根据标签类型,随机选择P波到时在时间窗的位置,并增加不同程度的高斯白噪声,以此来添加更多的数据集和提升模型的泛化能力。本文对训练集和测试集进行了数据增强,产生了8 820条数据用于两个模型的训练和测试。
2.2 界限标签法
本文采用界限标签法来设置数据集的标签。在时间窗里设置一定的界限区域,以该区域为限,分为三种状态,分别为“噪声” 、“事件开始”和“事件中” ,其中: “噪声”用来检测噪声,界限区域内仅有噪声;“事件开始”用来提取事件波形或到时拾取,界限区域内有噪声也有波形; “事件中”是为了检测事件结束并区分到时与事件进行两种类型,界限区域内仅有震动波形。矿震的波形数据采样频率高,本文将时间窗调小,提高检测事件的精度,以免遗漏一些小的矿震波形。CNNDet提取出来的切片时间窗口应该包含明显的噪声和波形震相部分,时间窗大小设为2 s (1万个点),滑动步长为0.4 s (2 000个点),CNNDet训练模型标签选取如图4所示,在滑动窗口中设置一个大小为0.4 s的界限区域,位于滑动窗口0.4 s的位置,该位置可以保证提取标签“事件开始”所对应的时间窗口,该窗口内覆盖了难以识别的震相部分和前后明显的噪声波形部分。
CGANet的训练和测试数据同样使用界限标签法,模型的时间窗口设置为1 s,滑动步长为30个采样点,在滑动窗口中设置一个大小为30个点的界限区域,位于滑动窗口0.3 s的位置,选择15个点的位置作为P波到达时间,确保了理论上最大的拾取精度小于15点(<0.006 s)。
3. 试验测试
3.1 性能测试
本文以神经网络库Keras为基本库函数,基于tensorflow2.0深度学习框架搭建并训练模型。模型训练采用自适应运动估计算法,采用阶梯型学习率来优化计算过程。数据采用小批量32个,小批量数据训练可以使得模型更好地拟合,不容易并行化。两个模型的迭代次数设置为200,损失函数采用交叉熵。本文测量了事件和到时模型在训练和验证过程中的分类精度和损失精度。
为了分析模型的性能,本文在训练过程中计算了测试结果的曲线下面积 (area under curve,缩写为AUC)、精确率(precision)和召回率(recall)。AUC为接受者操作特性(receiver operating characteristic,缩写为ROC)曲线与坐标轴围成的面积。通常,AUC的值介于0.5到1.0之间,较大的AUC代表了较好的模型表现。精确率表示自动拾取算法预测结果的准确度,召回率用于检测自动算法拾取的完整度,二者公式如下:
$$ {\rm{Precision}}{{ = }}\frac{{N_{\rm{TP}}}}{{N_{\rm{TP}} + N_{\rm{FP}}}}\text{,} $$ (4) $$ {\rm{Recall}} = \frac{{N_{\rm{TP}}}}{{N_{\rm{TP}} + N_{\rm{FN}}}}\text{,} $$ (5) 式中,NTP为检测正确波形的次数,NFP为将错误波形检测为正确的次数,NFN为正确波形漏选的次数。如图5所示,通过对不同迭代次数的验证集计算精确率和召回率,评估两个模型的训练进度和性能,结果显示:CNNDet模型迭代到80次后进入平缓期,训练精度收敛到99%以上,测试集精度达到97.33%,该模型最后精确率和召回率都稳定在98%以上;对于CGANet模型,模型的训练精度收敛到95%,测试集精确率低于训练精度,达到94%以上,未出现过拟合情况。
此外,针对模型测试的到时误差,本文增加平均绝对误差(mean absolute error,缩写为MAE)和标准差试验评价指标,MAE能够直观地表现出自动算法的拾取精度,标准差可以展现出波形到时误差的离散程度。为了客观地评估CNNDet+CGANet的实用性和优越性,选取了三种震相拾取算法进行对比:STA/LTA算法、DPick算法和DetNet+PpkNet算法。由于直接使用STA/LTA算法同时进行识别检测和到时估计会出现大量的波形检测遗漏(付继华等,2019),本文先使用CNNDet模型检测矿震事件并提取波形,再使用阈值较小的STA/LTA算法进行到时估计。
以验证集对四个模型进行测试,并将测试的结果进行分析,如表1所示。可见:在高采样的优势下,相比于地震领域的震相识别,各个方法的精度都有不同程度的提升,但传统算法提升较少,所采用的传统STA/LTA算法精确率较低,相对而言,深度学习方法在各方面表现更好。
表 1 本文方法与STA/LTA,DPick和PpkNet的性能比较Table 1. The performance of the proposed method in this study compared with STA/LTA,DPick and PpkNet方法 精确率 召回率 平均绝对误差/s 标准差/s 误差>0.2 s占比 CNNDet+STA/LTA 0.724 0 0.724 0 0.028 115 0.086 968 2.28% DPick 0.854 6 0.847 0 0.027 957 0.060 322 2.74% DetNet+PpkNet 0.878 0 0.871 0 0.019 124 0.051 418 1.36% CNNDet+CGANet 0.948 0 0.948 0 0.014 158 0.051 052 1.14% DPick采用的是深度CNN算法,虽然深度CNN模型具有较为复杂的参数结构,但是其忽略了波形数据中的时间因素,具有较小的感受野,导致其相比较于其它深度学习算法来说精度较低。PpkNet采用的是双向GRU模型,其虽然有良好的感受野,但缺少对波形数据的特征提取,很容易受到噪声的影响。试验结果显示,CGANet的误差均值仅有0.014 s,可见本文算法相比其它三种算法具有更好的震相拾取结果。为了直观地展示本文方法的精确率,将每种方法预测的P波到时误差绘制成直方图,如图6所示,可以看出本文算法相较其它三种算法具有较好的误差分布。
3.2 抗噪性测试
在实际应用中,当背景噪声水平高于微地震信号段时,P波拾取精度可能较低。本文采用Dai和Macbeth (1997)提出的信噪比定义,其计算方法为
$$ {\rm{SNR}} = 10\;{\lg }\frac{{{P_{{\rm{sig}}}}}}{{{P_{{\rm{noi}}}}}}\text{,} $$ (6) 式中${P_{{\rm{sig}}}}$为矿震波形信号,${P_{{\rm{noi}}}}$为噪声信号。传统的STA/LTA是由长短时窗的比值和设置阈值来检测P波到时,其阈值大小直接影响拾取的准确性。如图7所示,在信噪比为9.5 dB的低噪声下,STA/LTA的比值较高,较高的阈值也可以较为准确地识别出P波;但在信噪比为3.1 dB的高噪声下,如果事件的振幅相对较小,P波隐藏于噪声中,STA/LTA将会出现较低的比值,并且难以分辨P波和S波,具有极高的误检性,只有选出较为合适的阈值才能正确拾取P波。本文算法相较于传统方法具有更高的精确率,且不受阈值和S波的影响。
为了突出算法的泛化能力,将其在不同噪声下与两个深度学习算法进行抗噪性测试。矿震属于近震波形,大部分的波形起始都有较为明显的振幅变化,如图8所示,在噪声相对较小的情况下,三种模型都表现出了较为精确的到时估计结果,增加了噪声后,三种算法都表现出了不同程度的影响,本文算法受到的影响较小。DPick采用的深度卷积算法的精度受限于其感受野,使得到时拾取结果不稳定,但由于其具有提取特征的性质,可以使其具有一定的抗噪性。PpkNet中有较大的感受野,可以在噪声较小的情况下有较好的性能,但由于缺少提取特征的功能,噪声对其影响最大,当信噪比为2.2 dB时,容易出现拾取错误或漏选等问题。本文算法也受到了一定程度的影响,但相对于其它模型来说,效果较好。
4. 结果与分析
在矿震检测和识别中,往往需要对数据进行实时处理和分析,为此,本文使用该方法对连续数据进行了识别和处理,针对2020年7月山西某矿的五个台站的数据流进行事件检测和P波到时拾取。图9展示了7月11日8:58—9:17对某个台站数据的处理情况,其中CNNDet将检测到的两个矿震事件的起始和结束时间标记出来,之后CGANet进行精确的到时拾取。将卷积、门控循环单元和注意力机制的优势相结合,摒弃了深度卷积神经网络所带来的感受野和特征丢失问题,并在门控循环单元的基础上引入了注意力机制,提取矿震波形内部的特征关系,取得了较好的效果。
数据集和深度学习网络模型是相辅相成的。不同的训练集会出现不同的效果,矿震数据相较于地震数据数量较少,导致一些在地震上应用较好的深度学习方法无法应用于矿震的震相拾取,如PhaseNet,U-Net (Ronneberger et al,2015;赵明等,2019;张逸伦等,2021)。由于矿震的数据集问题,本文选取的训练集设置针对性的标签,在拾取过程中使滑动步长等于界限区域大小,根据界限区域的大小,使用平移和加噪的方式进行数据增强。仅使用1 874个事件数据通过数据增强方式生成8 820条数据用于模型的训练,远远少于类似方法所需的数百万条记录(Perol et al,2018;Saad,Chen,2021)。
为了探究各种到时拾取算法对震源定位的影响,本文对同一事件使用STA/LTA,DPick,DetNet+PpkNet和本文算法来提取矿震P波到时,然后使用粒子群定位算法(Chen et al,2009)对震源进行精定位,得到的使用STA/LTA,DPick,DetNet+PpkNet算法的定位误差分别为95.75,91.50和55.26 m,而使用本文算法的定位误差可达41.67 m,明显优于其它算法。
由于矿震所需的到时拾取精度较高,本文采用两个模型进行拾取:使用CNNDet模型进行到时预估计,给出到时范围,然后再用CGANet模型进行P波估计。总体方法步骤比较复杂,但拾取精度提高,能够有效地拾取P波震相;该方法采用少量数据集训练,增加数据量是否会提升方法的性能仍待研究证实;从实际的连续波形处理中可以看出,虽然该方法可以对事件进行准确检测,但对于事件结束点的提取仍存在一定的误差,如何精准地提取事件结束点以及简化模型等方面仍需进一步研究。
5. 结论
传统的矿山微震P波到时拾取算法存在P波缺失、P波拾取精度低等问题,本文引入了深度学习方法进行研究,提出了一种融合门控循环单元和自注意力机制的矿山微震P波到时拾取方法,为矿山微震监测和冲击地压等灾害的准确识别提供了一种新方法。针对矿震数据的优缺点,提出一种新的数据分类方式,仅利用数据增强的少量数据进行模型训练,即可实现较高精度的P波到时拾取。CNNDet在测试集上的事件检测精确率和召回率都达到98%以上,CGANet对于P波到时估计的误差均值和标准差分别为0.014 s和0.051 s。对比结果表明,本文算法在性能、精度和抗噪性等方面均优于STA/LTA,DPick和PpkNet等算法,且在实际震源定位中,应用本文算法的定位误差明显小于其它算法。随着矿山开采的工业化,微震监测系统将会采集更多的矿山微震数据,未来可考虑增加数据集,简化方法,不断优化神经网络模型。深度学习方法在实时微震监测、矿震预警等方面将会发挥越来越重要的作用。
-
图 4 由常规算法(a)和复频率衰减算子算法(b)所构建的残差反传波场
红线为界面所在位置,黄色箭头为噪音,下同
Figure 4. Residual backward-propagated wave field obtained by conventional method(a) and complex frequency attenuation back propagation operator method(b)
The red line represents the location of interface,and the yellow arrows represent the noise,the same below
图 16 图 15a(a)和图 15b(b)的初始速度模型所对应的第51次迭代的速度场
Figure 16. The velocity field after 51 iterations with initial velocity model shown in Fig. 15a(a)and Fig. 15b(b)
-
Lailly P.1983.The seismic inverse problem as a sequence of before stack migrations[C]//Conference on Inverse Scattering:Theory and Application.Philadelphia: Society for Industrial and Applied Mathematics:206-220
Suh S Y, Cai J.2009.Reverse-time migration by fan filtering plus wavefield decomposition[C]//Expanded Abstracts of 74th Annual International SEG Meeting.Houston, Texas: Society of Exploration Geophysicists:2804-2808
Youn O K, Zhou H W. 2004. Depth imaging with multiples[C]//Expanded Abstracts of 74th Annual International SEG Meeting. Houston, Texas: Society of Exploration Geophysicists:1057-1061.