?

基于多標準和改進Siamese網絡的相似航班號判斷方法研究*

2023-02-24 05:17陳一新
中國安全生產科學技術 2023年1期
關鍵詞:航班號識別率編碼

孫 禾,陳一新

(1.中國民航大學空中交通管理學院,天津 300300;2.中國民用航空廈門空中交通管理站,福建 廈門 361006)

0 引言

航空運輸的安全高效運行離不開空中交通管理部門的有效保障,而航班號是確定飛行器身份的首要標識。在正常情況下,管制員運用標準的管制規則,并結合自身的管制經驗,通過觀察雷達屏幕上飛機的運動態勢,呼叫相應的航班號,以對特定航班發送管制指令。在此過程中,若管制員和/或航空器駕駛員混淆(看錯、聽錯、讀錯等)1 個或者多個航班號,繼而錯誤改變航空器飛行狀態,都將造成重大的安全事故。近年來,已經發生多起因航班號混淆導致的航班危險接近事件,甚至觸發飛機的TA告警(空中防撞系統告警),因此研究航班號的相似性并有效量化相似度對于保障空管運行安全具有重大意義。

我國民航航班號一般由航空公司英文代碼和3~4位數字組成,如CCA8227、CSN3789 等。雖然受到疫情影響,但我國民航日均航班量已超過1.12 萬班[1],受限于航班號分配規則及航班量突破性的增長,依據航班號編制的規則航班號可用總量為9 896 個,顯然航班號重復的情況已不可避免,航班號相似的情況愈加嚴重。近年來,國內外學者提出以下2 種分析方法,一是采用信息距離的方法構造航班號對應位置距離矩陣[2-3],通過對應位置灰度的深淺可以直觀呈現不同航班號之間的相似程度,繼而可以在音素級水平為管制員和飛行員提供區分易混淆航班號的建議;二是采用編輯距離的方法計算2 個航班號的相似情況[4],將短文本字符串進行差異性比對,通過它們之間的編輯距離分析其相似程度。但目前提出的傳統方法基本局限在客觀計算字符之間的變化,往往忽略對語義信息的分析[5],而在實際運行中有些相似情況是人為主觀判斷的,包括形似、聲似等多種情況,導致主客觀識別相似程度上的差異。

綜上所述,航班號相似性主要存在于形似,因此針對航班號這一短文本類型數據[6]容易混淆的問題,總結民航空管系統相似航班號相關管理規定,提出基于多標準的判斷準則,應用主成分分析法統一量化相似度,并進一步構建1 種改進后的Siamese網絡,使用機器學習方法自動判斷航班號相似性,以期提高相似航班號的識別率,減少因航班號混淆造成的運行安全事件。

1 基于規則匹配的相似航班號判斷方法

目前在管制系統中,應用最為廣泛也是最為簡便的是基于規則匹配的方法。民航局空管局發布的《民航空管系統相似航空器呼號管制運行操作指引》[7]中有關建議和規定對判斷相似航班號提供一系列匹配規則,如航班號中字符字形相似,如“I”與“1”、“O”與“0”、“S”與“5”等;航班號與其他管制用語相似,如與跑道號相似,AAR036;與機型相似,CCA330;與高度層相似,CAO270等。

針對2 個相關航空器航班號相似性,提出多項匹配規則,當2 個航班號符合匹配規則時,即可判定為相似航班號,舉例如下:

1)相關的2 個航空器,航班號字符完全相同。

2)相關的2 個航空器,其一航班號可以由另一航班號全部字符重新排列順序后獲得。

3)相關的2 個航空器,航班號位數相同,且4 位航班號中3 個同樣位置的字符或者3 位航班號中2 個同樣位置的字符相同。

4)相關的2 個航空器,某一航班號中連續3 位字符構成的字符串包含于另一航空器呼號末尾4 位連續字符構成的字符串中。

采用基于規則匹配的方法可以簡單便捷地快速識別出相似航班號,但當2 個航空器滿足匹配規則時,部分會呈現高度相似性,而部分相似程度一般,相似程度難以量化,因此還需要進一步識別,以便有針對性地進行相似航班號預警。

2 基于多標準的相似航班號判斷方法

鑒于航班號為5~7 位的字符串,因此可以采用基于字符的方法,計算文本之間的距離以判斷2 個航班號的相似性。本文綜合多個判斷標準,量化得到統一的相似度。

2.1 航班號編碼預處理

在計算航班號字符距離之前,首先采用One-Hot編碼對航班號進行預處理,針對航空公司英文代碼,編碼步驟如下:

1)確定要編碼的對象為航空公司的英文呼號,一共26 種類別(26 個大寫字母)。

2)將英文呼號簡化為有2 或3 個字母的樣本,每個位置有26 種類別,字母所在的位置為1,其他位置為0,最后將其合并成為1 個完整的向量。根據26 個字母的編排約定特征排列的順序:A-1,B-2,…,Z-26,得到稀疏編碼表。

3)對稀疏編碼表中全為0 的列進行刪除,得到最終的緊密編碼表。

本文以相似航班號“CXA8571”與“CQH8571”為例,根據One-Hot編碼的規則,得到緊密編碼表如表1所示。

表1 “CXA8571”與“CQH8571”的緊密編碼表Table 1 Close code table of“CXA8571” and“CQH8571”

2.2 航班號之間的歐式距離

歐式距離是多維空間中任意2 個坐標的直線距離,無量綱。n 維向量空間的2 點M(x1,x2,…,xn)和N(y1,y2,…,yn)的歐式距離D1如式(1)所示:

對“CXA8571”和“CQH8571”進行歐氏距離計算,提取表1數據得到向量M,N分別為M=(1,0,1,1,0,8,5,7,1),N=(1,1,0,0,1,8,5,7,1)。

將M,N帶入式(1)得到:

2.3 航班號之間的曼哈頓距離

曼哈頓距離可以解釋為2 個坐標在固定的多維坐標系上的直線距離在所有坐標軸上產生的投影的距離的總和,這個距離是2 點之間在沒有任何捷徑下的最大距離。

n 維向量空間的2 點M(x1,x2,…,xn)和N(y1,y2,…,yn)的曼哈頓距離D2如式(2)所示:

為更好地表示相似航班號的相似程度,同樣取曼哈頓距離的倒數作為相似航班號的特征之一。

針對相似航班號“CXA8571”和“CQH8571”進行曼哈頓距離計算,得到:

2.4 航班號之間的余弦距離

余弦距離通過計算任意2 個空間向量的夾角大小得到向量的相似程度。2 個向量之間夾角越大,距離越大。當2 個向量夾角為180°時,它們之間的差值達到最大;當2 個向量的夾角減小到0°時,此時2 個向量完全重合,距離最小,相似度最高。余弦距離D3如式(3)所示:

取S3=D3=cos(θ) 作為相似航班號的特征之一。

針對相似航班號“CXA8571”和“CQH8571”進行余弦距離計算,得到:

2.5 航班號之間的漢明距離

漢明距離D4表示2 個同樣長度的字符串中不同字符數量。由于漢明距離比較的是文本不同的位數,因此在計算相似航班號相似度時,將漢明距離相似度記為S4=1-D4。

針對相似航班號“CXA8571”和“CQH8571”進行漢明距離的計算,經過One-Hot編碼預處理后,得到:

2.6 航班號之間的文本編輯距離

文本編輯距離是將1 個字符串轉化為其他字符串的最小編輯操作。規定字符串的編輯操作有以下3 種:1)將1 個元素替換成另一個元素;2)插入1 個元素;3)刪除1 個元素。每1 個操作,將其步長記為1。最終得到文本編輯距離D5如式(4)所示:

式中:x代表計算出來步數;y代表最長的字符串長度。

針對相似航班號“CXA8571”和“CQH8571”進行文本編輯距離計算。首先創立1 個矩陣,矩陣的維度要在2 個字符串長度的基礎上各加1;隨后根據上述計算規則,每1 個元素的增加、替換、刪除,都會導致步長加1;最終得到相似結果為S5=D5=2/3。

2.7 特征的主成分分析

由于判斷標準不同,得到的相似度過于分散,難以得出最優解。因此,針對不同相似度計算方法得到的航班號相似度特征,采用主成分分析方法,將眾多具有一定相關性的指標重新組合成1 組新的相互無關的綜合指標,從而結合多個標準形成1 個統一的相似程度量化值,取各個標準之所長,便于對航班號的相似程度進行更好地識別。主成分分析步驟如下:

1)各相似度標準特征構成的原始數據矩陣X如式(5)所示:

式中:xnp為特征矩陣中的數據。

2)建立變量的相關系數矩陣R,如式(6)~(7)所示:

式中:rij代表著系數之間的相關性,當rij為0 時,表明元素之間不滿足線性相關。

3)矩陣R的特征根λ1≥λ2≥…≥λp>0 及特征根所指示的單位特征向量如式(8)所示:

式中:ai為單位特征向量,i=1,…,p;api為新舊指標的單位關聯系數。

4)主成分如式(9)所示:

式中:Fi表示新的指標。

5)綜合性特征的主成分貢獻率和累計主成分貢獻率分別如式(10)和式(11)所示:

貢獻率:

累計貢獻率:

式中:h1,h2,…,hm為新特征的貢獻值。

當綜合性特征的累積貢獻率達85%~95%時,特征值h1,h2,…,hm所對應的第1,第2,…,第m(m≤p)個主成分可近似表示所有的主成分結果。

對給定的500 個相似航班號對進行處理,通過主成分分析得到新特征計算結果z1~z3如式(12)所示。經過計算,新的特征值在主成分分析總得分中的權重為:λ1=0.65,λ2=0.28,λ3=0.053。

式中:x1~x5為各距離特征。

取任意10 對相似航班號,得到主成分得分如表2所示。

表2 主成分分析得分Table 2 Score of principal component analysis

通過分析實驗中500 個航班對,95%以上的非相似航班號數據排序集中在[0.08,0.15]這個范圍內,航班號序號分布在[1,62]之間,范圍覆蓋整體數據的12%,可以將其視為1 個合格的參考標準。因此當主成分相似度≥0.15 時,認為航班號相似。取一線管制單位得到的50 對非相似航班號特征值帶入到提取到的450 對相似航班號特征數據集中,共計500 對航班號數據進行驗證,得到識別率如表3所示??梢钥吹浇涍^主成分分析后,識別率較單獨1 個判定標準有所改進。

表3 相似特征標準與識別率Table 3 Similarity feature standards and recognition rate

3 基于改進Siamese網絡的相似航班號判斷方法

采用多標準量化的相似航班號判別方法,雖然該方法便于理解且適用范圍較廣,但判定的閾值需要人為設定。當閾值較大時,識別率有所提高,但相應的非相似航班號被誤識的概率也會變大。因此矛盾始終存在,需要不斷調整,需要采用1 種智能學習方法,自動判斷航班號相似性。

3.1 Siamese網絡的建立

目前很多學者對多種深度網絡結構[8]進行研究,其可用于文本及圖像的檢測與識別[9],而Siamese網絡是1 種用于相似文本檢測的非線性測量學習結構[10-11],通過文本對的比對進行學習分類。同時構建結構相同權值共享的2 個網絡,將2 個文本分別輸入2 個網絡,通過隱含層減少計算的維度,將其轉換為向量,通過距離度量的方式計算2 個輸出向量的距離,以此來判定2 個文本的相似程度[12]。本文所設計的模型結構共有2 個分支,如圖1所示。

圖1 自適應Siamese網絡結構模型Fig.1 Adaptive Siamese network structure model

首先,建立1 個5 層的Siamese網絡,輸入層為航班號按位編碼,一般前3 位為字母,后3 位或4 位為數字;隱含層為3 層,采用雙向長短期記憶(bidirectional long short-term memory,BiLSTM)的增強網絡結構,每層50 個節點,采用前饋算法;在輸出層得到2 個航班號轉化為向量的特征值,繼而通過歐式距離計算差異值。

其次,同樣針對航班號對應位的編碼,計算編輯距離。根據航班號短文本英文字母+數字的特點,本文采用Jaro-Winkler距離進行計算。Jaro-Winkler距離dw=dj+KP(1-dj),其中dj表示最后得分,K為前綴部分匹配的長度,P為標準值0.1。

最后,將2 分支結果相乘,作為整個模型的損失函數進行迭代學習。相比于傳統的Siamese網絡,對于損失函數的修正可以在很大程度上自適應航班號之間本身就已經固有的相似情況,因此更加符合客觀要求。

3.2 基于BiLSTM 的增強網絡結構

網絡的數據訓練集為三元組(x1,x2,y),其中x1和x2為文本序列,y∈{0,1}表示2 個序列的相似程度。當2 個序列相似時,y=1;當2 個序列不相似時,y=0。這樣能最小化相似文本之間的距離并最大化不同文本之間的距離。

由于傳統的循環神經網絡容易發生梯度消失,本文采取BiLSTM 網絡結構。假設輸入序列為(x1,x2…,xT),在每1 個時間步t∈{1,2,…,T},通過方程ht=σ(Wxt+Q ht-1) 更新隱含狀態向量ht,其中W為輸入層至隱含層權重,而Q為上一時間步的ht-1至隱含層的權重,σ(x) =(1 +e-x)-1。通過序列更新隱含層的狀態,引入記憶狀態mt和3 個門(輸出門、輸入門、忘記門),通過每一步時間的更新控制信息流,其中輸出門ot決定下一節點mt的數量;輸入門it決定在此步時間內輸入xt的數量;忘記門ft決定上一步時間的記憶是否要忘記。網絡各層參數更新公式如式(13)~(18)所示[13-14]:

式中:Wi,Qi為輸入門的權重參數;Wf,Qf為忘記門的權重參數;Wo,Qo為輸出門的權重參數;Wm,Qm為記憶狀態的權重參數;表示中間記憶狀態;mt-1表示上一時間步的記憶狀態。

3.3 對比損失函數自適應修正方法

通過計算對比損失函數實現模型的反饋學習,首先計算2 個網絡輸出向量的距離EW(x1,x2)= fW(x1)-fW(x2)2,傳統Siamese網絡的對比損失函數為LW(x1,x2) =yL+(x1,x2) +(1-y)L-(x1,x2),其中L+(x1,x2)=EW2表示y=1 時的損失,L-(x1,x2) =max((1-EW),0)2表示y=0 時的損失,并且當EW大于margin 時L-=0。

但在將數據輸入網絡之前,已基本可以通過計算編輯距離大體獲得航班號的相似情況,因此本文首先計算2 個航班號之間的Jaro-Winkler距離,使用計算結果修正對比損失函數,使網絡能夠自適應航班號的客觀相似情況。

假設輸入文本序列為x1和x2,計算Jaro-Winkler距離中最后得分,其中n 為匹配的字符數,r為換位的數目。

接著計算Jaro-Winkler距離,即當2 個文本起始部分就相同,給予更高的分數。對于航班號,起始部分代表著航空公司代碼,相同公司的航班更容易混淆。

最后對網絡輸出向量的距離EW進行修正,所得修正后的距離,如式(19)所示:

若2 個文本之間的編輯距離較大,更接近1,說明2個文本已經較為相似,對于總的對比損失函數改變不大;若編輯距離較小,更接近0,說明2 個文本不相似,對于總的對比損失函數改變較大,從而需要進一步增加類間距離,加快算法的收斂。而對于本身編輯距離偏小而標定為相似情況的航班號,通過自適應Siamese網絡學習的數據可以避免編輯距離單一衡量標準的情況。修正前后的對比損失函數變化如圖2所示。

圖2 修正前后的對比損失函數變化Fig.2 Changes of contrastive loss function before and after cor rection

3.4 相似航班號識別結果分析

為測試網絡學習的效果與性能,分別采用不同數量的相似航班號數據訓練網絡結構,最終測試結果如表4所示。分析不同樣本數量下,3 種相似性分析方法的識別率,如圖3所示。需要說明的是,由于訓練樣本的不同,識別率可能會略有改變,但整體趨勢基本相同。

表4 相似航班號識別結果對比Table 4 Comparison of r ecognition results of similar call signs

圖3 不同方法的識別率變化Fig.3 Change in recognition rates of different methods

結合表4和圖3可知,相比于基于多標準的判斷方法,當訓練數據過少時,自適應Siamese網絡學習不夠充分,識別率較低,而當數據有一定積累(本次實驗需要約500 條訓練數據)就可以突破多標準判斷方法識別率上限,并且有大幅度的提高,比多標準判斷準則提高約3%,說明算法有效;相比于原始Siamese網絡,改進的自適應Siamese網絡在相同訓練數據量的情況下,識別率均大于原模型,平均提高約2.7%,說明增加編輯距離的修正可以更加準確識別航班號的相似性,并且改進后Siamese網絡對小樣本條件下識別率提高尤為明顯,效率提高顯著。

4 結論

1)相似航班號混淆是一直困擾空中交通管制員的問題之一,針對以往判定條件單一、未考慮語義的情況,本文從相似航班號規則匹配、多標準相似航班號判斷、人工智能算法自動判斷,層層深入分析相似航班號判斷方法。

2)基于規則匹配的判斷方法簡便快捷,適用于快速處理的場景,但相似度難以量化,無法提供更加精細的預警;基于多標準的判斷方法,結合各種常用的文本之間相似性判斷標準,通過主成分分析法得到統一的量化值,適用范圍廣且受到樣本的影響較小,缺點是判斷閾值需要人為設定,識別率與誤識率的矛盾始終存在。

3)基于改進的Siamese網絡采用機器學習方式自動判別相似航班號,且準確率提升明顯,缺點是受到訓練樣本的直接影響較大,對于新出現的相似航班號不夠友好。

猜你喜歡
航班號識別率編碼
基于SAR-SIFT和快速稀疏編碼的合成孔徑雷達圖像配準
《全元詩》未編碼疑難字考辨十五則
民航空管自動化系統相似航班號算法研究與實現
基于類圖像處理與向量化的大數據腳本攻擊智能檢測
子帶編碼在圖像壓縮編碼中的應用
航站樓
基于真耳分析的助聽器配戴者言語可懂度指數與言語識別率的關系
Genome and healthcare
提升高速公路MTC二次抓拍車牌識別率方案研究
高速公路機電日常維護中車牌識別率分析系統的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合