倪曉梅,王華偉,熊明蘭,王峻洲
(南京航空航天大學民航學院,江蘇南京 210016)
2021年是“十四五”的開局之年,民航局部署,到2025 年,力爭全國運輸機場容量達到20 億人次.運輸量的增加必然會給民航安全管理帶來嚴峻的挑戰(zhàn).安全風險評估作為《民用航空安全管理規(guī)定》[1]的重要內容,是實現“安全第一、預防為主、綜合治理”目標的保障.
民航安全發(fā)展的歷史,就是從事故中學習的過程.要實現上述管理的目標,挖掘可利用的事故數據與信息,實現精準的風險評估是迫切需要解決的問題.若能深層次挖掘事故報告中描述的事故過程,拓展以往只局限于簡單查詢和統計的應用,克服依靠領域專家分析和研究的主觀性等問題,將更好地實現通過事故進行學習的功能.
機器學習和自然語言處理的發(fā)展和應用為分析航空安全報告中的非結構化文本數據提供了工具和可能.當前在本領域,陸續(xù)有學者開展了相關研究.Alkhamisi 等[2]、Zhang 等[3]和Tanguy 等[4]對于航空安全報告系統(Aviation Safety Reporting System,ASRS)中非結構化數據的分類和預測都采用了支持向量機(Support Vector Machine,SVM).以上采用傳統機器學習的方法由于文本表示的高緯度高稀疏性,特征表達能力不強,導致預測精度不夠,需要通過其他方法的集成或處理來獲得更準確的預測結果.而如果風險等級評估過高,將導致實際風險管理中的“虛警”,造成資源的浪費;若風險等級評價過低,則會導致實際風險管理中的“漏警”,影響安全風險.
最新的研究表明,深度學習技術逐漸取代了傳統機器學習方法,成為文本分類領域[5]的主流技術.深度學習能夠更準確地表達對象,從海量數據中自動獲取特征,實現端到端地解決問題,極大地提高了準確性.卷積神經網絡(Convolutional Neural Net?works,CNN)作為典型的深度學習方法,在文本分類領域有著較好的應用.如羅文慧等[6]、蘭秋軍等[7]和GAO等[8],通過CNN構建分類模型,有效抽取句子實體關系.
基于此,本文從文本挖掘的角度出發(fā),提出一種能夠自動評估民航運營過程中安全風險等級的模型.通過CNN 找到非結構化事件信息與事件結果之間的關聯關系,建立對應風險等級,從而協助民航總局等相關單位進行風險量化、優(yōu)先級設置、資源分配和決策制定,實現主動安全管理的目標.
ASRS 是事件報告數據庫,可提供過去幾十年來發(fā)生的事件/事故信息,描述了不安全事件和危險情況[9].但由于事件結果的復雜性、數據不平衡等特點,直接建立事件概要與結果的映射在實際中需要較強的專業(yè)性,在模型算法方面的難度也較大.針對上述問題,首先建立對應的量化指標.
搜集 從2010 年1 月 至2019 年12 月ASRS 報 告,其中與民航運營[10]相關*的事件共有33個獨立結果,如表1所示.

表1 事件結果說明表Tab.1 Incident result description
此外還有約半數的事件有多個后果,對風險的辨識造成嚴重的干擾.由于結果的多樣性和復雜性,直接建立評估模型難以準確判斷風險水平.
民航安全風險具有一定的聚集特點,即表現為某類事件發(fā)生次數較多,某類則相對較少.
2010 年報告的所有事件單一后果分布如圖1 所示.

圖1 民航事件結果分布圖Fig.1 Distribution of civil aviation incident results
可以看出,這33 類事件具有嚴重的不平衡特性,多數類與少數類的比值超過3000,這種不平衡的類分布對假設相對平衡分布的機器學習算法提出了嚴峻的挑戰(zhàn)[11],同時難以解釋結果的客觀性和科學性.
基于以上事件后果多樣且分布不平衡兩方面的問題,量化事件后果可以更直觀地表現結果的嚴重度,減少對專業(yè)的依賴性,降低人力成本.
國際民航組織對嚴重度等級依據人員傷亡、經濟損失、機場關閉時間等[12]因素分為了5 級,故本文按照此標準,將事件后果依據風險等級劃分為5 個等級.則每個等級按照表1 中提供的事件結果,對應風險等級如表2 所示,表中“損失”即為國際民航組織提供的劃分依據.

表2 事件結果風險等級表Tab.2 Incident outcome risk Level Table
對于單一后果的事件,按照風險等級劃分,對于多后果的事件,根據民航局“安全隱患零容忍”的態(tài)度和“從嚴從實管控安全風險”的原則,遵循按風險等級高的劃分,則事件分布如下圖2所示.

圖2 民航風險等級分布Fig.2 Civil aviation risk level distribution
風險等級的劃分可以很好地解決事件不平衡的問題,并明確復雜事件的風險等級,這有助于模型準確性的提升[13-14].
在文本分類領域常用的深度學習方法主要有CNN、循環(huán)神經網絡(Recurrent Neural Network,RNN)及其改進和集成模型等[5].
CNN 仿造生物的視覺機制構建,能夠很好地提取特征信息,在分類問題上取得了較好的效果,Yoon Kim[15]最早將CNN 用于提取文本的特征實現文本分類.
基于CNN的民航事件風險評估模型主要有兩大優(yōu)點:(1)文本表示自動化,泛化性較強,無需專業(yè)的民航背景知識即可得到較好的特征;(2)結構靈活,基于常用結構易于設計優(yōu)化結構,以便后續(xù)依托民航數據特點及安全風險規(guī)律改進模型.
CNN 主要由六部分組成,輸入層、卷積層、激活層、池化層、全連接層、softmax函數等,它與普通網絡的區(qū)別就在于增加了由卷積層和池化層結合構成的特征提取器.其結構如圖3所示.

圖3 CNN風險評估結構圖Fig.3 CNN risk assessment structure
事件概要是一種非結構化數據,它是事件/事故的簡單說明.根據NLP 文本處理的基礎步驟和民航事件的特點,本文的預處理過程包括數據清洗,加載風險源自定義字典、去停用詞和分詞4個環(huán)節(jié).
1)由于涉及到飛機型號、機場、塔臺等編號,為了便于識別,則首先清洗數據:將飛機型號如(B737,A320…)等全部轉換為aircraft,機場編號全部轉換為airport等.
2)為保障文本處理的質量,按照文獻[16]中專業(yè)術語的縮寫構建自定義詞典.
3)停用詞和分詞按照常用英語停用詞,則轉換后的語言如圖4所示.

圖4 文本清洗Fig.4 Text cleaning
1)卷積層
卷積層的輸入為n×n的矩陣,卷積核大小為m×m,n≥m,權重為ω,卷積后的輸出為c,則對應位置(i,j)的輸出為:

式中:xi,j,ωi,j分別為x,ω在位置(i,j)的值.
2)池化層
本文在池化層的構造中采用Max-pooling 方法,則對應位置(i,j)的輸出為:

3)輸出層
全連接層后生成向量f=(d1,d2,…,dg),其中dg為特征值,g為f的維度,將f輸入到softmax 分類器中進行風險等級分類,由于風險等級有5 級,則選用多分類交叉熵損失函數作為目標函數L:

式中:ysc為樣本s的標簽,與等級c為同一風險等級時則為1,不同為0,psc為樣本s屬于等級c的概率.
實驗平臺為3.00 GHz,Intel(R)Core(TM)i7-9700 CPU,8GB 內存,在Google Colab 中實施,實驗程序基于開元軟件庫Tensorflow2.0和keras.
10 年報告共28351 條信息,選取其中25%為測試數據,其余為訓練數據.CNN風險評估模型結構和參數如圖5所示.

圖5 CNN結構圖Fig.5 CNN structure
結構圖說明最大詞向量維度為90,卷積層采用Conv1D.
參數設置如下:epoch 次數為60,即共訓練60輪,迭代次數為1000,學習率為0.02,訓練后準確率可達96.3%,結果如圖6所示.

圖6 CNN風險分類結果圖Fig.6 CNN risk classification result
為驗證該方法的優(yōu)越性,分別通過不同量化指標和不同模型兩方面的對比說明,如下圖7所示.

圖7 對比模型準確率Fig.7 Accuracies of comparison models
其中(a)表示應用CNN 模型分別對事件后果無分類(即保留原始數據中的33 種后果)、參考文獻[2]將事件后果風險等級分為高,中,低三等(本文即將中高、中低等風險全部歸結為中等風險)和本文提出的5 級對比.結果表明同樣使用CNN,5 等級的量化指標不僅符合國內和國際的標準,準確度也更高.
在5 等級的量化標準下,圖7(b)表示分別應用SVM、CNN 和RNN 進行文本分類.結果說明:CNN 模型的分類效果最好;同時也表明,對于民航事件信息,以CNN 和RNN 為代表的深度學習模型準確度高于以SVM為代表的傳統機器學習模型.
在本實驗中,CNN模型在準確度上略優(yōu)于RNN,這是因為CNN 模型的詞向量最大為90,不屬于長序列,CNN 模型足夠處理.而民航詞匯的專業(yè)性讓CNN能夠專注于捕捉民航事件文本的語義信息.
為進一步驗證模型的通用性,將2020 年共2111份報告輸入CNN 分類模型,預測2020 年的風險等級,對事件進行風險評估,結果表明準確率可達到79.6%,混淆矩陣如圖8所示:

圖8 CNN預測混淆矩陣Fig.8 CNN prediction confusion matrix
其中單個事件的風險評估過程如圖9所示:
圖9 說明對于單個事件,當采集到一線人員的事件描述時,即可通過本模型進行風險等級的預測,對于上述事件,風險等級的預測結果為3 級,即中度風險,對比原事件信息,對應的事件后果為發(fā)布新的起降許可,符合中等風險的損失標準,說明預測正確.

圖9 單個事件風險評估圖Fig.9 Single event risk assessment chart
同時預測結果的有效性也說明:采用該模型,后續(xù)在工程中,采集到一線人員對事件的描述后,可以無需專家分析而直接對事件進行評估,確定風險水平,以便民航各個部門快速響應,針對風險等級采取對應措施,從而減少財產損失和人員傷亡.
實驗結果表明CNN風險評估模型可以有效對非結構化的事件報告分類,而對事件結果按照風險等級的量化可以有效提高分類的準確率,最新的實驗數據進一步驗證了模型的通用性.
本文通過提取ASRS 事件信息,針對其非結構化、不平衡等特點,通過對事件風險等級的量化分級與映射,設計了風險評估模型.提高了事件概要的分類與預測準確度,為實現主動風險管理提供支撐.主要結論如下:
1)結合實際風險管理需要,將所有事件結果分成5 級,在工程上可直觀評估事件風險,同時在算法上可解決數據不平衡問題;
2)應用CNN 網絡建立民航事件風險評估模型,專注于捕捉民航事件文本的語義信息,準確率可達96.3%,通過與不同量化指標和模型的對比說明了優(yōu)越性;
3)在事件分類的基礎上,進一步拓展其功能,開展風險預測,通過2020 年的報告進行評估預測,新事件的風險等級基本可被準確評估.
未來隨著事件分析維度的增加和事件數量的積累,為更好地發(fā)揮模型通過事件學習的功能,或可在原CNN 模型的基礎上通過預訓練、正則化和集成等方法進一步提高模型性能.