馬子博,吳呈瑜,占 敖
(浙江理工大學(xué) 信息科學(xué)與工程學(xué)院,浙江 杭州 310018)
無人機(jī)在災(zāi)害搶險(xiǎn)、航拍測繪等眾多領(lǐng)域產(chǎn)生較大影響但對(duì)社會(huì)公共安全構(gòu)成嚴(yán)重威脅[1],這使得無人機(jī)識(shí)別成為比較重要的研究任務(wù)。無人機(jī)的內(nèi)在物理層模擬組件在制造過程中的細(xì)微差別會(huì)令無人機(jī)發(fā)射的射頻信號(hào)攜帶非調(diào)制信號(hào),它無關(guān)信號(hào)傳遞的內(nèi)容,被稱作通信的射頻指紋[2],利用射頻指紋的特性可進(jìn)行無人機(jī)信號(hào)分類[3]。隨著深度學(xué)習(xí)在機(jī)器視覺和語音識(shí)別方面取得的進(jìn)展[4],將深度學(xué)習(xí)引入到無人機(jī)識(shí)別領(lǐng)域是當(dāng)前的重要發(fā)展趨勢,例如卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)的卷積層和池化層用于特征信息的提取,全連接層用于無人機(jī)信號(hào)的分類[5]。
文獻(xiàn)[6]提出了采用分組卷積層來識(shí)別無人機(jī),通過設(shè)計(jì)多級(jí)跳躍連接和多間隙機(jī)制防止梯度消失。文獻(xiàn)[7]將無人機(jī)分類看作圖像識(shí)別任務(wù),功率譜密度圖作為CNN的輸入經(jīng)交叉驗(yàn)證和獨(dú)立數(shù)據(jù)集進(jìn)行驗(yàn)證。文獻(xiàn)[8]提出了信噪比(Signal to Noise Ratio,SNR)傳感引擎、去噪引擎和具有混合精度卷積和內(nèi)存訪問的專用深度CNN相結(jié)合。上述提出的模型基于CNN,對(duì)無人機(jī)飛行模式都有超過90%的識(shí)別精度,算法性能明顯優(yōu)于傳統(tǒng)方法。為了消除信號(hào)因隨機(jī)因素產(chǎn)生的無關(guān)干擾和簡化數(shù)據(jù)預(yù)處理,本文利用Savitzky-Golay進(jìn)行平滑濾波提取信號(hào)特征。此外,為了在現(xiàn)有研究基礎(chǔ)上進(jìn)一步提升無人機(jī)的識(shí)別準(zhǔn)確率和提高模型在真實(shí)場景的實(shí)用性,提出了D-A Xception CNN模型,模型中的空洞卷積能夠有效降低模型的復(fù)雜度,DANet注意力機(jī)制能夠有效提升識(shí)別的準(zhǔn)確度。
本節(jié)介紹了用于本模型訓(xùn)練的公共數(shù)據(jù)集和用于無人機(jī)識(shí)別的網(wǎng)絡(luò)模型,基于數(shù)據(jù)集在頻域上處理無人機(jī)信號(hào)并生成能量譜圖片,進(jìn)行數(shù)據(jù)增強(qiáng)擴(kuò)充數(shù)據(jù)集。
1.1.1 數(shù)據(jù)集
本文使用了公開數(shù)據(jù)集DroneRF[9],采集到的射頻信號(hào)是2個(gè)工作頻率在1.2~6 GHz、帶寬為40 MHz的射頻接收器通過攔截?zé)o人機(jī)與控制器之間的通信獲得的。數(shù)據(jù)集中的無人機(jī)射頻信號(hào)包括沒有無人機(jī)存在的射頻背景信號(hào)、Phantom連接控制器的射頻信號(hào)以及AR和Bebop兩個(gè)無人機(jī)各自開機(jī)、懸停、無視頻飛行和錄視頻飛行4種模式的射頻信號(hào)。數(shù)據(jù)集通過2個(gè)接收器攔截,每個(gè)片段由2個(gè)‘L’和‘H’的CSV文件構(gòu)成。文件包含射頻信號(hào)在時(shí)域內(nèi)的幅值信息,每個(gè)文件包含100萬個(gè)樣本,其文件名以二進(jìn)制唯一標(biāo)識(shí)符BUI格式表述此文件中數(shù)據(jù)的詳細(xì)信息。
原始數(shù)據(jù)集的信號(hào)類型數(shù)量如表1所示。由于AR和Bebop品牌的無人機(jī)出自同一公司以及同一無人機(jī)不同飛行模式等因素產(chǎn)生的射頻信號(hào)相似性極大,利用此數(shù)據(jù)集給無人機(jī)識(shí)別技術(shù)增加了挑戰(zhàn)性,極具研究價(jià)值且實(shí)用性較高。
表1 原始數(shù)據(jù)集的信號(hào)類型數(shù)量Tab.1 Signal type and number of original dataset
1.1.2 數(shù)據(jù)預(yù)處理
基于文獻(xiàn)[6-8],本文采用CNN衍生出來的Xception改進(jìn)模型進(jìn)行網(wǎng)絡(luò)訓(xùn)練,需要先對(duì)CNN輸入的數(shù)據(jù)進(jìn)行預(yù)處理。本文將訓(xùn)練網(wǎng)絡(luò)的輸入設(shè)定為每個(gè)信號(hào)一定頻率內(nèi)的能量譜密度,生成22 700張圖像作為網(wǎng)絡(luò)輸入。
無人機(jī)發(fā)射射頻信號(hào)有其頻率范圍,不同頻率的響應(yīng)不同。首先加載所有原始射頻數(shù)據(jù),經(jīng)過傅里葉變換到頻域后將樣本間隔重新分割,再進(jìn)行類聚合處理將各類信號(hào)分別存儲(chǔ)。
設(shè)定頻率采樣點(diǎn)數(shù),同時(shí)設(shè)定以fs/(M-1)為間隔的能量譜密度圖的橫坐標(biāo)范圍,fs為采樣頻率,M為樣本間隔。計(jì)算隨頻率變化的信號(hào)強(qiáng)度,未經(jīng)過平滑濾波一定帶寬范圍內(nèi)信號(hào)強(qiáng)度如圖1所示。
圖1 未經(jīng)過平滑濾波一定帶寬范圍內(nèi)信號(hào)強(qiáng)度Fig.1 Signal strength within a certain bandwidth without smooth filtering
需對(duì)頻域上的樣本進(jìn)行平滑處理來提高能量譜的平滑性,并進(jìn)行歸一化處理。平滑處理采用的是Savitzky-Golay[10]平滑濾波,對(duì)設(shè)定的窗口長度內(nèi)部的樣本點(diǎn)采用n階多項(xiàng)式擬合[11]。
將窗口內(nèi)以i=0的中心數(shù)據(jù)設(shè)為x[i],i=-m,…,0,…,m,i,構(gòu)造n階多項(xiàng)式擬合用于擬合數(shù)據(jù),則:
(1)
式中,bn0,bn1,…,bnn為系數(shù)。
計(jì)算原各點(diǎn)數(shù)據(jù)與擬合各點(diǎn)數(shù)據(jù)的殘差平方和:
(2)
擬合效果與殘差平方和成反比,已知擬合的點(diǎn)數(shù)m,多項(xiàng)式的階數(shù)n以及所需擬合的數(shù)據(jù)x[i],為了擬合效果最好,需求偏導(dǎo):
(3)
可得,
(4)
式中,r=0,1,…,n。
上述所求擬合多項(xiàng)式是求取x[i]的窗口內(nèi)中心點(diǎn)的估值。之后通過不斷移動(dòng)窗口則可獲得后面的求取結(jié)果。對(duì)原始數(shù)據(jù)進(jìn)行一次FIR濾波,輸入與濾波器的單位沖激響應(yīng)進(jìn)行卷積可得式(5),由式(5)獲得卷積系數(shù)表,可快速得到x[i]的中心點(diǎn)的平滑值:
(5)
則,S-A平滑式如下:
(6)
平滑效果由長度窗口及K值(n取值范圍決定)決定,平滑濾波后不同Window_size和K值的固定帶寬下的信號(hào)強(qiáng)度如圖2所示。
(a) Window_size=43,K=3
(b) Window_size=43,K=11
(c) Window_size=113,K=3圖2 平滑濾波后不同Window_size和K值的固定帶寬下 的信號(hào)強(qiáng)度Fig.2 Signal strength of different Window_size and K value after smooth filtering under fixed bandwidth
由圖2(a)和圖2(b)可知,固定窗口大小,設(shè)置不同K值,K值越大,曲線會(huì)越貼近真實(shí)曲線。由圖2(a)和圖2(c)可知,固定K值,設(shè)置不同Window_size,窗口過大會(huì)導(dǎo)致原始值過于平滑。為了更有效地?cái)M合真實(shí)樣本,長度窗口及K值分別設(shè)定為43,3。歸一化的目的是固定信號(hào)強(qiáng)度的尺度。
先驗(yàn)經(jīng)驗(yàn)表明,在激活函數(shù)及超參數(shù)設(shè)置合理的情況下,層數(shù)較深的網(wǎng)絡(luò)會(huì)提高對(duì)任務(wù)的抽象程度,從而提取到更細(xì)微的特征。原始10類信號(hào)數(shù)據(jù)量不均衡的問題會(huì)導(dǎo)致訓(xùn)練的模型泛化能力變差。此外,訓(xùn)練的數(shù)據(jù)較少會(huì)導(dǎo)致近似值不佳等問題,產(chǎn)生過擬合現(xiàn)象的概率提升。因此,需要進(jìn)行數(shù)據(jù)增強(qiáng),擴(kuò)充數(shù)據(jù)集,增加訓(xùn)練數(shù)據(jù)的數(shù)量和多樣性。對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行適當(dāng)處理,網(wǎng)絡(luò)模型會(huì)對(duì)某些屬性的依賴降低,即通過使用圖像處理方法,進(jìn)行數(shù)據(jù)增強(qiáng)使各類數(shù)據(jù)集達(dá)到平衡,提高模型的魯棒性。本文對(duì)22 700張能量譜圖像添加高斯噪聲和椒鹽噪聲,并將補(bǔ)充后的數(shù)據(jù)集分為訓(xùn)練集和測試集。
高斯噪聲的概率密度服從正態(tài)分布,其概率密度為:
(7)
式中,z為均值;σ為z的標(biāo)準(zhǔn)差。圖像的明暗程度由z決定。σ越大則數(shù)據(jù)越分散、噪聲點(diǎn)數(shù)則越多。
椒鹽噪聲為圖像上隨機(jī)出現(xiàn)的黑白像素點(diǎn),其由信號(hào)脈沖強(qiáng)度所引起,由SNR指定。隨機(jī)獲取加噪的像素位置并指定像素值為0或255。
數(shù)據(jù)擴(kuò)充后用于網(wǎng)絡(luò)模型訓(xùn)練的數(shù)據(jù)集信號(hào)數(shù)量如表2所示。
表2 數(shù)據(jù)增強(qiáng)后各類信號(hào)數(shù)量Tab.2 Number of signals after data enhancement
D-A Xception網(wǎng)絡(luò)模型以Xception[12]為基礎(chǔ)進(jìn)行改進(jìn),結(jié)合了空洞卷積[13]及DANet[14]注意力機(jī)制,模型結(jié)構(gòu)如圖3所示。
圖3 D-A Xception網(wǎng)絡(luò)模型結(jié)構(gòu)Fig.3 D-A Xception network model structure
Xception是在Inception V3[15]的基礎(chǔ)上改進(jìn)的。Xception網(wǎng)絡(luò)結(jié)構(gòu)由3個(gè)部分組成:第1部分進(jìn)行下采樣,用于空間維度的減少;第2部分進(jìn)行特征的分析和過濾;第3部分用于將特征進(jìn)行匯總和整理。引入的殘差學(xué)習(xí)令模型加快收斂速度,選擇此模型作為基礎(chǔ)網(wǎng)絡(luò)的目的是使網(wǎng)絡(luò)結(jié)構(gòu)變得輕量化,減少存儲(chǔ)空間但不影響模型的表達(dá)能力。
1.3.1 空洞卷積
為了在不增加網(wǎng)絡(luò)模型復(fù)雜度的同時(shí)提升模型效率,需要在計(jì)算資源有限的前提下保持卷積核數(shù)量和大小,空洞卷積能夠解決該保持問題。此外,CNN存在局限性,如卷積核的尺寸除全連接層外通常小于輸入圖像的大小,則特征圖表征為局部特征,感受野也會(huì)受到限制。采用空洞卷積能夠擴(kuò)大感受野且不需額外參數(shù)??斩淳矸e的卷積操作需在卷積核之間加入零值像素點(diǎn),其感受野n計(jì)算如下:
n=k+(k-1)*(d-1) ,
(8)
式中,d為擴(kuò)張率;k為原始卷積核大小。
經(jīng)過空洞卷積后的特征圖大小o計(jì)算如下:
(9)
式中,s為步長;i為輸入空洞卷積的大小;p為padding大小;k為卷積核大小。
1.3.2 DANet注意力機(jī)制
無人機(jī)識(shí)別任務(wù)是特定輻射源識(shí)別的一種特例,一些特定輻射源識(shí)別的研究將注意機(jī)制結(jié)合深度神經(jīng)網(wǎng)絡(luò),可以有效提高識(shí)別準(zhǔn)確度。文獻(xiàn)[16]針對(duì)信號(hào)中的隱藏特征,結(jié)合基于稀疏表示的分類(Sparse Representation based Classification,SRC)使用具有不同濾波器長度的卷積從原始自動(dòng)識(shí)別系統(tǒng)信號(hào)中提取具有多種分辨率的潛在特征,將信道注意力機(jī)制引入多尺度CNN用于識(shí)別12個(gè)輻射源器件,精度超過94%。
DANet注意力機(jī)制包含位置注意力機(jī)制模塊和通道注意力機(jī)制模塊。DANet在自注意力機(jī)制基礎(chǔ)上捕捉2個(gè)模塊的依賴關(guān)系。位置注意力機(jī)制聚焦在特征圖無關(guān)距離的任意2個(gè)位置的空間關(guān)聯(lián)。通道注意力機(jī)制映射所有通道之間所強(qiáng)調(diào)的相關(guān)特征,令2個(gè)位置特征相似性的權(quán)重增加,關(guān)聯(lián)2個(gè)注意力模塊提升模型對(duì)細(xì)微特征的提取能力。DANet解決了同一類別由于卷積生成的局部感受野的特征圖存在不同特征性的問題,進(jìn)而降低了網(wǎng)絡(luò)識(shí)別效率。
輸入的特征圖A尺寸為C×H×W,則位置注意力特征圖為:
(10)
式中,RN×N為N×N的二維矩陣;B,C,D為A分別通過3個(gè)卷積層得到的3個(gè)特征圖;sji表示i,j兩個(gè)位置之間的相關(guān)性,相似性與值成正比;N為像素?cái)?shù)量,N=H×W,
位置注意力的特征圖是原始位置與通過位置注意力模塊輸出結(jié)果的加權(quán)和:
(11)
式中,α為尺度系數(shù),初始化設(shè)置為0,通過不斷學(xué)習(xí)權(quán)重變大;RC×H×W為C×H×W的三維矩陣。
通道注意力特征圖為:
(12)
式中,xji表示i,j兩個(gè)位置之間的相關(guān)性,相似性與值成正比;RC×C為C×C的二維矩陣,設(shè)β為通道注意力的尺度系數(shù),則計(jì)算輸出為:
(13)
通道的特征結(jié)果E實(shí)現(xiàn)對(duì)特征圖之間依賴關(guān)系的建立。因?yàn)閄ception的中間部分作用為特征之間的關(guān)聯(lián)及優(yōu)化,將圖3中紅色虛線邊框引入DANet部分。在網(wǎng)絡(luò)訓(xùn)練參數(shù)增加率較小的條件下,增強(qiáng)了局部特征的表達(dá)能力,突出了通道之間依賴相關(guān)性,因此能夠在基本不增加網(wǎng)絡(luò)復(fù)雜度的前提下提高模型的效果。
本實(shí)驗(yàn)?zāi)P偷沫h(huán)境如表3所示。
表3 實(shí)驗(yàn)環(huán)境Tab.3 Experimental environment
實(shí)驗(yàn)訓(xùn)練了使用相同數(shù)據(jù)集的InceptionV1[17],InceptionV3,Resnet18,ResNet50,Xception和D-A Xcep-tion共6個(gè)網(wǎng)絡(luò)模型。
6個(gè)網(wǎng)絡(luò)模型的訓(xùn)練準(zhǔn)確度對(duì)比如圖4所示。由圖4可以看出,本文提出的D-A Xception網(wǎng)絡(luò)模型能夠獲得比較穩(wěn)定的訓(xùn)練準(zhǔn)確度。在訓(xùn)練模型過程中采用十倍交叉驗(yàn)證法,充分利用數(shù)據(jù)集降低因各種因素導(dǎo)致的偶然性從而避免模型訓(xùn)練誤差,對(duì)超參數(shù)和穩(wěn)定模型進(jìn)行選擇。
圖4 訓(xùn)練準(zhǔn)確度對(duì)比Fig.4 Comparison of training accuracy
6個(gè)網(wǎng)絡(luò)模型的測試準(zhǔn)確度對(duì)比如圖5所示。
圖5 測試準(zhǔn)確度對(duì)比Fig.5 Comparison of test accuracy
由圖5可以看出,D-A Xception在迭代次數(shù)之間有波動(dòng),并在第12次迭代達(dá)到收斂。出現(xiàn)波動(dòng)的原因是由于一個(gè)batch是在數(shù)據(jù)集中隨機(jī)抽取,在這一個(gè)batch中樣本特征都非常近似,但是在下一個(gè)batch中樣本的特征與之前的特征差異較大,所以會(huì)出現(xiàn)這種波動(dòng)情況,這種波動(dòng)模型會(huì)根據(jù)損失函數(shù)來不斷學(xué)習(xí)及調(diào)整。
實(shí)驗(yàn)結(jié)果進(jìn)一步驗(yàn)證了本文提出的D-A Xception網(wǎng)絡(luò)模型相比其他使用同一數(shù)據(jù)集的網(wǎng)絡(luò)模型能夠獲得更好的識(shí)別精度,準(zhǔn)確率對(duì)比如表4所示。
表4 準(zhǔn)確率對(duì)比Tab.4 Accuracy comparison 單位:%
為了驗(yàn)證模型優(yōu)化的有效性,進(jìn)行網(wǎng)絡(luò)模型的消融驗(yàn)證。數(shù)據(jù)集的每類數(shù)據(jù)中隨機(jī)抽取500張未訓(xùn)練的數(shù)據(jù)用于測試,實(shí)驗(yàn)結(jié)果如圖6所示。
圖6 消融實(shí)驗(yàn)Fig.6 Ablation experiment
由圖6可以看出,原始的基礎(chǔ)網(wǎng)絡(luò)Xception在準(zhǔn)確率和模型收斂速度上低于其他3個(gè)網(wǎng)絡(luò)模塊。在沒有加入空洞卷積的模型中和沒有加入DANet的模型中,其準(zhǔn)確率和收斂效果雖然高于基礎(chǔ)模型,但是低于本文提出模型的效果,具體準(zhǔn)確率如表5所示。
表5 消融實(shí)驗(yàn)Tab.5 Ablation experiment 單位:%
Recall指的是被預(yù)測為正樣本的占總的正樣本的比重,Precision指預(yù)測準(zhǔn)確的樣本比例,F(xiàn)1-score指的是對(duì)Precision與Recall進(jìn)行平均的一個(gè)結(jié)果。綜合指標(biāo)如表6所示(表中信號(hào)類型對(duì)應(yīng)表2中的無人機(jī)10種飛行模式)。
表6 綜合指標(biāo)Tab.6 Comprehensive indicators 單位:%
(14)
(15)
(16)
統(tǒng)計(jì)Precision,Recall,F(xiàn)1-Score的Macro avg和Weighted avg。Macro avg是對(duì)每類樣本的Precision,Recall,F(xiàn)1-Score加和后求平均;Weighted avg是每個(gè)類別樣本數(shù)量在總樣本中占比,如表7所示。
表7 10類信號(hào)的Macro avg 和Weighted avgTab.7 Macro avg and Weighted avg of ten kinds of signals 單位:%
D-A Xception 網(wǎng)絡(luò)模型混淆矩陣如圖7所示?;煜仃囉糜诒灸P偷脑u(píng)估,矩陣的行代表預(yù)測類別,矩陣的列代表真實(shí)類別,顯示為深藍(lán)色的對(duì)角線的單元格表示正確分類,而隨著顏色變淺則代表錯(cuò)誤分類的占比。
圖7 D-A Xception 網(wǎng)絡(luò)模型混淆矩陣Fig.7 D-A Xception network model confusion matrix
本文提出的D-A Xception網(wǎng)絡(luò)模型識(shí)別效率較高,平均每類識(shí)別率為99.58%。
在對(duì)原始數(shù)據(jù)集進(jìn)行擴(kuò)充后,InceptionV3,InceprionV1,ResNet50,ResNet18仍出現(xiàn)訓(xùn)練誤差和測試誤差之間差距過大現(xiàn)象,這種現(xiàn)象稱為過擬合。進(jìn)一步說明網(wǎng)絡(luò)結(jié)構(gòu)、網(wǎng)絡(luò)深度、神經(jīng)元數(shù)量復(fù)雜度高。在相當(dāng)有限的數(shù)據(jù)集情況下,網(wǎng)絡(luò)模型的復(fù)雜度較高就會(huì)過度學(xué)習(xí)訓(xùn)練,從而不自覺地獲取隱藏在數(shù)據(jù)中的冗余信息,當(dāng)在使用未訓(xùn)練過的數(shù)據(jù)測試模型效果時(shí),由于模型泛化能力差就會(huì)導(dǎo)致效果不佳并且會(huì)產(chǎn)生激蕩現(xiàn)象。圖6的消融實(shí)驗(yàn)有效驗(yàn)證了D-A Xcetption模型的性能,其與Xception引入的空洞卷積和注意力機(jī)制本身輕量化結(jié)構(gòu)有極大關(guān)系。
本文提出基于D-A Xception的無人機(jī)分類識(shí)別模型,依靠空洞卷積擴(kuò)大感受野及DANet注意力機(jī)制捕捉特征的相關(guān)性,經(jīng)模型訓(xùn)練后,可以快速對(duì)未經(jīng)過訓(xùn)練的數(shù)據(jù)樣本進(jìn)行分類?;诠_無人機(jī)數(shù)據(jù)集DroneRF,數(shù)據(jù)集中的某種無人機(jī)飛行模式的射頻信號(hào)雖然與來自同種飛機(jī)的另一種飛行模式產(chǎn)生的射頻信號(hào)在隨頻率變化的能量譜密度圖上相似度極高,但算法依然保證了較高的識(shí)別準(zhǔn)確率。
本文為了使模型具備較強(qiáng)的實(shí)用性,盡量控制網(wǎng)絡(luò)參數(shù)的增加來改進(jìn)現(xiàn)有網(wǎng)絡(luò)。為了不降低模型性能,對(duì)現(xiàn)有數(shù)據(jù)集進(jìn)行預(yù)處理,突顯射頻信號(hào)的特征以便于網(wǎng)絡(luò)提取特征,并通過擴(kuò)充訓(xùn)練數(shù)據(jù)樣本提高模型泛化能力。