APP下载

基于Triplet-CNN的强弱地震预判研究

2022-04-24陈善鹏尹玲张文浩

软件导刊 2022年4期
关键词:震级强震准确率

陈善鹏,尹玲,张文浩

(上海工程技术大学电子电气工程学院,上海 201620)

0 引言

地震灾害给人类带来重大人员伤亡及经济损失,人类无法阻止地震发生,但及时进行强弱震预判,采取适当的安全措施,可以减少生命财产损失。

相关资料显示,5级以上地震能造成一定的破坏,6级以上7级以下的强震能摧毁建筑物。因此,及早判定地震是否为影响较大的强震是开展震后快速救援、减少损失的关键。文献[1]基于南加州地震发生不规则性特征,预判未来5年5.0级及以上的地震事件;文献[2]提出了一个长期预测模型,该模型基于对过去震级大于等于5.0地震的外推,用于预测未来的地震事件;文献[3]利用自适应神经模糊推理系统(Adaptive Neuro-Fuzzy Inference System,ANFIS)模型,对伊朗5.5级以上地震预报进行研究。上述方法对于较大地震的判定均是中长期范围的探索,而震后几秒内快速判定强弱震非常重要。强弱地震的预判可以指导工作人员采取更为有效的方法进行地震预警。

地震的发生是一种随机或高度非线性现象,利用神经网络具备较强的非线性特征学习能力,本文提出三元组卷积神经网络(Triplet Convolutional Neural Network,Triplet-CNN)与强震仪时间序列数据相结合的方法,将历年地震事件的强震仪数据输入到设计好的Triplet-CNN结构中,以对应的震级作为标签,训练基于Triplet-CNN的震级分类模型。当新的地震横波到来之前,根据地震的强震仪数据,利用训练好的Triplet-CNN震级分类模型,快速、准确地对研究区域的地震震级进行分类,判定地震是否为强震,为减小地震灾害争取宝贵的时间。

1 基于Triplet-CNN的震级分类模型

1.1 模型结构

三元组网络(Triplet network)基本框架如图1所示,主要由输入层、网络层、距离层、判断层、输出层组成。其中,输入层以三元组的形式输入样本数据。网络层由3个相同的前馈网络组成,前馈网络均为卷积神经网络。当网络的输入层分别输入3个示例

x

x

x

时,网络的距离层将会输出两个

L

距离中间值。判断层根据

L

距离中间值进行类别判断,最终将类别结果通过输出层进行输出。如果将网络层的网络表示为

Net

(

x

),则判别层表示如下:

3个输入示例

x

x

x

称之为三元组,以(

x

x

x

)表示,其构成方式为:首先随机选取一个样本作为Anchor(记为

x

),然后随机从中抽取与Anchor属于同类的Positive(记为

x

)样本,以及异类的Negative(记为

x

)样本。三元组也可表示为(

x

x

x

),对每个样本构造参数共享网络CNN,以获得3个样本的特征表达式:

f

(

x

)、

f

(

x

)、

f

(

x

)。训练网络的目的是减少同一类别之间的距离,并增加不同类别之间的距离。通过训练让

x

x

特征表达间的距离尽可能小,而

x

x

的特征表达间的距离尽可能大,其原理可由公式(2)表示如下:

Fig.1 Basic framework of Triplet network图1 Triplet network基本框架

式中,

α

为阈值,可在正负样本间空间距离为零的情况下仍让模型进行特征学习,从而使得模型训练得到更好效果。

基于Triplet-CNN网络的震级分类模型包括数据处理与分组、网络模型训练和震级预判,模型框架如图2所示。①数据处理与分组:负责获取需要研究的强震数据,对数据进行预处理转换成需要的格式,依据已有的标签对数据进行分组;②网络模型训练:将三元组数据输入到设计好的Triplet-CNN网络,基于triplet loss损失函数对模型进行训练得到最佳震级分类模型;③根据提供的强震数据,利用训练好的最佳Triplet-CNN震级分类模型对当下震级进行分类,从而实现震级预判。

Fig.2 Triplet-CNN magnitudeclassification model framework图2 Triplet-CNN震级分类模型框架

Triplet-CNN震级分类模型实质上是个多分类问题,对于某一震级范围的样本设置为锚例Anchor,属于该震级范围的其他样本为正例Positive,不属于该震级范围的其他样本为负例Negative。

神经网络所要学习的目标是:使得Anchor到Positive的距离要比Anchor到Negative的距离短。通过学习使得类别内部的样本距离小于不同类别样本的距离。根据式(2)将triplet loss损失函数定义为:

利用Triplet-CNN结构结合历年地震事件中记录的强震仪数据进行训练,得到能够预判强弱地震的震级分类模型。对多个震级范围进行预测,其实质是一个多分类问题。Triplet-CNN以“端到端”的形式进行模型训练,利用优化算法不断改进训练模型的超参数,通过Triplet-CNN的卷积层和池化层将原始数据抽象成能学习的数据特征,最终完成特征到目标的映射。

本文三元组网络的网络层为CNN,CNN的网络结构主要包括输入层、卷积层、池化层、全连接层以及输出层。

如图3所示,图中卷积层

C

包含32个卷积核,其大小为5×1,卷积核会分别对输入数据进行卷积来提取数据特征。池化层

S

大小为3×1,池化层对卷积获取的特征降采样进一步提取特征。卷积层

C

包括64个卷积核,大小为3×1,池化层

S

大小为2×1,卷积层

C

包括128个卷积核,大小为3×1,池化层

C

的尺寸为2×1,卷积层

C

包括256个卷积核,大小为3×1。全连接层

F

尺寸为128,全连接层

F

大小为6。

1.2 模型超参数

为提高Triplet-CNN震级分类模型的准确度,需要通过调整Triplet-CNN网络的超参数,其主要包括尺寸(batch size)、学习率(learning rate)、丢弃值(dropout)、迭代次数(epoch)。其中,batch size指模型训练1次所使用的样本数量;learning rate参数大小会影响损失梯度下降的程度,从而对神经网络权值进行调整。当learning rate值过大时可能会找不到准确的极值点,learning rate值过小又会使收敛时间太长;dropout会压缩权重起到防止过拟合的作用;epoch指模型在训练过程中全部样本训练的轮数,一个epoch代表全部的样本数据先后实现1次前向传播运算和1次反向传播运算的过程。

2 Triplet-CNN震级分类模型训练

2.1 数据集

本文选用日本国家地球科学和灾害预防研究所建立的两个强震观测网KiK-net(kiban-kyoshin net)和K-NET(kyoshin network)在日本宫城县监测的强震仪数据,该强震仪数据是一维的加速度值时间序列。选取宫城县附近约200km范围内从2000-01-01至2008-12-31历史地震中观测台站所记录的强震数据。其中2000-01-01至2007-12-31的强震仪数据作为训练集,用于训练Triplet-CNN震级分类模型,2008-01-01至2008-12-31的强震仪数据作为测试集,对当下发生的震级进行震级分类,判断是否为强地震。本文获取其间日本宫城县附近震级由最小2.8级到最大7.2级共271个地震事件中距离震中比较近的多个观测台站所记录的强震动加速度数据。每个强震观测台站都记录了EW(东西分向)、NS(南北分向)、UD(竖直分向)3个方向的强震仪数据,以单个台站记录单方向的强震仪数据为一个样本数据,统计得到模型的训练集有3 270个样本,测试集有831个样本。

2.2 数据预处理

2.2.1 基于EMD的数据降噪

针对日本强震数据提出基于经验模态分解(Empirical Mode Decomposition,EMD)的强震数据降噪方法。

EMD方法可根据数据信号自身特点自适应地将复杂的时程分解为多个不同时间尺度的子模态函数(Intrinsic Mode Function,IMF),或称作内蕴模式函数,每个IMF函数都包含了原信号的局部特征,具有多分辨的特点。设强震数据信号为

x

(

t

),用EMD将

x

(

t

)分解为不同尺度的IMF分量,即:

式中,

imf

(

t

)为第

k

个IMF分量,

r

(

t

)为分解残余项。

EMD分解的各IMF分量会按照频率的高低依次排列,通过分析将高频部分除去,并对剩下的IMF分量做重构处理,从而得到降噪后的数据信号。EMD分解需满足条件:①IMF分量内的极值点数目和过零点数目相等或不超过1个;②通过极大值和极小值得到的包络线均值为零。

Fig.3 CNN network structure图3 CNN网络结构

2.2.2 数据标准化

在深度学习算法中,目标函数基础是假定所有特征均是零均值并且有相同的阶方差。若1个特征的方差比其他特征大多个数量级,则它将在算法中占据主导地位,导致模型不能从其他特征中学习。因此,数据标准化成为数据预处理的关键步骤,标准化数据可以提高模型精度。

通过原始数据减去平均值后除以方差进行数据归一化处理,使其符合平均值为0和标准差为1的正态分布。换算公式如下:

式中:

X

为原始数据,

μ

为原始数据的均值,

σ

为原始数据的方差,

Z

为标准化之后的数据。

2.2.3 One-hot编码

总是,高中物理在整个高中阶段是十分重要的,但是其中涉及到的知识比较抽闲且难以理解,需要学生不断通过进行问题的解决来巩固知识并且在知识巩固的过程中提升自身的解题能力.

本文设计的Triplet-CNN震级分类模型实质上是一个多分类问题,因此需要对各震级标签进行One-hot编码。分别对2.0~2.9级地震、3.0~3.9级地震、4.0~4.9级地震、5.0~5.9级地震、6.0~6.9级地震、7.0~7.9级地震制作标签,即0、1、2、3、4、5。对应标签的One-hot编码为:[1,0,0,0,0,0]、[0,1,0,0,0,0]、[0,0,1,0,0,0]、[0,0,0,1,0,0]、[0,0,0,0,1,0]、[0,0,0,0,0,1]。

2.3 模型评价指标

本文引入混淆矩阵概念建立模型分类结果的评价指标,表1为混淆矩阵,其中

T

指将正类样本正确预测为正类样本的数量,

F

指将正类样本错误预测为反类样本的数量,

F

指将反类样本错误预测为正类样本的数量,

T

指将反类样本正确预测为反类样本的数量。

T

T

均是正确预测的情况,而

F

F

均是错误预测的情况。本文中,每个单位震级相当于1个类别,对于每一个震级,正类指的就是该震级,而非该震级的其他震级则为负类。

Table 1 Confusion matrix表1 混淆矩阵

本文设计的震级分类模型为一个多分类问题,将通过准确率、精确率、召回率、

F

值4个评价指标分别对训练模型进行度量。准确率指预测为正确的样本量与所有样本量的比例,精确率指预测为正确的正类样本量与全部被预测为正类的样本量的比例,召回率指预测为正类的样本量与全部实际为正类样本量的比例,

F

值为精确率和召回率的调和均值,其具有精确率和召回率的综合评价作用。二分类评价指标公式分别如下:

式中:

A

为准确率。

式中:

P

为精确率。

式中:

R

为召回率。

本文采用宏平均(Macro-averaging)方式对多分类问题进行评价,首先分别计算每个类别的准确率、精确率、召回率、

F

值,然后计算平均值得到整个模型的评价指标,计算公式如下:

式中:

M

为宏平均准确率,

A

为第

i

个类别的准确率,

n

为总类别数。

式中:

M

为宏平均精确率,

P

为第

i

个类别的精确率,

n

为总类别数。

式中:

M

为宏平均召回率,

R

为第

i

个类别的召回率,

n

为总类别数。

式中:

M

为宏平均

F

值,

F

为第

i

个类别的

F

值,

n

为总类别数。

2.4 模型训练过程

基于Triplet-CNN的震级分类模型中的网络层采用CNN结构,将损失函数softmax替换成triplet loss函数。实验所用的数据集不变,本节同样分别采用经EMD降噪后的数据集和未经EMD降噪的数据集对Triplet-CNN震级分类模型进行训练。通过对比实验,将前者的分类评价标准与后者的分类评价标准进行比较,分析两种数据集训练得到的最佳模型效果。两种数据集训练得到的准确率变化情况如图4所示(彩图扫OSID码可见,下同)。

Fig.4 Change of training accuracy of Triplet-CNN magnitudeclass ification model图4 Triplet-CNN震级分类模型训练准确率变化

根据图4可知,两种分类模型训练集和验证集的准确率走势相近且趋于稳定,表明模型拟合准确。但从整体准确率看,经EMD降噪处理的分类模型准确率相对较高,进一步说明EMD降噪处理对模型分类效果有很大提升。

为从整体上客观分析EMD降噪对两种模型分类效果的影响,通过交叉验证取平均值方法得出两个模型的准确率、精确率、召回率、F1值的宏平均值,其对比结果如表2所示。由表2可知,相比无降噪的模型,经EMD降噪后的训练集学习到的模型在4个评价指标上均占有优势,且有较大提高。

综上表明,EMD对强震数据进行降噪对模型训练有很大影响,下面引入机器学习中的两个分类算法,即随机森林和SVM,利用EMD降噪后的数据集训练基于随机森林的震级分类模型、基于SVM的震级分类模型,并与两个基于深度学习的震级分类模型进行比较。这4个分类模型分别在训练集、测试集上得到的实验结果如表3-表4所示。

Table2 Training results of EMD noiser eduction under Triplet-CNN magnitude classification model表2 Triplet-CNN震级分类模型下有无EMD降噪的训练结果(%)

Table 3 Experimental results of different classifiers on training set表3 训练集上不同分类器的实验结果 (%)

Table4 Experimental results of different classifiers on thetest set表4 测试集上不同分类器的实验结果 (%)

由表3可知,在训练集上,Triplet-CNN震级分类模型的准确率、精确率、召回率、F值均比CNN震级分类模型、随机森林分类模型和SVM分类模型高;由表4可知,在测试集上Triplet-CNN的震级分类模型仍然表现出最优的评价结果,表明在对日本宫城地区强弱震级分类研究中,基于Triplet-CNN的震级分类模型相比CNN震级分类模型和传统的基于机器学习分类模型具有更好的震级分类效果。利用Triplet-CNN震级分类模型对地震的震级范围做出及时预判,能够快速判定地震是否为强震。

3 结语

强震给人类带来灾难性伤害,对强震进行及早预判可以指导工作人员采取更为有效的方法进行防灾救灾。本文以日本宫城县地区为例,获取宫城县周边地区历年地震发生时检测的强震数据,结合Triplet-CNN结构训练震级分类模型,从数据中学习震级的相似性度量,将学习到的度量去比较和匹配地震类别,从而快速判定震级。为提高模型的分类精确度和防止过拟合,对数据集进行交叉验证和标准化处理。引入EMD强震数据降噪处理,在基础模型上不断对超参数进行优化,从而训练得到准确率最高的Triplet-CNN震级分类模型。利用训练好的Triplet-CNN震级分类模型对强震仪数据进行分类判断,从而实现特定震级范围的自动分类。

尽管本文对震级分类的研究有良好的分类效果,但目前只是针对宫城县地区预判地震强弱。随着全球强震观测台站的广泛布局,本文提出的方法可以在其他地区进行测试及研究。

猜你喜欢

震级强震准确率
7.0级强震袭击菲律宾
基于累积绝对位移值的震级估算方法
地震后各国发布的震级可能不一样?
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
新震级国家标准在大同台的应用与评估
高速公路车牌识别标识站准确率验证法
花莲强震!
2013年前郭M5.8级强震群序列特征分析
中国地震台网面波震级与矩震级的统计关系