曹鵬宇, 楊承志, 石禮盟, 吳宏超
(1. 空軍航空大學航空作戰(zhàn)勤務學院, 吉林 長春 130022; 2. 中國人民解放軍93671部隊, 河南 南陽 474350)
作為感知電磁態(tài)勢的重要方法,雷達偵察技術在電子戰(zhàn)中發(fā)揮著舉足輕重的作用。隨著電磁環(huán)境日益復雜,傳統(tǒng)基于脈間參數(shù)的分選識別算法性能難以滿足現(xiàn)代軍事需求。雷達信號的單脈沖內(nèi)部參數(shù)又被稱為脈內(nèi)參數(shù),與脈間參數(shù)相比包含了更為豐富的特征,對單脈沖進行識別是當前雷達偵察領域研究的重點。
隨著深度學習在計算機視覺、自然語言處理等領域的廣泛應用,不少專家學者將深度學習應用于雷達信號分類識別領域。文獻[21]提出一種基于數(shù)據(jù)場理論聯(lián)合脈沖重復間隔與聚類的雷達信號分選方法。文獻[22]提出一種基于時序相關和聚類的重點雷達信號實時識別方法。文獻[23]提出一種在小樣本條件下對雷達目標的識別方法。文獻[24]提出一種基于時頻分析和擴張殘差網(wǎng)絡的雷達輻射源信號自動識別方法。上述方法都是基于已知信號或者未知信號的識別問題,未考慮到實際戰(zhàn)場環(huán)境下,雷達偵收到的信號是樣本庫中已知信號和大量未知信號的混合信號。上述方法難以解決此種情形。
本課題組成員在文獻[25]中提出了基于一維殘差和三元組損失函數(shù)的雷達信號的識別方法。使用一維殘差網(wǎng)絡提取特征,三元組損失函數(shù)對網(wǎng)絡進行訓練。訓練完成后,通過度量輸入信號與數(shù)據(jù)庫中已知類別的信號的相似性,以最近鄰的方式實現(xiàn)了已知雷達信號的型號識別。當輸入為未知信號時該方法判斷其并非為樣本庫中的型號,將信號標簽設置為-1后存儲在未知雷達庫中,但并沒有對未知信號進行后續(xù)處理。
因此,本文結(jié)合文獻[25]中已知信號分類識別算法的原理,分析了未知雷達信號處理過程中需要解決的問題如下:
(1) 未知信號中包含的雷達型號數(shù)量未知,劃分聚類方法需預先設置簇的數(shù)量,并不適合解決此問題。層次聚類和密度聚類方法雖然不需要預先設置簇的數(shù)量,但層次聚類計算復雜度非常大且易受奇異值影響,密度聚類在計算量上要求不如層次聚類,但對輸入?yún)?shù)設置敏感;
(2) 聚類算法準確率相對較低,聚類后得到的各個簇中包含部分不屬于該簇的錯誤個體。全部擴充到雷達庫中會造成分類可信度下降;
(3) 當加入的未知雷達信號的種類過多時,需對特征提取網(wǎng)絡進行擴展訓練,而雷達偵察設備中僅存儲了樣本庫中的數(shù)據(jù),數(shù)據(jù)量較小難以支持特征提取網(wǎng)絡進行有效擴展訓練。
為了解決以上問題,本文在文獻[25]的基礎上設計了一種基于粒子群優(yōu)化的具有噪聲的密度聚類(density-based spatial clustering of applications with noise based on particle swarm optimization, PSO-DBSCAN)算法和半監(jiān)督式條件生成對抗網(wǎng)絡(semi-supervised conditional generation adversarial network, SCGAN)的未知信號處理算法。主要工作如下:
(1) 利用粒子群優(yōu)化(particle swarm optimization, PSO)算法提取出具有噪聲的密度聚類(density-based spatial clustering of applications with noise, DBSCAN)算法的最優(yōu)輸入?yún)?shù),之后DBSCAN算法使用此參數(shù)對未知雷達信號進行聚類;
(2) 設計了一種距離篩選算法在聚類算法輸出的簇中選擇出更為可信的樣本,并將其擴充到雷達樣本庫中;
(3) 設計了一種基于SCGAN網(wǎng)絡的小樣本訓練方法,在樣本數(shù)量較少的情況下實現(xiàn)了網(wǎng)絡對未知信號的擴展訓練,從而提升模型對未知信號的識別準確率。
PSO算法屬于群體智能優(yōu)化算法,是Kennedy和Eberhart基于鳥群社會系統(tǒng)Boid設計的。核心思想是通過粒子來模擬鳥群中的個體,這種粒子不具備質(zhì)量屬性,僅有位置和速度兩個屬性。每個粒子在粒子群中獨立尋求自己的最優(yōu)解,互不干擾,找到的最優(yōu)解被稱作當前個體極值,并共享到粒子群中。尋找到粒子群中最優(yōu)的個體極值將其作為當前全局最優(yōu)解,所有粒子依據(jù)和調(diào)整自己的位置及速度。反復迭代這個過程,直至滿足終止條件。
DBSCAN算法的核心思想是假定樣本類別由其分布的緊密程度所決定,同類別的樣本緊密相連。依據(jù)此假設將緊密相連的樣本歸到一類,所有樣本歸到各自緊密程度最高的類別就得到最終的聚類結(jié)果。
條件生成對抗網(wǎng)絡(conditional generative adversarial networks,CGAN)在生成對抗網(wǎng)絡(generative adversarial networks,GAN)的基礎上增加了額外的條件信息,可以指導性地生成數(shù)據(jù)。網(wǎng)絡結(jié)構如圖1所示。
圖1 CGAN結(jié)構Fig.1 CGAN structure
不同的條件信息有不同的損失函數(shù),可將CGAN看作是不同條件下所有GAN的集合。CGAN可以訓練生成器生成指定類別的圖像,但其判別器只可判別“真”“假”。
與傳統(tǒng)GAN網(wǎng)絡不同,半監(jiān)督GAN(semi-supervised learning with GAN,SGAN)的判別器采用Softmax分類器作為輸出層,以解決多分類的問題。網(wǎng)絡結(jié)構如圖2所示。假設數(shù)據(jù)集類別數(shù)目為,那么判別器(discriminators,D)的輸出層的維數(shù)被設置為+1,第+1類表示生成器(generators,G)輸出的偽造數(shù)據(jù)。這樣判別網(wǎng)絡既可以判定輸入數(shù)據(jù)的真假也可以對真實的樣本進行分類,在這種情況下,判別器D也是一個分類器(classifiers,C),故可稱其為D/C網(wǎng)絡結(jié)構。SGAN網(wǎng)絡同時訓練生成器和半監(jiān)督式分類器,訓練出來的生成模型成像效果更好、半監(jiān)督式分類器性能更優(yōu)。判別網(wǎng)絡通過學習標簽樣本的類別分布信息以及無標簽樣本的數(shù)據(jù)分布信息來指導生成網(wǎng)絡提高生成樣本的質(zhì)量,減少其訓練時間。
圖2 SGAN結(jié)構Fig.2 SGAN structure
本文通過PSO優(yōu)化算法尋求DBSCAN算法中的最優(yōu)參數(shù)后,利用最優(yōu)參數(shù)構建最優(yōu)DBSCAN聚類模型后對未知雷達信號進行聚類,得到聚類結(jié)果。
2.1.1 適應度函數(shù)的選擇
適應度函數(shù)也稱為目標函數(shù),是需要被優(yōu)化的目標。在本問題中,為評估聚類算法聚類效果的優(yōu)異,可以使用一些聚類度量函數(shù)進行評價。在類別數(shù)未知的情況下,主要有輪廓系數(shù)、CH(Calinski Harabasz)分數(shù)和戴維森堡丁指數(shù)(Davies Bouldin index,DBI) 3種。在PSO算法中,粒子位置信息的調(diào)整過程是在尋求適應度函數(shù)最小值的過程,最優(yōu)解與適應度是負相關關系。3種評價指標中僅有DBI的大小和聚類效果呈負相關。因此,本算法選擇DBI指數(shù)作為PSO算法中的適應度函數(shù),數(shù)學表達式為
(1)
212 算法設計
本算法的維度搜索空間設置為2,適應度函數(shù)為聚類效果評價函數(shù)DBI,算法的流程如下:
將未知雷達庫中的信號輸入文獻[25]構建的網(wǎng)絡,得到各個信號的特征向量。
將DBSCAN算法的兩個輸入?yún)?shù)(eps和MinPts)作為優(yōu)化對象,初始化PSO算法。
根據(jù)式(1)計算每個粒子的適應度值,以各粒子對應的參數(shù)構建聚類模型,對未知信號的特征向量進行聚類,根據(jù)各個模型的聚類結(jié)果計算DBI指數(shù),將計算結(jié)果作為各粒子的適應度值。
根據(jù)PSO算法分別對粒子的位置和速度進行更新。
根據(jù)PSO算法分別對個體極值和全局極值進行更新。
判斷是否達到迭代次數(shù)。若達到次數(shù),返回最優(yōu)極值的取值;否則,返回步驟3。
利用最優(yōu)參數(shù)構建最優(yōu)聚類模型。
使用最優(yōu)聚類模型對未知信號的特征向量進行聚類得到聚類后的標簽。
受到無監(jiān)督學習本身性能的限制,PSO-DBSCAN算法的聚簇準確率較高,但是總體準確率欠佳,即一個簇中包含著許多本屬于其他簇的數(shù)據(jù)。為保證擴充到樣本庫中數(shù)據(jù)的準確度及可信性,提出了一種基于距離篩選的樣本選擇算法,算法的流程為
設置數(shù)量閾值和需要選取的樣本數(shù)量。
判斷一個類別中的個體總數(shù)是否小于,若小于將該類別記作噪聲點舍去,否則計算該類別各個元素間的距離,得到距離矩陣,其數(shù)學表達式為
(2)
求出中除了主對角線上的元素外最小的2個值,將其行和列的索引存入索引數(shù)組。
求出中出現(xiàn)次數(shù)最多的兩個元素,存入樣本數(shù)組,分別記作、。
找到中的最小元素,索引記作并將()的值設置為中的最大值。
判斷是否屬于,屬于則返回執(zhí)行步驟5,否則執(zhí)行步驟7。
判斷()是否大于的中位數(shù),若大于返回執(zhí)行步驟5,否則執(zhí)行步驟8。
將存入樣本數(shù)組,判斷中元素的數(shù)量是否小于,若是執(zhí)行步驟9,否則輸出直接退出算法。
判斷中所有元素是否相同,相同則執(zhí)行步驟10,否則返回步驟5。
將中的樣本隨機進行復制,使其數(shù)量為,結(jié)束算法并輸出。
核心思想是從一個簇所含有的所有個體中,選取出個相互之間的距離都比較小的個體作為樣本,以對樣本庫進行擴充。
通過PSO優(yōu)化聚類和基于距離的樣本選擇算法后,可以得到可信度較高的正確樣本,以此對樣本庫進行擴充。但從文獻[25]相關實驗可知,當加入的未知信號的種類過多時,在不經(jīng)擴展訓練的情況下單純擴充樣本庫會降低識別算法的準確率,需要使用未知信號和已知信號一起進行擴展訓練。由于篩選出的未知樣本以及樣本庫中已知樣本的數(shù)量較少,難以構成足夠多的一般三元組,不足以支持ResNet網(wǎng)絡進行有效訓練。因此,結(jié)合文獻[25]中的ResNet網(wǎng)絡,借鑒CGAN、SGAN,設計了一種基于SCGAN的小樣本訓練方法,解決了三元組數(shù)量不足的問題。
本模型的生成器G借鑒了CGAN的思想,將標簽信息和噪聲合成在一起作為輸入,以產(chǎn)生多類別的輸出,但是如果要求其像CGAN一樣生成和真實數(shù)據(jù)極其相似的偽造數(shù)據(jù),對于網(wǎng)絡結(jié)構和訓練時間上的要求比較嚴格。因此本模型在判別器方面則借鑒了SGAN的思想,其輸入是樣本庫中的真實數(shù)據(jù)和偽造數(shù)據(jù)的集合,通過盡可能地調(diào)節(jié)生成器,使得其輸出的偽造數(shù)據(jù)和真實樣本之間可以構成一般三元組的條件,以解決少樣本訓練的問題。SCGAN的系統(tǒng)框圖如圖3所示。
圖3 SCGAN結(jié)構Fig.3 SCGAN structure
由圖3可以看出,生成器借鑒了CGAN的思想,其輸入為一個隨機噪聲和真實數(shù)據(jù)庫中的標簽的疊加,目的是使模型可以生成多種類別的“偽造數(shù)據(jù)”,同時要求生成的數(shù)據(jù)與真實數(shù)據(jù)相似,并將其標簽設置為-1(與所有類別的標簽均不同);另一方面,判別器的設計與SGAN相似,但由于本模型的目的是解決ResNet網(wǎng)絡在小樣本下的訓練問題,因此本模型的判別網(wǎng)絡直接選用文獻[25]的ResNet網(wǎng)絡,同時通過文獻[25]中識別算法實現(xiàn)對未知雷達信號以及生成器G輸出的“偽造數(shù)據(jù)”的分類。
生成網(wǎng)絡使用了一維卷積和維度恢復模塊搭配的方式對網(wǎng)絡進行構建,其系統(tǒng)框圖如圖4所示。判別網(wǎng)絡與文獻[25]的ResNet網(wǎng)絡一致,網(wǎng)絡結(jié)構及輸出維度如圖5所示。
圖4 生成網(wǎng)絡結(jié)構Fig.4 Generative network structure
圖5 判別網(wǎng)絡結(jié)構Fig.5 Discriminator network structure
生成網(wǎng)絡并未使用上采樣層進行維度恢復,因為上采樣層適合處理圖像數(shù)據(jù),但對一維雷達信號會造成不可恢復的損傷。因此本文設計了一種基于全連接層的維度恢復模塊,如圖6所示。
圖6 維度恢復模塊Fig.6 Dimension recovery module
首先考慮生成網(wǎng)絡,生成網(wǎng)絡的作用是根據(jù)輸入數(shù)據(jù)的類別產(chǎn)生與其相近的信號,從而使其輸出的“偽造數(shù)據(jù)”可以和樣本庫中的真實數(shù)據(jù)組成足夠多的一般三元組。一個三元組由錨元素(anchor,A)、正元素(positive,P)和負元素(negative,N) 3個元素組成。其中A、P屬于同一類別下不同樣本,N是與A、P不同類的樣本。對于一個三元組來說,將A、P、N 3個元素輸入某個神經(jīng)網(wǎng)絡,可得到其各自在特征空間的映射,分別記作()、()和()。生成網(wǎng)絡損失函數(shù)設計如下:
(3)
由式(3)可知,生成網(wǎng)絡損失函數(shù)是使(())到()與()到()間的距離趨近于閾值。因此,只要合理地設置,使其位于0~(三元組距離閾值)之間,就可以使生成器的輸出與樣本庫中真實數(shù)據(jù)之間滿足一般三元組的條件,從而形成足夠多的一般三元組以達到判別網(wǎng)絡的訓練要求。
判別網(wǎng)絡的損失函數(shù)設計如下:
(4)
由式(4)可知,判別網(wǎng)絡的損失函數(shù)本質(zhì)上依舊是三元組損失函數(shù),只是對三元組的選擇方式進行了調(diào)整。在中,三元組元素和元素的選擇僅來自于樣本庫中的真實數(shù)據(jù),而元素的選擇來自于真實數(shù)據(jù)和“偽造數(shù)據(jù)”的混合,而且“偽造數(shù)據(jù)”中包含了大量的一般三元組,因此解決了樣本過少時三元組數(shù)量不足造成網(wǎng)絡難以訓練的問題。
本文通過Matlab生成數(shù)據(jù)對PSO-DBSCAN算法的可行性和有效性進行測試。其中,未知信號標簽設置為-1,信噪比在-20~10 dB之間,共生成8部雷達信號,每種信號每隔2 dB生成100個樣本,樣本長度設為1 024,樣本總計12 800個。其余參數(shù)設置如表1所示。
表1 數(shù)據(jù)集組成Table 1 Data set composition
PSO算法粒子數(shù)量為30,粒子維數(shù)為2,最大迭代次數(shù)為100,慣性因子為08,學習因子1、2均為2,隨機數(shù)1、2在[0,1]區(qū)間內(nèi)均勻配置。主要測試兩項指標:一是聚類數(shù)量的準確率,測試算法聚出的類別數(shù)目是否準確,稱之為聚簇準確率;二是總體聚類效果的準確率,是測試算法把屬于同一類別的個體聚類在一起的能力,稱之為總體準確率。對每種類別情況進行100次蒙特卡羅實驗,取平均值作為測試結(jié)果,結(jié)果如圖7所示。實驗發(fā)現(xiàn),兩種準確率在輸入數(shù)據(jù)的類別數(shù)量處于2~5時比較準確,且聚簇準確率要遠高于總體準確率,原因是聚類算法屬于無監(jiān)督訓練,其總體準確率自然不會太理想,而聚簇準確率只是反映算法能否分出正確的簇數(shù),其難度相對較小,聚簇準確率也相對較高。
圖7 算法的識別準確率Fig.7 Algorithm recognition accuracy
而在輸入的類別只有1類時,兩種準確率都不高,聚簇準確率直接變?yōu)榱?。該現(xiàn)象出現(xiàn)的原因是當類別只有1類時PSO算法的適應度函數(shù)(DBI分數(shù))不能計算(會輸出一個較大值),從而使得PSO-DBSCAN算法不能聚出1類。針對此問題,本文給出的解決方法是向未知信號集合中加入一種人為設置的“區(qū)別數(shù)據(jù)”(設置為零向量),以保證未知雷達庫中至少包含兩類信號。區(qū)別數(shù)據(jù)由于每個個體的特點較突出(是零向量),因此很容易和其他類別區(qū)分開來,在聚類結(jié)束后,將區(qū)別數(shù)據(jù)剔除即可。
算法改進的示意圖如圖8所示。改進后的準確率情況如圖9所示。
圖8 改進算法示意圖Fig.8 Schematic diagram of the improved algorithm
圖9 改進算法的識別準確率Fig.9 Recognition accuracy of the improved algorithm
由圖9可知,當未知雷達庫中只包含一種信號時,改進方法的聚簇準確率有了明顯的提升,同時在類別大于1時,算法的性能沒有受到影響。因此,本算法的聚簇準確率相對理想,但總體準確率的精度依然不佳,因此需要用樣本選擇算法從各個簇中選擇出更為可信的樣本。
實驗1:在第41節(jié)的基礎上對樣本選擇算法的有效性進行相關驗證。實驗條件與第41節(jié)中基本一致,樣本選擇算法的數(shù)量閾值和需要選取的樣本數(shù)量分別設置為100和32,在進行了100次蒙特卡羅實驗后,得到的不同種類下本選擇算法與隨機選擇的準確率對比情況如圖10所示。
圖10 本文算法與隨機選擇的準確率對比Fig.10 Comparison of accuracy between the proposed algorithm and random selection
由圖10可知,基于距離篩選的樣本選擇算法可以有效篩選出相對純凈的樣本,準確率能達到93%以上。即便只使用一種未知雷達信號測試時,由于加入了“區(qū)別數(shù)據(jù)”,使得PSO-DBSCAN得到的聚類結(jié)果或多或少會包含一些“區(qū)別數(shù)據(jù)”,此時隨機選擇方法也會選到“區(qū)別數(shù)據(jù)”,而本方法的正確率則可以達到100%。當未知信號的種類數(shù)較多時,本算法的性能要遠高于隨機選擇方法。
實驗2:參數(shù)和對算法的性能有一定程度影響,由于是為了排除數(shù)量達不到要求的簇,一般是確定值,因此對不加考慮。而的選擇則對算法的影響較大。本實驗主要目的是驗證簇的規(guī)模(用每個簇所包含的個體數(shù)量衡量)與的取值對樣本選擇算法準確率的影響。實驗結(jié)果如表2所示,最優(yōu)識別率加粗顯示。
表2 簇規(guī)模Ncluster與參數(shù)N對算法準確率的影響Table 2 Impact of cluster size Ncluster and the parameter N on algorithm accuracy
由表2可知,簇的規(guī)模越大、樣本選擇數(shù)量越小時算法的準確率越高,即算法可以有效地從大規(guī)模的簇中選擇出少量的正確樣本。當簇的規(guī)模一定時,增大會使得算法的準確率下降,符合實驗猜想。
實驗3:本實驗使用擴展后的樣本庫對SCGAN進行訓練以驗證本算法的可行性,訓練過程中損失函數(shù)值變化情況如圖11所示。
圖11 SCGAN訓練情況Fig.11 SCGAN training situation
由圖12可知,模型的擬合情況良好,并未出現(xiàn)過擬合情況。
實驗4:為了體現(xiàn)本方法在小樣本訓練方面的優(yōu)勢,使用不同數(shù)量的樣本庫對SCGAN網(wǎng)絡和ResNet網(wǎng)絡進行訓練,信號識別準確率對比情況如表3所示。
表3 信號識別準確率對比Table 3 Signal recognition accuracy rate comparison
由表3可知,當樣本庫中的樣本數(shù)量足夠多時,二者性能相近,ResNet網(wǎng)絡的識別準確率甚至略高于本模型,但隨著樣本數(shù)量的減少,SCGAN的優(yōu)勢逐漸體現(xiàn)出來。當每種信號的樣本數(shù)為32時,ResNet網(wǎng)絡已經(jīng)不能實現(xiàn)有效訓練,但本算法仍可以保持70%的準確率。由此可知,SCGAN網(wǎng)絡可以解決小樣本下訓練問題。
在實際工作中雷達信號偵察設備會接收到大量的未知信號,本文基于課題組在已知雷達信號識別的基礎上圍繞未知信號識別問題進行了一系列研究:首先使用PSO-DBSCAN算法對未知雷達庫中的信號進行初步聚類;之后采用基于距離篩選的樣本選擇算法在聚類算法輸出的簇中選擇出更為可信的樣本對雷達樣本庫進行擴充;最后針對樣本庫中數(shù)據(jù)不足以構成一般三元組進行訓練的情況構建SCGAN網(wǎng)絡實現(xiàn)了小樣本下ResNet的擴展訓練。仿真實驗證明,本方法可以實現(xiàn)未知雷達信號的分類識別。