黃佳偉 魯鐵定 賀小星 李 威
1 東華理工大學測繪工程學院,南昌市廣蘭大道418號,330013 2 華東交通大學土木建筑學院,南昌市雙港東大街808號,330013
電離層延遲誤差是影響GNSS測量精度的一個重要誤差源,其在無線電通信、導航、衛星定位和天氣預報等方面都有著廣泛的應用[1]。電離層總電子含量(total electron content, TEC)是描述電離層特征的重要參量,其對于單頻GPS實時導航定位和震前電離層擾動探測等具有重要意義[2]。但由于電離層在時空域上不斷變化的特性,導致對電離層TEC的研究和預報都十分困難[3]。對此,專家學者們展開了大量研究,并取得豐富的成果[4-11]。
不同于以往學者對電離層TEC數據進行分解-預測-重構的思想,本文充分考慮電離層TEC數據離散性和無序性的特點[1],利用Prophet算法模型對電離層TEC數據進行擬合預處理,對擬合數據與殘差數據分別進行Elman神經網絡預報,提出Prophet-Elman神經網絡殘差改正電離層TEC預報模型,并將預報結果與真實TEC值進行對比,驗證本文方法的有效性。
Prophet是一種新型的數據處理方法,它有一個同源的開源軟件包,可利用R或Python語言實現算法模型[12]。Prophet的主要功能是進行時間序列的擬合平滑以及函數預測。此外,對于具有趨勢變化和大異常值的日常周期數據處理效果較好,并且可對多個季節性周期數據同時模擬。Prophet時間序列的基本模型主要由4個部分組成:趨勢項、季節項、節假日項和誤差項,模型表達式[13]為:
y(t)=g(t)+s(t)+h(t)+εt
(1)
式中,y(t)為原始時間序列在t時刻的取值,g(t)為擬合時間序列中的分段線性增長或邏輯增長等非周期變化的趨勢項,s(t)為擬合時間序列中各種周期性變化的季節項或稱周期項,h(t)為非規律性的節假日效應,εt為誤差項或稱高斯噪聲項,表示無法預測的波動。有關Prophet算法的詳細介紹可參考文獻[12]。
Prophet算法中輸入數據主要由2列固定了名字的數據組成:ds和y。其中ds列為日期列,主要形式有2種:YY-MM-DD和YY-MM-DD HH:MM:SS;y列為數值列。不同于傳統時間序列方法需要對數據進行插值、平穩等預處理,Prophet算法模型可以直接對歷史數據進行平滑擬合與預測,是一種對電離層離散性、高噪聲數據具有良好擬合效果的擬合加性模型。
Elman神經網絡是一種典型的動態神經網絡[14]。Elman結構主要由輸入層、隱含層、承接層以及輸出層4個部分組成。信號通過輸入層進入神經元,而隱含層的傳遞主要通過輸入層以及承接層輸入,經過線性或非線性函數變換到達輸出層,輸出層線性加權后得到最終期望值。對比前饋神經網絡,其通過增加連接隱含層的承接層來提高處理動態信息的能力。承接層的作用是記憶隱含層前一時刻的輸出值并在下一時刻返回到隱含層。由于其獨特的自聯方式增加了對歷史數據的敏感性,提高了神經網絡處理數據的能力,同時可以在時域和空域進行模式識別。
Elman神經網絡的數學表達式為[15]:
x(k)=f(ω1(u(k-1))+ω2xc(k))
(2)
xc(k)=x(k-1)
(3)
y(k)=g(ω3x(k))
(4)
式中,ω1為輸入層到隱含層的權值,ω2為承接層到隱含層的權值,ω3為隱含層到輸出層的權值,u(k-1)為神經網絡的輸入,x(k)為隱含層的輸出,xc(k)為承接層的輸出,y(k)為神經網絡的輸出,g為隱含層到輸出層的傳遞函數,f為隱含層的傳遞函數,一般為sigmoid函數,表達式為:
f(x)=(1+e-x)-1
(5)
Elman模型采用傳統算法修正權值,誤差函數的表達式為:
(6)
式中,tk為期望輸出。
圖1為Prophet-Elman殘差改正電離層TEC預報模型流程圖。

圖1 改正模型預報流程
首先利用Prophet算法模型對電離層TEC數據進行擬合優化處理,并計算殘差序列;然后對擬合優化后的TEC數據建立Elman神經網絡模型進行預報,同時對擬合后的殘差數據建立Elman神經網絡模型進行預報修正,重構得到最終的TEC預測值。具體步驟為:
1)利用Prophet算法對電離層TEC數據x(t)進行擬合優化,得到擬合后的TEC數據xN(t)和殘差數據xc(t):
xc(t)=x(t)-xN(t)
(7)

(8)
采用IGS中心提供的電離層TEC真實值進行對比,驗證模型的預報精度。以日平均相對精度RA和均方根誤差RMSE作為評定指標,其表達式為:
RA=1-|IIGS,i-Ipre,i|/IIGS,i
(9)
(10)
式中,IIGS,i為第i個歷元IGS中心的TEC真實值,Ipre,i為第i個歷元預測的TEC值,i為歷元數,以2 h為1個歷元,n為歷元的時段長度。
利用IGS國際服務中心提供的2010年TEC格網數據進行精度分析。選取低緯度(15°N,125°E)、中緯度(45°N,125°E;45°N,60°W)和高緯度(75°N,125°E)4個不同的地理位置進行實驗,以2010年年積日1~30、101~130、201~230、301~330等4個不同時段的數據為例進行預報說明。以每個時段前24 d的數據作為訓練輸入,第25天的數據作為訓練輸出,建立Elman模型,以第2~25天的數據作為預報輸入,第26天的數據作為預報輸出,整體構建Elman神經網絡單步預測模型。以此類推,預報每個時段后5 d的TEC數據,并與真實TEC值進行對比。
以年積日101~130、位置(45°N,125°E)的數據為例進行具體分析。圖2為原始TEC值與Prophet擬合后的TEC值對比。從圖中可以看出,原始TEC數據呈現出較強的離散性和非平穩性,而經過Prophet擬合后的TEC數據更平穩,周期性變化更強,有利于模型的建立。圖3為Prophet擬合后預報的TEC值與擬合值以及TEC真實值的對比。從圖中可以看出,擬合后模型預報的結果與根據真實值所擬合的結果非常貼近,與TEC真實值吻合度也較高。結果表明,Prophet擬合后模型預報的結果與真實值TEC數據之間存在的差異主要由擬合殘差組成。對此,采用殘差修正來提高擬合預報后的精度。圖4為Elman模型、Prophet-Elman模型、本文模型預報的TEC值與真實TEC值的對比。從圖中可以看出,直接對TEC時間序列建立Elman模型預報效果最差;Prophet-Elman模型能夠有效地提高神經網絡的預報精度,且穩定性更強;而殘差改正后的Prophet-Elman模型可以提高離散程度高的數據點的預報精度,預報的TEC值與真實值最為接近,預報效果最好。

圖2 Prophet擬合后TEC數據與原始TEC數據對比

圖3 預測TEC值、擬合TEC值與真實TEC值對比

圖4 幾種模型的TEC預測值與真實值對比
表1為不同模型整體預報殘差絕對值分布情況統計。從表中可以看出,Elman模型預報5 d內的殘差絕對值均值在1 TECu以內的占65.4%,大于3 TECu的占6.8%;Prophet-Elman模型預報5 d內的殘差絕對值均值在1 TECu以內的占70.3%,大于3 TECu的占4.8%;而本文模型預報5 d內的殘差絕對值在1 TECu以內的占79.3%,大于3 TECu的占3.1%。說明Prophet-Elman模型的預報效果普遍高于Elman模型。然而也存在特殊情況,如Prophet-Elman模型在第5天時殘差絕對值大于3 TECu的占比高于Elman模型,這主要是由于Prophet擬合預報后與真實數據在個別預報點相差較大所導致的。對此,通過對殘差數據進行模型預報來提高預報精度。結果表明,本文模型整體預報效果均優于Elman模型,與圖4結果相吻合。
表2為3種模型不同地理位置的整體預報誤差結果統計。表中顯示,同一時段、同一地理位置,Prophet-Elman模型的預報效果普遍優于Elman模型,但也存在個別預報點相反的情況。對此,引進殘差修正模型提高個別數據點的預報精度。整體結果顯示,本文模型的平均相對精度普遍高于其他2種預報模型,均方根誤差普遍小于其他2種預報模型。顯然,本文模型的預報效果最優,從另一個角度驗證了表1的結論。從地理位置來看,同一經度均方根誤差隨著緯度提升而減小,低緯度地區幾種模型預報的均方根誤差都最大,高緯度地區則都最小,這主要是由于電離層TEC含量在不同緯度地區不同造成的。幾種模型預報的平均相對精度在中緯度地區最高,在低緯度和高緯度地區相差不大。同一緯度不同經度間,幾種模型預報精度沒有呈現明顯的變化特征。2010年為太陽活動低年,為驗證本文模型在太陽活動高年的預測效果,參照2010年的實驗方式對2014年(太陽活動高年)的數據進行實驗。表3為2014年3種模型在不同地理位置的整體預報誤差結果統計??梢钥闯觯?種模型在太陽活動高年的預測效果與太陽活動低年相同,改正模型的預測效果普遍優于其他2種模型。

表1 3種模型預報的殘差絕對值(以TECu計數)百分比統計

表2 2010年3種模型整體預報誤差情況

表3 2014年3種模型整體預報誤差情況
表4給出了太陽活動低年和太陽活動高年4個時段的預報精度對比。結果顯示,本文模型的預報效果在4個不同時段均優于Prophet-Elman模型及單一Elman模型。在太陽活動低年和太陽活動高年,Elman模型預報的均方根誤差均值分別為1.39 TECu和3.00 TECu,平均相對精度分別為89.9%和88.3%;Prophet-Elman模型預報的均方根誤差均值分別為1.15 TECu和2.21 TECu,平均相對精度分別為90.6%和89.9%;本文模型預報的均方根誤差均值分別為0.94 TECu和1.77 TECu,平均相對精度分別為92.9%和92.2%。顯然,本文模型的預報效果最好。對比太陽活動低年,3種模型在太陽活動高年預報時平均相對精度更低,均方根誤差更大。

表4 3種模型不同時段的預報精度情況
針對電離層TEC數據離散性和無序性的特點,本文引入Prophet算法對TEC時間序列進行擬合預處理,對擬合數據建立Elman模型進行預報,同時對擬合后的殘差數據進行預報修正。利用IGS提供的太陽活動低年和太陽活動高年的電離層數據進行實驗,得出以下結論。
1)對比3種模型的預報精度可知,相較于Elman模型和Prophet-Elman模型,本文模型的預報精度最高、效果最好。電離層TEC信號經過Prophet擬合處理后能夠有效提高模型的預報精度,對預報效果進行殘差修正,能夠增加模型對極值點的預報精度,提升模型的整體預報效果。
2)本文模型能夠較好地反映電離層TEC的變化特征,太陽活動低年和太陽活動高年的預報平均相對精度分別為92.9%和92.2%,均方根誤差分別為0.94 TECu和1.77 TECu,活躍期的電離層的不穩定性及高電子含量導致電離層在太陽活動低年的預報效果優于太陽活動高年。
本文將Prophet算法引進到Elman神經網絡的電離層TEC預報當中,給類似問題提供了一個新的解決思路。但在預報的過程中仍然存在個別數據點預報效果較差的情況,如何建立一個預測精度更高、穩定性更強的預報模型還需進一步的研究。
致謝:感謝IGS提供的電離層GIM數據。