曹展家,師本慧
(中國電子科技集團公司 第五十四研究所,石家莊 050081)
雷達作為一種預警探測手段,利用電磁波來獲取目標的距離、方位、速度等信息,在戰場偵察、航空管制、敵我目標識別等方面發揮著不可替代的作用[1-2]。現階段主流的雷達目標檢測技術多采用能量檢測的方式,即統計雜波和回波噪聲的能量來確定出一個門限值從而檢測出雷達回波中的目標[3-6]。但在城市等復雜環境下,以無人機為例,這種低可觀測性目標的回波通常會淹沒在強噪聲背景中,由于目標回波信噪比較低,即便采用恒虛警檢測(CFAR, constant false alarm rate)技術依然會有較強的噪聲干擾,從而影響對目標的檢測率[7-8]。支持向量機[9](SVM, support vector machine)是一種經典的機器學習算法,近年來也被應用到雷達目標識別中,可以實現高緯度特征空間的分類,難點在于人工提取特征的復雜度以及對特征的選擇難度。
深度學習是機器學習的一個分支領域,以神經網絡為主要模型,通過構建一系列連續的表示層從訓練數據中自動學習到特征表示,實現從輸入到目標的映射[10-11]。鑒于目前深度學習在計算機視覺、機器翻譯等方向獲得了突出的成就,研究人員們也開始在雷達目標檢測識別中嘗試引入深度學習[12-15]。文獻[12]利用卷積神經網絡(CNN,convolutional neural network)設計了一種CNN檢測器,以距離-多普勒圖像切片作為網絡的輸入,確定頻譜中是否包含目標回波或僅噪聲,可以替代CFAR檢測器。文獻[13]采用一種多尺度卷積模塊增加了卷積神經網絡的深度,在SAR圖像集上實現了高準確度的目標分類。文獻[14]采用通過添加噪聲等方式增強數據集后的樣本來訓練卷積神經網絡,增強了網絡模型的抗干擾性。文獻[15]采用卷積神經網絡對雷達一維序列信號進行處理說明CNN-LeNet網絡對雷達雜波和噪聲的一維序列數據進行分類的可行性。
上述的方法中所使用的卷積神經網絡提取到的數據的特征表示具有平移不變性,可以提取出不同位置的目標的特征,但是卷積神經網絡對時間步的順序不敏感,忽略了數據之間的相關性,網絡模型的輸出僅與該時刻模型的輸入有關[16]??紤]到雷達的回波數據是時間序列,具有時序相關性,為了處理時序數據,建立長時間的時序依賴關系,本文提出一種基于堆疊雙向LSTM模型來進行雷達目標識別。
在深層前饋神經網絡中,比如常見的卷積神經網絡,只在相鄰的層與層之間建立了連接,每一層神經元節點的輸入只和上一層與該節點局部連接的神經元的輸出有關,信息的傳遞只能是單向無循環的。卷積神經網絡只能孤立的處理當前的數據,無法將上一時刻輸入數據的信息傳遞給下一時刻,整個網絡無反饋信息。另外,卷積神經網絡只能處理固定長度的數據,即輸入和輸出的維度都是固定長度。
對于一些場景下的任務,比如給出一段文字描述,讓神經網絡對這段話去做定性的情感分類。因為一段文字是序列化的數據,從人類的角度分析,一段文字是從前往后的逐詞閱讀,并能記憶之前的詞的信息,這樣可以動態的理解上下文的含義。針對這樣的任務,建立的模型需要能夠接收過去的輸入信息,使得網絡下一個時刻的輸出可以基于當前輸入和上一時刻的輸入做計算??梢钥闯觯矸e神經網絡很難應對序列化的數據,無法提取到輸入數據之間的時序關聯信息[17-18]。
循環神經網絡(RNN)是一類具有保存過去的信息的能力的網絡模型,可以處理序列數據[19]。RNN的隱藏層的狀態ht增加了一個自反饋回路,其輸出由當前的輸入和上一時刻的隱藏層狀態ht-1計算得出。RNN的基本結構如圖1所示。

圖1 RNN單元結構圖
RNN在t時刻的隱藏層狀態ht的計算公式為:
ht= tanh(b+Wht-1+Uxt)
(1)
其中:U為輸入層到隱藏層的權重矩陣,W為上一時刻隱藏層的狀態ht-1作為本次輸入的權重矩陣,b為偏置向量,x為輸入。Tanh為非線性激活函數,其定義為:
(2)
由式(1)可以看出,隱藏層的狀態ht不僅與包含了輸入x的信息,還包含了前一時刻的ht-1的信息,而ht-1又和ht-2有關,以此遞推,每個時刻的隱藏層狀態ht代表了輸入序列中0~t時間步的輸入信息。這是循環神經網絡與靜態的卷積神經網絡的主要不同,通過具有循環連接的自反饋回路,使得循環神經網絡能夠利用其過去輸入的信息來處理時間序列的數據,相比于卷積神經網絡表示能力更強。
循環神經網絡的參數迭代更新由隨時間反向傳播的鏈式法則來計算梯度,即通過偏導數遞歸自上而下的計算每層的誤差。給定一個數據集(x,y),其中x=(x1,…,xN)為輸入數據,長度為N,如文本序列。y=(y1,…,yN)為期望輸出的真實標簽,長度為N。在時間步t,定義神經網絡的損失函數為:
Lt=L(yt,f(ht))
(3)
其中:f(ht)為t時刻網絡的輸出,f(·)為Sigmoid型非線性函數[20]。損失函數L是可微的。則遍歷整個序列數據的損失函數之和對參數W的梯度為:
(4)
因為一般采用Sigmoid型非線性函數作為網絡模型的激活函數來增強循環神經網絡的表示能力,其導數值都小于1,因此如果輸入序列比較長,長距離間隔的隱藏層狀態hk的梯度會趨向于0,也稱為長程依賴問題,參數更新實際上只依賴相鄰的幾個隱藏層狀態hk,難以學習到長時間間隔狀態的信息。
長短期記憶網絡是循環神經網絡的一種改進模型,引入了門控機制,避免了當輸入序列較長時,網絡模型存在的梯度消失問題[21-22]。LSTM結構單元如圖2所示,這些內部的門控單元是LSTM的重要組成部分。

圖2 LSTM單元結構圖
LSTM增加了一種新的內部狀態st,攜帶著之前時間步的歷史信息,可以跨越多個時間步將信息傳送到后面的時刻,同時非線性的更新外部的隱藏層狀態ht。
(5)
式中,xt為輸入值,ht為隱藏層的值,bf、Uf和Wf分別為偏置向量、輸入權值矩陣和遺忘門循環權值矩陣。
(6)

(7)

(8)
(9)
其中:bo、Uo和Wo分別為偏置向量、輸入權值矩陣和輸出門循環權值矩陣。
遺忘門決定內部狀態將前一時刻的不相關信息丟棄,輸入門決定當前時刻保存多少新輸入的信息,輸出門決定內部狀態有多少信息傳遞給隱藏層狀態。正因為門控機制的存在,LSTM能夠學習到跨越多個時間步的信息。
單層的神經網絡提取數據特征的能力弱,表示能力不足。深度學習是指從連續的表示層中學習輸入數據的高級特征表示,讓輸出數據更加接近預期的結果。本文設計了堆疊LSTM,前一層網絡的輸出作為本層網絡的輸入數據,增加了LSTM網絡的深度,從而增強了神經網絡模型的特征表示能力,使網絡的預測更為準確。
循環神經網絡按順序處理輸入數據的時間序列,單向的LSTM只輸入了數據的正序,輸出只取決于之前時刻的時序信息。然而,在某些場景下,當前時刻的輸出不僅取決于之前時刻的信息,還和后續時刻的信息有關,比如一個詞匯的意思需要根據其上下文的信息來判斷。雙向的LSTM包含兩個LSTM網絡層,分別按照時間順序和逆序提取數據特征,然后將兩個LSTM網絡層的輸出拼接起來,雙向的LSTM能夠提取到被單向LSTM忽略的特征??紤]到雷達回波的相鄰數據具有一定的相關性,目標回波的特征包含了前后數據的信息,本文采用雙向LSTM對數據進行建模,增強網絡的能力,得到更加豐富的特征表示。
現有的深度學習框架可以搭建任意的神經網絡模型,將上述的兩種LSTM網絡模型相結合,在第一層雙向LSTM上堆疊搭建第二層雙向LSTM,得到本文的堆疊雙向LSTM網絡模型,綜合提高網絡的表示能力。
有一個長度為N的數據集x=(x1,…,xN)。將輸入數據x按照時間順序輸入到LSTM網絡中,可以得到N個時刻的隱藏層輸出ht。對于多層堆疊的LSTM,要求中間層返回每個時間步的輸出傳遞給下一層計算,最后一層LSTM只取最后一個時間步的輸出hN作為最終整個序列的特征表示,因為ht包含之前所有時間步的信息。最后將hN輸入給分類模型f(·)預測樣本類別。
(10)
其中:f(·)在二分類問題常用Logistic回歸。
本文的網絡模型輸入的數據為雷達目標回波序列,輸出為無人機和噪聲的二分類,即設計的LSTM的輸入輸出結構為N→1。
本文搭建的模型為堆疊雙向LSTM網絡。模型結構如圖3所示。網絡使用Python編程,在TensorFlow框架下搭建模型。

圖3 模型結構
在TensorFlow中使用Bidirectional層將一個雙向LSTM實例化,創建了兩個LSTM層實例,然后使用其中一個LSTM層按正向序列處理輸入數據,另一個LSTM層按逆向序列處理輸入數據。
網絡共三層,包含兩層LSTM層和一層Dense層,第一層的LSTM分為前向LSTM和后向LSTM,每個LSTM隱藏單元的個數為32,將輸入的二維數據映射到32維的表示空間中,使神經網絡能夠提取到更為深層的特征,然后將每個時間步的前向和后向LSTM隱藏層輸出拼接起來,得到長度為64的特征序列輸入下一個LSTM層。第二層的LSTM隱藏單元的個數為16,接收前一個LSTM層每個時間步的輸出,最后一層的Dense層只接收前一個LSTM層最后一個時間步的輸出,即接收到的序列長度為32。Dense層,即全連接層,對應的運算為:
(11)
其中:wT為N維的權重向量,x為神經元的輸入序列,b是偏置向量。
Dense層的激活函數選取非線性函數Logistic,最終得到一個[0,1]之間的概率輸出。函數定義為:
(12)
目標分類的判斷原則為:如果輸出概率小于0.5,則認為當前樣本為無人機;如果輸出概率大于0.5,則認為當前樣本為噪聲。
損失函數是度量網絡模型輸出的預測結果與樣本類別標簽的誤差的一種映射,損失函數的值越小,說明網絡模型對數據擬合度越好。訓練神經網絡過程中通過優化網絡參數使損失函數盡可能最小化。對于本文中的二分類問題,選用交叉熵損失函數:
L=-[yilogfi(x)+(1-yi)log(1-fi(x))]
(13)
其中:yi表示樣本的標簽,無人機的樣本標簽為“0”,接收機噪聲的樣本標簽為“1”。fi(x)表示模型對樣本的預測值。
優化器是根據損失函數的值對網絡參數進行梯度下降更新的具體方式,實現了反向傳播算法。當使用梯度下降法時,所有權重參數的學習率是固定的??紤]到每個參數的損失函數偏導值都不相同,本文選用RMSprop優化器,每次迭代基于網絡模型在該批量數據上的損失值自適應地更新每個網絡參數的學習率,RMSprop算法設置了一個衰減率β來計算每次迭代梯度平方的指數移動平均。
Gt=βGt-1+(1-β)gt⊙gt
(14)
其中:gt為迭代梯度,β的值一般取0.9。
RMSprop算法的參數更新公式為:
(15)
其中:α為全局學習率,本文默認為0.001。ε為很小的正數,取值為10-6,用來保持計算公式的數值穩定。從上式可以看出,RMSprop算法中學習率與參數的偏導數累積量成反比,可以減緩梯度下降中的震蕩,加快網絡收斂速度。
神經網絡的損失函數為非凸函數,并且模型的結構龐大,參數量多,導致深度神經網絡在訓練大批量的數據集時,較難收斂到一個全局最優解。
當使用梯度下降法更新神經網絡各個節點的權重參數時,參數的初始化方案影響著網絡的收斂速度。

訓練神經網絡時,為了避免過擬合問題,增強模型的泛化能力,本文采用隨機丟棄每一層神經元的連接的方式來限制模型復雜度。對于LSTM網絡而言,為了保證LSTM在時間序列上的記憶能力,只針對輸入層的神經元連接進行丟棄,并且為了使輸入變化波動不會太大,神經元連接的保留率設定為0.9。
本文搭建的網絡模型訓練所采用的數據集來自于線性調頻連續波雷達的實測數據,典型的線性調頻連續波雷達對目標回波和發射信號的差拍信號進行快速傅里葉變換(FFT),即可得到目標的距離信息。這里選擇將雷達信號處理流程中的距離向加窗FFT后的距離維解調數據,以距離門為單個樣本單元并標注信號類別標簽構建數據集。本文采集了無人機和接收機噪聲兩種類型的數據共13 000個,兩類樣本各占6 500個,其中,無人機的樣本標簽記為“0”,接收機噪聲的樣本標簽記為“1”。樣本樣例如圖4、圖5所示。

圖4 無人機雷達回波樣本樣例

圖5 接收機噪聲樣本樣例
為了便于評估模型性能,將數據集劃分為訓練集、驗證集和測試集,相互之間無重復。在訓練集上調用模型進行訓練,在驗證集上評估模型的性能并優化超參數。一旦模型的參數調到最優,則用測試集數據測試一下模型的最終效果。留出一定比例的數據作為測試集是為了防止信息泄露,測試模型的泛化能力。劃分后的樣本數據量如表1所示。

表1 數據集劃分
本文采集的樣本數據來自雷達接收機的正交IQ信號,輸入單個樣本的尺寸為(290,2),特征為2維,樣本總數為13 000。
神經網絡的參數初始化權重一般較小,若輸入數據不同維度的取值波動較大,不利于神經網絡的迭代訓練。首先需要對輸入神經網絡的樣本數據的2個維度的特征分別做標準化,使其滿足均值為0,方差為1,取值范圍保持在(0,1)之間。這樣可以讓不同維度的特征分布接近,避免極端異常值干擾模型訓練,提升模型的收斂速度和精度。計算公式如下:
(16)

調用模型在訓練數據上進行迭代時,批量大小設定為64,即每次迭代是用64個樣本計算批量損失對參數進行更新,增加訓練的穩定性,加快收斂。訓練樣本總量為9 600個,每一輪訓練進行150次梯度更新,將模型在訓練數據上迭代50個輪次。
設置訓練過程中模型性能的評價指標為精度,即樣本識別的正確率。記錄每次迭代之后訓練集和驗證集的損失函數值和精度。網絡訓練結果如圖6和圖7所示。

圖6 訓練精度和驗證精度

圖7 訓練損失和驗證損失
如圖所示,訓練精度和驗證精度在50輪次訓練后趨于穩定,達到收斂。該模型的性能幾乎達到最優,同時在驗證集也沒有產生過擬合,泛化能力良好。
使用訓練好的網絡模型在測試集上評估模型性能。測試集共包括1 000個樣本,無人機和噪聲的樣本各500個,使用混淆矩陣來展示預測準確率。其中橫軸代表預測類別,縱軸表示真實類別,如圖8所示。

圖8 測試集結果的混淆矩陣
由圖8可以看出,無人機樣本全部被正確識別為無人機,98%的噪聲樣本被正確識別為噪聲。
本文所搭建的堆疊雙向LSTM網絡與傳統SVM分類方法和卷積神經網絡識別方法的識別精度對比如表2所示。

表2 識別算法結果對比 %
通過對比可以得出,基于堆疊雙向LSTM的雷達目標識別方法相比傳統的SVM分類算法和基于卷積神經網絡的目標識別方法,在識別精度上有所提升,說明本文構建的堆疊雙向LSTM網絡在節省了人工提取目標特征的同時,還充分利用了雷達回波時序數據的前后相關性,使得模型提高了識別精度。
傳統的恒虛警檢測算法和基于SVM的目標分類技術存在自適應能力差,人工量大的問題。本文提出的基于堆疊雙向LSTM的雷達目標識別方法,采用了雙向LSTM提取雷達回波數據的時序特征,同時通過堆疊多層LSTM增強了網絡的表示能力。實驗表明,對于無人機目標的識別分類,基于堆疊雙向LSTM的雷達目標識別方法優于傳統的SVM分類算法和基于卷積神經網絡的目標識別方法。但該網絡模型若要應用到實際場景中,需要采集更多的數據集來訓練網絡模型,并通過模型壓縮等方式提高神經網絡的實時性。另外,錄取貼合實際應用需求的復雜場景下的雷達回波數據,通過后續的研究驗證神經網絡模型對動態變化的強雜波的處理的穩定性。