屈景怡,葉萌,渠星
(中國民航大學天津市智能信號與圖像處理重點實驗室,天津 300300)
隨著國民經濟和航空運輸業的迅猛發展,空中交通流量日益增加,但空域資源和地面保障能力不足的問題依然突出,導致機場延誤問題日益嚴重。機場延誤會對乘客、航空公司、機場運行人員等造成嚴重影響,給民航的正常運轉帶來挑戰。而機場延誤預測算法的研究,不僅可以提前預知機場擁堵時間點,為相關的運行決策提供理論依據[1-2],還可以間接反映未來機場航班需求量和容量的關系[3-4],為機場建設提供參考,具有非常重要的現實意義。
針對機場延誤的預測問題,國內外相關學者已經開展了一些研究。已有方法中多采用線性回歸、支持向量機、決策樹等傳統算法[5-14]。文獻[6]基于非線性物理假設和機場動態特性知識,提出了基于邊界條件的機場延誤預測方法,通過對不同機場數據的實驗驗證,最高預測準確率為75.2%。文獻[7]針對機場航班數據不斷更新的特點,利用增量式排列支持向量機算法進行延誤預警,其準確率可達80%。文獻[9]利用邏輯回歸和決策樹這2個機器學習模型,預測機場地面延遲的發生。通過實驗對比,邏輯回歸可比決策樹取得更好的預測結果,但其準確率也僅達到 84%。文獻[11]嘗試利用淺層的人工神經網絡(ANN, artificial neural network)對機場空域進行延誤預測,但是該模型不能準確學習時間維度上的延誤傳播特性,在面對嚴重且持續性延誤狀況時,模型的預測結果并不理想。
雖然國內外學者在機場延誤預測方面取得了一定成果,但仍存在以下3個問題。1) 這些方法大多針對小數據集樣本進行訓練,面對大量且高維的機場延誤數據,往往需要進行降維處理,造成原始數據信息的缺失。2) 這些方法沒有考慮機場狀態信息的時間相關性,實際上,前一時刻機場的延誤對后續機場延誤狀態的影響很大。3) 這些方法較少考慮氣象信息對延誤預測的影響。根據《2017年全國民航航班運行效率報告》統計結果,天氣原因是造成延誤的主要原因之一。
近年來,面向大數據的深度學習方法在計算機視覺、語音識別、自然語言處理等方面得到了廣泛應用,其性能明顯優于傳統算法[15]。在眾多深度學習方法中,循環神經網絡[16](RNN, recurrent neural network)將時序的概念引入網絡結構設計中,使其在時序數據分析中表現出更強的適應性。長短時記憶[17](LSTM, long short term memory)網絡作為RNN的改進,解決了RNN的梯度消失、長期記憶能力不足等問題,使循環神經網絡能夠真正有效地利用長距離時序信息。然而,在實際應用中發現,由于網絡中全連接結構的存在,使LSTM網絡無法繼續加深,預測精度無法進一步提高,并且大規模LSTM網絡的訓練對硬件要求比較高。
為解決上述問題,本文提出了基于區域殘差和LSTM(RR-LSTM, region residual-long short term memory)網絡的機場延誤預測模型。該模型利用LSTM 網絡來充分提取機場延誤數據的時間相關性,并在LSTM基礎上增加了區域殘差網絡模塊和單向池化模塊。其中,區域殘差網絡模塊是對殘差網絡(ResNet, residual network)[18]的改進,以代替LSTM層間全連接的功能,解決深層LSTM的梯度消失問題;單向池化模塊的設計是為了保證區域殘差網絡模塊和LSTM網絡模塊的特征維度一致性。此外,本文提出的基于 RR-LSTM網絡的模型綜合考慮了機場的屬性信息、氣象信息和相關運行航班信息影響,融合氣象和航班信息后,預測準確率得到了一定程度提高。
圖1(a)為文獻[11]的網絡結構,圖1(b)為本文提出的RR-LSTM網絡結構。通過對比可以看出,一條待分類機場延誤數據在RR-LSTM網絡中的訓練框架主要由3個部分組成,分別是區域殘差網絡模塊、單向池化模塊和LSTM網絡模塊。
1) 區域殘差網絡模塊:分別對不同區域的輸入數據進行卷積,獲取輸入數據的空間局部特征,同時保證輸入數據的時間順序。
2) 單向池化模塊:將區域殘差網絡的輸出進行維度轉換,保證網絡輸入數據在區域殘差模塊和多層LSTM網絡中的維度一致性。
3) LSTM網絡模塊:接收單向池化模塊的輸出作為LSTM模塊的序列化輸入,獲取機場延誤數據在時間維度上的依賴關系。
LSTM網絡可以充分利用機場延誤信息的時間相關特性。對于LSTM網絡來說,其時間步長越多,記憶能力越強;但是隨著網絡深度的增加,LSTM會出現梯度消失的問題,文獻[19]通過實驗驗證了增加LSTM的層次反而會使其性能下降。為進一步說明此問題,本文給出深層LSTM梯度消失的理論證明。
如圖2所示,LSTM網絡通過一個記憶單元來存儲輸入數據的重要特征信息。每一個網絡神經元包含核心元素cell和3個門單元,分別是輸入門、遺忘門和輸出門。
LSTM 單元的前向傳播過程如式(1)~式(6)所示。其中分別為l層t時刻LSTM單元輸入門、遺忘門和輸出門的輸出;表示l-1層網絡在t時刻的輸出,而則表示l層網絡在t-1時刻的輸出;Wi、Wf和Wo為t時刻l-1層網絡與該單元輸入門、遺忘門、輸出門的權重矩陣;同樣地,Ui、Uf和Uo為t-1時刻l層網絡與該單元各個門的權重矩陣為核心元素cell的輸出,從圖2和式(4)可以看出,包含以下2個部分:第一部分是t-1時刻cell狀態和遺忘門輸出的乘積,第二部分是輸入門輸出的乘積。Wc為t時刻l-1層網絡與cell連接的權重矩陣,Uc為t-1時刻l層網絡cell連接的權重矩陣。則為最終LSTM的輸出。式(1)~式(6)中的和h(?)均為激活函數。

圖1 網絡結構

圖2 LSTM單元結構

LSTM誤差項的反向傳播包括2個方向:1) 沿時間維度的反向傳播,即從當前t時刻開始,計算前面每個時刻的誤差項;2) 將誤差向前一層進行傳播。對于后者,目前的相關研究還不多,故根據誤差反向傳播原理,推導得出誤差項沿網絡層數的反向傳播過程為


其中,f(?)為激活函數,f′(?)為激活函數的導函數,LSTM單元中的激活函數多采用tanh和sigmoid函數,即f( ?)≤ 1 ,f′(?)≤ 1 。并且權值矩陣中元素的絕對值均小于1。另外需要解釋的是,由于式(7)中進行相加的四項存在正負號,加法并不能使的值增大,因此當LSTM層數增加時,根據鏈式法則(的組成形式和相似),式(7)中會出現多個小于1的項進行連乘,梯度在向前傳播時會不停衰減,從而導致梯度消失的問題。
為解決深層LSTM的梯度消失問題,根據后續實驗結果,本文提出的RR-LSTM網絡只保留了兩層LSTM,單條機場延誤數據的特征提取則由深層區域殘差網絡來代替完成。
ResNet中的卷積操作通過權值共享可減少訓練參數,與LSTM相比,更適于數據的空間局部特征提取。通過對傳統卷積神經網絡結構的改進,ResNet解決了深層網絡結構的梯度消失問題,具有更強大的特征學習和表達能力,圖 3(a)為文獻[18]提出的 ResNet結構塊,但是常規的卷積操作會破壞輸入數據的時間順序,無法將 ResNet結構直接增加至LSTM網絡中。為此,本文提出了區域殘差網絡,區域殘差網絡的單個模塊結構如圖3(b)所示,不同層數的網絡均由其堆疊而成。
設X為輸入,經過批歸一化(BN, batch normalization)[20]和整流線性單元ReLU[21]操作后,得到。圖3(b)中卷積模塊的非線性映射函數H(?)的定義如式(12)所示。

其中,F(?)表示ReLU激活函數和BN操作的計算過程;分別為同一個結構塊中3個卷積層的權值矩陣,m1、m2和m3代表3個不同卷積層。單個結構塊的非線性映射函數為


圖3 殘差學習結構塊
區域殘差網絡是為了解決 ResNet中常規卷積操作會破壞數據時序信息的問題。由圖3可以看出,其根本區別是根據機場延誤的數據集特點,將殘差網絡結構塊中的卷積核尺寸由3×3替換為3×1。此外,實際卷積操作時將步長由原來的二維移動變為單向移動,這樣可以使卷積操作僅覆蓋單獨一個時間區域內的數據,即單獨對輸入數據的不同區域進行局部特征提取,進而實現空間特征深層提取,同時保留機場延誤數據的時序關系。為使網絡更加容易訓練,采用了以下3個優化方法:將直連通道中的激活函數ReLU去掉,在每一卷積層前都進行BN操作,對輸入進行前置激活[22-23]。
為了將 LSTM 與區域殘差模塊有效地貫穿融合,本文設計了單向池化模塊,如圖4所示,圖中t代表時間步長數。該模塊首先利用尺寸為1× 1、步長為1、數量為128的卷積核,對區域殘差網絡模塊的輸出特征圖進行降維操作,再進行單向全局池化。池化方程為

其中,ai,j表示上一層神經網絡輸出特征圖中坐標為(i,j)的神經元,si表示最大池化層中坐標為i的神經元,ave(?)表示求矩陣中所有元素的均值。

圖4 單向池化模塊
本文設計上述單向池化的方式是出于以下3點考慮。
1) 區域殘差網絡的輸出特征圖維度需要符合LSTM輸入特征維度的要求,傳統方法只是直接進行維度重塑操作,即將三維的數據壓縮為二維,再使用全連接的方式進行維度變換。由于全連接的引入,不僅會使計算量增長,而且會增加網絡梯度消失問題出現的概率。而單向池化方法通過卷積神經網絡的權值共享,可實現維度變換的同時,有效控制網絡中增加的訓練參數數量。
2) 如圖4所示,區域殘差網絡的輸出特征圖數量為 1 024,若直接進行單向全局池化操作,則會得到維度為t×1 024的數據作為LSTM輸入,由于LSTM網絡各單元之間的連接均是全連接方式,在實際實現過程中,會出現網絡不收斂的情況,因此在實現維度轉換之前進行了1×1的卷積處理,以減少特征圖的數量。
3) 單向全局池化的特征處理過程是,將不同卷積核輸出的特征圖,映射到與LSTM相連接的不同神經元,這樣做的好處是保存了每個卷積核特征表達的獨立性。
基于RR-LSTM網絡的機場延誤預測模型如圖5所示,主要包括以下3個部分:數據預處理、特征提取和特征分類。特征提取部分介紹詳見第2節,下面主要對數據預處理和特征分類展開介紹。圖 5給出了各個網絡結構的輸出特征圖維度,以(t×102)×16為例,其中,t表示循環的時間步長,102表示每個時刻需要處理的一維向量大小,16表示輸出特征圖的個數。

圖5 基于RR-LSTM網絡的機場延誤預測模型
機場屬性數據定義為A,包括日期、時間、機場ID等5個特征屬性。
機場運行航班數據定義為F,包括起飛日期、起飛/降落機場ID、起飛/降落城市ID、航班號、計劃起飛/降落時間、起輪/放輪時間、航程等22個特征屬性。
機場天氣數據定義為W,包括時間、機場天氣狀態、風向、風速、能見度、溫度、氣壓等 18個特征屬性。
數據預處理的步驟如下。
Step1 以日期、航班起飛/降落時間、天氣觀測時間這3個特征作為鍵值,對機場屬性數據F、航班數據A和天氣數據W進行融合。
Step2 將原始數據特征屬性分為離散性和連續性2種。首先對連續性特征進行min-max歸一化編碼[23]。然后將離散性特征以100為閾值分為高低基數2類,特征的基數是指該特征類別的窮舉數。最后,對低基數離散性數據采用獨熱編碼,即one-hot編碼[24];對高基數離散特征進行 meanencoder編碼[25]。
Step3 將編碼后的數據E按照起飛和降落時間進行排序,然后以長度為L、步長為1的分割窗口在時間維度上進行滑動分割,得到模型輸入Et。分割后每個輸入數據的時間序列長度為L,對應于機場延誤預測模型中的時間步長t。
根據模型中機場延誤時間的定義,將延誤時間在15 min以內的情況劃分為不延誤狀態,反之劃分為延誤狀態,從而將機場延誤預測問題轉化為二分類問題。
如圖5所示,特征分類部分共有兩層:全連接層和 Softmax[26]分類器層。其中,全連接層輸出的特征圖維度為(1×1)×q,q為分類類別數,本文涉及的是二分類問題,所以q=2。對于每類有r個樣本的集合,可以表示為其中,每一個類別j的輸出概率值為p(y=j|x),如果用q個向量表示q個輸出概率值,則函數為

其中, hθ(x)為神經網絡的輸出,θ為網絡參數,i為樣本序號,為歸一化因子。網絡訓練使用交叉熵作為代價函數,其表達式為

為了更好地評估LSTM網絡在機場延誤預測問題上的有效性,本文采用準確率作為評價準則,如式(18)所示。

其中,N為測試集中總的數據量,C為模型預測的延誤狀態與實際延誤狀態相同的記錄數。
本節首先介紹了實驗環境、參數配置和實驗數據,然后基于機場延誤數據對比驗證了所提模型的性能,并對機場延誤數據特征進行了分析。
實驗所使用計算機的配置如下:處理器為Intel至強Xeon E5-1620,CPU頻率為3.60 GHz;內存為16.00 GB;操作系統為Ubuntu14.04(64 bit);圖形加速卡為GeForce GTX TITAN Xp;深度學習開發平臺為Tensorflow 1.3.0。
為了方便重復實驗和后續研究,這里給出本文實驗中所設置的參數名稱與對應的參數值供研究參考:權值初始方式為正交初始化;最大迭代次數為 8.5萬次;訓練時的批處理數量為 512,測試時為 128;訓練的優化方法為隨機梯度下降法;初始學習率為0.1,訓練時分別在迭代4萬次和8萬次時進行衰減,每次衰減10倍。
本文模型實驗數據為2016年~2017年美國亞特蘭大機場的航班運行數據和天氣數據,其中航班運行數據來自交通運輸統計局(BTS, bureau of transportation statistics)的航班準時性數據(AOTP ,airline on-time performance data),天氣數據來自美國國家海洋和大氣管理局(NOAA, national oceanic and atmospheric administration)提供的本地氣候質量監控數據(QCLCD, quality controlled local climatological data)。將原始數據特征進行預處理后,得到維度為1 781 045×203×t×1的網絡輸入數據,其中,1 781 045為所有數據的數量,203為編碼后每條數據的特征維度,t為每條數據的時間序列長度,由于計算能力有限,本文只對t=30進行了實驗驗證。
將本文所提網絡模型與其他經典神經網絡在機場延誤數據上進行對比,驗證本文所提方法的有效性。
1) ANN。傳統前饋型神經網絡不同隱藏層之間采取全連接方法。本文設計了層數為1、2、4、6的網絡結構,對應網絡名稱為ANN1、ANN2、ANN4、ANN6。當神經網絡深度增加時,模型對計算機性能的要求越來越高,模型的收斂也越來越困難。
2) VGG。VGG網絡作為經典卷積神經網絡,包括了反復堆疊3×3的小型卷積核和2×2的最大池化層,本文基于機場延誤數據實現了 VGG16和VGG19。對于數據集由于卷積神經網絡沒有考慮時間維度上數據的關聯性,因此在具體實現策略上,需要將其映射到空間維度上進行卷積,這樣的操作必定會丟失一部分數據信息,特別是長時間距離的信息。
3) ResNet。為了增加可對比性,該部分ResNet的網絡配置與本文所提RR-LSTM中的相應模塊均一致,實現了 ResNet18、ResNet34和 ResNet50。與VGG相同,ResNet也需要將其時間的數據映射到空間維度上進行卷積。
4) ANN-LSTM。該網絡模型是文獻[13]提出的一種模型思想,但是文中的實驗數據與本文并不相同,為了保證對比實驗的嚴謹性,需要使用本文數據對模型重新訓練。另外在文獻[13]的基礎上,對隱藏層 ANN的層數進行了討論,分別包括ANN1-LSTM、ANN2-LSTM 和 ANN4-LSTM,其中LSTM的層數均為2層。
5) VGG-LSTM。與ANN-LSTM模型類似,實現了VGG16-LSTM和VGG19-LSTM。
6) RR-LSTM。本文所提網絡模型,實現的網絡配置有RR18-LSTM、RR34-LSTM和RR50-LSTM。
4.3.1 引入時序信息對預測結果的影響
為驗證前續機場延誤狀態對當前預測結果的影響,本部分將不同神經網絡模型在數據集E和Et進行了對比實驗。根據數據預處理步驟,E代表單個時刻的數據集,Et代表不同時刻數據組成的時間序列集。需要說明的是,由于數據集E為單獨時刻的特征信息,無法使用LSTM網絡進行時序關聯的學習,因此涉及LSTM網絡的模型沒有對數據集E進行訓練和測試。
表1為ANN、VGG和ResNet網絡在不同數據集E和Et上的預測結果對比,可以看出增加數據的時間特征信息可以使模型測試準確率提高0.91%~1.8%。由此可得,考慮引入機場延誤數據的時序特征能有效提高模型最終的預測精度。

表1 時序信息引入對分類準確率的影響
表2為不使用LSTM模塊與使用LSTM模塊的所有網絡結構在數據集Et上的預測結果對比。由表2數據可以看出,總體趨勢上,增加LSTM模塊使模型測試準確率提高了0.67%~1.92%。這表明利用LSTM來進一步提取特征的時間維度信息,使網絡具有更強大的數據抽象能力。ANN在層數增加到6層時出現了梯度消失的現象,測試準確率隨著網絡層數的增減不升反降,同樣地,ANN4-LSTM 和ANN6-LSTM網絡與對應的ANN4和ANN6網絡相比,也出現了預測精度下降的情況,這是因為LSTM層與層之間是全連接的關系,增加LSTM模塊也相當于是增加了ANN的層數。

表2 LSTM網絡模塊對分類準確率的影響
根據以上2個實驗結果對比,說明了時序性特征的引入以及相應的LSTM模塊能夠有效提高模型的預測性能。
4.3.2 區域殘差網絡模塊性能分析
為證明傳統多層LSTM網絡的梯度消失現象,并驗證引入區域殘差網絡模塊對模型的影響,使用傳統LSTM網絡和RR-LSTM網絡進行實驗對比。
首先給出傳統LSTM網絡的預測準確率,實驗結果如表3所示,其中,LSTM-n表示該網絡包括n層LSTM和一層全連接。

表3 傳統LSTM網絡的預測準確率
從表 3中可以看出,對于傳統 LSTM 網絡,LSTM-3效果達到最佳,分類正確率為93.20%,但是與LSTM-2相比,只多了0.01%。通過進一步加深網絡,LSTM-4的測試準確率反而下降到了84.93%,說明僅增加LSTM層數已不能提高模型分類的準確率。
根據以上實驗結果分析,將RR-LSTM網絡中的LSTM網絡層數均設為2層,沒有選擇分類效果最好的LSTM-3是由于RR-LSTM網絡中已存在大量的卷積神經網絡,可以充分學習機場延誤數據的空間特征,并且LSTM-2網絡與LSTM-3網絡的準確率僅僅相差0.01%,相對于再增加一層參數較多的全連接LSTM網絡來說,選擇2層的LSTM網絡更為合適。
表4給出了RR-LSTM網絡的預測準確率,其中,RRm-LSTM表示m層區域殘差網絡、2層LSTM網絡、單向池化模塊和 2層全連接。從實驗結果可以看出,RR-LSTM網絡隨深度的增加預測準確率逐步提升,當網絡層數為 54層時,其預測準確率為95.52%,可訓練網絡深度遠遠超過傳統LSTM網絡。
圖 6(a)和圖 6(b)分別表示 LSTM 和RR-LSTM網絡隨迭代次數變化的損失值大小。損失值越小,說明模型預測值與真實值大小越接近。由圖6(a)可知,LSTM-4和LSTM-2收斂后的損失值相差不大,大致分布在0.2~0.4。但是隨著網絡層數的增加,LSTM-6增加到了0.5附近。圖6(b)中RR-LSTM網絡從 22層、38層到 54層,隨著模型網絡層數的不斷增加,損失值不斷減少,當網絡為 54層時,損失值分布在0.1左右。這說明RR-LSTM比 LSTM 模型能夠更好地對深層神經網絡模型進行訓練。

圖6 損失值隨迭代次數變化
神經網絡模型在反向傳導過程中進行隱藏層權重以及誤差項的更新,如果網絡第一個隱藏層的梯度值隨迭代次數變化能一直保持穩定,則表征該網絡其他隱藏層均能保證信息有效傳遞。圖7為不同LSTM和RR-LSTM網絡結構第一層梯度值隨迭代次數的變化曲線。

表4 RR-LSTM網絡的預測準確率

圖7 隱藏層梯度值隨迭代次數變化
由圖7(a)中可以明顯看出,隨著深度的增加,梯度值銳減,當網絡增至6層時,梯度值減小到10-8左右,且仍隨著迭代次數逐漸衰減。這說明深層LSTM網絡在權重更新時存在梯度消失問題,符合上文的理論分析和式(7)~式(11)的推導結論。圖7(b)中的相應梯度值基本穩定在10-1~10-5,且隨著網絡層數的增加,沒有出現明顯的數值變化。由此可見,RR-LSTM 網絡可以進行更深層網絡的訓練,從而更加完備地表達數據信息。
4.3.3 單向池化結構性能分析
利用圖4所示的單向池化模塊來代替傳統的維度重塑方式,可以保證區域殘差網絡模塊輸出和LSTM模塊輸入的維度一致性,同時可盡量減少網絡中引入參數的數量。使用機場延誤數據,根據數據維度轉換方式的不同分別訓練了 RR18-LSTM、RR34-LSTM和RR50-LSTM這3個模型。
從表5的數據可以看出,使用單向池化模塊比維度重塑方式擁有更高的分類準確率,當網絡為22層、38層和54層時,準確率分別提高了0.53%、0.45%、0.46%。

表5 不同維度轉換方式對分類準確率的影響
為了驗證單向池化模塊對模型反向傳播過程的影響,圖8給出了不同模型第一層網絡梯度值隨迭代次數的變化曲線。可以看出,隨著網絡層數的增加,單向池化方式的梯度值沒有明顯變化,而維度重塑方式中,22層、38層、54層網絡的梯度值出現了逐一減少的現象。實驗結果證明了利用單向池化模塊進行維度轉換的有效性。

圖8 隱藏層梯度值隨迭代次數變化
為研究機場延誤數據特征中融合的氣象信息W和相關運行航班信息F對延誤結果的影響,分別將僅考慮機場屬性信息的數據集A、增加天氣因素數據集A+W和綜合三者信息的數據集A+W+F輸入 RR-LSTM 模型中進行延誤預測,實驗結果如表6所示。

表6 測試準確率
由表6可以看出,與僅考慮機場本身屬性相比,融合天氣因素和航班運行數據后,不同網絡結構的預測準確率均增加了11%左右。其中,如果只考慮天氣因素預測精度增加約 9%,進一步增加機場的運行航班數據后,預測結果準確率又增加了 2%。因此,綜合考慮上述2種因素能有效提高模型最終的預測精度。
文獻[24]采用與本文同樣的數據來研究不同信息對機場延誤的影響。但是由于 RR-LSTM模型具有高效的特征提取及數據處理能力,因此不需對數據特征按影響力進行降維,能夠盡量全面地考慮可能對延誤產生影響的因素,以增加模型最終的預測性能。
本文通過分析機場延誤預測問題的特點,提出了RR-LSTM網絡模型,并且通過大量的實驗驗證了該模型的有效性,結論如下。
1) 增加機場延誤數據的時序信息,并且利用LSTM網絡學習數據的時間依賴關系,使模型的物理含義更加符合機場延誤事件特點,可得到更高的預測準確率。
2) 當傳統多層 LSTM 網路加深時,模型性能開始變差,而增加區域殘差網絡模塊進行特征提取時,模型的性能保持穩定,證明改進后的網絡結構可以保證深度網絡的訓練。
3) 與傳統維度變換方式相比,單向池化方法可以減少網絡訓練參數的數量,進而降低網絡梯度消失的概率。
4) 融合氣象信息和航班運行信息后,模型預測準確率均有所提高,相比之下,機場內的氣象信息對預測結果的影響較大。
本文的預測結果與傳統算法相比有較大提升,有利于進一步改善空管、航空公司等部門的決策,提升民航綜合服務能力。