高 鵬, 江 柯, 余濤濤
(中國民用航空飛行學(xué)院 空中交通管理學(xué)院, 四川 廣漢 618307)
近年來,隨著航空運輸?shù)难杆侔l(fā)展,企業(yè)和用戶對運輸準點率的要求也越來越高,而天氣因素是降低航班準點率的一大誘因,其中大霧天氣在其中占比很大。設(shè)備落后的中小型機場一旦遭遇大霧造成的低能見度天氣,面臨的將是航班的返航與備降。因此提高大霧的預(yù)報準確率才能利于機場用戶提前決策,降低低能見度天氣帶來的損失。
大霧的預(yù)報在過去常以人工主觀預(yù)報為主,受人工誤差影響較大,而近年來的數(shù)值模式預(yù)報、動力統(tǒng)計預(yù)報以及集合預(yù)報等手段都能顯著提升預(yù)報準確率。伴隨著計算機技術(shù)的不斷進步,使得人工智能中的神經(jīng)網(wǎng)絡(luò)模型在利用海量歷史數(shù)據(jù)對氣象要素的預(yù)報中大展身手。通過分析能見度歷史樣本的統(tǒng)計規(guī)律,建立能見度樣本之間的非線性關(guān)系[1]。這類方法包括人工神經(jīng)網(wǎng)絡(luò)(artificial neural network,ANN)、支持向量機 (support vector machine, SVM)等人工智能預(yù)測方法[2-3]。但是這類方法外推預(yù)報需要消耗大量的計算機資源,且對能見度物理機制掌握不足,因此比較適用于短期和超短期預(yù)測任務(wù)[4]。
卷積神經(jīng)網(wǎng)絡(luò)通過視頻幀序列圖像建立能見度與圖像輸入數(shù)據(jù)的非線性關(guān)系,通過卷積層提取圖像特征,分析數(shù)據(jù)特征與能見度的關(guān)系,然后將訓(xùn)練好的模型用于能見度預(yù)測。卷積神經(jīng)網(wǎng)絡(luò)對于視頻、圖像處理能力比較強,但對于序列數(shù)據(jù)前后關(guān)聯(lián)性不強[5]。因此提出了循環(huán)神經(jīng)網(wǎng)絡(luò),能夠考慮時間序列的時序相關(guān)性,理論上能夠利用任意長度的歷史信息來更加全面完整地對時間序列進行建模。作為一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)模型[4],長短期記憶(long short-term memory,LSTM)網(wǎng)絡(luò)[6]通過自身特殊的結(jié)構(gòu)設(shè)計,有效地規(guī)避了常規(guī)RNN訓(xùn)練過程中帶來的梯度消失和梯度爆炸問題[7-8],使得數(shù)據(jù)能夠有效地被訓(xùn)練[9],從而提升能見度預(yù)測效果。
由此本文基于長短時記憶網(wǎng)絡(luò)(LSTM)模型,利用茅臺機場海量高精度歷史數(shù)據(jù)對茅臺機場大霧能見度進行預(yù)報,實驗表明更為復(fù)雜的長短時記憶網(wǎng)絡(luò)能夠有效提高茅臺機場低能見度預(yù)測精度。
LSTM是一種特殊的RNN。一般的RNN展開方式是將幾個功能相同的單元連續(xù)串聯(lián),即隨著新輸入信息的數(shù)量進一步擴大,通過上述自我循環(huán)的過程將上一個的狀態(tài)信息傳送給當前的,同時再對新的輸入信息進行當前輪次的訓(xùn)練或者學(xué)習(xí),一直到整個系統(tǒng)的訓(xùn)練全部完成,而最后獲得的數(shù)據(jù)即是系統(tǒng)最后的預(yù)測結(jié)果。普通的RNN模型如圖1[9]所示,圖中ot表示輸出層在t時刻的輸出;st表示隱藏層在t時刻隱藏狀態(tài)值;xt表示t時刻的輸入值;V表示隱藏層到輸出層的權(quán)值矩陣;W表示隱藏層到隱藏層的權(quán)重矩陣;U表示輸入層到隱藏層的權(quán)重矩陣。
圖1 普通RNN模型
原始的RNN系統(tǒng)在訓(xùn)練時,由于訓(xùn)練長度的增加或者網(wǎng)絡(luò)層數(shù)的增加,很容易產(chǎn)生梯度彌散爆炸和局部梯度消失的現(xiàn)象,使得系統(tǒng)無法處理更長的信息,也因此無法得到更長距離數(shù)據(jù)的信息。LSTM的出現(xiàn)解決了在遞歸式神經(jīng)網(wǎng)絡(luò)中普遍存在的長期依賴現(xiàn)象,它通過內(nèi)部控制信息傳遞的“門”一定程度上避免了梯度消失和梯度爆炸的出現(xiàn)[7-8]。最近,LSTM網(wǎng)絡(luò)已經(jīng)在視頻分類[11]、語音理解[12]、文本翻譯上得到應(yīng)用。
LSTM是RNN模型演化出來的變體,兩者的區(qū)別在于普通RNN結(jié)構(gòu)簡單,隱藏信息只源于當前時刻輸入和上一時刻的隱藏層信息,沒有記憶功能。LSTM網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜,不僅引入了細胞狀態(tài),而且使用輸入門、遺忘門、輸出門3種門來保持和控制信息。LSTM網(wǎng)絡(luò)結(jié)構(gòu)如圖2[10]所示,圖中i、f、o、c、h分別表示輸入門、忘記門、輸出門、內(nèi)部狀態(tài)、單元輸出;W表示權(quán)重矩陣;b表示偏置項;σ表示sigmoid函數(shù);tanh表示雙曲正切激活函數(shù);o表示哈達馬乘積。
圖2 LSTM網(wǎng)絡(luò)結(jié)構(gòu)
LSTM細胞由輸入門、忘記門、輸出門和內(nèi)部狀態(tài)構(gòu)成。輸入門是判斷當前時刻系統(tǒng)的輸入輸出信息中有哪些需要存儲的候選狀態(tài);忘記門是控制上一時刻的單位狀態(tài),有哪些必須需要被遺忘;而輸出門則是控制當前單位狀態(tài)有哪些必須輸出到當前的輸出值。
目前,針對LSTM等遞歸神經(jīng)網(wǎng)絡(luò)模型,主流的訓(xùn)練方法有兩種,按時間展開的反向誤差傳播算法(BPTT)[8]和實時遞歸學(xué)習(xí)算法(RTRL)[13]。由于BPTT算法概念清晰且計算高效,在計算時間上較RTRL更具優(yōu)勢,因此本文采用該算法來訓(xùn)練LSTM網(wǎng)絡(luò)。
對于LSTM來說有一個時序概念,就是需要把梯度沿時間通道傳遞的時間BP算法,所以稱之為Back Propagation Through Time-BPTT。BPTT基本思路就是首先把整個LSTM網(wǎng)絡(luò)按時間順序展開,之后再通過時間誤差反向傳播計算對擴展后的網(wǎng)絡(luò)進行時間訓(xùn)練。與標準的BP算法相似,BPTT也是需要重復(fù)使用鏈式規(guī)則。與標準前饋神經(jīng)網(wǎng)絡(luò)不同的是,對于LSTM網(wǎng)絡(luò),損失函數(shù)不但與輸入層次狀態(tài)相關(guān),也同時與上一隱藏層的狀態(tài)相關(guān),且LSTM每一級的權(quán)重都是共享的。
本文使用的3年(2017—2019年)茅臺機場大霧數(shù)據(jù)來自機場35號跑道的自動氣象觀測系統(tǒng)(AWOS)1 min 4次的能見度VIS、風(fēng)速數(shù)據(jù)WIND SPEED,1 min 1次的濕度HUMIDITY、溫度TEMP、機場修正海平面氣壓數(shù)據(jù)QNH,其時間分辨率較高。
由于茅臺機場于2017年正式開航且位于山區(qū),因此受氣象條件以及當?shù)丨h(huán)境等因素影響容易導(dǎo)致數(shù)據(jù)的缺測、異常。因此本文前期針對數(shù)據(jù)進行了大量處理工作。
本文利用前向填充和均值平滑法對數(shù)據(jù)進行缺省值處理。對于1 min 4次的時間分辨率較高的數(shù)據(jù),采用前向填充法即用前一值代替后面的缺測值;而對于1 min 1次的數(shù)據(jù),采用均值平滑法,即用臨近時間的均值來代替中間的缺省值。
在使用多變量時序序列進行大霧能見度預(yù)測時,由于量綱的不同,數(shù)值差異較大,例如24 h降水和氣壓值量綱相差較大。為避免數(shù)值過小的數(shù)據(jù)被忽略、數(shù)值過大的數(shù)據(jù)對權(quán)重占比大,同時為加快模型收斂,需要對變量和能見度值進行歸一化處理[14]。其歸一化公式為
(1)
式中:x′是數(shù)據(jù)進行歸一化后的結(jié)果;x為氣象初始數(shù)據(jù);xmax為每種氣象要素對應(yīng)的最大值;xmin為每種氣象要素對應(yīng)的最小值。
特別地,針對風(fēng)向,考慮其物理意義,使用正弦函數(shù)對其進行歸一化,將其數(shù)值歸算到區(qū)間[-1,1]內(nèi)[1]。
機場大氣能見度數(shù)值是局地變化的,其時間精度和空間精度較小,周圍小的擾動便會引起能見度數(shù)值發(fā)生波動,因此只基于歷史能見度數(shù)據(jù)對當前能見度的短時預(yù)測方法存在著明顯的不足,而研究各個氣象要素對能見度的影響,并基于皮爾遜相關(guān)系數(shù)法篩選預(yù)報要素因子,既能提高外推潛力,又能有效降低預(yù)測模型的噪聲。
將經(jīng)過數(shù)據(jù)處理后的AWOS數(shù)據(jù)利用Pearson相關(guān)系數(shù)法公式進行計算,其中Cov表示協(xié)方差,σ表示標準差,μX表示X的期望,μY表示Y的期望。其Pearson相關(guān)系數(shù)的絕對值越接近于1,則代表數(shù)據(jù)之間的相關(guān)性越好,而越接近于0,則代表相關(guān)性越差。負值代表數(shù)據(jù)間呈現(xiàn)出負相關(guān)關(guān)系,正值代表數(shù)據(jù)間呈現(xiàn)出正相關(guān)關(guān)系。
(2)
代入經(jīng)人工經(jīng)驗判別的影響機場能見度的19個氣象要素數(shù)據(jù),計算可得溫度和濕度、10 min平均風(fēng)速與能見度的相關(guān)性最大,如圖3所示,3年平均值分別為0.621、-0.574 2、0.587 6。氣壓、24 h降水與能見度的相關(guān)性次之,3年平均值分別為-0.373 8、-0.037。由此可見,在預(yù)報能見度值時的溫壓濕降水是其主要影響因素,因此采用將影響能見度最顯著的6組氣象數(shù)據(jù)序列與能見度數(shù)值序列構(gòu)成多變量的序列來使用多個氣象要素序列預(yù)測能見度值。
圖3 2017—2019年茅臺機場溫度、濕度、能見度折線圖和氣壓24 h降水能見度折線圖
構(gòu)建機場低能見度短期預(yù)測的LSTM模型,主要需要確定模型的5個超參數(shù),即輸入層時間步長、輸入層維數(shù)、隱藏層層數(shù)、隱藏層節(jié)點個數(shù)以及輸出層維數(shù)。
輸入層時間步長是表示用于進行機場低能見度預(yù)測的變量時間序列的長度。該參數(shù)的設(shè)定既要考慮到預(yù)報信息的完整性,也要兼顧到模型訓(xùn)練的實效性。過長的歷史序列長度會導(dǎo)致模型復(fù)雜度較高,可能導(dǎo)致模型的過擬合,從而得到惡化模型;過短會缺失預(yù)測信息導(dǎo)致模型預(yù)測精度難以提高[15-16]。本文通過模擬網(wǎng)絡(luò)優(yōu)化算法,將該參數(shù)設(shè)置為18,即輸入前18個時刻(前3 h)的歷史數(shù)據(jù)用于預(yù)測;輸入層維數(shù)即變量數(shù),在單變量預(yù)測時,輸入層維數(shù)為1;隱藏層層數(shù)就是LSTM層的個數(shù),隱藏層數(shù)越多學(xué)習(xí)到的經(jīng)驗越多,即模型的非線性擬合能力提高,但同時模型的復(fù)雜度及計算成本也將增加。針對大霧能見度預(yù)測,本文通過模型優(yōu)化,將該參數(shù)設(shè)為1;同樣的方法將隱藏層節(jié)點個數(shù)設(shè)為128;由于本次預(yù)測任務(wù)是預(yù)測大霧能見度的具體數(shù)值輸入回歸任務(wù),因此將輸出層維數(shù)設(shè)為1。
本文采用的樣本數(shù)據(jù)為AWOS系統(tǒng)提供的茅臺機場2017—2019年連續(xù)3年的實測數(shù)據(jù),獲取的數(shù)據(jù)包括風(fēng)速、能見度、機場修正海平面氣壓數(shù)據(jù)、溫度、濕度以及24 h降水量等6種不同的時間序列,采樣的間隔為10 min,總計154 961條樣本數(shù)據(jù)。
利用輸入的前18個時刻的LSTM模型預(yù)測后10 min、1 h、2 h的能見度。利用平均絕對誤差(mean absolute error,MAE)來評價此次模型的誤差和準確度。MAE的公式為
(3)
式中:yi表示預(yù)測值;y表示實測值。MAE越大,則代表誤差越大,模型的預(yù)測效果越差。
輸入的前18個時刻的LSTM模型預(yù)測后10 min的損失函數(shù)曲線、能見度實測值和預(yù)測值擬合曲線如圖4所示。
圖4 預(yù)測10 min的損失函數(shù)曲線、能見度實測值和預(yù)測值擬合曲線
由圖4可見該模型此次預(yù)測的效果較好,預(yù)報準確率為85.43%,預(yù)測曲線和真實曲線的擬合程度高,MAE為2 146.78 m。
輸入的前18個時刻的LSTM模型預(yù)測后1 h的損失函數(shù)曲線、能見度實測值和預(yù)測值曲線如圖5所示。
圖5 預(yù)測后1 h的損失函數(shù)曲線、能見度實測值和預(yù)測值擬合曲線
由圖5可見該模型此次預(yù)測的效果較好,但沒有利用3 h預(yù)測后10 min的高,預(yù)報準確率為83.97%,預(yù)測曲線和真實曲線的擬合程度仍然較高,MAE為2 367.55 m。
輸入的前18個時刻的LSTM模型預(yù)測后2 h的損失函數(shù)曲線、能見度實測值和預(yù)測值擬合曲線如圖6所示。
圖6 預(yù)測2 h后的損失函數(shù)曲線、能見度實測值和預(yù)測值擬合曲線
由圖6可見該模型此次預(yù)測的效果是三者中預(yù)測效果最差的,預(yù)報準確率為80.22%,但仍然較為精準,預(yù)測曲線和真實曲線的擬合程度良好,MAE為2 421.92 m??梢婋S著預(yù)測時效的提高,預(yù)報效果逐漸變差,且其滯后性水平下降。
本文提出了基于LSTM的深度學(xué)習(xí)網(wǎng)絡(luò)的低能見度客觀預(yù)報方法,根據(jù)實驗結(jié)果表明預(yù)報準確率為85.43%,因此可以很好地提升低能見度準確預(yù)報率,更好地保障茅臺機場航班的正常運行。精細化的低能見度人工智能預(yù)報系統(tǒng)對推動主觀預(yù)報向客觀預(yù)報發(fā)展,從定性走向定量,提高預(yù)報精準性,具有重要意義。通過此次預(yù)報分析發(fā)現(xiàn)溫度、濕度對于機場能見度的預(yù)報更重要。并且通過單步滾動預(yù)測的方案做對比實驗發(fā)現(xiàn),時間步長越長效果越差。下一步可以考慮利用transformer做長序列預(yù)測。