?

基于自動編碼器和支持向量機的飛機機動智能識別方法

2024-03-04 13:19岳龍飛楊任農楊文達左家亮劉會亮許凌凱
兵器裝備工程學報 2024年2期
關鍵詞:正則機動編碼器

岳龍飛,楊任農,楊文達,左家亮,劉會亮,許凌凱

(1.海軍工程大學 電磁能技術全國重點實驗室, 武漢 430033; 2.空軍工程大學 空管領航學院, 西安 710051; 3.西安衛星測控中心, 西安 710043; 4.中國人民解放軍95882部隊)

0 引言

機動動作識別是空戰智能決策中的關鍵問題,準確快速識別敵方飛機機動動作類型有利于我方在空戰中快速決策機動,奪取有利態勢。隨著人工智能技術的飛速發展,戰爭節奏越來越快,戰場信息量越來越大,空戰也變得越來越智能[1-3]。面對空戰中復雜多變的態勢和海量高維的飛行數據,采用新型人工智能方法進行機動動作識別顯得尤為重要。

目前主要有2種機動動作識別方法,一種是知識驅動的方法,另一種是數據驅動的方法。

知識驅動的方法主要是依靠領域專家人工識別機動動作的先驗知識,通過觀察飛機機動時航向角、滾轉角、高度等參數的變化規律,來推理出其最有可能采取的機動動作。孟光磊等[4]通過分析飛機的各飛行參數信息,利用動態貝葉斯網絡模型自動識別機動動作,實時性較高;鐘友武等[5]參考人的思維過程,利用模糊推理方法識別基本機動動作;倪世宏等[6]根據領域專家先驗知識和飛行參數變化規律,構建飛行動作識別知識庫,并采用正向精確推理識別各種機動動作。這種方法從飛行參數據變化規律出發,對領域專家知識要求較高,識別準確率較高,對大規模數據的特征提取能力不足。

數據驅動的方法主要是通過對機動動作樣本庫歷史數據的學習,訓練出一個分類器數據模型,進而對新輸入的機動動作進行識別分類。楊俊等[7]利用模糊支持向量機優良的分類能力,對6種飛行動作進行識別,識別準確率較高;楊俊等[8]也建立了基于模糊最小二乘支持向量機的飛行動作識別模型,提高了多分類的識別準確率;張振興等[9]把機動識別問題看成方向狀態和動作狀態的時間序列數據的識別問題,采用隱馬爾科夫模型識別9種基本飛行動作。這種方法分類器比較簡單,易于實現,存在特征提取能力不足的問題。

近年來以深度學習[10-12]為代表的人工智能技術取得了巨大進步,自動編碼器作為其中一種十分重要的無監督學習方法,能夠對大量無標簽數據進行降維,并自動學習、抽象、提取出蘊含在數據中的重要特征,因此已成功應用于模式識別、數據分類、異常檢測等問題中[13]。面對大量的、時序的、高維的飛行機動動作數據,如果能從中提取出重要特征,然后結合支持向量機(support vector machines,SVM)良好的分類性能,對不同的機動動作進行分類識別,將大大提高機動動作識別的準確率。

因此,提出一種基于正則化自動編碼器-支持向量機(regularized auto-encoder-support vector machines,RAE-SVM)的飛機機動動作識別新方法。首先依靠飛機機動動作數據的變化特征和領域專家人工識別機動動作的先驗知識,建立飛機機動動作識別樣本庫;然后構建基于RAE-SVM的機動動作識別模型,通過構建的樣本庫對模型進行訓練,確定了RAE網絡拓撲結構和SVM最優參數;最后與其他幾種典型機動識別模型進行準確性和實時性對比,并采用真實機動數據進行實例評估。仿真結果表明,該方法能夠快速準確地識別飛機機動動作。

1 問題描述

由于飛機在做機動的過程中,常常伴隨著大量飛行參數數據的變化,如航向角、滾轉角、高度、俯仰角、速度等,因此飛機機動動作識別問題可以看成一個時間序列數據的識別問題。

飛機機動動作一般分為戰術機動動作和基本飛行動作2種。其中,戰術機動動作如左爬升、高速搖一搖等相對復雜,基本飛行動作如轉彎、爬升等相對簡單??紤]到各類復雜的戰術機動動作都可以由簡單的飛行動作組合而成,因此本文中只考慮簡單飛行動作,將飛機機動動作分為左轉彎、右轉彎、爬升和俯沖4種,如圖1所示。當飛機沒有做以上4種機動動作時認為其保持平飛狀態。下面以4種典型機動動作為例進行分析。

圖1(a)為飛機進行左轉彎機動,飛機先保持平飛狀態,滾轉角基本保持在0°,航向角緩慢變化,其他參數基本保持穩定;當開始進行左轉彎機動時,滾轉角立即增加到一個比較大的數(一般為60°左右),航向角也開始劇烈變化,這個點稱為左轉彎起始點;之后滾轉角穩定在一個數值附近,航向角保持勻速變化,飛機保持左轉彎狀態,持續一段時間;當結束左轉彎機動時,滾轉角快速回到0°附近,航向角緩慢變化,其他參數又回到基本穩定狀態,這個點稱為左轉彎結束點。左轉彎起始點和結束點之間飛機進行左轉彎機動。圖1(b)為飛機進行右轉彎機動,類似地,定義右轉彎起始點、結束點,兩點之間飛機進行右轉彎機動。

圖1 4種典型機動動作

圖1(c)為飛機進行爬升機動,飛機先保持平飛狀態,高度基本保持穩定,俯仰角保持在一個比較小的數值附近;當開始進行爬升機動時,高度迅速增加,速度減小,俯仰角保持在一個數值附近,這個點稱為爬升起始點;之后高度保持勻速增加,俯仰角基本保持穩定,飛機保持爬升狀態,持續一段時間;當結束爬升機動時,俯仰角快速回到一個小的數值附近,高度和速度保持穩定,這個點稱為爬升結束點。兩點之間飛機進行爬升機動。圖1(d)為飛機進行俯沖機動,類似地,定義俯沖起始點、結束點,兩點之間飛機進行俯沖機動。

因此,只要識別出飛機機動起始點和結束點,也就識別出了機動動作??紤]到飛機機動是一個持續的過程,一個機動動作往往需要數秒甚至幾十秒來完成,因此本文中將機動識別問題看作基于時間段數據特征[14]的時間序列數據識別問題。

2 機動動作樣本庫

2.1 構建機動動作特征數據

基于上文對飛機機動時飛行參數數據變化規律的描述,以空戰訓練測量儀(air combat maneuvering instrument,ACMI)記錄的單機機動數據為研究對象,構建機動動作特征數據。其中,ACMI是一種空戰數據記錄設備[15],以0.25 s的間隔實時采集、傳輸并保存飛機的時間、位置、姿態、過載數據。具體構建步驟為:

步驟1根據上文分析,并借鑒楊俊等[8]研究成果選擇機動動作數據特征,包括航向角、航向角變化量、俯仰角、俯仰角變化量、滾轉角、滾轉角變化量、高度、高度變化量、速度和速度變化量共10類參數,見表1所示。

表1 機動動作數據特征

步驟2從飛行第1個點開始,向前取9 s共36個點的數據,每個點包括10維參數,按照時間順序連續排列,形成維度為(1,360)的機動動作特征數據,見圖2所示。

圖2 一組機動動作特征數據

步驟3以9 s作為一組機動特征數據的時間窗口向后滾動,直至遍歷整個飛行時間。

2.2 構建機動動作樣本庫

基于機動動作數據變化規律,由3位領域專家依靠經驗知識構建樣本庫,步驟如下

步驟1專家根據ACMI三維態勢顯示,初步確定機動起始點、結束點所在的時間段。

步驟2專家結合ACMI數據中機動動作參數變化規律,確定左轉彎、右轉彎、爬升和俯沖機動起始點、結束點。

步驟3從專家確定的機動起始點、結束點對應時刻向前取9 s為一組,構造各類機動動作特征數據。

步驟4各類機動起始點、結束點之外的數據也是9 s為一組,組成非機動點特征數據。

經過3位領域專家判斷,得到機動動作樣本庫見表2所示。

表2 機動動作樣本庫

3 基于RAE-SVM的飛機機動動作識別模型結構

3.1 RAE神經網絡

自動編碼器是一種無監督神經網絡模型,由編碼器(Encoder)和解碼器(Decoder)兩部分組成,目標函數是最小化輸入與輸出之間的重構誤差[16],其網絡結構見圖3所示。其中,編碼器和解碼器可以由任意的神經網絡架構組成,編碼時對原始數據逐層進行壓縮降維,解碼時再將壓縮后的隱空間表示逐層解壓升到原始維度,通過最小化原始數據和解壓數據之間的誤差,編碼器就可以得到原始數據的“精華”,自動提取到原始數據中的重要特征[17-20]。

圖3 自動編碼器網絡結構

按照圖3結構,傳統自動編碼器的編碼和解碼過程可以描述為[19]

h1=σ1(W1x+b1)

(1)

h2=σ2(W2h1+b2)

(2)

h3=σ3(W3h2+b3)

(3)

y=σ4(W4h3+b4)

(4)

其中:x代表輸入值;y代表輸出值;h1、h2、h3分別代表第1、2、3隱含層輸出值;W1、b1、σ1、W2、b2、σ2、W3、b3、σ3分別代表第1、2、3隱含層的權重、偏差與激活函數,激活函數一般為sigmoid、tanh、ReLU等。

輸入與輸出之間的重構誤差一般有2種形式,一種是均方誤差函數,多用于回歸問題,如式(5)所示。另一種是交叉熵函數,多用于獨熱(one_hot)編碼的分類問題,如式(6)所示。

(5)

(6)

為了避免傳統自動編碼器在訓練中容易發生過擬合的問題,通過在損失函數上增加一個權重衰減項來控制權重的減小程度,得到了RAE。其損失函數為正則化均方誤差,公式為

(7)

當權重比較大時,損失函數也相應地大一點,權重就要減小快一點;當權重比較小時,損失函數也相應地較小,權重就可以減小慢一點,這樣,有利于加快收斂速度,提高網絡泛化性能。

3.2 SVM算法

SVM是一種理論基礎堅實、數學模型簡單的機器學習方法,在小樣本、非線性和模式識別問題中表現出優異性能[21]。SVM的目的是尋找一個最優分類超平面,使得兩類的間隔最大。

以二分類為例,給定訓練集(xi,yi),i=1,2,…,n,x∈Rn,y∈{±1},超平面記為wx+b=0,SVM要求所有樣本分類正確且分類間隔最大,即求解下面約束優化問題

(8)

SVM本身只能實現二分類,但可以通過組合多個SVM來實現多分類。常見的組合方法有2種,一種是一對多法,另一種是一對一法。一對多法是訓練時將某個類別的樣本分為一類,將剩余類別樣本歸為另一類,對于k分類任務就要構造k個分類器;一對一法是在任意兩類樣本中構造一個分類器,對于k分類任務就要構造k(k-1)/2個分類器,從而實現多分類。

3.3 基于RAE-SVM的機動動作識別模型

考慮到自動編碼器強大的特征提取能力和SVM優異的分類性能,提出先降維后分類的RAE-SVM方法,其結構如圖4所示。

圖4 RAE-SVM分類原理

RAE-SVM是一種將無監督學習和有監督學習相結合的方法。先由自動編碼器以無監督的方式對原始高維數據進行學習,從而提取高維數據中的重要特征;然后利用提取到的特征數據對SVM進行訓練,確定SVM最優參數;最后通過訓練好的SVM進行分類。識別算法流程如圖5所示。

圖5 識別算法流程

因此,建立基于RAE-SVM的機動動作識別模型,模型輸入為基于時間段的10類機動動作數據特征參數構成的向量,模型輸出為9類機動點類型,見圖6所示。

圖6 基于RAE-SVM的機動動作識別模型

4 仿真實驗與分析

仿真環境為:Intel i7-7700HQ 2.8 GHz處理器,4 GB內存,Win10 64位操作系統,運行平臺為PyCharm。為了使實驗結果更具說服力,取10次運行的平均值為最終仿真結果。

4.1 數據處理

從上文構建的機動動作樣本庫中按照7∶3的比例,隨機抽取樣本得到1 400組訓練集和600組測試集。

由于機動動作特征數據中不同特征的量綱不統一,數據范圍差異大,因此對樣本數據進行歸一化處理,將各類特征數據統一壓縮到[0,1],這樣有利于加快模型訓練速度,改善分類效果。最終將歸一化后的數據作為模型輸入。公式為

(9)

式(9)中:x代表某變量的實際值;xmax代表最大值;xmin代表最小值;x′代表歸一化后的值。

4.2 模型設置

模型訓練前,需要先對模型學習算法、網絡結構和相關參數進行配置。

1) RAE學習算法

學習算法采用Adam優化算法[22]。Adam優化算法是深度學習中性能最好的優化算法之一,通過自適應調整學習率和動量,使得模型收斂速度更快,需要資源更少,學習性能更好,其權值更新公式為

(10)

式(10)中:p為動量項;v為速度項;E為每次訓練后得到的誤差和;β1、β2為超參數,設置β1為0.9,β2為0.999,學習率η為0.001。其他參數設置見表3所示。

表3 參數設置

2) 權重與偏差初始化

權重初始化采用截斷隨機正態分布,將初始化的值控制在2倍的標準差之內,有助于提高計算穩定性;偏差采用均值為0、標準差為1的隨機正態分布。

3) RAE網絡拓撲結構確定

神經網絡的隱含層數和隱含層節點數的確定一直沒有確定性的方法,需要一定經驗和嘗試。因此通過對比不同隱含層數和隱含層節點數時的重構誤差大小來確定。

由圖7可知,重構誤差隨隱含層數的增加呈現先減小后增大的特點。當隱含層數為3時,重構誤差最小。故確定隱含層數為3。

然后確定隱含層節點數??紤]到隱含層主要負責降維抽象和特征提取表示,因此設置第1隱含層節點數為200,第2隱含層節點數為100。由于第3隱含層節點數對特征提取效果和分類性能尤為重要,因此第3隱含層節點數取值設在(10,50)區間,步長為5,根據重構誤差大小確定,見圖8所示。橫坐標代表第3隱含層節點數,縱坐標代表其對應的重構誤差。

圖7 不同深度RAE的重構誤差

圖8 不同第三隱含層節點數時的重構誤差

由圖8可知,當第3隱含層節點數為35時,重構誤差最小,因此最優第3隱含層節點數為35。最終確定的RAE網絡拓撲結構為360-200-100-35-100-200-360,最終提取到重要機動數據特征維度為35維。

4) SVM參數設置

SVM核函數選擇徑向基核函數RBF,懲罰因子C默認1,輸入數據維度為35,分類函數選擇SVM多分類中的一對多分類函數(OVR),該函數在解決類別較多的多分類問題時,生成分類器數較少,分類速度快。核函數系數γ通過直接使用樣本訓練集數據通過10折交叉驗證確定,如圖9所示。圖中橫坐標代表不同γ值,縱坐標代表其對應的10次實驗的分類準確度平均值。

由圖9可知,γ值為0.03時準確率最高,因此最優γ值為0.03。

4.3 正則化對模型性能的影響

為了分析正則化對模型性能的影響,將訓練集和測試集分別輸入到有正則化的模型和無正則化的模型進行對比。結果如圖10和表4所示。

圖9 γ值10折交叉驗證

圖10 正則化對模型性能的影響

表4 有無正則化模型分類準確率

由圖10可知,沒有正則化的模型比加入正則化的模型均方誤差更小,但加入正則化的模型由于在損失函數上增加了權重衰減項使得收斂速度更快。由表4可知,加入正則化的模型分類準確率更高,這是因為正則化避免了模型對訓練集的過度學習,即“過擬合”,犧牲了訓練時的均方誤差,提高了模型的泛化性能,故分類準確率反而提高。

4.4 模型性能對比

為進一步對比模型的分類準確率與實時性,將模型與粒子群算法(PSO)優化的SVM(RBF核函數,γ取0.03,C取1)和經典分類器隨機森林(RF)(最大弱學習器個數Ne取50,最大深度Dmax取30)進行對比,經過不同數量的訓練集訓練后,模型在測試集上的效果如圖11所示。

圖11 模型效果對比

由圖11可知,在樣本數量很少時,RAE-SVM模型分類準確率和RF模型接近,這是因為RF通過集成學習,本身對高維數據就有較好的學習能力,而RAE-SVM模型需要通過較多樣本進行學習,才能提取出重要特征,進而提高分類準確率??傮w上看,RAE-SVM模型較RF和PSO-SVM模型具有更好的識別準確率。詳細性能對比見表5所示。

表5 不同模型性能對比

由表5可知,RAE-SVM模型在測試集上性能較PSO-SVM模型和RF模型更好。RAE-SVM模型準確率達到92.75%,單組數據分類運行時間為2 ms,滿足數據實時傳輸要求,內存占用率峰值為1.96%,對硬件要求較低,具有實用性。

4.5 實例分析測試

本文中選取某次空戰訓練中ACMI記錄的飛機做典型機動時的數據共330個點,進行機動點類型識別,從而得到機動類型,用來評估模型的準確性。經3名專家判定,得到評估樣本的機動類型分布見圖12所示。

圖12 機動類型分布

結合ACMI三維態勢觀察和圖12可知,飛機依次進行了平飛、左轉彎、平飛、左轉彎、平飛、爬升、右轉彎、俯沖機動。然后使用訓練好的模型對評估樣本進行識別,識別結果如圖13所示。

圖13 機動識別結果

由圖13可以看出,模型總體上可以識別出飛機的機動起始點和結束點,進而得到機動動作,準確性較高。但在識別機動結束點和復雜機動時容易出現誤判。如對左轉彎結束點識別不準確,導致將左轉彎識別為平飛;飛機在進行爬升、轉彎再俯沖的復雜機動時,識別效果稍差。因此,模型可以較為準確地進行飛機機動動作識別。

5 結論

本文中構造了基于時間段數據特征的機動動作樣本庫,并提出了基于RAE-SVM的機動動作識別模型,先對高維的機動動作特征數據進行降維,再利用SVM優良的分類性能進行分類識別。主要得出以下結論:

1) 結合機動數據規律和專家知識,構建了飛機機動動作樣本庫,解決了飛機機動動作樣本庫缺失的問題。

2) RAE具有強大的特征提取能力,通過對原始數據降維,可以抽象提取出原始數據中的重要特征。通過引入正則化,提高了自動編碼器的泛化性能。

3) 基于RAE-SVM的機動動作識別模型識別準確率較高,實時性較好,實用性強。

下一步研究將豐富飛機機動動作,構建更加貼近實戰的機動動作樣本庫,提出更好更優的機動動作識別模型。

猜你喜歡
正則機動編碼器
裝載機動臂的疲勞壽命計算
12萬畝機動地不再“流浪”
機動三輪車的昨天、今天和明天
剩余有限Minimax可解群的4階正則自同構
類似于VNL環的環
基于FPGA的同步機軸角編碼器
基于PRBS檢測的8B/IOB編碼器設計
JESD204B接口協議中的8B10B編碼器設計
有限秩的可解群的正則自同構
多總線式光電編碼器的設計與應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合