面向地震震相识别的基于时域的卷积神经网络模型及应用
技术领域
本发明涉及地震信号检测和预警技术,具体涉及一种面向地震震相识别的基于时域的卷积神经网络模型及应用。
背景技术
地震严重危害人民生命财产安全,快速准确的地震震相自动识别能够为地震预警提供有效手段,快速准确的P波识别是地震预警发出报警信息的基础。
地震预警系统的工作原理就在于可以探测到地震发生最初时发射出来的无破坏性的地震波为纵波(纵波即P-波,primary wave),而破坏性的地震波为横波(横波即S-波,secondary wave),由于传播速度相对较慢则会延后10~30秒到达地表。深入地下的地震探测仪器检测到纵波(P-波)后传给计算机,即刻计算出震级、烈度、震源、震中位,于是预警系统抢先在横波(S-波)到达地面前10~30秒通过电视和广播发出警报。并且,由于电磁波比地震波传播得更快,预警也可能赶在P波之前到达。
当地震发生后,离震中最近的几个预警台站会陆续接收到地震信号,触发地震参数快速判测系统;在收到信号的几秒至十几秒内,快速判测系统将估算出地震的发震时刻,发震位置,震源的类型和震级的大小;然后利用这些参数模拟出相关区域内地面运动的强烈程度;根据模拟的结果,抢在相应地震波以前,向不同地区发出相应的预警信息。
活化断层是地震的主要因素。近年来,深度神经网络用于地震震相自动识别并证明深度神经网络可以有效处理海量数据,拾取的更多多有效震相用于层析成像。通过提升深度网络的泛化性用于处理海量测震数据,为现有地震目录提供更多有效数据用于地质结构的反演。随着近些年来地震观测的不断增多,海量地震数据的快速、高精度的自动拾取,对于地球深部精细结构研究、地震快速预警有着重要意义。传统的检测方法中,STA/LTA(Allen,1978)[1]和模板匹配方法(Gibbons and Ringdal 2006[2];Shelly et al.2007[3];Ross et al,2017[4];Li et al,2018[5])是最常用的传统检测方法,但是STA/LTA对阈值和特征函数的选取极大的影响了识别的准确率,模板匹配方法极其依赖模板的数量和质量,泛化性差。
近年来,学者们将深度神经网络用于地震震相识别中并取得良好效果,Perol T在2108年提出了ConvNetQuake应用于侦测美国俄克拉荷马地区的地震,结果发现其功力大胜俄克拉荷马州地质调查所的震测系统,检测出的地震数量超过旧有系统的17倍以上。Ross等的基于南加州地区的273,882多个地震事件建立数据集并训练CNN模型,其得到的模型具有较强的泛化能力,即使对与训练数据所属区域构造不同的地区,如日本Kumamoto地震的事件波形,也能有效检测。虽然其具有较好的震相识别性能,但存在计算资源要求高的问题。
最近的研究结果表明,时域卷积网络TCN(Temporal Convolutional Network)在广泛的序列建模任务中优于基线循环架构,包括动作分割、语音分析和合成任务等,严等人发表的有关TCN用于天气预报任务的研究成果表明TCN在时间序列数据的预测任务中表现良好。但传统的TCN存在感受野有限、准确率低的问题。目前采用时域卷积神经网络TCN对地震震相识别,与RNN等传统的循环神经网络相比,TCN虽然不利用重复的体系结构,但是随着网络层数的加深,反向传播的梯度会越来越不稳定,并且随着感受野的扩大,TCN的识别性能也会有所下降。
发明内容
针对现有技术中的问题,本发明的目的在于提供一种面向地震震相识别的基于时域的卷积神经网络模型及应用。基于地震震相是一组具有时间相关性的时序数据,本发明将卷积神经网络CNN与时域神经网络TCN相结合,引入的连续卷积块、连续TCN块和Timedistributed模块,构建一种卷积神经网络模型S-TCN,解决了扩展卷积深度问题和反向传播梯队不稳定的问题,从而使本发明的S-TCN模型兼顾了震相识别的性能和识别的速度。
为实现上述目的,本发明采用了以下技术方案:
面向地震震相识别的基于时域的卷积神经网络模型,其中所述卷积神经网络模型是通过以下步骤构建而成:
(1)收集地震震相的波形数据,并对波形数据进行预处理,获得地震波形数据集;所述地震震相的波形数据是指地震波形的原始数据,包括P波和S波;
(2)将步骤(1)中的地震波形数据集分成训练集,验证集以及测试集;
(3)构建基于时域的卷积神经网络模型S-TCN,将卷积神经网络CNN与时域神经网络TCN进行结合,将训练集数据先输入到连续的三个卷积块进行特征学习,接着再将特征学习后的数据输入到一个主TCN块中,进行P波和S波的总特征提取,然后再将提取结果分别输入到两个连续的副TCN块中,分别进行P波和S波震相的上下文信息提取,最后连续的两个副TCN块的输出被分别送到GRU模块和TimeDistributed模块的两个并行分支进行震相识别与震相拾取;
(4)使用训练集的数据对构建的基于时域的卷积神经网络模型S-TCN进行训练,即将训练集数据输入到步骤(3)中的卷积神经网络模型S-TCN进行迭代;
(5)使用验证集的数据对训练好的基于时域卷积神经网络模型S-TCN进行验证,即将验证集的数据输入到步骤(3)中的卷积神经网络模型S-TCN进行验证;
(6)将测试集的数据输入到训练好的基于时域的卷积神经网络模型S-TCN,得到震相识别与拾取结果。
进一步地,所述步骤(1)中地震震相的波形数据长度为60s。
再进一步地,所述步骤(1)中的对波形数据进行预处理是指对地震波形数据进行裁剪、平移、滤波、归一化处理;所述地震波形数据经过裁剪后,长度变为20s,经过平移之后,P波均匀分布在200-600采样点的区间内,其中采样率为100HZ。
更进一步地,所述步骤(3)中构建基于时域的卷积神经网络模型的步骤如下:
(3.1)有三个卷积块,每个卷积块包括一个一维卷积,一个Batch_Normalization层,一个ReLu激活层;
(3.2)接下来依次输入一个主TCN块和两个连续的副TCN块中,每个TCN块包括两次卷积,每次卷积完成后进行一次批量归一化,使用ReLU进行激活,并在之后进行一次DropOut,每个TCN块中包含一个残差连接,使信息可以跨层传递,增强网络性能,一个主TCN块和两个副TCN块的膨胀卷积尺度分别是1,2,4;每个TCN块中的两次DropOut大小分别为0.5和0.2,卷积核大小均为3,通道数分别是64,128,128,卷积步长均为1;
(3.3)TCN块的输出被送到GRU模块和TimeDistributed模块的两个并行分支;每个分支由一个GRU模块和一个TimeDistributed模块组成,进行最后的震相识别与震相拾取。
TCN是时域卷积网络,它由具有相同输入和输出长度的扩张的、因果的1D卷积层组成。能解决传统的时序神经网络,如RNN存在耗时长、并行性差、长期依赖等问题。
TCN的设计基于两个原则:网络的输入与输出长度相同,没有从未来到过去的信息“泄漏”。为了实现第一点,使用了一维全卷积网络,其中每个隐藏层与输入层的长度相同,并且添加了长度为零的填充(内核大小为1),用以保持后一层与前一层的长度相同。为了实现第二点,TCN使用因果卷积,在时间t的输出只与来自时间t和前一层更早的元素卷积的卷积。概括来说就是TCN=1D FCN+因果卷积。在TCN中,使用了扩张卷积,使用扩张卷积的优点是在不做pooling损失信息的情况下,加大了感受野,让每个卷积输出都包含较大范围的信息。
更进一步地,所述步骤(4)使用训练集的数据对构建的基于时域的卷积神经网络模型S-TCN进行训练,在模型训练中采用ADAM梯度优化算法进行优化,损失在连续20个epcho不下降时停止训练,一共训练了302个epcho,训练完后的卷积神经网络模型S-TCN的参数不变。
本发明所述基于时域的卷积神经网络模型应用于地震震相识别与拾取。
进一步地,所述地震震相识别是指对地震P波和S波的初至时间进行识别与拾取。
与现有技术相比,本发明具有以下有益效果:
1、本发明的基于时域的卷积神经网络模型S-TCN结合了卷积神经网络CNN与时域神经网络TCN,使卷积强大的特性结合跨时间步提取特征,对于地震信号的变化更为敏感。膨胀因果卷积结构不仅利用了历史信息,也利用了未来信息,保留了更多的地震信号数据的特征。
2、本发明的基于时域的卷积神经网络模型S-TCN解决了扩展卷积深度问题和反向传播梯队不稳定的问题,使得整体架构兼顾了性能和速度,在保证现有的地震震相识别精度的基础上,同时提高了运算速度。同时达到自适应的地震震相识别。
3、本发明通过采用具有膨胀卷积和扩张框架的时域卷积网络TCN,扩大感受野;并加入CNN模块进行地震波深层特征的提取,获得精确的震相到时,本发明的模型用于地震震相识别与拾取,使用的参数更少,测试时间更短,为地震预警提供了很好的思路。
附图说明
图1为本发明的基于时域的卷积神经网络模型S-TCN的网络结构图。
图2为本发明卷积神经网络模型S-TCN的地震震相拾取流程图。
图3为本发明实施例的数据集中两段原始地震波形图与其标对应的标签波形图。其中,图3(a)和图3(b)是一段原始地震波形图和标对应的标签波形图,图3(c)和图3(d)为另一段原始地震波形图和标对应的标签波形图。
图4为本发明实施例数据处理前后的数据分布图。
图5为本发明实施例训练集上损失函数图。
图6为本发明实施例验证集上损失函数图。
具体实施方式
下面通过具体实施例来进一步说明本发明的技术方案。本领域技术人员应该明了,所述具体实施方式仅仅是帮助理解本发明,不应视为对本发明的具体限制。
如图1-2所示:一种面向地震震相识别的基于时域的卷积神经网络模型,是通过以下步骤构建而成:
(1)收集地震震相的波形数据,并对波形数据进行预处理,获得地震波形数据集;所述地震震相的波形数据是指地震波形的原始数据,包括P波和S波,数据的长度为60s;其中预处理是指对地震波形数据进行裁剪、平移、滤波、归一化处理;所述地震波形数据经过裁剪后,长度变为20s,经过平移之后,P波均匀分布在200-600采样点的区间内,其中采样率为100HZ。
本实施例的地震波形数据集采用STEAD数据集,该数据集是斯坦福大学地震实验室提供的一个公共地震数据集。该数据集地震震级是0.5级~7.9级,小地震(<2.5级)构成了该数据集的大部分,采样率为100Hz,所有地震数据都是三分量(垂直方向、东西方向和南北方向)的,数据的采样率为100HZ,地震数据的长度为60s,每个数据窗口包含纵波P和横波S,从纵波到达前5到10秒开始,到横波到达后至少5秒结束,并且对所有波形进行去趋势和去均值处理,及带通滤波。本文选取的STEAD数据集共100000条数据。对选取的数据进行如下数据处理。
(1.1)将60s长的数据裁剪为20s长(采样率100Hz,每段长度为2000),保证20S长的数据内包含P波与S波到时,处理完后数据是97132条数据。
(1.2)对数据做平移处理,将P波均匀分布到200-600的区间内。处理前与处理后的数据分布如图4所示。平移完成后进行Min-Max归一化,处理完后数据是65000条数据,之后将数据集数据进行随机打乱。
(2)将步骤(1)中的地震波形数据集分成训练集,验证集以及测试集;
(2.1)随机选取处理好的地震波形数据集中80%数据作为训练集,10%作为验证集,10%作为测试集,单个波形数据的长度为20s。得到训练集52000条,验证集6500条,测试集6500条。
(2.2)对标签进行One-Hot处理,因网络输出长度为246,将标签处理为长度为246的One-Hot标签,标注位置为手工标注前后40个时间步,在One-Hot标签中标签长度为11。
原始地震波形数据和标对应的标签数据如图3所示,在图3中,标注P波和S波的竖线分别代表P波到时和S波到时,标注P波和S波竖线位置周围的方框分别代表P波和S波的标签范围,P波到时和S波到时是人工标注的地震震相。数据处理前后的数据分布如图4所示。
构建基于时域的卷积神经网络模型S-TCN,将卷积神经网络CNN与时域神经网络TCN进行结合,将训练集数据先输入到连续的三个卷积块进行特征学习,接着再将特征学习后的数据输入到一个主TCN块中,进行P波和S波的总特征提取,然后再将提取结果分别输入到两个连续的副TCN块中,分别进行P波和S波震相的上下文信息提取,三个连续的TCN块中进行地震震相上下文信息的提取,最后连续的两个副TCN块的输出被分别送到GRU模块和TimeDistributed模块的两个并行分支进行震相识别与震相拾取;
构建基于时域的卷积神经网络模型的具体步骤如下:
(3.1)有三个卷积块,每个卷积块包括一个一维卷积,一个Batch_Normalization层,一个ReLu激活层;
(3.2)接下来依次输入到一个主TCN块和两个连续的副TCN块中,每个TCN块包括两次卷积,每次卷积完成后进行一次批量归一化,使用ReLU进行激活,并在之后进行一次DropOut,每个TCN块中包含一个残差连接,使信息可以跨层传递,增强网络性能,一个主TCN块和两个副TCN块的膨胀卷积尺度分别是1,2,4;每个TCN块中的两次DropOut大小分别为0.5和0.2,卷积核大小均为3,通道数分别是64,128,128,卷积步长均为1;
(3.3)TCN块的输出被送到GRU模块和TimeDistributed模块的两个并行分支;每个分支由一个GRU模块和一个TimeDistributed模块组成,进行最后的震相识别与震相拾取。
(4)使用训练集的数据对构建的基于时域的卷积神经网络模型S-TCN进行训练,即将训练集数据输入到步骤(3)中的卷积神经网络模型S-TCN进行迭代;
基于时域的卷积神经网络模型S-TCN训练使用Tensorflow框架训练网络,损失函数采用Binary_Crossentropy,初始学习率为0.01并设置为学习率衰减,优化采用ADAM算法(Kingma And Ba,2014)。损失在连续20个Epcho不下降时停止训练,一共训练了302个Epcho。训练集上损失函数图如图5所示。
(5)使用验证集的数据对训练好的基于时域卷积神经网络模型S-TCN进行验证,即将验证集的数据输入到步骤(3)中的卷积神经网络模型S-TCN进行验证;验证集损失结果如图6所示。
(6)将测试集的数据输入到训练好的基于时域的卷积神经网络模型S-TCN,得到震相识别与拾取结果。
将本发明的S-TCN模型与传统的TCN模型的拾取P波和S波的效果对比进行比较,结果如表1所示,
先对误差和平均误差说明如下:
误差=|网络识别时间-人工识别时间|
平均误差是指在等精度测量中,所测得所有测量值的随机误差的算术平均值。它是衡量参数估计值与参数真值之差平方的期望值。
表1 TCN与S-TCN拾取P波和S波的效果对比
由表1结果可知,本发明的S-TCN模型的平均误差小于传统的TCN模型,在测试集上,对于P波到时来说,误差在0.2s内的,S-TCN模型占比为69.27%,高于TCN模型的63.13%;误差在0.5s内的,S-TCN模型的占比为97.76%,高于TCN模型的72.07%;对于S波到时来说,误差在0.2s内的,S-TCN模型的占比为50.84%,高于TCN模型的5.03%;误差在0.5s内的,S-TCN模型的占比为74.86%,高于TCN模型的12.85%。比较表明,S-TCN模型在拾取P波到时和S波到时方面表现出与人类专家相似的性能,自动拾取完全在拾取误差范围内。S波的拾取误差比P波的失去误差大,可能是由于地震波S波更复杂,因为它受到P波尾波、反射波等的干扰。
利用本发明的S-TCN模型在RTX2080Ti下对6084条数据进行识别,结果如表2所示。
表2 测试数据误差
|
误差0.1s |
误差0.2s |
误差0.3s |
误差0.4s |
误差0.5s |
平均误差 |
P波 |
5847 |
5900 |
5928 |
5946 |
5956 |
0.08824 |
S波 |
5611 |
5731 |
5818 |
5868 |
5910 |
0.09821 |
由表2可知,对6084条数据进行测试,随着误差的增大,P波和S波识别的越来越多,本发明S-TCN模型的平均误差都小于0.1s,并且在RTX2080Ti下识别全部测试数据耗时15s,表明本发明S-TCN模型在识别精度和识别速度方面的优越性。