林彬華,金星,3*,康蘭池,韋永祥,李軍,張燕明,陳惠芳,周施文
1 福建省地震局,福州 350003 2 福州大學,福州 350108 3 中國地震局廈門海洋地震研究所,廈門 361021

總結上述方法,主要思路都是從地震初期少量地震波形記錄中提取與地震震級相關的頻率、振幅信息,并從歷史地震數據中通過統計方法獲得相關統計公式用于地震震級測定中.但是,地震震級測定是一個十分復雜的過程,需要綜合考慮震源過程、傳播介質、場地條件、儀器響應等多個方面因素的影響,單一的幅值或周期參數在一定程度上能夠較好映射出地震的規模,但較難反映出地震的全部特征,從而導致地震震級測定的精度不足.
近年來,隨著地震數據資料不斷積累,以及深度學習算法的出現,使得人工智能技術在地震學領域中的應用進入新的階段.Perol等(2018)應用CNN網絡實現地震檢測和定位,可檢測出比常規地震目錄多17倍的地震,且檢測效率也比模板匹配快了好幾個數量級.Zhu和Beroza(2019)利用U-net神經網絡將震相拾取問題看成分割問題,提高了P波和S波的拾取精度.趙明等(2019b)應用卷積神經網絡對汶川地震余震波形進行自動分類與識別,其訓練和檢測準確率均達到95%以上.Lomax等(2019)設計了單臺50 s波形輸入的ConvNetQuake_INGV網絡來檢測地方震和遠震,根據震中距、方位角、震源深度和震級等特征獲得地震的概率估計,模型展示了即使地震事件在空間位置和震級上的廣度,也能獲得較高的識別效果(準確率達87%).Mousavi和Beroza(2020)設計了單臺30 s的卷積神經網絡和遞歸神經網絡聯合的震級預測模型,震級預測標準差約為0.2,網絡可有效提高地方性震級和持時震級測量精度.胡安冬和張海明(2020)設計了NN模型和CNN模型對地震緊急預警震級進行預估,目前已實現以NN網絡為基礎的模型,與已有單臺震級預估算法相比有著更好的效果,但因數據量不足的原因暫時還未實現CNN模型對震級的預估.以上研究進一步證明了CNN在地震檢測及在地震預警方面的應用存在較好的潛力.為此,本文設計了以地震三分量波形數據作為輸入,震級類別作為輸出,訓練出3 s樣本的CNN震級預測模型.該方法充分利用首臺前3 s全波形信息,通過多層卷積核自動提取波形綜合、深層次的特征,相比于傳統單一特征提取方法更加全面、可靠,提高了震級測定精度和可靠度,有望解決地震預警震級測定這一世界性難題.
福建測震臺網由88個測震臺站、16個臺灣臺及12個周邊鄰省臺站共116臺組成.本文選取了2012—2019年福建臺網記錄到的福建地區、臺灣海峽及臺灣地區ML>2.0共1928個地震作為研究資料,其中2≤ML<3的地震共721個,3≤ML<4的地震共607個,4≤ML<5的地震共474個,5≤ML<6的地震共99個,ML≥6的地震共27個,地震分布圖如圖1所示.所有臺站記錄均包含E、N、Z三分量,采樣率為100 Hz,均為扣除臺站儀器響應后獲得實際地動速度記錄(單位um·s-1).

圖1 福建臺網記錄2012—2019年份的地震分布圖
樣本數據是根據P波到時信息從原始波形截取每個臺站的樣本,本文主要訓練了3 s樣本長度模型.截取規則如下,截取P波到時前0.2 s至P波到時后2.8 s的數據段(帶有振幅信息).圖2展示了不同震級的3 s樣本波形存在較大差異,如ML2.0樣本波形含有較為豐富的高頻信息,ML6.1樣本波形的長周期成分較強,即隨著震級增加,波形的優勢周期增大,為深度神經網絡的學習奠定重要基礎.

圖2 3 s長度的樣本波形記錄
福建臺網的大震樣本較為稀缺,故收集川滇地區2017—2019年記錄的21次ML>5的地震震例進行補充,同時使用隨機截取地震事件對大震樣本進行增強處理.具體處理方法是,利用滑動窗在P波到時附近滑動,隨機截取出若干條記錄作為樣本.如圖3為隨機截取地震樣本記錄示意圖,一條地震記錄可截取出D1、D2、D3、D4等4條3 s長度的數據段作為增強樣本.

圖3 隨機截取地震記錄實現數據增強
當地震觸發后,為更快地估算地震震級,通常選用前幾臺的地震記錄信息進行判別,因此本文只截取出1949個歷史地震事件中150 km內的臺站記錄作為研究資料,經過重復小震記錄的剔除、大震樣本增強處理、記錄質量篩選后共得到14644條三分向地震記錄,所有記錄相對于震級和震中距的分布情況,如圖4所示,樣本震中距分布在0~150 km,震級主要分布在ML2.0~6.5之間,樣本所覆蓋的震中距范圍和震級范圍都較廣,而非針對某個特定區域的研究,使得訓練好的模型具有更好的實際應用價值.

圖4 地震記錄相對震中距和震級的分布情況
將其中2012—2018年震例資料共11807條記錄作為訓練集樣本,供卷積神經網絡模型學習訓練;將2019年震例資料共2837條記錄作為測試集樣本,檢驗模型對震級的預測效果.
由于卷積神經網絡具有強大的分類功能,且地震震級通常可允許的誤差在±0.3(南芳芳等,2019),故本文將震級測定看成是分類問題,對震級大小進行等級分類,具體分類情況如表1所示,將ML2.0~2.2分為第1類,ML2.3~2.5為第2類,…,ML>7.6為第20類,共將ML>2.0的震級分成20個不同等級類別.
當模型在實際檢測中,若識別出該地震為第10個等級類別,按表1可得震級范圍在ML4.7~4.9,本文規定模型最終預測震級值取中間值,故為ML4.8,這樣有可能造成模型預測的震級值與實際震級值之間存在±0.1的系統誤差,但該誤差是在可接受的范圍內.

表1 震級分類及標簽
卷積神經網絡具有自動提取特征和長輸入數據的縮放能力,與地震信號處理的需求相契合.然而,卷積神經網絡對未歸一化輸入數據較為敏感,使其在震級估算中遇到較大的挑戰.地方性震級ML規定(中華人民共和國國家質量監督檢驗檢疫總局和中國國家標準化管理委員會,2017),即
ML=lgA+R(Δ)+S,
(1)
式中,A為水平向的峰值振幅;R(Δ)為儀器的量規函數,隨震中距變化的函數,其物理意義是補償地震波隨距離的衰減;S為臺站場地校正項.為了測定震級,需要獲取平均衰減模型和場地函數.神經網絡可以從訓練數據中學習到這些關系,我們只需確保向網絡提供學習這些關系所需要的信息.
從式(1)可知振幅信息對震級測定非常關鍵,但是數據歸一化處理可使典型卷積神經網絡獲得較好的性能.為此,Lomax等(2019)通過提取振幅信息作為額外數值輸入到網絡中來克服這個問題.而Mousavi和Beroza(2020)設計了一個主要由卷積層和循環層構成的網絡,其中卷積層沒有任何激活函數,僅用于降維和特征提取.但是以上兩種方法網絡較為復雜也不是很高效,因此本文設計了針對帶振幅信息輸入的卷積神經網絡,將震級輸出劃分為20個不同震級類別,降低了震級輸出的離散性,提高了每組類型判別的樣本數量.另外,通過在卷積層中增加RELU激發函數以及采用ADAM優化算法使模型參數值更加穩定,解決了輸入未歸一化數據容易引起梯度變化過大的問題,提高模型的識別效果.
針對地震震級測定問題,將單臺三通道的3 s波形作為輸入,震級類別作為輸出,進行卷積神經網絡的訓練與識別.卷積神經網絡通過卷積核提取波形的內在特征,設置多層卷積層,提取更多的特征,綜合以上特征信息,最后采用類似投票的方式輸出該事物所屬震級類型的概率(圖5).

圖5 卷積神經網絡模型的輸入與輸出
卷積神經網絡(Convolutional Neural Network,簡稱CNN)的核心部分是卷積,卷積層是通過將上一層的每個通道特征圖和卷積核(如1×3)進行卷積、疊加、增加偏置項、外加一個非線性的激活函數獲得(如公式(2)):
(2)

經過多層卷積、池化,全連接層處理,最后一層的輸出設為Z=(z1,z2,…,zj,…,zm),共分為m個類別.經過分類函數(softmax)處理后,得出模型的輸出概率,其表達式如下:
(3)
式中,zj為最后一層輸出Z的第j個元素值,qj為屬于第j種類別的概率值(通常在0~1之間,概率值越大表示屬于該類別的可能性越大).
本文的損失函數H是采用實際的標簽pj和預測概率分布qj之間的交叉熵,表達式如下:
(4)
從交叉熵的公式來看,交叉熵刻畫的是pj和qj兩個概率分布之間的距離,可以理解為交叉熵值越小,實際與預測的概率分布越接近.預測概率分布p為二值化編碼形式的標簽,如[0,0,1,0,0],可判斷是屬于第三種類別.
搭建一個好的卷積神經網絡模型需要對卷積核大小、卷積通道數、激活函數類型、卷積層數、全連接層數、訓練批次數等參數進行設計.本研究采用Tensorflow框架進行模型搭建和訓練.參數選取的原則,一方面總結前人的研究經驗(Krizhevsky et al.,2012; Ma et al., 2015; Perol et al., 2018; 趙明等,2019a),針對地震波三通道檢測,采用卷積核1×3,每層卷積通道數為64道,選用128批次和RELU激活函數.另一方面根據實測數據的調參試驗獲得最優模型參數.
表2列出不同模型參數,訓練集與測試集的準確率和耗時情況,以測試集的準確率來評判模型的優劣.通過試驗S01、S02、S03,可知7層卷積層的模型識別效果較優;通過試驗S02、S04、S05,可知2層連接層的模型識別效果較優.由于本試驗采用GPU配置的工作站進行訓練,因此在耗時上相差無幾.

表2 卷積層數和全連接層數的調參試驗
綜上所述,設計出3s樣本輸入的震級測定模型架構,如圖6所示,以臺站三通道的地震波形數據作為輸入,采用1×3卷積核進行卷積,用0填充對邊緣處理,2×2最大值池化.本例輸入波形層(也就是第0層)用3個通道,從第1到第7個卷積層都采用64個通道數.經過7層卷積池化后,特征圖由原來的64@300縮小為64@3,該過程可看成從原始地震數據中提取和壓縮有用信息到特征圖,使得最后一層特征圖具有深層、概括性強的特征表征能力.將這些特征圖展開為一維向量,共得到192個特征點,最后采用2層全連接模式輸出20個震級等級中概率最大的類別.

圖6 震級預測的卷積神經網絡模型架構
本模型訓練在Windows10、64位系統運行,設備安裝Tensorflow深度學習框架的相關環境,采用Tensorflow-gpu版本進行訓練,大大提高訓練效率.模型訓練所配備的硬件和軟件配置如表3所示.

表3 模型訓練所配備的硬件和軟件環境
訓練過程采用小批次隨機梯度下降法(SGD)算法、增加L2正則化防止過擬合、以及ADAM優化算法,學習率取0.001,訓練的目標誤差為0.08,迭代10000次進行學習訓練.通常耗時都集中在訓練上,對于普通的CPU配置機子,迭代10000次耗時大約需要300 min,不過采用GPU計算耗時只需3~5 min左右,提高了上百倍的模型訓練效率.
通過訓練集數據訓練出震級預測網絡模型MagNet,將訓練集數據通過MagNet仿真預測,得到訓練集的預測震級與實際震級的關系(圖7a);將測試集數據通過MagNet仿真預測,得到測試集的預測震級與實際震級的關系(圖7b).可以看出訓練集的離散度較小,幾乎都集中1∶1的對角線上,震級偏差的標準差為0.106;而測試集的離散度較大些,震級偏差的標準差為0.231.

圖7 MagNet模型預測震級與實際震級的關系
將MagNet模型預測的震級值與實際震級值進行對比,逐一計算震級偏差,公式如下:
(5)
式中,ΔMij為第i個地震第j個臺站的震級偏差,MCNN為卷積神經網絡模型預測震級值,M0為該地震最終的編目震級.根據省級測震臺網地震速報評比標準,通常震級誤差的允許范圍為±0.3.
由于測試樣本對模型來說屬于新鮮樣本,因此可統計測試集的震級偏差來評判模型的優劣.將測試集MagNet模型的預測結果MCNN,并與實際震級值M0之間求偏差進行分析,結果如圖8所示,測試結果的震級偏差整體呈正態分布,平均震級偏差為0.028,標準差為0.231,最大震級偏差為-1.3.其中MCNN與M0震級偏差控制在±0.3以內的占85.6%,MCNN與M0震級偏差控制在±0.5以內高達95.7%.

圖8 MagNet模型的測試結果
為了提高MagNet模型預測的可靠性,針對同一個地震事件中多臺的預測結果進行綜合平均.將測試集2837條地震記錄,以地震事件進行歸類,共有278個地震事件.統計測試集278個事件的前三臺預測震級的平均偏差,如圖9所示,得出91.8%的地震事件震級偏差控制在±0.3級以內,相比較單臺預測而言,最大震級偏差由-1.3減小為-0.6,標準差由0.231降至0.160,離散度減小,預測效果更優更可靠.其中2019年1月30日23時14分臺灣花蓮海域5.1級震例的前三臺平均震級偏差為0.033,MagNet震級預測效果好,預測效果基本和實際一致,這是由于該地震區域存在較多歷史震例,使得MagNet模型充分學習到該區域地震波形特征與震級之間的映射關系,從而做出可靠的預測.

圖9 前三臺平均的震級偏差統計圖
從測試集278個地震事件中挑出前三臺平均震級偏差大于或等于0.45的事件共有4個,具體結果見表4.對較大震級偏差的事件進行分析如下:福建龍巖ML2.1的震級偏差主要由于該區域周圍無歷史震例樣本,導致MagNet模型無法學習到該區域屬地化波形特征,例如龍巖臺觀測儀器布設在半山腰,臺站記錄受場地放大效應的影響,使得模型預測的震級值偏大;臺灣新北ML3.2的震級偏差主要由于該地震震源深度為102 km,福建ML測定是未考慮震源深度的影響,故而測得的ML偏小.然而MagNet模型通過深度學習歷史震例,訓練出一套不同于傳統方法的震級預測模式,該模式可能有考慮震源深度的影響,故而預測出的震級值比實際ML偏大;巴坦群島海域ML4.5、臺灣宜蘭海域ML6.1這兩個事件具有共同的分布特征是:一是該事件周圍歷史樣本較稀疏,導致CNN模型訓練時樣本數量不夠,使得模型預測效果較差;二則這些事件屬于網外地震,離最近臺站較遠,可能對事件本身震級測定精度造成一定的影響.同時這兩個事件都為臺灣島東部海域地震,該地區的地下構造受太平洋板塊和亞歐板塊的俯沖作用影響,使得其發震機理較為復雜,體現的波形特征具有多樣性,再加上樣本數有限,最終導致模型預測偏差較大.

表4 事件震級偏差大于0.4的地震統計表
利用文中CNN模型所使用的樣本數據,篩選出震源距小于60 km的臺站記錄作為研究資料,分別采用τc和Pd兩種方法擬合出特征參數與地震震級間的關系,統計得出預估震級與實際震級偏差的標準差,并與上述獲得的CNN震級測定方法進行比較.
3.4.1τc方法
根據周期特征類τc方法(Kanamori,2005;張紅才等,2017)提取出每條臺站記錄P波段的周期特征參數,再采用M=a+blg(τc)形式擬合,得到τc特征參數與地震震級間的關系:
M=7.41+5.52lg(τc)±0.79,
(6)
式中,τc為P波觸發后3s數據的臺站垂直向獲得的特征周期,單位為s;M為事件震級ML.圖10a為每條臺站記錄的周期τc值與震級M的統計關系,震級與周期τc呈正相關.圖10b為采用τc方法預測的震級值與實際震級值之間的關系,并獲得兩者震級偏差的標準差為0.79個震級單位.

圖10 利用τc方法預測震級
3.4.2Pd方法
根據幅值特征類Pd方法(Zollo et al.,2006)提取出經過高通濾波器(低頻截至頻率為0.075 Hz)濾波的位移幅值特征參數,再采用M=a+blg(R)+clg(Pd)形式擬合,得到Pd特征參數與地震震級間的關系:
M=3.10+1.95lg(R)+0.89lg(Pd)±0.40,
(7)


圖11 利用Pd方法預測震級
對以上周期特征類τc方法和幅值特征類Pd方法分析表明,統計得出預估震級與實際震級偏差的標準差分別為0.79和0.40,均大于CNN模型測定震級的標準差(無論是訓練集還是測試集).另外,CNN模型所使用的資料是對震中距150 km范圍內的臺站記錄(包括淺源和深源地震)共14644條樣本做統計,而特征參數方法只篩選出震源距60 km的臺站記錄(淺源地震)共2310條樣本進行統計擬合,相比而言,CNN模型統計的數據更加全面、多樣性,更加接近真實地震可能存在的情況.綜上所述,驗證了本文提出CNN的震級測定方法優于傳統的特征統計方法.
為了進一步驗證CNN模型對地震震級的測定效果,本文選取樣本資料充足區域的臺灣花蓮ML5.9震例和樣本資料稀疏區域的巴坦群島海域ML4.5震例進行分析.
利用CNN模型、τc、Pd三種方法對典型震例的震級進行預測,結果如表5所示.對于臺灣花蓮ML5.9地震,CNN模型、τc、Pd方法的預測震級與實際震級偏差分別為0.04、-0.88、-0.16,CNN模型預測效果最優,其次Pd方法,τc方法最差,這是由于該地震區域存在較多歷史震例,使得神經網絡訓練時對該區域震例的特征學習更加充分,CNN模型相比傳統特征方法具有更強的非線性、多因素的擬合能力,所以CNN模型預測效果優于傳統特征方法.對于巴坦群島海域ML4.5地震,CNN模型、τc、Pd方法的預測震級與實際震級偏差分別為-0.50、0.12、-0.64,τc方法最優,CNN模型次之,Pd方法最差,這是由于該地震歷史樣本較少,訓練時神經網絡未能充分學習到該區域的歷史震例特征,神經網絡會發揮一部分泛化能力對未知區域進行預測,但是傳統特征方法簡單的線性預測,有可能效果會優于CNN模型.綜上,可以看出τc方法和Pd方法還不夠穩定,既有好的預測效果,也有差的預測效果.CNN模型在樣本充足的情況下可以做出高可靠的預測,因此在實際應用中有必要將多種方法聯合分析,更大程度的發揮新技術帶來的優勢.

表5 典型震例的預測效果對比分析
本文充分利用卷積神經網絡具有較強的分類功能,把震級測定問題看成分類問題來處理,將震級ML>2.0的地震共分成20個震級類型進行識別,提供了一種震級測定的新思路.應用卷積神經網絡建立了單臺三通道3 s樣本波形與震級大小的映射模型,并用2012—2018年歷史震例資料訓練出適用于震級預測的MagNet模型,模型能夠又快又準地測定出地震震級,相較于傳統方法,模型測定的震級值更加穩定可靠,為解決地震預警震級測定這一挑戰性難題提供了新的技術手段.
通常地震樣本數據會存在空間分布和震級分布的不均勻性,可通過剔除地震頻發地帶較小的相似地震,并對較大地震數據進行樣本增強處理,使得樣本分布更加均勻,可提高模型的識別效果.在模型構建過程中,針對3 s地震波形的輸入,采用1×3的小卷積核效果較佳.通過調參試驗可知,6層卷積層未能充分提取到全局特征,8層卷積層過度壓縮,使得部分局部特征被掩蓋,因此得到7層卷積層效果較優.而1層全連接層可能對事物特征表達力不夠,但3層全連接層可能會造成過擬合現象,因而得2層全連接層較優.典型卷積神經網絡的輸入數據通常需要做歸一化處理,如震相識別、地震定位等處理.但是針對地震震級測定問題,由于振幅信息的重要性,因此構建了帶振幅信息輸入的卷積神經網絡,一方面將震級輸出劃分為20個不同震級類別,減小震級輸出的分類類別,增加每類樣本數量;另一方面通過在卷積層中增加RELU激發函數以及采用ADAM優化算法來解決未歸一化的問題,進而使得模型的識別效果更佳.
用2019年新震例對模型進行測試分析,得出單臺的震級偏差有85.6%可以控制在±0.3以內,前三臺平均的震級偏差有91.8%可以控制在±0.3以內,可見多臺平均的震級預測效果比單臺更加穩定可靠.分析震級偏差較大的事件,得出對于缺乏歷史震例的地震樣本的識別效果較差,同時對于臺灣島東部海域遠岸的地震由于發震機制復雜多樣,導致波形特征多樣性,在歷史樣本不足且臺站距離較遠的情況下,容易導致模型預測出現較大偏差.雖然深度神經網絡的新方法總體上優于傳統特征方法,但這并不代表在實際應用中可以完全取代傳統震級測定方法.換言之,可以將兩者結合起來,發揮各自的優點,比如對于歷史多震區域的地震,則以深度神經網絡預測的震級結果為主;而對于歷史少震或無震區域的地震,則需要傳統特征方法聯合輔助判斷,使得結果更加可靠.預警工程是一個十分復雜的工程,除了考慮震級偏差外,還需考慮誤報率.不同地區的預警報警等級不同,例如對于福建地區的地震,通常震級大于3.5級或者近臺烈度超過一定限值,即發出預警警報;對于臺灣地區的地震,通常5級或5.5級以上地震,便向福建全省發出預警警報.而一旦將小地震發布成大地震,所帶來的社會和經濟影響將會很大,因此還需要進一步防止誤報現象.
地震震級測定是一個非常難的問題,其受地震震源深度、區域衰減、臺站場地等多種因素的影響.根據地震震源深度的不同,震級度量方法也不同.對于淺源地震,通常選用里氏震級ML和面波震級MS;對于深源地震,通常采用體波震級mb.考慮區域衰減的影響,主要體現在量規函數項,即補償量隨震中距的變化函數,不同地區的量規函數會存在一定的差異但不會太大.臺站場地也會對震級造成一定影響,主要體現在臺站校正值,如臺站受場地放大效應的影響,常導致單臺震級測量偏大.針對單臺震級測量偏差問題,深度神經網絡通過自學習波形特征,訓練出單臺波形與最終臺網平均震級之間的映射關系,即可消除不同臺站場地造成的震級偏差影響.文中震級預測模型采用ML震級進行訓練,但由于ML震級本身的局限性,當測定的震級大于6.5級時將趨于飽和,對于7.0級以上大震顯然難以從ML測定中得到較科學的震級,因此可選用其它震級標度(如MS、mb或MW)作為最終震級值進行訓練.同時對于深源地震,可選用mb震級作為最終震級值進行訓練.
另外,還需考慮噪聲、異常波形的影響,文中所用的訓練數據都是不同震級的地震波形,這會導致訓練出來的網絡偏向對地震波形感興趣,而實際應用中必不可少會存在地震噪聲或異常波形,可能導致網絡出現一定的偏差,因此后續需要增加一個專門區分地震、噪聲和異常波形的網絡先將地震數據分離出來,再做CNN震級測定.
文中的訓練數據雖然有增加部分川滇地區ML>5.0的地震記錄,并進行了大震樣本增強處理,但是大震樣本數量還是比較有限,今后可收集全國各地域的大震記錄加入模型訓練,并探究模型在不同地區的適用能力.隨著地震數據量不斷積累,網絡模型不斷加深和優化,在3 s樣本的基礎上再訓練出5 s、8 s、10 s、20 s等樣本的震級預測模型,以滿足地震預警震級連續測定的要求,可進一步提高預警震級的精度和可靠度.
致謝感謝審稿專家提出的修改意見和編輯部的大力支持!