馬子博,吳呈瑜,占 敖
(浙江理工大學 信息科學與工程學院,浙江 杭州 310018)
無人機在災害搶險、航拍測繪等眾多領域產生較大影響但對社會公共安全構成嚴重威脅[1],這使得無人機識別成為比較重要的研究任務。無人機的內在物理層模擬組件在制造過程中的細微差別會令無人機發射的射頻信號攜帶非調制信號,它無關信號傳遞的內容,被稱作通信的射頻指紋[2],利用射頻指紋的特性可進行無人機信號分類[3]。隨著深度學習在機器視覺和語音識別方面取得的進展[4],將深度學習引入到無人機識別領域是當前的重要發展趨勢,例如卷積神經網絡(Convolutional Neural Network,CNN)的卷積層和池化層用于特征信息的提取,全連接層用于無人機信號的分類[5]。
文獻[6]提出了采用分組卷積層來識別無人機,通過設計多級跳躍連接和多間隙機制防止梯度消失。文獻[7]將無人機分類看作圖像識別任務,功率譜密度圖作為CNN的輸入經交叉驗證和獨立數據集進行驗證。文獻[8]提出了信噪比(Signal to Noise Ratio,SNR)傳感引擎、去噪引擎和具有混合精度卷積和內存訪問的專用深度CNN相結合。上述提出的模型基于CNN,對無人機飛行模式都有超過90%的識別精度,算法性能明顯優于傳統方法。為了消除信號因隨機因素產生的無關干擾和簡化數據預處理,本文利用Savitzky-Golay進行平滑濾波提取信號特征。此外,為了在現有研究基礎上進一步提升無人機的識別準確率和提高模型在真實場景的實用性,提出了D-A Xception CNN模型,模型中的空洞卷積能夠有效降低模型的復雜度,DANet注意力機制能夠有效提升識別的準確度。
本節介紹了用于本模型訓練的公共數據集和用于無人機識別的網絡模型,基于數據集在頻域上處理無人機信號并生成能量譜圖片,進行數據增強擴充數據集。
1.1.1 數據集
本文使用了公開數據集DroneRF[9],采集到的射頻信號是2個工作頻率在1.2~6 GHz、帶寬為40 MHz的射頻接收器通過攔截無人機與控制器之間的通信獲得的。數據集中的無人機射頻信號包括沒有無人機存在的射頻背景信號、Phantom連接控制器的射頻信號以及AR和Bebop兩個無人機各自開機、懸停、無視頻飛行和錄視頻飛行4種模式的射頻信號。數據集通過2個接收器攔截,每個片段由2個‘L’和‘H’的CSV文件構成。文件包含射頻信號在時域內的幅值信息,每個文件包含100萬個樣本,其文件名以二進制唯一標識符BUI格式表述此文件中數據的詳細信息。
原始數據集的信號類型數量如表1所示。由于AR和Bebop品牌的無人機出自同一公司以及同一無人機不同飛行模式等因素產生的射頻信號相似性極大,利用此數據集給無人機識別技術增加了挑戰性,極具研究價值且實用性較高。

表1 原始數據集的信號類型數量Tab.1 Signal type and number of original dataset
1.1.2 數據預處理
基于文獻[6-8],本文采用CNN衍生出來的Xception改進模型進行網絡訓練,需要先對CNN輸入的數據進行預處理。本文將訓練網絡的輸入設定為每個信號一定頻率內的能量譜密度,生成22 700張圖像作為網絡輸入。
無人機發射射頻信號有其頻率范圍,不同頻率的響應不同。首先加載所有原始射頻數據,經過傅里葉變換到頻域后將樣本間隔重新分割,再進行類聚合處理將各類信號分別存儲。
設定頻率采樣點數,同時設定以fs/(M-1)為間隔的能量譜密度圖的橫坐標范圍,fs為采樣頻率,M為樣本間隔。計算隨頻率變化的信號強度,未經過平滑濾波一定帶寬范圍內信號強度如圖1所示。

圖1 未經過平滑濾波一定帶寬范圍內信號強度Fig.1 Signal strength within a certain bandwidth without smooth filtering
需對頻域上的樣本進行平滑處理來提高能量譜的平滑性,并進行歸一化處理。平滑處理采用的是Savitzky-Golay[10]平滑濾波,對設定的窗口長度內部的樣本點采用n階多項式擬合[11]。
將窗口內以i=0的中心數據設為x[i],i=-m,…,0,…,m,i,構造n階多項式擬合用于擬合數據,則:
(1)
式中,bn0,bn1,…,bnn為系數。
計算原各點數據與擬合各點數據的殘差平方和:
(2)
擬合效果與殘差平方和成反比,已知擬合的點數m,多項式的階數n以及所需擬合的數據x[i],為了擬合效果最好,需求偏導:
(3)
可得,
(4)
式中,r=0,1,…,n。
上述所求擬合多項式是求取x[i]的窗口內中心點的估值。之后通過不斷移動窗口則可獲得后面的求取結果。對原始數據進行一次FIR濾波,輸入與濾波器的單位沖激響應進行卷積可得式(5),由式(5)獲得卷積系數表,可快速得到x[i]的中心點的平滑值:
(5)
則,S-A平滑式如下:
(6)

平滑效果由長度窗口及K值(n取值范圍決定)決定,平滑濾波后不同Window_size和K值的固定帶寬下的信號強度如圖2所示。

(a) Window_size=43,K=3

(b) Window_size=43,K=11

(c) Window_size=113,K=3圖2 平滑濾波后不同Window_size和K值的固定帶寬下 的信號強度Fig.2 Signal strength of different Window_size and K value after smooth filtering under fixed bandwidth
由圖2(a)和圖2(b)可知,固定窗口大小,設置不同K值,K值越大,曲線會越貼近真實曲線。由圖2(a)和圖2(c)可知,固定K值,設置不同Window_size,窗口過大會導致原始值過于平滑。為了更有效地擬合真實樣本,長度窗口及K值分別設定為43,3。歸一化的目的是固定信號強度的尺度。
先驗經驗表明,在激活函數及超參數設置合理的情況下,層數較深的網絡會提高對任務的抽象程度,從而提取到更細微的特征。原始10類信號數據量不均衡的問題會導致訓練的模型泛化能力變差。此外,訓練的數據較少會導致近似值不佳等問題,產生過擬合現象的概率提升。因此,需要進行數據增強,擴充數據集,增加訓練數據的數量和多樣性。對訓練數據進行適當處理,網絡模型會對某些屬性的依賴降低,即通過使用圖像處理方法,進行數據增強使各類數據集達到平衡,提高模型的魯棒性。本文對22 700張能量譜圖像添加高斯噪聲和椒鹽噪聲,并將補充后的數據集分為訓練集和測試集。
高斯噪聲的概率密度服從正態分布,其概率密度為:
(7)
式中,z為均值;σ為z的標準差。圖像的明暗程度由z決定。σ越大則數據越分散、噪聲點數則越多。
椒鹽噪聲為圖像上隨機出現的黑白像素點,其由信號脈沖強度所引起,由SNR指定。隨機獲取加噪的像素位置并指定像素值為0或255。
數據擴充后用于網絡模型訓練的數據集信號數量如表2所示。

表2 數據增強后各類信號數量Tab.2 Number of signals after data enhancement
D-A Xception網絡模型以Xception[12]為基礎進行改進,結合了空洞卷積[13]及DANet[14]注意力機制,模型結構如圖3所示。

圖3 D-A Xception網絡模型結構Fig.3 D-A Xception network model structure
Xception是在Inception V3[15]的基礎上改進的。Xception網絡結構由3個部分組成:第1部分進行下采樣,用于空間維度的減少;第2部分進行特征的分析和過濾;第3部分用于將特征進行匯總和整理。引入的殘差學習令模型加快收斂速度,選擇此模型作為基礎網絡的目的是使網絡結構變得輕量化,減少存儲空間但不影響模型的表達能力。
1.3.1 空洞卷積
為了在不增加網絡模型復雜度的同時提升模型效率,需要在計算資源有限的前提下保持卷積核數量和大小,空洞卷積能夠解決該保持問題。此外,CNN存在局限性,如卷積核的尺寸除全連接層外通常小于輸入圖像的大小,則特征圖表征為局部特征,感受野也會受到限制。采用空洞卷積能夠擴大感受野且不需額外參數。空洞卷積的卷積操作需在卷積核之間加入零值像素點,其感受野n計算如下:
n=k+(k-1)*(d-1) ,
(8)
式中,d為擴張率;k為原始卷積核大小。
經過空洞卷積后的特征圖大小o計算如下:
(9)
式中,s為步長;i為輸入空洞卷積的大小;p為padding大小;k為卷積核大小。
1.3.2 DANet注意力機制
無人機識別任務是特定輻射源識別的一種特例,一些特定輻射源識別的研究將注意機制結合深度神經網絡,可以有效提高識別準確度。文獻[16]針對信號中的隱藏特征,結合基于稀疏表示的分類(Sparse Representation based Classification,SRC)使用具有不同濾波器長度的卷積從原始自動識別系統信號中提取具有多種分辨率的潛在特征,將信道注意力機制引入多尺度CNN用于識別12個輻射源器件,精度超過94%。
DANet注意力機制包含位置注意力機制模塊和通道注意力機制模塊。DANet在自注意力機制基礎上捕捉2個模塊的依賴關系。位置注意力機制聚焦在特征圖無關距離的任意2個位置的空間關聯。通道注意力機制映射所有通道之間所強調的相關特征,令2個位置特征相似性的權重增加,關聯2個注意力模塊提升模型對細微特征的提取能力。DANet解決了同一類別由于卷積生成的局部感受野的特征圖存在不同特征性的問題,進而降低了網絡識別效率。
輸入的特征圖A尺寸為C×H×W,則位置注意力特征圖為:
(10)
式中,RN×N為N×N的二維矩陣;B,C,D為A分別通過3個卷積層得到的3個特征圖;sji表示i,j兩個位置之間的相關性,相似性與值成正比;N為像素數量,N=H×W,
位置注意力的特征圖是原始位置與通過位置注意力模塊輸出結果的加權和:
(11)
式中,α為尺度系數,初始化設置為0,通過不斷學習權重變大;RC×H×W為C×H×W的三維矩陣。
通道注意力特征圖為:
(12)
式中,xji表示i,j兩個位置之間的相關性,相似性與值成正比;RC×C為C×C的二維矩陣,設β為通道注意力的尺度系數,則計算輸出為:
(13)
通道的特征結果E實現對特征圖之間依賴關系的建立。因為Xception的中間部分作用為特征之間的關聯及優化,將圖3中紅色虛線邊框引入DANet部分。在網絡訓練參數增加率較小的條件下,增強了局部特征的表達能力,突出了通道之間依賴相關性,因此能夠在基本不增加網絡復雜度的前提下提高模型的效果。
本實驗模型的環境如表3所示。

表3 實驗環境Tab.3 Experimental environment
實驗訓練了使用相同數據集的InceptionV1[17],InceptionV3,Resnet18,ResNet50,Xception和D-A Xcep-tion共6個網絡模型。
6個網絡模型的訓練準確度對比如圖4所示。由圖4可以看出,本文提出的D-A Xception網絡模型能夠獲得比較穩定的訓練準確度。在訓練模型過程中采用十倍交叉驗證法,充分利用數據集降低因各種因素導致的偶然性從而避免模型訓練誤差,對超參數和穩定模型進行選擇。

圖4 訓練準確度對比Fig.4 Comparison of training accuracy
6個網絡模型的測試準確度對比如圖5所示。

圖5 測試準確度對比Fig.5 Comparison of test accuracy
由圖5可以看出,D-A Xception在迭代次數之間有波動,并在第12次迭代達到收斂。出現波動的原因是由于一個batch是在數據集中隨機抽取,在這一個batch中樣本特征都非常近似,但是在下一個batch中樣本的特征與之前的特征差異較大,所以會出現這種波動情況,這種波動模型會根據損失函數來不斷學習及調整。
實驗結果進一步驗證了本文提出的D-A Xception網絡模型相比其他使用同一數據集的網絡模型能夠獲得更好的識別精度,準確率對比如表4所示。

表4 準確率對比Tab.4 Accuracy comparison 單位:%
為了驗證模型優化的有效性,進行網絡模型的消融驗證。數據集的每類數據中隨機抽取500張未訓練的數據用于測試,實驗結果如圖6所示。

圖6 消融實驗Fig.6 Ablation experiment
由圖6可以看出,原始的基礎網絡Xception在準確率和模型收斂速度上低于其他3個網絡模塊。在沒有加入空洞卷積的模型中和沒有加入DANet的模型中,其準確率和收斂效果雖然高于基礎模型,但是低于本文提出模型的效果,具體準確率如表5所示。

表5 消融實驗Tab.5 Ablation experiment 單位:%
Recall指的是被預測為正樣本的占總的正樣本的比重,Precision指預測準確的樣本比例,F1-score指的是對Precision與Recall進行平均的一個結果。綜合指標如表6所示(表中信號類型對應表2中的無人機10種飛行模式)。

表6 綜合指標Tab.6 Comprehensive indicators 單位:%
(14)
(15)

(16)
統計Precision,Recall,F1-Score的Macro avg和Weighted avg。Macro avg是對每類樣本的Precision,Recall,F1-Score加和后求平均;Weighted avg是每個類別樣本數量在總樣本中占比,如表7所示。

表7 10類信號的Macro avg 和Weighted avgTab.7 Macro avg and Weighted avg of ten kinds of signals 單位:%
D-A Xception 網絡模型混淆矩陣如圖7所示。混淆矩陣用于本模型的評估,矩陣的行代表預測類別,矩陣的列代表真實類別,顯示為深藍色的對角線的單元格表示正確分類,而隨著顏色變淺則代表錯誤分類的占比。

圖7 D-A Xception 網絡模型混淆矩陣Fig.7 D-A Xception network model confusion matrix
本文提出的D-A Xception網絡模型識別效率較高,平均每類識別率為99.58%。
在對原始數據集進行擴充后,InceptionV3,InceprionV1,ResNet50,ResNet18仍出現訓練誤差和測試誤差之間差距過大現象,這種現象稱為過擬合。進一步說明網絡結構、網絡深度、神經元數量復雜度高。在相當有限的數據集情況下,網絡模型的復雜度較高就會過度學習訓練,從而不自覺地獲取隱藏在數據中的冗余信息,當在使用未訓練過的數據測試模型效果時,由于模型泛化能力差就會導致效果不佳并且會產生激蕩現象。圖6的消融實驗有效驗證了D-A Xcetption模型的性能,其與Xception引入的空洞卷積和注意力機制本身輕量化結構有極大關系。
本文提出基于D-A Xception的無人機分類識別模型,依靠空洞卷積擴大感受野及DANet注意力機制捕捉特征的相關性,經模型訓練后,可以快速對未經過訓練的數據樣本進行分類。基于公開無人機數據集DroneRF,數據集中的某種無人機飛行模式的射頻信號雖然與來自同種飛機的另一種飛行模式產生的射頻信號在隨頻率變化的能量譜密度圖上相似度極高,但算法依然保證了較高的識別準確率。
本文為了使模型具備較強的實用性,盡量控制網絡參數的增加來改進現有網絡。為了不降低模型性能,對現有數據集進行預處理,突顯射頻信號的特征以便于網絡提取特征,并通過擴充訓練數據樣本提高模型泛化能力。