云昌盛,徐位墅,葉穎
(1.南方電網(wǎng)大數(shù)據(jù)服務(wù)有限公司,廣東 廣州 510655; 2.武漢大學(xué)測繪學(xué)院,湖北 武漢 430079)
電離層是近地空間環(huán)境的重要組成部分,電離層總電子含量(Total Electron Content,TEC)是表征電離層狀態(tài)變化的重要參數(shù),通過獲取電離層TEC可以有效地觀測電離層的時空變化,因此對電離層TEC進行建模與預(yù)報十分必要。同時由于天頂方向的總電子含量(Vertical Total Electron Content,VTEC)能夠反映測站上空電離層的總體特征,所以本文采用預(yù)測VTEC值來建立電離層模型[1,2]。
對電離層VTEC進行預(yù)測的本質(zhì)是時間序列問題。常用的傳統(tǒng)時序預(yù)測方法有自回歸模型(Autoregressive model,AR)、移動平均模型(Moving Average model,MA)、指數(shù)平滑法、霍爾線性趨勢法,以及在時間序列預(yù)測中被廣泛使用的求和自回歸移動平均模型(Autoregressive Integrated Moving Average model,ARIMA)等。時間序列模型建立在統(tǒng)計學(xué)基礎(chǔ)上,其結(jié)構(gòu)簡單且短期預(yù)測精度有所提高。但是張小紅等人在使用ARIMA進行短期TEC預(yù)測時指出,當樣本序列長度超過30d時相對預(yù)測精度隨樣本序列長度的增加而降低[3,4]。
由于電離層在時空變化和內(nèi)部結(jié)構(gòu)上的復(fù)雜性,建立高精度的電離層模型十分困難。數(shù)據(jù)量巨大、特征規(guī)律難以通過固定公式描述、參數(shù)多等問題是傳統(tǒng)經(jīng)驗?zāi)P秃蛯崪y模型的痛點,但這卻恰好是深度學(xué)習(xí)模型十分擅長處理的領(lǐng)域。因此利用深度學(xué)習(xí)對電離層VTEC值進行建模與預(yù)報受到了越來越多人的青睞。
人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)是一種典型的非線性模型。ANN是深度學(xué)習(xí)當中最基礎(chǔ)的一種網(wǎng)絡(luò),常用的神經(jīng)網(wǎng)絡(luò)有BP神經(jīng)網(wǎng)絡(luò)、徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)(Radial Basis Function network,RBF)、自組織映射神經(jīng)網(wǎng)絡(luò)(Self-Organizing Map network,SOM)等。其中,BP神經(jīng)網(wǎng)絡(luò)被廣泛應(yīng)用于時間序列預(yù)測問題,其具有極強的非線性映射能力,并且能夠自適應(yīng)調(diào)節(jié)內(nèi)部權(quán)重,但是其存在局部最優(yōu)解問題,以及在當前時刻不會考慮上一時刻的狀態(tài)信息。
為了使網(wǎng)絡(luò)具有記憶能力,能夠處理序列數(shù)據(jù),循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)被提出并被廣泛應(yīng)用于時間序列預(yù)測問題[5],但是傳統(tǒng)RNN存在梯度爆炸以及梯度消失引起的長期依賴問題。
長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory network,LSTM)是常見的一種RNN,其有效克服了上述問題?;谏鲜鲈?本文選用長短期記憶LSTM網(wǎng)絡(luò)構(gòu)建模型對電離層VTEC值進行單步預(yù)測。
長短期記憶網(wǎng)絡(luò)LSTM是循環(huán)神經(jīng)網(wǎng)絡(luò)RNN的常見變種,其主要是在標準RNN網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)上,對隱藏層循環(huán)單元中的內(nèi)部結(jié)構(gòu)進行改進得到的。標準RNN的循環(huán)單元結(jié)構(gòu)簡單,通常只含一個tanh層或其他非線性激活函數(shù);而LSTM的循環(huán)單元則由輸入門(input gate)、遺忘門(forget gate)和輸出門(output gate)以及儲存信息的細胞狀態(tài)(cell state)組成。這三個門結(jié)構(gòu)可以刪除或添加細胞狀態(tài)中的信息,選擇性地讓信息通過,幫助每個單元保持穩(wěn)定,避免了梯度消失和梯度爆炸;同時細胞狀態(tài)的加入使LSTM可以存儲時間序列的歷史信息,具備了長期記憶的能力[6,7]。
LSTM模型按照輸入和輸出值所包含時間步的多少,以及輸入變量的多少可分為不同模型。本文對LSTM模型輸入VTEC值、時間、緯度、Dst指數(shù)和F10.7多個特征變量,并用多個時間步的輸入預(yù)測下一時刻單一時間步的VTEC值,因此本文使用的是many-to-one LSTM模型進行多變量單步預(yù)測。模型結(jié)構(gòu)如圖1所示,其中X1-Xn表示輸入的n個變量,X(1)-X(t)表示t個時間步的輸入變量;y為輸出值;u為內(nèi)部狀態(tài)[8]。
圖1 LSTM many-to-one多變量單步預(yù)測網(wǎng)絡(luò)結(jié)構(gòu)
模型所用的電離層VTEC數(shù)據(jù)來自歐洲定軌中心(Center for Orbit Determination in Europe,CODE)提供的GIM模型電離層產(chǎn)品(ftp://ftp.aiub.unibe.ch/CODE/),從中選取了經(jīng)度相同、緯度不同并且涵蓋高、中、低緯區(qū)域的三個網(wǎng)格點2017—2018年的VTEC數(shù)據(jù),選取格網(wǎng)點的經(jīng)緯度分別為(5°N,120°E)、(30°N,120°E)、(55°N,120°E),數(shù)據(jù)時間分辨率為1小時。地磁Dst指數(shù)和太陽活動指數(shù)F10.7數(shù)據(jù)來自GSFC/SPDF OMNIWeb(http://omniweb.gsfc.nasa.gov),時間分辨率同樣是 1 h。
本文數(shù)據(jù)處理及模型構(gòu)建流程如圖2所示:
圖2 數(shù)據(jù)處理及模型構(gòu)建流程示意圖
(1)構(gòu)建數(shù)據(jù)集:利用VTEC值、日期序列值(自0000年1月0日以來的整個天數(shù)及其小數(shù)值)、地理緯度、地磁Dst指數(shù)、太陽 10.7 cm輻射通量F10.7共五個特征變量的數(shù)據(jù)構(gòu)建數(shù)據(jù)集。
(2)數(shù)據(jù)集的標準化和歸一化:以數(shù)據(jù)集的70%作為訓(xùn)練數(shù)據(jù)用于訓(xùn)練模型,以10%作為驗證數(shù)據(jù)用于檢驗?zāi)P蜖顟B(tài)及調(diào)整超參數(shù),以20%作為測試數(shù)據(jù)用于預(yù)測及評估模型精度。并首先對訓(xùn)練集中的VTEC值進行標準化,對日期序列值、緯度、Dst、F10.7分別進行歸一化。再利用標準化和歸一化訓(xùn)練集得到的參數(shù),對驗證集和測試集VTEC值進行標準化以及對其他四個特征變量進行歸一化,以便于使LSTM模型梯度快速下降,提高預(yù)測精度。
(3)構(gòu)建輸入和輸出樣本序列:分別在訓(xùn)練數(shù)據(jù)、驗證數(shù)據(jù)和測試數(shù)據(jù)內(nèi)進一步劃分,依次構(gòu)造訓(xùn)練集、驗證集和測試集的輸入和輸出樣本序列用于放入模型進行訓(xùn)練、驗證和預(yù)測。由于電離層VTEC有明顯的逐日變化特性,故取前 24 h數(shù)據(jù)作為LSTM模型的輸入,未來 1 h的VTEC值作為輸出。例如:如果我們要預(yù)測某網(wǎng)格點2018年10月10日0時的VTEC值,則需要輸入2018年10月9日0—23時的VTEC值、日期序列值、緯度、Dst指數(shù)和F10.7,以此構(gòu)成輸入樣本序列及其響應(yīng)[9-13]。
超參數(shù)用于控制算法行為,其不能通過算法自身學(xué)習(xí)得到,需要人為設(shè)置。為使結(jié)果最優(yōu),經(jīng)過不斷調(diào)試,本文用到的參數(shù)和超參數(shù)以及其最終取值如表1所示[14]:
表1 參數(shù)和超參數(shù)表
(2)模型訓(xùn)練:構(gòu)建好LSTM模型后,將訓(xùn)練集的輸入和輸出樣本序列放入網(wǎng)絡(luò)當中進行訓(xùn)練。通過損失函數(shù)半均方誤差判斷模型是否訓(xùn)練完成,當損失函數(shù)趨于平穩(wěn)并且降低至一定程度后,模型訓(xùn)練完畢。
(3)模型預(yù)測及預(yù)測結(jié)果反標準化:利用訓(xùn)練好的LSTM模型對測試集數(shù)據(jù)進行單步預(yù)測,并利用此前標準化訓(xùn)練集時計算得到的參數(shù)對預(yù)測值進行反標準化,預(yù)報未來五天的VTEC值。
將(5°N,120°E)、(30°N,120°E)、(55°N,120°E)三個網(wǎng)格點在平靜期(2018年9月15日—2018年9月19日)和磁暴期(2018年8月24日—2018年8月28日)的輸入樣本序列分別放入訓(xùn)練好的LSTM模型進行預(yù)測,得到預(yù)測值與電離層模型產(chǎn)品值的對比曲線,并計算兩者之間的絕對誤差,結(jié)果如圖3和圖4所示:
圖3 平靜期預(yù)測值與真實值對比曲線及Dst和F10.7指數(shù)
圖4 磁暴期預(yù)測值與真實值對比曲線及Dst和F10.7指數(shù)
圖3(a)、(b)、(c)為(5°N,120°E)、(30°N,120°E)、(55°N,120°E)三個網(wǎng)格點在平靜期2018年9月15日—2018年9月19日的預(yù)測值與真實值的對比曲線及絕對誤差情況;(d)為此期間的地磁Dst指數(shù)和太陽 10.7 cm輻射通量F10.7情況。為查驗?zāi)P驮诓煌疟l件下的預(yù)測效果,對三個網(wǎng)格點磁暴期進行預(yù)測。圖4(a)、(b)、(c)為三個網(wǎng)格點在磁暴期2018年8月24日—2018年8月28日的預(yù)測結(jié)果,其中8月26日Dst達到最小值-174nT,發(fā)生大磁暴;(d)為此期間的地磁Dst指數(shù)和太陽 10.7 cm輻射通量F10.7情況。
從圖3和圖4來看,構(gòu)建的LSTM模型能較為準確地預(yù)報出真實趨勢,且大多數(shù)絕對誤差都能控制在2 TECU之內(nèi),整體預(yù)測效果較為理想。
此外,也分別對平靜期和磁暴期的相對誤差情況進行統(tǒng)計,如表2、表3所示:
表2 平靜期相對誤差分布情況統(tǒng)計表
表3 磁暴期相對誤差分布情況統(tǒng)計表
對三個網(wǎng)格點相對誤差分布的均值進行直方統(tǒng)計,結(jié)果如圖5所示:
圖5 平靜期和磁暴期相對誤差直方統(tǒng)計對比圖
從表2來看,三個網(wǎng)格點相對誤差的平均值有九成小于30%,其中一半以上的相對誤差均在10%以下,模型預(yù)測結(jié)果良好。對圖5進行分析,相對誤差在平靜期近正態(tài)分布,近35%的數(shù)據(jù)相對誤差小于5%,模型預(yù)測結(jié)果的相對誤差在平靜期的表現(xiàn)要優(yōu)于磁暴期。
為對預(yù)測結(jié)果進行進一步定量評估及對比分析,本文采用了相關(guān)系數(shù)(Correlation Coefficient,R2)、均方根誤差(Root Mean Square Error,RMSE)、平均絕對誤差(Mean Absolute Error,MAE)、平均絕對百分比誤差(Mean Absolute Percentage Error,MAPE)這四個評價指標。三個網(wǎng)格點在平靜期和磁暴期的評價指標計算結(jié)果如表4所示:
表4 三個網(wǎng)格點在平靜期和磁暴期的評價指標值
對表4中各評價指標的值進行分析可以看出,對于不同的地理緯度,構(gòu)建的LSTM模型對中緯度區(qū)域的VTEC值預(yù)測效果最佳,高、低緯度區(qū)域預(yù)測結(jié)果稍差。對于不同的電離層環(huán)境,模型在低緯度和中緯度的表現(xiàn)差異不大;但是在高緯度區(qū)域,LSTM模型在電離層平靜期的預(yù)測效果顯著優(yōu)于磁暴期。因此就整體來看,LSTM模型更適合用于中緯度區(qū)域電離層平靜期的VTEC值預(yù)測。
從上述預(yù)測結(jié)果及統(tǒng)計分析中不難看出,本文構(gòu)建的LSTM多變量單步預(yù)測模型不論是在高緯度、中緯度還是低緯度區(qū)域,不論是在地磁平靜期還是在磁暴期,預(yù)測結(jié)果的RMSE幾乎均能小于2 TECU,這表明在多數(shù)情況下的回歸效果相比真實值平均只相差2 TECU以下,模型預(yù)測效果比較理想。但是相比其他緯度和電離層環(huán)境,LSTM模型在中緯度區(qū)域電離層平靜期的VTEC值預(yù)測表現(xiàn)更佳。
未來,可以將全球范圍內(nèi)的多個網(wǎng)格點放入模型訓(xùn)練,嘗試構(gòu)建全球電離層模型。此外,還可以在前人工作的基礎(chǔ)上進一步改進模型進行VTEC長期預(yù)報,如嘗試TaiebS.B等人提到的矯正策略[15],或者KimJ.等人將平靜期和磁暴期分開建立兩個模型用于預(yù)測的方法[16]。