屈景怡,楊柳,陳旭陽,王茜
(1.天津市智能信號與圖像處理重點實驗室(中國民航大學),天津 300300;2.中國民用航空華北地區(qū)空中交通管理局 天津分局,天津 300300)
近年來,隨著國內(nèi)航空業(yè)發(fā)展迅速,客流量逐漸趨于飽和,航班延誤問題也因此面臨著巨大挑戰(zhàn)。造成航班延誤的因素有很多種,而任何程度的航班延誤都會給航空公司、機場和旅客造成一定的損失。精確的航班延誤預測可以為大面積航班延誤響應機制提供參考,使民航相關(guān)部門提前做好應對機制,以降低延誤帶來的損失,因此航班延誤預測具有重要的應用價值。隨著航班數(shù)據(jù)的不斷積累,基于大數(shù)據(jù)的航班延誤預測方法也應運而生。
航班延誤預測的目標是對于某一特定機場,在相對較短的時間內(nèi)預測其未來一段時間的延誤水平,因此涉及時間和空間兩個維度。在時間維度上,當發(fā)生大面積航班延誤時,此時前一架航班的延誤會導致一段時間內(nèi)的后續(xù)航班延誤,造成機場內(nèi)的航班積壓。針對時間維度上的航班延誤預測問題,已有國內(nèi)外學者進行了大量研究,多采用循環(huán)神經(jīng)網(wǎng)絡的一系列算法,文獻[1-6]中分別采用了經(jīng)典的長短時記憶(Long Short-Term Memory,LSTM)網(wǎng)絡和改進后的雙向長短時記憶(Bidirectional Long Short-Term Memory,Bi-LSTM)網(wǎng)絡對航班延誤進行分類或回歸預測。其中文獻[3]中通過多步預測和時空相關(guān)性的聯(lián)合挖掘,引入時間注意力機制和輔助特征構(gòu)建預測模型。文獻[5]中在Bi-LSTM 網(wǎng)絡的基礎(chǔ)上加入注意力機制來預測未來的航班延誤狀況。
但是,上述算法僅聚焦于航班延誤在時序上的影響,均未能有效提取航班數(shù)據(jù)中包含的空間信息,而航班數(shù)據(jù)中的空間信息對預測算法也十分重要。
卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)是有效提取空間信息的算法之一,因此許多研究成果也基于空間維度展開。文獻[7-13]中分別提出了幾種基于不同卷積神經(jīng)網(wǎng)絡的延誤預測模型:文獻[10]中在航班數(shù)據(jù)中結(jié)合機場天氣數(shù)據(jù),擴充了數(shù)據(jù)集的特征數(shù),然后通過區(qū)域殘差結(jié)構(gòu)提取數(shù)據(jù)空間特征;文獻[10]中通過卷積提取空間特征來預測地鐵站的擁堵情況;文獻[12]中采用通道和空間注意力機制來加強網(wǎng)絡結(jié)構(gòu)深層信息的傳遞。鑒于卷積神經(jīng)網(wǎng)絡的模型在提取空間特征上具有優(yōu)勢,氣象數(shù)據(jù)的加入也為卷積的實現(xiàn)提供了可能。
雖然已有同時考慮時空兩方面特性的預測方法,但目前已有預測方法多為兩種或多種算法的結(jié)合,存在算法間的融合問題。因此本文提出了一種基于時空序列的卷積長短時記憶(Convolutional LSTM,Conv-LSTM)網(wǎng)絡航班延誤預測模型,在提取數(shù)據(jù)中時序性的基礎(chǔ)上,加入氣象數(shù)據(jù)擴充特征列,通過卷積操作同步提取數(shù)據(jù)的空間信息,以此充分利用樣本內(nèi)隱含的空間特征和樣本間的時序特征來進行算法的迭代學習。然后,針對國內(nèi)4 個機場的航班數(shù)據(jù)對所提模型的有效性進行了驗證,并討論了氣象因素和序列長度對延誤狀態(tài)的影響。
在獲得模型預測結(jié)果之后,本文設計了一個航班延誤分析可視化系統(tǒng)。目前國內(nèi)外構(gòu)建可視化主要有兩種方式:客戶端/服務器(Client/Server,C/S)和瀏覽器/服務器(Browser/Server,B/S),其中B/S 架構(gòu)具有豐富的可視化模塊,本文將基于此架構(gòu)選擇Java 語言和Web 技術(shù)進行航班延誤預測系統(tǒng)的開發(fā)。該系統(tǒng)利用航班信息和氣象數(shù)據(jù),根據(jù)模型預測的結(jié)果并提供歷史航班數(shù)據(jù)統(tǒng)計和可視化功能。
航班延誤預測模型一共由三部分組成,分別是:輸入模型時的數(shù)據(jù)預處理、網(wǎng)絡的訓練以及輸出模型時的分類和預測。其中網(wǎng)絡訓練部分將在第2 章中做詳細描述。
模型整體結(jié)構(gòu)如圖1 所示。其中預處理模塊主要融合航班與氣象數(shù)據(jù),對融合后的數(shù)據(jù)進行編碼并轉(zhuǎn)換維度,以適應網(wǎng)絡的輸入;模型訓練模塊負責進行網(wǎng)絡的搭建,學習訓練網(wǎng)絡參數(shù)并保存模型;分類和預測模塊輸出各個延誤等級的概率值并返回最終的預測結(jié)果。
在深度學習算法中,輸入模型的數(shù)據(jù)集是至關(guān)重要的一部分,高質(zhì)量的數(shù)據(jù)集可以使模型性能大幅提升。
在原始數(shù)據(jù)輸入神經(jīng)網(wǎng)絡進行訓練之前,首先需要數(shù)據(jù)預處理,預處理過程由數(shù)據(jù)清洗、數(shù)據(jù)融合、數(shù)據(jù)編碼和序列化四個部分組成。經(jīng)過數(shù)據(jù)處理后,所有變量將轉(zhuǎn)變?yōu)閿?shù)值型變量并統(tǒng)一做歸一化處理,然后對其通過滑窗劃分時序,使得數(shù)據(jù)同時具有時序性特征,整個數(shù)據(jù)預處理流程如圖2所示。
1.1.1 數(shù)據(jù)集介紹
本文使用的數(shù)據(jù)集為華北空中交通管理局提供的4 個國內(nèi)機場的航班與氣象數(shù)據(jù),分別是北京首都機場、北京大興機場、天津濱海機場和石家莊正定機場,樣本量分別為305 萬、79 萬、107 萬和59 萬條,數(shù)據(jù)記錄時間為2019 年9 月至2020 年10 月。
航班數(shù)據(jù)包含“航班號”“飛機型號”“起降時間”“起降機場”“高度”和“速度”等23 個特征。
氣象數(shù)據(jù)每分鐘記錄一次,包含“跑道視程”“降雨量”“溫度”和“風速”等49 個特征。
為了更好地描述航班延誤在時間維度上的影響,圖3 展示了一段天津機場2019 年10 月1 日10∶00~14∶00 航班延誤時間統(tǒng)計情況。圖3 記錄了這段時間內(nèi)27 架航班的延誤時長,從圖3 中可以看出,當?shù)谝患芎桨喟l(fā)生延誤時,會對短時間內(nèi)后幾架航班的延誤造成較大影響,但隨著時間的推移,后續(xù)航班的延誤時間在逐漸減小,這說明航班延誤的影響只存在于與之相鄰的幾架航班之中,而延誤影響的航班數(shù)量就涉及網(wǎng)絡模型中時序這一參數(shù)的選擇。
1.1.2 數(shù)據(jù)預處理過程
1)數(shù)據(jù)清洗和標注。
當數(shù)據(jù)中缺失關(guān)鍵特征時,本文采用的方法是刪除整條航班或氣象數(shù)據(jù);當數(shù)據(jù)含有異常值時,用特征的平均值來進行填充。由于本文選擇的神經(jīng)網(wǎng)絡為有監(jiān)督的算法,因此清洗數(shù)據(jù)后,需要對訓練集數(shù)據(jù)進行標注。
2)數(shù)據(jù)融合。
將數(shù)據(jù)的特征完整、多樣化地放入模型中,有助于神經(jīng)網(wǎng)絡更充分地提取特征之間的信息。本文將航班數(shù)據(jù)和氣象數(shù)據(jù)做融合,擴充數(shù)據(jù)集特征列,豐富了樣本的多樣性。此外,融合氣象數(shù)據(jù)會大幅增加樣本量,起到數(shù)據(jù)增強的作用,使得數(shù)據(jù)集更匹配網(wǎng)絡模型。在融合之前,需要提取關(guān)聯(lián)主鍵,以此作為融合的依據(jù)。首先提取航班數(shù)據(jù)的計劃起飛時間,然后提取天氣的記錄時間,將兩個時間同時作為鍵值進行融合,即當兩個時間相同時,將這兩條航班和氣象數(shù)據(jù)合并為一條。這樣就得到了在航班計劃起飛的時刻下,帶有此時氣象信息的一條航班數(shù)據(jù)。
3)數(shù)據(jù)編碼。
為了消除不同特征列維度之間的影響,輸入神經(jīng)網(wǎng)絡的數(shù)據(jù)往往需要將數(shù)據(jù)集編碼到同一量綱下,做歸一化處理,使得神經(jīng)網(wǎng)絡更好地學習數(shù)據(jù)之間的關(guān)聯(lián)。由于融合后的數(shù)據(jù)中包含數(shù)值型特征和離散型特征,本文對這兩種特征分別采用了不同的編碼方式,數(shù)值型特征采用MinMax 歸一化編碼,離散型特征采用Catboost 編碼[14]。
4)序列化。
由于航班延誤數(shù)據(jù)之間存在短期的時間相關(guān)性,因此本文將輸入數(shù)據(jù)構(gòu)造為一個時間序列,序列化過程如圖4 所示。首先將數(shù)據(jù)集E按記錄時間排序,得到數(shù)據(jù)集Et,然后使用序列長度為L的滑動窗口進行滑動分割,每次向下滑動1 個數(shù)據(jù),得到一個新的長度為L的時間序列數(shù)據(jù)Enew。使用序列數(shù)據(jù)中最后一次飛行數(shù)據(jù)的標簽作為網(wǎng)絡模型的輸出。
構(gòu)建出時序樣本之后,需要對樣本做數(shù)據(jù)集的劃分,按照一般經(jīng)驗,本文訓練集和驗證集的樣本量劃分比重為8∶2。
經(jīng)過數(shù)據(jù)預處理后,將模型的輸入轉(zhuǎn)化為張量以適應Conv-LSTM 網(wǎng)絡的輸入維度。表1 列出了Conv-LSTM 網(wǎng)絡輸入輸出的參數(shù)結(jié)構(gòu),初始輸入維度為(15,72),即經(jīng)過序列化后得到的15 條數(shù)據(jù)作為1 個樣本,每個樣本包含72 列特征,經(jīng)過維度轉(zhuǎn)換后得到(15,8,9,1)的四維數(shù)組,其中最后一個維度為濾波器個數(shù)。
表1 網(wǎng)絡結(jié)構(gòu)組成和參數(shù)量Tab.1 Composition of network structure and number of parameters
對于模型輸出維度的劃分,本文參照中國民用航空局規(guī)定的15 min 內(nèi)為不延誤的標準,將航班延誤狀態(tài)按時間分為不延誤(小于15 min)、輕度延誤(15~60 min)、中度延誤(60~120 min)、高度延誤(120~240 min)、重度延誤(240 min以上)5 個等級。
在神經(jīng)網(wǎng)絡模型充分學習數(shù)據(jù)的特征后,將通過全連接層的Softmax 激活函數(shù)對輸出結(jié)果進行分類預測,損失值通過交叉熵函數(shù)Categorical_Crossentropy 計算,其計算公式如式(1)所示,其中“I”在本文中的取值為5。
為了評價Bi-LSTM 和Conv-LSTM 網(wǎng)絡模型在航班延誤預測問題中的準確率,本文采用的評價標準為:
其中:N是驗證集中的數(shù)據(jù)量;acc代表模型預測的延誤等級與實際延誤等級相同的數(shù)量;precision是整個模型的準確率。在預測階段,本文將使用未經(jīng)過網(wǎng)絡訓練的測試數(shù)據(jù)集,調(diào)用訓練集保存的編碼參數(shù)以及保存的模型對測試集進行編碼以及預測,預測后返回各個等級的概率值,并將其中最大概率輸出為最終的預測結(jié)果等級。
LSTM網(wǎng)絡[15]是循環(huán)神經(jīng)網(wǎng) 絡(Recurrent Neural Network,RNN)的一種改進算法,廣泛應用于時間序列問題。由于航班延誤的短期時序性,通過LSTM 網(wǎng)絡對航班延誤數(shù)據(jù)進行迭代學習,可以有效利用航班序列中前序延誤對當前航班延誤的影響。Bi-LSTM[16]衍生自LSTM 網(wǎng)絡,在LSTM 網(wǎng)絡改善循環(huán)神經(jīng)網(wǎng)絡中梯度消失的基礎(chǔ)上,Bi-LSTM 可以進一步考慮序列前后每個時間的延誤信息,而不僅僅是當前時間之前的延誤信息。
圖5(a)為LSTM 單元結(jié)構(gòu)示意圖。從圖5(a)中可以看出,LSTM 網(wǎng)絡增加了多個門控結(jié)構(gòu),在每個序列索引位置t都含有一個遺忘門、輸入門和輸出門,此外還增加了一個隱藏狀態(tài)C作為備選的更新狀態(tài)。
LSTM 的記憶功能主要依賴于結(jié)構(gòu)單元的中間狀態(tài)。中間狀態(tài)ht的更新由兩部分組成:第一部分是輸出門;第二部分由隱藏狀態(tài)Ct和tanh 激活函數(shù)組成。
Bi-LSTM 的結(jié)構(gòu)如圖5(b)所示,以虛線框處的時刻t為例,將輸入xt和前一時刻的中間狀態(tài)ht同時輸入正向LSTM層和反向LSTM層,得到中間層的輸出:正向和反向,然后對這兩個輸出按權(quán)重相乘得到網(wǎng)絡最終的輸出yt。計算公式如式(3)~(5)所示:
其中:w1~w6是每個輸入xt和中間層ht的權(quán)重參數(shù)。
Conv-LSTM 網(wǎng)絡[17]在Bi-LSTM 的基礎(chǔ)上,對輸入層和隱藏層加入卷積操作來提取空間特征。對于航班數(shù)據(jù)這類結(jié)構(gòu)化數(shù)據(jù),首先需要進行維度轉(zhuǎn)換,本文將2D 的數(shù)據(jù)格式根據(jù)特征總數(shù)轉(zhuǎn)化為一個盡可能方正的3D 數(shù)據(jù),然后將轉(zhuǎn)換后的數(shù)據(jù)和權(quán)重參數(shù)進行卷積,以此作為網(wǎng)絡結(jié)構(gòu)中三個門控結(jié)構(gòu)以及隱藏狀態(tài)的輸入。
Bi-LSTM 的每一層輸入都來自上一層的輸出,層與層之間采用全連接的方式;除此之外,每一層的結(jié)構(gòu)中,前后時刻的樣本將同時輸入進隱藏層和下一層網(wǎng)絡。Bi-LSTM 的網(wǎng)絡結(jié)構(gòu)如圖6(a),Conv-LSTM 輸入輸出的結(jié)構(gòu)[17]如圖6(b)所示。
Conv-LSTM 的核心和Bi-LSTM 一樣,將上一層網(wǎng)絡的輸出作為下一層網(wǎng)絡的輸入。不同的是Conv-LSTM 加入卷積運算后,不僅可以提取時序特征,還可以通過卷積操作提取空間特征。此外,網(wǎng)絡狀態(tài)之間的轉(zhuǎn)換也變成卷積操作,其單元結(jié)構(gòu)公式如下:
其中:wf、wi、wo和wC分別代表網(wǎng)絡中輸入門、遺忘門、輸出門和中間狀態(tài)的權(quán)重參數(shù)矩陣;bf、bi、bo和bC分別是三個門控結(jié)構(gòu)和中間狀態(tài)的偏置項;“*”表示卷積運算;“?”表示Hadamard 矩陣乘積。
搭建好網(wǎng)絡結(jié)構(gòu)之后,將進行模型的訓練和驗證,模型的訓練過程一般使用損失值作為目標函數(shù),其代表的物理意義是在有監(jiān)督的算法中,預測值與真實值之間的誤差大小。隨著訓練迭代次數(shù)的增加,如果誤差越來越小,則代表訓練效果越好,因此損失值將隨著訓練過程的進行而不斷降低。
在1.2 節(jié)的介紹中,本文使用的目標函數(shù)為交叉熵損失函數(shù),由于模型的最終輸出是5 類航班延誤預測等級,屬于分類問題,而交叉熵函數(shù)正適用于深度學習中的分類問題。該目標函數(shù)的計算公式如下:
其中:I表示航班延誤的分類個數(shù),本文中I的值為5表示網(wǎng)絡預測值;y表示網(wǎng)絡標簽值。五分類激活函數(shù)采用Softmax 激活函數(shù),其公式如下所示:
其中:zj表示經(jīng)過Softmax 前的輸出的5 個分類神經(jīng)元之一。
模型的反向傳播過程是通過對前向傳播得到的損失函數(shù)對z進行鏈式求導,如式(13)~(16)所示。由此不斷更新每一層的參數(shù)w和b,最終得到一個趨于收斂的損失值,此時模型達到最優(yōu)。
整個前向傳播和反向傳播的流程如圖7 所示。
此外,由于深度學習一般將數(shù)據(jù)集劃分為訓練集和驗證集,每一輪訓練都將通過上述前向傳播輸出整個數(shù)據(jù)集的平均損失值,將訓練和驗證的損失值是否同步減小作為標準,再經(jīng)過反向傳播對網(wǎng)絡模型中的參數(shù)不斷調(diào)整,最終得到適合該網(wǎng)絡結(jié)構(gòu)的一套參數(shù)。
本章將介紹實驗環(huán)境和基本參數(shù),并通過不同維度對比驗證模型的性能。
實驗環(huán)境處理器為Intel Xeon E5Mu1620,GPU 內(nèi)存為11.92 GB,操作系統(tǒng)為Ubuntu16.04(64 位),深度學習開發(fā)環(huán)境為Tensorflow 1.10.0,實驗環(huán)境所需參數(shù)如表2 所示。
表2 實驗環(huán)境參數(shù)Tab.2 Parameters of experimental environment
氣象數(shù)據(jù)可以擴充數(shù)據(jù)特征,增加樣本的多樣性,為卷積的實現(xiàn)提供可能。表3 列出了石家莊正定機場融合與不融合氣象數(shù)據(jù)的準確率對比。
表3 氣象數(shù)據(jù)對準確率的影響Tab.3 Influence of meteorological data on accuracy
在1.1.2 節(jié)介紹的數(shù)據(jù)融合中,本實驗采用了兩種融合方法:一種是按照時間精度為1 min 融合航班和氣象數(shù)據(jù);另一種按精度為10 min 融合。實驗結(jié)果表明,在航班數(shù)據(jù)中添加1 min 的天氣數(shù)據(jù)后準確率略有提高,而融合10 min 天氣數(shù)據(jù)準確率有較大幅度提高。分析原因如下:
一方面,以1 min 為時間精度融合氣象的數(shù)據(jù)集只增加了特征列,以實現(xiàn)卷積操作,但是以10 min 精度融合氣象不僅增加了特征列,還大大增加了數(shù)據(jù)量。與一條航班信息對應融合一條氣象數(shù)據(jù)相比,該方法一條航班融合了10 條氣象數(shù)據(jù),使數(shù)據(jù)集擴大了近10 倍。在增加樣本多樣性的同時,也解決了數(shù)據(jù)集小但模型復雜導致的過擬合問題。
另一方面,融合10 min 的氣象后,每條航班相當于加入了前后10 min 之內(nèi)的10 條氣象數(shù)據(jù),因此網(wǎng)絡可以學習更多數(shù)據(jù)之間的相關(guān)性,使得預測的分類結(jié)果更加準確。
序列長度是循環(huán)神經(jīng)網(wǎng)絡系列中的一個重要參數(shù)。由于航班延誤與時間相關(guān),本節(jié)將討論序列化過程中序列長度對網(wǎng)絡結(jié)果的影響。本文測試了9 個不同的步長參數(shù),使用的數(shù)據(jù)集為石家莊正定機場的航班和氣象數(shù)據(jù),最終得到的準確率如表4 所示。
表4 序列長度對準確率和訓練時間的影響Tab.4 Influence of sequence length on accuracy and training time
表4 列出了隨著序列長度的增加準確率的變化,對比發(fā)現(xiàn),并不是序列越長,準確率越高,當步長為15時,準確率達到最高值。在步長較短時,準確率呈上升趨勢,而步長為17時不但準確率略有下降,訓練時間也大幅增長。
隨著步長的增加,過長時間后的航班狀態(tài)對當前時刻的航班是否延誤的影響已經(jīng)較小或是消失,因此網(wǎng)絡會學習到無關(guān)信息,造成數(shù)據(jù)冗余,導致準確率降低;此外,更長的時間序列會消耗更多的訓練時間。從表4 中幾組數(shù)據(jù)的對比可以看出,15 是較為合適的時序長度取值,因此,本文將序列長度取值為15 作為后續(xù)實驗的基本參數(shù)。
本節(jié)將通過3 種不同網(wǎng)絡模型的訓練準確率,對比討論本文算法相較于單獨的時序網(wǎng)絡和卷積網(wǎng)絡的優(yōu)勢,以及時序信息和空間信息分別在神經(jīng)網(wǎng)絡學習中所起的作用。
使用4 個國內(nèi)不同機場融合10 min 的氣象后的航班數(shù)據(jù)作為數(shù)據(jù)集,列出了3 種不同網(wǎng)絡,以及同一種網(wǎng)絡3 種不同層數(shù)下,網(wǎng)絡模型的驗證集準確率對比,其中包括二維卷積(Convolutional-2 Dimention,Conv-2D)網(wǎng)絡模型,1~3 層的LSTM 網(wǎng)絡模型以及1~3 層Conv-LSTM 網(wǎng)絡模型。實驗結(jié)果如表5 所示。
表5 不同數(shù)據(jù)集上各模型準確率對比 單位:%Tab.5 Accuracy comparison of different models on different datasets unit:%
表5中,ZBAA、ZBAD、ZBTJ 和ZBSJ 分別為北京首都機場、北京大興機場、天津濱海機場和石家莊正定機場的地名代碼。各機場融合氣象后的數(shù)據(jù)總量分別為305 萬、79 萬、107 萬和59 萬條。從表5 中可以看出,在不同機場的數(shù)據(jù)集中,Conv-LSTM 網(wǎng)絡的準確率都比單獨使用時間序列網(wǎng)絡LSTM 或卷積網(wǎng)絡Conv-2D 更高。與LSTM-3 相比,Conv-LSTM-3 增加了卷積部分,準確率平均提高了0.65 個百分點。與Conv-2D 相比,Conv-LSTM-3 增加了時序部分,準確率平均提高了2.36 個百分點。
圖8 展示了石家莊正定機場數(shù)據(jù)集下3 種網(wǎng)絡模型的準確率曲線。從圖8 和表5 中都可以看出,由于Conv-LSTM 網(wǎng)絡中包含時序信息的保留以及卷積特征的提取,相較于單獨使用時序網(wǎng)絡或者卷積網(wǎng)絡,模型收斂時的準確率都更高。
在Conv-LSTM 網(wǎng)絡中,本文通過實驗嘗試了3 個不同數(shù)量的網(wǎng)絡層數(shù)。對于含有LSTM 結(jié)構(gòu)這樣的復雜網(wǎng)絡,3 層網(wǎng)絡層已經(jīng)是一個非常龐大的網(wǎng)絡結(jié)構(gòu)模型,從表5 可以看出,3 層Conv-LSTM 網(wǎng)絡的準確率最高。
損失值是評估神經(jīng)網(wǎng)絡模型是否擬合良好的重要參數(shù),和準確率相對應。當準確率升高,損失值降低,相反則損失值上升。圖9 展示了3 種不同網(wǎng)絡及同一網(wǎng)絡不同層數(shù)訓練時的損失值下降趨勢。
圖9 中所展示的曲線為驗證集的損失值下降趨勢圖,本文中訓練集與驗證集曲線擬合良好,在每個網(wǎng)絡參數(shù)調(diào)整至最優(yōu)的情況下,將不同模型的驗證集損失值曲線進行了對比。
本節(jié)同樣展示了石家莊正定機場融合10 min 氣象后的航班數(shù)據(jù),訓練集樣本量為80%,驗證集樣本量為20%,模型訓練輪數(shù)為100 輪。
通常情況下,損失值越小,準確率越高,表示訓練效果越好。從圖9 可以看出,每個網(wǎng)絡模型中,訓練集和驗證集的損失值下降平緩,且擬合良好,符合一般深度學習模型的下降規(guī)律,其中Conv-LSTM3 層網(wǎng)絡的損失值最低,達到了0.028 7。
該系統(tǒng)是為空中交通管制部門開發(fā),將安裝在中國民用航空局華北空中交通管理局,空中交通管制中心的流量管理室,其系統(tǒng)架構(gòu)如圖10 所示。
本文航班延誤預測系統(tǒng)包含5 個模塊。
1)獲取航班信息。系統(tǒng)數(shù)據(jù)的導入采用離線導入方式,前端提供數(shù)據(jù)的導入接口,并通過數(shù)據(jù)庫管理數(shù)據(jù)。
2)深度學習(Deep Learning,DL)算法模塊。基于深度學習模型的航班延誤預測算法,主要完成氣象和航班信息的融合,實現(xiàn)模型的訓練和航班延誤預測。
3)數(shù)據(jù)庫管理系統(tǒng)(Data Management System,DMS)。建立基于MySQL 的數(shù)據(jù)庫,負責航班信息和氣象信息的查詢,并管理其他終端的數(shù)據(jù)訪問操作。
4)航班延誤信息處理(Flight Delay Information Processing,F(xiàn)DIP)。負責接收航班和氣象信息,對航班延誤信息進行查詢和統(tǒng)計分析,調(diào)用航班延誤預測算法獲取預測結(jié)果,并將結(jié)果轉(zhuǎn)發(fā)到航班延誤服務終端進行可視化顯示。
5)航班延誤服務終端(Flight Delay Service Terminal,F(xiàn)DST)。完成對歷史航班延誤數(shù)據(jù)的查詢和統(tǒng)計分析,展示航班延誤預測的結(jié)果,并將預測結(jié)果按延誤程度進行排序。
對深度學習算法進行封裝后,使用Socket 調(diào)用訓練好的航班延誤預測模型,系統(tǒng)后端為客戶端,算法為服務端。
系統(tǒng)啟動后,算法端監(jiān)聽可視化系統(tǒng)后端發(fā)送的請求,前端獲取用戶上傳的航班調(diào)度信息,由后端解析航班數(shù)據(jù)上傳至算法服務器,然后將航班數(shù)據(jù)發(fā)送到航班延誤預測模塊進行數(shù)據(jù)處理和預測,最終得到預測的每條航班的延誤等級。預測結(jié)果通過Socket 返回到系統(tǒng)后端,再到前端接口,最后存儲到數(shù)據(jù)庫中。
本文基于國內(nèi)航班與氣象數(shù)據(jù)提出了一種同時考慮了時空序列,基于Conv-LSTM 網(wǎng)絡的航班延誤預測模型,Conv-LSTM 算法可以充分提取數(shù)據(jù)中的時間序列和空間信息,有利于神經(jīng)網(wǎng)絡的深度學習。本文的主要結(jié)論如下:
1)航班延誤預測問題是一個時空預測問題,只有在某一特定空間中,其延誤狀態(tài)才具有時序相關(guān)性,因此本文中將考慮的空間限定為某一單個機場,在這一特定空間下,引入時序的網(wǎng)絡模型對延誤狀態(tài)進行預測,并通過卷積操作提取數(shù)據(jù)中隱含的空間信息。Conv-LSTM 與經(jīng)典的時序LSTM 網(wǎng)絡以及卷積CNN 相比,能夠同時提取數(shù)據(jù)中的時間序列特征和空間特征,因此可以在訓練時獲得更高的準確率。
2)航班延誤狀態(tài)具有短期的時間相關(guān)性,因此時間序列的長度是Conv-LSTM 網(wǎng)絡中的一個重要參數(shù),當輸入序列過長則延誤影響會降低,造成數(shù)據(jù)冗余,序列長度過短會導致輸入數(shù)據(jù)中包含的信息量和神經(jīng)網(wǎng)絡結(jié)構(gòu)不匹配,模型無法正常擬合。對于本文中選用的四個國內(nèi)機場數(shù)據(jù)集,當序列長度為15時,模型的性能最好。
3)氣象因素是造成航班延誤的重要影響因素之一,因此氣象數(shù)據(jù)也是航班飛行數(shù)據(jù)中的重要組成部分,它包含的特征列中含有許多關(guān)于航班狀態(tài)的有效信息。加入氣象數(shù)據(jù)之后,整個數(shù)據(jù)集的特征變多,卷積網(wǎng)絡可以發(fā)揮更大的作用,準確率也會相應提高。
后續(xù)研究將圍繞特征工程展開,如何通過提升數(shù)據(jù)集的質(zhì)量來提高模型準確率,并研究實現(xiàn)回歸模型預測具體的延誤時間。