張小濤, 張新東, 王晨暉
1. 河北紅山巨厚沉積與地震災(zāi)害國家野外科學觀測研究站, 河北 邢臺 054000; 2. 邢臺地震監(jiān)測中心站, 河北 邢臺 054000; 3. 河北省地震局, 河北 石家莊 050021
由于地震孕災(zāi)因子較多, 導(dǎo)致震級與影響因子的非線性關(guān)系十分復(fù)雜, 很難用直觀數(shù)學式表達這種不確定關(guān)系。 傳統(tǒng)的定量分析比較依靠主觀判斷, 修正權(quán)值依賴專家經(jīng)驗, 導(dǎo)致震級預(yù)測效果精度不高。 近年來, 許多研究人員運用BP 神經(jīng)網(wǎng)絡(luò)[1]、 灰色系統(tǒng)[2]等人工智能算法對震級開展預(yù)測工作, 取得了一定效果, 但模糊函數(shù)的主觀經(jīng)驗和BP 神經(jīng)網(wǎng)絡(luò)局部極值等問題仍然存在。
當前隨著機器學習的不斷發(fā)展, 支持向量機在處理小樣本非線性問題表現(xiàn)出良好性能, 并迅速應(yīng)用于震級預(yù)測方面。 朱景寶等[3]選取12 個P 波特征參數(shù)作為輸入, 震級為輸出, 利用SVM 實現(xiàn)地震震級的預(yù)測。 宋晉東等[4]選取12 個P 波特征參數(shù)作為模型輸入?yún)?shù), 構(gòu)建支持向量機的高速鐵路地震預(yù)警震級預(yù)測模型; 吳芳等[5]將地震活動周期值作為參數(shù)應(yīng)用于最小二乘支持向量機預(yù)測中; 武安緒等[6]引入非線性回歸算法優(yōu)化了SVM 震級預(yù)測模型。 但對于支持向量機的參數(shù)優(yōu)化一直沒有較好的解決方法。 遺傳算法利用遺傳變異思想, 能夠初始參數(shù)組合尋找到全局最優(yōu), 不易陷入局部極值, 馬創(chuàng)等[7]和谷艷昌等[8]均運用遺傳算法確定了支持向量機的最優(yōu)參數(shù)。此外, 影響因子之間的重復(fù)信息加大了模型運算量,而主成分分析法可以有效降低指標維度, 提高模型運行效率。 基于此, 本文建立了基于PCA 和GA 優(yōu)化的SVM 模型, 試圖為地震預(yù)測提供參考。
主成分分析(PCA) 是對提出的所有變量, 將重復(fù)的變量刪去多余, 建立盡可能少的新變量, 使得這些新變量是兩兩不相關(guān)的, 而且這些新變量反映的信息盡可能保持原信息, 從而到達降維目的, 其降維原理[9-11]主要如下: 設(shè)(X1,X2…,Xn) 是X的n個向量, 每個向量包含m維變量,X可表示為:
接著計算X的協(xié)方差陣, 利用下式:
求出協(xié)方差陣的相關(guān)系數(shù)陣, 根據(jù)相關(guān)系數(shù)陣的特征值λ1≥λ2≥…λm≥0, 可以得到第i個主成分的貢獻率為λi/P, 其中i=1, 2, 3, …m,P =前q個主成分的累計貢獻率為
支持向量機是一種處理非線性問題的機器學習方法[12-14], 其主要步驟如下:
其中:w可變權(quán)值,b為偏置值, 且w和?(Xi)均為n維向量。 引入ξ和ξ*作為松弛變量, 從而建立約束函數(shù)為:
其中C為懲罰函數(shù), 用于調(diào)整超出松弛變量的懲罰程度。 然后運用拉格朗日乘子法對(4) 進行求解,得到函數(shù):
其中:ai、、ri和都為Lagrange 乘子。 式(5) 分別對w和b求偏導(dǎo)并置零, 反代回式 (5)中, 就可以得到上述問題的對偶問題, 使用二次規(guī)劃優(yōu)化算法計算得到參數(shù)ai和對應(yīng)的最優(yōu)乘子, 同時構(gòu)造得到預(yù)測函數(shù):
其中:、ai為拉普拉斯算子,b為偏置值,?(Xi)T?(Xi) 為核函數(shù)。
綜上, 本文利用主成分分析法對震級影響指標進行降維處理, 然后將新生成的主成分映射到支持向量機的特征空間, 從而建立地震震級預(yù)測模型。
支持向量機(SVM) 參數(shù)優(yōu)化方法已發(fā)展眾多,其中遺傳算法汲取生物學遺傳變異思想[15-17], 可以快速有效地遍歷所有的參數(shù)組合, 不已陷入局部極值, 從而尋優(yōu)得到SVM 最優(yōu)參數(shù)組合。
基于PCA-GA-SVM 的地震震級預(yù)測模型構(gòu)建流程圖如圖1 所示, 具體步驟如下:

圖1 基于PCA-GA-SVM 的地震震級預(yù)測模型構(gòu)建流程圖Fig.1 The flow chart for earthquake magnitude prediction model based on PCA-GA-SVM
1) 按式(7) 對7 個影響因子數(shù)據(jù)進行歸一化處理。
式中,Xi和分別對應(yīng)第i個地震樣本數(shù)據(jù)和其相應(yīng)的歸一化數(shù)據(jù);Xmin和Xmax分別為各個影響因子的最小值和最大值。
2) 利用PCA 對歸一化原始數(shù)據(jù)進行降維處理,形成新的主成分, 以新生成的主成分作為輸入變量。
3) 利用GA 尋求SVM 最優(yōu)參數(shù), 構(gòu)建基于遺傳算法優(yōu)化支持向量機的地震震級預(yù)測模型。
4) 將建立的PCA-GA-SVM 模型應(yīng)用于地震震級測試樣本, 實現(xiàn)地震震級預(yù)測。
本文利用文獻[18]中地震樣本數(shù)據(jù)進行模型建立和預(yù)測, 以中國云南滇西南地區(qū)的17 個地震資料作為樣本來源(見表1), 判斷基于遺傳算法優(yōu)化支持向量機(PCA-GA-SVM) 模型的地震震級預(yù)測效果,計算時隨機選取10 個地震數(shù)據(jù)作為訓(xùn)練樣本, 其他7個作為測試樣本, 對預(yù)測結(jié)果和真實結(jié)果進行分析,從而檢驗?zāi)P偷念A(yù)測效能。

表1 地震樣本原始數(shù)據(jù)Table 1 Raw data of seismic sample
其中地震累積頻度是指半年內(nèi)發(fā)生3 級以上地震次數(shù), 累計釋放能量是指半年內(nèi)能量釋放積累值,b值為震級和頻度關(guān)系式中的比例系數(shù)。 活動周期中的0 表示該區(qū)域斷裂帶不處于活動周期, 1 表示該區(qū)域斷裂帶處于活動周期。
利用主成分分析(PCA) 對歸一化地震樣本數(shù)據(jù)進行處理, 得到相關(guān)系數(shù)陣見表2, 可看出地震累積頻度、 累計釋放能量、 異常地震群數(shù)和地震條帶個數(shù)四者存在正相關(guān)關(guān)系。 各主成分貢獻率如表3 所示,前四個累計貢獻率為88.6%, 基本能夠反應(yīng)原來7 個變量所攜帶的信息, 由成分得分系數(shù)矩陣可以得到前4 個主成分表達式如式(8) 所示。 新生成的4 個主成分作為模型輸入, 剔除了冗余信息, 同時降低了輸入維度, 提高了運行效率。

表2 相關(guān)系數(shù)陣Table 2 Correlation coefficient matrix

表3 歸一化特征值、 貢獻率和累計貢獻率Table 3 Normalized eigenvalue, contribution rate,and cumulative contribution rate
預(yù)測模型建立時選取徑向基函數(shù)為SVM 的核函數(shù), 用MATLAB 語言編寫GA 優(yōu)化SVM 參數(shù)程序,初始種群個數(shù)為30, 遺傳代數(shù)為100。 GA 尋優(yōu)過程如圖2 所示, 得到最優(yōu)參數(shù)C=3.157,g=6.362。 利用建立好的SVM 模型對學習樣本進行回判檢驗, 回判結(jié)果如圖3 所示。

圖2 遺傳算法尋優(yōu)Fig.2 Genetic algorithm optimization

圖3 學習樣本回判結(jié)果Fig.3 Learning sample feedback results
從圖3 回判結(jié)果看出, 基于遺傳算法優(yōu)化支持向量機(PCA-GA-SVM) 模型的回判值與實際值一致性較高, 模型對學習樣本有良好的回判效果, 其中樣本4 誤差較大, 主要是同類級地震樣本個數(shù)較少, 造成機器學習出現(xiàn)偏差, 總體上該模型對測試樣本的預(yù)測具可靠性較高。
為進一步判斷預(yù)測效能, 將基于遺傳算法優(yōu)化支持向量機 (PCA-GA-SVM) 模型的測試樣本, 使用GA-SVM、 GA-BP、 PCA-GA-BP 三種模型的計算了預(yù)測結(jié)果, 分析不同模型的預(yù)測效能, 四種模型的預(yù)測結(jié)果見表4 和圖4。

表4 四種模型預(yù)測結(jié)果Table 4 Prediction results of four models

圖4 四種模型預(yù)測結(jié)果相對誤差Fig.4 Relative error of prediction results of four models
由表4 和圖4 可以看出, 當以原始數(shù)據(jù)作為模型輸入時, GA-SVM 和GA-BP 兩種模型預(yù)測結(jié)果的平均相對誤差分別為2.42%、 6.85%。 當以主成分數(shù)據(jù)作為模型輸入時, PCA-GA-SVM、 PCA-GA-BP 兩種模型預(yù)測結(jié)果的平均相對誤差分別為2.13%、 6.35%, 表明SVM 的預(yù)測精度較高, 且優(yōu)于BP 神經(jīng)網(wǎng)絡(luò)模型的預(yù)測精度。 另一方面, 無論是將原始數(shù)據(jù)還是提取的主成分作為模型輸入, SVM 均有很高的預(yù)測效果, 再次佐證了SVM 在震級預(yù)測中的有效性。 同時在PCA降低數(shù)據(jù)維度、 剔除冗余信息、 提高模型預(yù)測效率的情況下, 兩種模型的預(yù)測精度分別提高0.29%和0.50%。
本文針對震級與其影響指標之間復(fù)雜的非線性關(guān)系, 建立了基于PCA-GA-SVM 的地震震級預(yù)測模型,并以中國云南滇西南地區(qū)的17 個地震資料作為樣本對模型性能進行了驗證, PCA 模型可將變量參數(shù)維度由7 維降至4 維, 剔除了原參數(shù)變量間的冗余信息,提高了模型運行效率, 預(yù)測平均相對誤差為2.13%,結(jié)果表明該模型方法具有良好的預(yù)測效果, 可為地震預(yù)測提供可靠參考依據(jù)。