羅朝義,張 強(qiáng),周一鵬,王文哲,燕麗
(空軍工程大學(xué) 航空航天工程學(xué)院, 西安 710038)
電子對(duì)抗專題 doi:10.3969/j.issn.1673-5692.2016.05.003
基金項(xiàng)目:機(jī)載傳感器協(xié)同探測(cè)信息有效性與管理技術(shù)航空基金項(xiàng)目(20145596025)
機(jī)載電子對(duì)抗情報(bào)分析中雷達(dá)信號(hào)快速識(shí)別方法
羅朝義,張 強(qiáng),周一鵬,王文哲,燕麗
(空軍工程大學(xué) 航空航天工程學(xué)院, 西安 710038)
機(jī)載電子對(duì)抗情報(bào)分析中雷達(dá)信號(hào)識(shí)別是整個(gè)機(jī)載電子對(duì)抗作戰(zhàn)鏈路中的關(guān)鍵步驟,針對(duì)現(xiàn)有方法面對(duì)大規(guī)模雷達(dá)信號(hào)數(shù)據(jù)時(shí)無法及時(shí)識(shí)別的問題,提出了KNN算法的MapReduce并行化方法。借助MapReduce編程模型,通過編寫Map函數(shù)和Reduce函數(shù),實(shí)現(xiàn)了KNN算法的并行處理。最后,在獲得的大規(guī)模雷達(dá)信號(hào)數(shù)據(jù)集上進(jìn)行仿真,驗(yàn)證了所提方法具有良好的加速比和擴(kuò)展性,能夠有效用于海量雷達(dá)信號(hào)數(shù)據(jù)的快速識(shí)別。
情報(bào)分析;雷達(dá)信號(hào)識(shí)別;KNN算法;MapReduce
機(jī)載電子對(duì)抗情報(bào)分析能夠?qū)刹煸O(shè)備記錄下的電磁數(shù)據(jù)進(jìn)行有效處理,并整理形成機(jī)載電子對(duì)抗情報(bào),為接下來的作戰(zhàn)提供必要的信息支撐,因此是整個(gè)機(jī)載電子對(duì)抗作戰(zhàn)鏈路中非常重要的一個(gè)環(huán)節(jié)。雷達(dá)信號(hào)識(shí)別是機(jī)載電子對(duì)抗情報(bào)分析中關(guān)鍵步驟,能夠從經(jīng)過分選處理的信號(hào)中,識(shí)別出未知信號(hào)[1]。
機(jī)載電子對(duì)抗情報(bào)分析中雷達(dá)信號(hào)的識(shí)別不同于機(jī)載雷達(dá)告警系統(tǒng)(RWR)/電子支援系統(tǒng)(ESM)設(shè)備需要實(shí)時(shí)的對(duì)接收到的信號(hào)進(jìn)行識(shí)別,由于是在地面離線進(jìn)行處理的,對(duì)實(shí)時(shí)性要求不高,但隨著各種型號(hào)雷達(dá)的廣泛應(yīng)用,電磁環(huán)境日趨復(fù)雜,機(jī)載偵察設(shè)備接收并記錄下的電磁數(shù)據(jù)也越來越龐大,機(jī)載電子對(duì)抗分析邁入了大數(shù)據(jù)時(shí)代。面對(duì)大規(guī)模雷達(dá)信號(hào)數(shù)據(jù),和平期間可以選擇識(shí)別準(zhǔn)確率較高但時(shí)間復(fù)雜度高的分類算法進(jìn)行識(shí)別,但戰(zhàn)時(shí)能否及時(shí)從卸載數(shù)據(jù)中發(fā)現(xiàn)危險(xiǎn)的未知信號(hào),關(guān)系到飛機(jī)接下來執(zhí)行任務(wù)時(shí)的生存安全,也會(huì)影響到戰(zhàn)局的走向。因此,面對(duì)戰(zhàn)時(shí)海量雷達(dá)信號(hào)數(shù)據(jù)的識(shí)別問題,選擇合適的分類算法非常重要。
KNN算法是一種經(jīng)典且得到廣泛應(yīng)用的分類算法,但串行實(shí)現(xiàn)時(shí)間復(fù)雜度高,難以快速分類[2],因此提出了KNN算法的MapReduce并行化方法用于戰(zhàn)時(shí)海量雷達(dá)信號(hào)數(shù)據(jù)的識(shí)別。借助于MapReduce編程模型和Hadoop平臺(tái),通過編寫Map和Reduce函數(shù),完成了KNN算法的并行化。仿真驗(yàn)證了所提方法具有較好的擴(kuò)展性和良好的加速比,能夠有效應(yīng)用于海量雷達(dá)信號(hào)數(shù)據(jù)的識(shí)別。
雷達(dá)信號(hào)識(shí)別是機(jī)載電子對(duì)抗情報(bào)分析中重要的步驟。飛機(jī)執(zhí)行完任務(wù)后,通過加卸載數(shù)據(jù)傳送器將機(jī)載偵察設(shè)備接收并存儲(chǔ)的數(shù)據(jù)卸載下來,通過離線地分選、識(shí)別發(fā)現(xiàn)未知雷達(dá)信號(hào)。未知信號(hào)相比已知信號(hào)屬于威脅信號(hào),需要確定具體特性并放入機(jī)載電子對(duì)抗情報(bào)數(shù)據(jù)庫,以便下次飛機(jī)執(zhí)行任務(wù)前,將其加載到機(jī)載偵察設(shè)備中的數(shù)據(jù)庫中,使得飛機(jī)能夠及時(shí)識(shí)別威脅信號(hào)并發(fā)出告警。
機(jī)載電子對(duì)抗情報(bào)分析中雷達(dá)信號(hào)的識(shí)別模型如圖1所示。
圖1 雷達(dá)信號(hào)識(shí)別模型
Cover和Hart在1967年首次提出的KNN算法是一種經(jīng)典的基于類比的學(xué)習(xí)算法,主要思路是:依據(jù)數(shù)據(jù)對(duì)象在特征空間中的k個(gè)最相似(即特征空間中最鄰近)的對(duì)象判定類別所述,若最鄰近對(duì)象屬于某一個(gè)類別,則所選對(duì)象屬于同一類別,其中選擇的最近鄰對(duì)象屬于已知類別的訓(xùn)練樣本。
KNN算法處理過程如下:
輸入:訓(xùn)練集D,測(cè)試對(duì)象z;訓(xùn)練對(duì)象的類別標(biāo)識(shí)集合L;最近鄰數(shù)目k。
輸出;測(cè)試對(duì)象z的類別
(1)根據(jù)選定的距離度量,計(jì)算測(cè)試對(duì)象和訓(xùn)練集中每個(gè)訓(xùn)練樣本的距離d,并得到目前k個(gè)最鄰近樣本中的最大距離dmax。
(2)若d (3)重復(fù)(1)和(2),直至測(cè)試對(duì)象和所有訓(xùn)練樣本的距離全部計(jì)算完畢,并得到最新的k個(gè)最近鄰樣本。 (4)根據(jù)多數(shù)表決分類決策規(guī)則判定測(cè)試對(duì)象類別,選擇k個(gè)最近鄰樣本中出現(xiàn)頻率最大的類別作為測(cè)試對(duì)象的類別。 KNN算法中,算法性能的優(yōu)劣很大程度上取決于k值選擇是否恰當(dāng),k太小,則可能會(huì)受到訓(xùn)練數(shù)據(jù)中的噪聲影響而產(chǎn)生過分?jǐn)M合;k太大,則最近鄰可能包含遠(yuǎn)離其近鄰的數(shù)據(jù)對(duì)象而產(chǎn)生分類錯(cuò)誤。在應(yīng)用中,先選定一個(gè)初始k值,一般較小,然后根據(jù)實(shí)驗(yàn)結(jié)果進(jìn)行調(diào)整。 KNN算法是一種消極學(xué)習(xí)器,事先存放訓(xùn)練集,直到需要將測(cè)試樣本進(jìn)行分類時(shí)才建立分類,因此具有較高的時(shí)間復(fù)雜度。串行實(shí)現(xiàn)時(shí)間復(fù)雜度為O(nl),其中n為訓(xùn)練集樣本數(shù)目,l為訓(xùn)練樣本類別數(shù)目。 Hadoop是Apache下關(guān)于MapReduce等技術(shù)的開源項(xiàng)目,是目前MapReduce眾多實(shí)現(xiàn)版本的標(biāo)準(zhǔn)[3],己經(jīng)被很多的研究機(jī)構(gòu)和企業(yè)廣泛地使用來構(gòu)建自己的云計(jì)算平臺(tái)。作為一個(gè)能處理大數(shù)據(jù)的分布式軟件框架,Hadoop由諸多元素組成,具體如圖2所示。Hadoop使用戶可以在不了解分布式底層細(xì)節(jié)的情況下,充分利用集群的威力,開發(fā)分布式程序,實(shí)現(xiàn)高速運(yùn)算和存儲(chǔ)[4]。Hadoop具有高性能、高擴(kuò)展性、開源性等優(yōu)點(diǎn),同時(shí)能夠在普通PC機(jī)上運(yùn)行,對(duì)硬件要求不高,成本較低。 圖2 Hadoop組件結(jié)構(gòu) MapReduce編程模型是在并行環(huán)境下對(duì)大數(shù)據(jù)進(jìn)行分布式計(jì)算的一種編程模式,具有操作簡(jiǎn)單,容易實(shí)現(xiàn)且擴(kuò)展性強(qiáng)的優(yōu)點(diǎn)[5]。MapReduce一般包括Map和Reduce兩個(gè)過程,并通過一個(gè)JobTracker和多個(gè)TaskTracker節(jié)點(diǎn)實(shí)現(xiàn)并行計(jì)算。Map階段將用戶提交的一個(gè)運(yùn)算任務(wù)劃分為若干個(gè)子任務(wù),通過JobTracker指派多個(gè)TaskTracker完成Map計(jì)算并生成中間結(jié)果;Reduce階段JobTracker指派多個(gè)TaskTracker通過并行的Reduce函數(shù)將中間結(jié)果進(jìn)行規(guī)約合并,產(chǎn)生最后的輸出結(jié)果。 MapReduce分布式計(jì)算框架的核心是Map和Reduce函數(shù),由編程人員自行定義實(shí)現(xiàn),以鍵值對(duì) KNN算法分類過程中,每個(gè)測(cè)試對(duì)象均能夠獨(dú)立地進(jìn)行分類,測(cè)試數(shù)據(jù)對(duì)象彼此之間不需要考慮計(jì)算順序上的相關(guān)性,因此能夠采用MapReduce編程模型將KNN算法并行化處理,從而解決串行實(shí)現(xiàn)時(shí)間復(fù)雜度較高的問題。 KNN算法的MapReduce并行化方法主要思路是:對(duì)KNN算法串行實(shí)現(xiàn)中每個(gè)測(cè)試數(shù)據(jù)對(duì)象的計(jì)算啟動(dòng)對(duì)應(yīng)的一次MapReduce計(jì)算過程,通過MapReduce完成測(cè)試對(duì)象與訓(xùn)練樣本的距離計(jì)算和判定類別操作。 KNN算法的MapReduce并行化方法具體流程是:首先將訓(xùn)練集和測(cè)試數(shù)據(jù)從HDFS分布式文件系統(tǒng)中下載到本地節(jié)點(diǎn);然后對(duì)每個(gè)測(cè)試數(shù)據(jù)啟動(dòng)一次Map函數(shù),計(jì)算測(cè)試數(shù)據(jù)到訓(xùn)練樣本的距離,生成中間計(jì)算結(jié)果;最后通過Reduce節(jié)點(diǎn)進(jìn)行規(guī)約操作,完成類別判定,生成最終結(jié)果。 4.1 Map函數(shù) Map函數(shù)的任務(wù)是根據(jù)選定的歐式距離公式,計(jì)算測(cè)試數(shù)據(jù)與每個(gè)訓(xùn)練樣本之間的距離,將中間結(jié)果放入context集合。輸入數(shù)據(jù) 4.2 Reduce函數(shù) Reduce函數(shù)的任務(wù)是取出k個(gè)最近鄰樣本,確定出現(xiàn)頻率最多的類別,并將其賦予測(cè)試數(shù)據(jù)。執(zhí)行Reduce函數(shù)前,需要先將不同Map節(jié)點(diǎn)上相同key的數(shù)據(jù)上傳送到同一Reduce節(jié)點(diǎn)上,以便于后續(xù)的分類,這依賴于后臺(tái)系統(tǒng)的shuffle操作。輸入數(shù)據(jù) KNN算法的MapReduce并行化方法將KNN算法由1個(gè)主機(jī)的串行處理轉(zhuǎn)變?yōu)槎鄠€(gè)節(jié)點(diǎn)的并行處理,若集群規(guī)模為p,則并行實(shí)現(xiàn)時(shí)間復(fù)雜度為O(nl/p),遠(yuǎn)低于串行實(shí)現(xiàn)時(shí)間復(fù)雜度。 綜上所述,KNN算法的MapReduce并行化方法的流程如圖5所示。 圖3 Map函數(shù)偽代碼 圖4 Reduce函數(shù)偽代碼 圖5 KNN算法的MapReduce并行化方法流程圖 5.1 實(shí)驗(yàn)環(huán)境與實(shí)驗(yàn)數(shù)據(jù) 全部實(shí)驗(yàn)都是在實(shí)驗(yàn)室搭建的Hadoop平臺(tái)上運(yùn)行的,其結(jié)構(gòu)如圖6所示。平臺(tái)共有6臺(tái)機(jī)器,CPU型號(hào)為Inter(R)Core(TM)i7,8 GB內(nèi)存。1臺(tái)機(jī)器作為JobTracker服務(wù)節(jié)點(diǎn),其他5臺(tái)機(jī)器作為TaskTracker服務(wù)節(jié)點(diǎn)。每臺(tái)機(jī)器之間用千兆以太網(wǎng)卡,通過交換機(jī)連接。Hadoop版本為0.20.2,并基于此配置集群。算法實(shí)現(xiàn)軟件采用內(nèi)含大量數(shù)據(jù)挖掘算法的Weka,它是在科學(xué)研究中被廣泛采用的數(shù)據(jù)挖掘工具。 圖6 Hadoop平臺(tái)結(jié)構(gòu)圖 雷達(dá)信號(hào)特征能夠通過脈沖描述字(PDW)進(jìn)行表述,PDW包括脈沖到達(dá)時(shí)間(TOA)、脈沖到達(dá)角(AOA)、脈沖重復(fù)頻率(PRF)、脈寬(PW)和脈沖幅度(PA),因此雷達(dá)信號(hào)數(shù)據(jù)集是具有5維屬性的m(m為雷達(dá)信號(hào)類別數(shù))分類數(shù)據(jù)。依靠某軍用雷達(dá)實(shí)驗(yàn)室管控仿真軟件,通過自行設(shè)置參數(shù),本文獲得了仿真雷達(dá)信號(hào)數(shù)據(jù)集S,該數(shù)據(jù)集具體信息如表1所示。 表1 數(shù)據(jù)集信息 5.2 加速比性能比較實(shí)驗(yàn) 加速比指同一個(gè)任務(wù)串行實(shí)現(xiàn)和并行實(shí)現(xiàn)消耗時(shí)間的比率,通常用來衡量并行系統(tǒng)的性能。故采用加速比驗(yàn)證KNN算法的MapReduce并行化能否滿足快速分類的要求。 本文借鑒工程上信噪比計(jì)算方法,重新定義加速比計(jì)算公式為: SP=log(tk/tm) 其中,SP為加速比;tk為KNN算法單機(jī)串行實(shí)現(xiàn)所消耗時(shí)間;tm為KNN算法的MapReduce并行實(shí)現(xiàn)所消耗時(shí)間。當(dāng)SP<0時(shí),并行實(shí)現(xiàn)所用時(shí)間多于串行實(shí)現(xiàn);當(dāng)SP=0時(shí),并行實(shí)現(xiàn)所用時(shí)間與串行實(shí)現(xiàn)相同;當(dāng)SP>0時(shí),并行實(shí)現(xiàn)所用時(shí)間少于串行實(shí)現(xiàn)??梢姳疚募铀俦扔?jì)算公式相比傳統(tǒng)的計(jì)算公式,能夠更加準(zhǔn)確和方便地對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行處理和分析。 基于數(shù)據(jù)集S分別采用1、2、3、4、5個(gè)TaskTracker節(jié)點(diǎn)參與計(jì)算,驗(yàn)證在不同數(shù)目節(jié)點(diǎn)下的加速比。實(shí)驗(yàn)結(jié)果如圖7所示。 圖7 加速比性能比較 由圖7可見,當(dāng)節(jié)點(diǎn)數(shù)較少時(shí),即當(dāng)節(jié)點(diǎn)數(shù)分別為1和2時(shí),所提方法加速比小于0,說明此時(shí)并行實(shí)現(xiàn)所用時(shí)間多于串行實(shí)現(xiàn),這是因?yàn)镠adoop集群上Job的啟動(dòng)和交互需要占用較大的時(shí)間,當(dāng)節(jié)點(diǎn)較少時(shí)無法體現(xiàn)出集群加速優(yōu)勢(shì)。隨著節(jié)點(diǎn)數(shù)的增多,可見加速比值變?yōu)檎?,說明此時(shí)并行實(shí)現(xiàn)所用時(shí)間少于串行實(shí)現(xiàn),在一定數(shù)目范圍內(nèi),節(jié)點(diǎn)數(shù)越多,處理速度越快,所用時(shí)間越少。實(shí)驗(yàn)結(jié)果驗(yàn)證了所提方法具有良好的加速比和擴(kuò)展性。 本文針對(duì)機(jī)載電子對(duì)抗情報(bào)分析中面對(duì)大規(guī)模卸載雷達(dá)信號(hào)數(shù)據(jù)無法快速識(shí)別的問題,基于KNN算法,借助MapReduce編程模型,提出了KNN算法的MapReduce并行化方法。該方法通過編寫Map函數(shù)和Reduce函數(shù),將傳統(tǒng)的KNN算法的串行實(shí)現(xiàn)優(yōu)化為并行實(shí)現(xiàn),降低了時(shí)間復(fù)雜度,因此縮短了識(shí)別所用時(shí)間。通過在大規(guī)模仿真雷達(dá)信號(hào)數(shù)據(jù)的實(shí)驗(yàn),驗(yàn)證了所提方法的合理性和有效性。 [1] 李志偉, 仲愛民.機(jī)載自衛(wèi)電子對(duì)抗雷達(dá)情報(bào)分析[J].現(xiàn)代雷達(dá),2007,29(12):104-108. [2] 李航.統(tǒng)計(jì)學(xué)習(xí)方法[M].北京:清華大學(xué)出版社,2012. [3] White T.Hadoop權(quán)威指南[M].周傲英,曾大聆譯.北京:清華大學(xué)出版社,2009. [4] Newman M E J.Fast algorithm for detecting community structure in networks[J].Phys Rev:E, 2004, 69(6):133-137. [5] 章志剛,吉根林.基于迭代式MapReduce的Apriori算法設(shè)計(jì)與實(shí)現(xiàn)[J].華中科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,40(1):9-12. [6] 林文輝.基于Hadoop的海量網(wǎng)絡(luò)數(shù)據(jù)處理平臺(tái)的關(guān)鍵技術(shù)研究[D].北京:北京郵電大學(xué),2014. 羅朝義(1991—),男,安徽人,主要研究方向?yàn)殡娮訉?duì)抗理論與技術(shù); E-mail :luo_chaoyi@163.com 張 強(qiáng),男,陜西人,主要研究方向?yàn)殡娮訉?duì)抗理論與技術(shù); 周一鵬,男,湖南人,主要研究方向?yàn)殡娮訉?duì)抗理論與技術(shù); 王文哲,男,山東人,主要研究方向?yàn)殡娮訉?duì)抗理論與技術(shù); 燕 麗,女,安徽人,主要研究方向?yàn)殡娮訉?duì)抗理論與技術(shù)。 The Method for Radar Signal Fast Recognition ofAirborne EW Information Analysis LUO Chao-yi,ZHANG Qiang,ZHOU Yi-peng ,WANG Wen-zhe,Yan li (Aeronautics and Astronautics Engineering College,Air Force Engineering University,Shanxi Xi'an,710038) The radar recognition of airborne EW information analysis is a crucial step of whole airborne EW link, aimed at current method can’t recognize large scale radar signal data promptly, a new method that is KNN algorithm using MapReduce programming mode has be proposed.Parallel implementation of the KNN clustering algorithm is realized by using MapReduce programming mode and writing Map function and Reduce function.Finally, the simulation based on the gathered large scale radar signal data set proves the proposed method owns good speedup ratio and scalability, and the proposed method can recognize large scale radar signal data promptly and effectively. information analysis; radar signal recognition; KNN algorithm; MapReduce 2016-05-30 2016-08-01 :A 1673-5692(2016)05-469-053 MapReduce編程模型
4 KNN算法的MapReduce并行化方法
5 仿真驗(yàn)證
6 結(jié) 語