APP下载

人工神经网络在天然地震预测中的应用

2020-10-09陈威

科技风 2020年26期
关键词:人工神经网络BP神经网络

摘 要:地震作为世界上最具破坏力的天然灾害之一,其不可预测性和地震学的局限性使我们常常后知后觉。现如今,在经过近70年的研究之后,人工神经网络在预测方面取得了突破性的进展。作者借助MATLAB中神经网络工具箱和目标地区的地震数据,使用BP神经网络,成功实现了地震震级的预测。

关键词:人工神经网络;BP神经网络;天然地震预测

1 绪论

我国近几十年发生了多起大规模的、强破坏力的大地震。每次的大地震灾区人民死伤无数,造成的经济损失高达几千、上万亿。

地震制造的灾害主要分为三种——直接灾害、间接灾害和次生灾害。直接灾害是指在地震发生时,地震波对地面冲击造成的直接破坏,如房屋倒塌、桥梁断裂、道路裂缝等;间接灾害是指地震波传到地面后引起的介质变化而造成的灾害,如土壤的“软化”或“液化”、地震引发的海啸等;次生灾害是指火灾、泥石流、虫灾等。

目前,地震预测[1]主要分为长期(10年以上)、中期(1~10年)和短期(1~100日)。地震的长期预测方面,主要是板块边界大地震安全区的确认,即在指定的某一段断层上,将会周期的发生地震;地震的中期预测方面,最突出的是计算机图像识别技术,克依利斯-博罗克及其俄国同事提出了一种“增加概率的时间”的中期预测方法,运用计算机图像识别技术,识别出大地震将要来临时的预警信息;地震的短期预测方面,主要是通过地震的一些前兆,如水位、水质的异常变化、动物的异常反应、电磁波异常等等。

而随着科学技术的飞速的发展,各种技术也是越来越多。由于当代地震学还未做到能够直接透过地层来观察地下活动情况,所以我们无法通过普通地震学对天然地震进行预测。人工神经网络在处理大量无明显关联的数据集时有着自我学习、自我适应的特点[2],在金融预测、股票市场中人工神经网络发挥着不可取代的作用。本文主要讨论的是在天然地震中的应用。

2 BP神经网络的算法原理

BP学习算法的基本原理是“梯度下降法”或称为“最速下降法”,它是求解无约束最优化问题的最常用的方法之一,其優点是实现起来比较简单。其中心思想是通过不断的调整权值使网络的总误差缩小到目标误差范围内。BP神经网络的权值调整方向是从输入端层层往下逐一调整,最后通过将实际输入与目标输入进行对比,直到达到最小误差范围内。整个过程就是一个逐层传播,逐个调整的过程。

BP神经网络在实际运用中是包含了双向传播的,并不是单一的正向传播,还多了一个反馈传播。所谓正向传播就是数据通过输入节点进入网络,经过隐含层的处理,最终得出一个结果。反馈传播是当目标输出与实际输相差没有在最小误差范围内,这时节点就会向他的上一个节点发送信息,修改其权值,然后再正向传播下来,直到误差在最小误差范围内。

具有隐含层的BP网络的拓扑结构如图1所示。

3 BP神经网络的计算

在BP神经网络的训练学习时,假设共有N个训练样本,先用其中的某一组样本数据输入到网络中(输入值、输出值),对网络进行训练。当网络稳定以后可以拿样本数据中的若干条数据进行测试,如果出现误差过大,则需要通过增加数据量来提高网络的准确性。把输入数据记作xp、输出数据记作tp。则隐含层的第I个神经元在输入数据作用下为:

netpi=∑Mj=1ωijopj-θi=∑Mj=1ωijxpj-θi(i=1,2,…,q)

式中,xpj是输入节点J在样本P作用时的输入;opj是输入节点J在样本P作用时的输出;ωij为输入层神经元J与隐含层神经I之间的连接权值;θi为隐含神经元I的阈值;M为输入层的节点数。

隐含层第I个神经元的输出为:

opj=g(netpi)(i=1,2,…,q)

式中g()为激活函数。

对于SIGMOID型激活函数表达式为:

g(x)=11+exp[-(x+θ1)/θ0]

式中,θ1表示偏值,如果偏值为正,则激活函数会水平向左移动,偏值为负,则激活函数会水平向右移动;θ0是用来控制激活函数变化的快慢,如果θ0较小激活函数就会变化非常快,在函数图像上表现为陡峭;如果θ0较大激活函数就会变得比较慢,在函数图像上表现为平缓。

隐含层激活函数g(netpi)的微分函数为:

g′(netpi)=g(netpi)[1-g(netpi)]=opi(1-opi)(i=1,2,…,q)

隐含层的神经元经过计算得出的结果乘上一个加权系数传递到输出层的第K个神经元,作为基输入之一,所有隐含层神经元的结果分别乘上其权值再相加起来的最终结果才是第K个神经元的真正输入,即第K个神经元的输入为:

netpk=∑qi=1ωkiopi-θk(k=1,2,…,L)

式中,ωki为隐含层神经元I与输出层神经元K之间的连接权值;θk为输出层神经元K的阈值;Q为隐含层节点的个数。

输出层的第K个神经元的实际输出为:

opk=g(netpk)(k=1,2,…,L)

输出层激活函数g(netpk)的微分函数为:

g′(netpk)=g(netpk)[1-g(netpk)]=opk(1-opk)(k=1,2,…,L)

通过实际输出与目标输出的比对,如果其误差较大,则由反馈传播反向的将信息传递到隐含层,不断地修改其权值,使之达到最小误差范围内。完成了一组样本数据的训练后,将其余的数据都一一对网络进行训练。在训练过程中可以保留一组数据作为检验样本,只把输入数据通过输入端输入网络,得到实际结果后与目标输入进行比较,可以判断出该网络的效果如何。

4 参数的优选和数据的处理

地震的参数一般有5个主要参数,即地震时间、震中经度、震中纬度、震级、深度。一般人对于3级地震就有明显感觉,5级地震有破坏力,所以作者选取了5级以上的地震发生次数作为预测参数,同时选取地震发生的次数、经度、纬度、能量、深度作为输入参数,震级作为目标输出。地震释放的能量是可以通过震级计算出来的,其计算公式为:

E=10^4.8×10^(1.5M)

式中,E为释放的能量,单位为焦耳;M为震级。由于地震所释放的能量太大,故表中的能量单位为兆焦(MJ),1MJ=106J;深度单位为千米(km)。

中國地震台网(http://news.ceic.ac.cn),该网站实时提供了全世界范围内的天然地震的发生情况以及历时地震的查询,并且支持下载到本地表格。笔者选取了2019年各月份发生的地震作为原始数据,并通过处理得到新疆地区发生的地震的目标数据。再经过汇总得到实验所需要的数据表,如下表所示。

5 MATLAB实现

本试验采用的是BP神经网络模型,将网络设计为一个两层的BP网络。由上表可知输入数据有6维,故输入层神经元个数为6;输出数据只有一维,故输出神经元个数为1;中间隐含层神经元个数为13个(隐含层神经元个数一般与输入神经元个数关系为q=2M+1,M为输入神经元个数,q为隐含神经元个数)。

将前9个月的数据全都作为训练数据,输入到网络。最大训练次数设置为1000次,误差设置为0.001,学习速率设置为0.1。由于BP神经网络的参数需要在[0,1]之间,所以首先要进行归一化处理,处理之后的数据如表1-2所示。

经过4次训练,网络已经收敛。

将9月份的参数作为测试数据输入到网络中结果如图2所示。

由于输入数据是经过归一化之后的数据,所示产生的输出也是归一化之后的输出,要想得到原始数据,我们只需要再进行一次反归一化处理就可以了,如图3所示。

实际数据为4.8级,预测输出为4.796级,由此可见预测成功。

6 结语

针对2019年新疆地区的地震数据信息,本文采用了计算机高级技术语言—MATLAB,由于BP神经网络的输入数据必须在[0,1],所以首先进行了归一化处理,将数据输入到网络,让网络进行训练,最后将9月份地震数据作为测试样本输入网络,经过反归一化的处理,成功得到目标输出。当然,本文所实验的方法只是证明了人工神经网络在地震预测方面的可行性,选用的数据也都是发生过的数据,对于未发生的地震还需要进行更深层次的研究。

参考文献:

[1]陈运泰.地震预测——进展、困难与前景[J].地震地磁观测与研究,2007,28(2):1-24.

[2]李国勇.神经模糊控制理论及应用[M].电子工业出版社,2009.

[3]姜金征,等.人工神经网络在地震预测中的应用[J].山西建筑,2013,39(1):21-23.

作者简介:陈威(1995—),男,本科,长江大学地球物理与石油资源学院在读研究生。

猜你喜欢

人工神经网络BP神经网络
基于人工神经网络的故障诊断专利浅析
人工神经网络发展历史与训练算法概述
基于人工神经网络的优化配置研究
ANN、ANFIS和AR模型在日径流时间序列预测中的应用比较
就bp神经网络银行选址模型的相关研究
基于DEA—GA—BP的建设工程评标方法研究
复杂背景下的手势识别方法
BP神经网络在软件质量评价中的应用研究 
BP神经网络算法在数值预报产品释用中的应用
人工神经网络在旅游人数预测中的应用研究