邵敏蘭, 周鴻漸, 張浩然
(南京信息工程大學a.總務處;b.教務處;c.電子與信息工程學院,南京210044)
自動調(diào)制識別(Automatic Modulation Recognition,AMR)是解調(diào)前的一項重要的技術(shù),主要應用于軍事中的電子戰(zhàn)[1]和民用領(lǐng)域中的非法監(jiān)管。AMR技術(shù)還可提高認知無線電[2]和軟件無線電[3]中的頻譜使用效率[4]。研究高效可靠的調(diào)制識別技術(shù)具有重要學術(shù)價值和工程實踐意義。
AMR算法分為兩類:一是基于決策理論的最大似然假設檢驗識別算法,包括廣義似然比、平均似然比和混合似然識別算法[5];二是基于特征提取的模式識別算法[6]。由于后者的計算量小,所需先驗信息少,所以基于特征提取的模式識別算法被廣泛研究,主要步驟有:數(shù)據(jù)預處理,特征提取和分類識別。常用的信號特征包括高階累積量[7]、小波特征[8]和信號瞬時特征[9]等。分類識別算法有:支持向量機(Support Vector Machine,SVM)[10],K最鄰近(K Nearest Neighbor,KNN)[11]和樸素貝葉斯等[12],這些算法需要進行提取專家特征的過程,且識別準確率較低。因深度學習算法在圖像識別領(lǐng)域中表現(xiàn)出優(yōu)勢[13],眾多研究者將其引入各種模式識別的應用場景。深度學習算法中的卷積神經(jīng)網(wǎng)絡可以高效記憶和學習樣本特征,并且對數(shù)據(jù)沒有附加的特征提取要求,因此適合應用在調(diào)制信號的分類識別中。
利用卷積神經(jīng)網(wǎng)絡進行自動調(diào)制信號識別,主要的工作如下:為符合實際的信號傳輸環(huán)境,采用國際標準的調(diào)制信號數(shù)據(jù)集RaidoML2016.10a。將數(shù)據(jù)集中的信號IQ分量直接作為神經(jīng)網(wǎng)絡的輸入,避免傳統(tǒng)特征提取的計算步驟;設計兩層卷積層的CNN,增加樣本特征學習的多樣性,減小由網(wǎng)絡深度增加帶來的特征退化。實驗結(jié)果表明,本文設計的CNN的識別準確率優(yōu)于對比的調(diào)制信號識別算法。
圖1所示為典型的無線通信系統(tǒng),其包括發(fā)射器、信道和接收器。接收器處的連續(xù)時間信號為
圖1 無線通信系統(tǒng)組成
式中:x(t)為按照時間t發(fā)送的信號;f(t)為調(diào)制類型;符號“?”為卷積操作;h(t)為信道效應;n(t)為加性噪聲。給定接收信號y(t),調(diào)制識別旨在預測f(t)的調(diào)制類型。
對于一、二階統(tǒng)計量,通常不能用于處理非線性、非高斯性或非最小相位系統(tǒng)相關(guān)的信號處理問題。而高階統(tǒng)計量通常被用于解決這些類型的信號處理問題,對比的特征提取算法使用高階累積量作為樣本特征。
令y(n)表示在時間n處的離散時間接收信號,復數(shù)值接收信號y(n)的二階統(tǒng)計量可以表示為:C20=E[y2(n)]和C21=E[|y(n)|n],其中E(·)是期望函數(shù)。本文使用的特征為y(n)的四階統(tǒng)計量。復數(shù)值信號y(n)的四階統(tǒng)計量為
式中,C40、C41和C42為四階統(tǒng)計量。具體而言,四階統(tǒng)計量的聯(lián)合累積量函數(shù)表示為
在使用CNN模型[14-17]進行調(diào)制識別時,由于CNN具有空間特征學習能力,可直接對調(diào)制信號的IQ分量進行處理,本節(jié)將信號的原始樣本作為網(wǎng)絡的輸入。信號樣本采用國際標準數(shù)據(jù)集RML2016.10a_dict[19]。樣本χ由信號的同相和正交分量組成。由于樣本維度較小,本文設計的CNN不采用池化層來進行特征的降維,具體的網(wǎng)絡結(jié)構(gòu)和部分參數(shù)如圖2所示。
圖2 基于CNN的調(diào)制識別模型
輸入層Input,輸入的樣本大小為2×128。輸入樣本采取補零操作,即在樣本兩側(cè)補上零矩陣,以保證樣本的邊緣特征能夠被學習到。網(wǎng)絡第2層為Conv1,卷積核個數(shù)為256,對應輸出特征圖通道數(shù)也為256。此外,本層卷積核尺寸為1×3,滑動步長為1。激活函數(shù)設置為Relu,為更好滿足非線性需求,同時防止訓練陷入局部最小。本層的輸出x1計算式為
式中:xiq為補零后的IQ分量樣本;σ(·)為Relu函數(shù);W1、b1分別為第1層卷積層里的權(quán)重和偏置。
網(wǎng)絡的第3層為Conv2,該層卷積核個數(shù)為128,卷積核尺寸為2×3,其余設置同卷積層1。這里增大了卷積核的尺寸,是為了學習二維信號特征的關(guān)聯(lián)性,減少冗余特征,本層輸出的特征圖尺寸較上一層卷積層的1輸出會有所減小。本層的輸出為
網(wǎng)絡的最后兩層為全連接層,第1層全連接層的神經(jīng)元個數(shù)為256,它接收上層輸出的特征。在此之前,需對Conv2輸出的特征圖進行壓平操作得到x′2,即將二維的特征壓平為一維。本全連接層的激活函數(shù)也為Relu,輸出的特征尺寸大小為1×256。其輸出的計算過程為
式中:x′2為x2被拉平后的一維特征;Wd1和bd1分別為第1層全連接層里的權(quán)重和偏置。
網(wǎng)絡最后的全連接層也為輸出層,激活函數(shù)為Softmax,以滿足多分類的目的,神經(jīng)元個數(shù)與分類的類別數(shù)相同,這里為信號的類別數(shù)11。此處的輸出預測標簽為
式中,ο(·)為Softmax函數(shù)。此外,設置網(wǎng)絡中前3層特征提取層的dropout系數(shù)為0.5,即同一時刻,只有一半神經(jīng)元處在激活狀態(tài),防止網(wǎng)絡訓練時發(fā)生過擬合現(xiàn)象。
Relu函數(shù)是當前人工神經(jīng)網(wǎng)絡中常用的激活函數(shù),它在一定程度上緩解了梯度問題,計算速度非常快。Relu被使用在卷積層和全連接層,可加快模型的收斂速度,提高神經(jīng)網(wǎng)絡的訓練性能。
網(wǎng)絡輸出層的激活函數(shù)為Softmax,也稱為歸一化指數(shù)函數(shù)。它是深度學習中非常普遍且重要的一種函數(shù)。Softmax常用于多分類過程,將多個神經(jīng)元的輸出映射到(0,1)間隔中,并將其理解為計算多分類的概率。其工作原理可解釋為某種類型的特征加權(quán),將這些特征轉(zhuǎn)換為確定這種類型的可能性。涉及信號分類識別問題,在CNN中,最后一層全連接層使用Softmax激活函數(shù)進行分類識別,最終輸出的是每個信號的概率。
準確率計算公式為
式中:n為樣本數(shù);^yi為第i個樣本的預測標簽;yi為第i個樣本的真實標簽。
實驗中,使用了RadioML2016.10a數(shù)據(jù)集作為輸入數(shù)據(jù),該數(shù)據(jù)集是目前調(diào)制識別研究中常被使用的數(shù)據(jù)樣本,有關(guān)生成此數(shù)據(jù)集的詳細信息可以在文獻[19]中找到。該數(shù)據(jù)集包含11種調(diào)制信號類型,為8種數(shù)字調(diào)制和3種模擬調(diào)制,它們?yōu)锽PSK、QPSK、8PSK、16QAM、64QAM、BFSK、CPFSK和4PAM數(shù)字調(diào)制信號,以及WBFM、AM-DSB和AM-SSB 3種模擬調(diào)制信號。該數(shù)據(jù)集是利用開源軟件無線電平臺GNU Radio生成,在產(chǎn)生過程中除了采用了大量真實語音信號,采用了GNU Radio中動態(tài)信道模型模擬信道效應,包括頻率偏、相位偏、高斯白噪聲和頻率選擇性衰落等。具體數(shù)據(jù)集的參數(shù)見表1。
表1 RaidoML2016.10a數(shù)據(jù)集的相關(guān)參數(shù)
實驗中,將數(shù)據(jù)集220 000個樣本劃分為訓練集和測試集,各占樣本總量的80%和20%。實驗使用tensorflow作為后端,使用keras庫搭建神經(jīng)網(wǎng)絡訓練,并基于Nvidia GEFORCE GTX1050Ti圖形處理器進行神經(jīng)網(wǎng)絡的計算。使用的優(yōu)化算法為Adam[20],Adam優(yōu)化算法是改進的隨機梯度下降算法,是Momentum算法和RMSprop算法的結(jié)合體。網(wǎng)絡的損失函數(shù)設置為交叉熵損失函數(shù),它刻畫的是網(wǎng)絡輸出概率與實際輸出概率的距離,即交叉熵越小,兩者概率分布越接近。在實驗環(huán)境配置完畢后,將樣本輸入設置好參數(shù)的兩種網(wǎng)絡中,先后進行訓練與測試,分別得到識別結(jié)果。CNN的識別準確率隨信噪比的變化,如圖3所示。
可見,CNN算法的識別準確率均隨著信噪比的增加而逐漸增高。在信噪比為-20~-14 dB時,算法的識別準確率在10%左右。當信噪比高于-4 dB時,CNN的準確率開始高于60%。當信噪比為-2 dB時,CNN的識別準確率約為70%。當信噪比在6~18 dB時,CNN的識別準確率都趨于平緩。當信噪比為18 dB時,CNN的識別準確率為78.5%。
將CNN與兩種特征提取的調(diào)制識別算法進行對比。特征提取的調(diào)制識別算法使用的信號專家特征為1.2節(jié)中提到的四階累積量特征。對比的是SVM和KNN兩種算法,準確率對比如圖3所示。
圖3 CNN與SVM、KNN的識別準確率對比
可見,在信噪比為-20~-16 dB時,CNN、SVM以及KNN算法的識別準確率均在10%左右。隨著信噪比的增加,3種算法的識別準確率均呈現(xiàn)增高的趨勢。其中,CNN的識別準確率增長最快。在信噪比為0 dB時,CNN的識別率值則最高,為75%,而SVM和KNN的識別準確率低于25%。在信噪比為2 dB時,SVM和KNN的識別準確率呈現(xiàn)陡然上升趨勢。當信噪比增加至4 dB之后,3種算法的識別準確率均趨于平緩狀態(tài),CNN比SVM的準確率高出約17%,比KNN的準確率高出約20%。在信噪比為18 dB時,CNN的識別率為78.5%,SVM為66.6%,KNN為67.0%。可見,特征提取的調(diào)制識別算法幾乎在所有信噪比下識別準確率都低于卷積神經(jīng)網(wǎng)絡。說明,卷積神經(jīng)網(wǎng)絡的調(diào)制識別算法不僅可以避免特征提取的計算步驟,還取得優(yōu)異的識別性能。
針對RML2016.10a數(shù)據(jù)集中多種調(diào)制類型,進一步研究CNN的識別性能,利用混淆矩陣來觀察每個類型的識別情況。混淆矩陣的橫坐標為樣本的網(wǎng)絡預測信號類型(預測標簽),縱坐標為這些樣本的實際信號類型(真實標簽)。圖4為CNN在信噪比為-18 dB時的識別結(jié)果混淆矩陣。
圖4 在信噪比為-18 dB時CNN的混淆矩陣
在混淆矩陣的網(wǎng)格中,每格中的數(shù)字表示樣本數(shù)量。以圖4為例,對于縱坐標為8PSK的這一行數(shù)據(jù),對應到橫坐標可見:網(wǎng)絡將8PSK正確預測為8PSK的樣本數(shù)量只有5個,而將8PSK預測為AM-SSB的樣本數(shù)量為191個,出現(xiàn)了嚴重的混淆。說明由于低信噪比的影響,CNN的識別準確率較差,對任意種類的信號都難以識別。
圖5為CNN在信噪比為0 dB時的識別結(jié)果混淆矩陣。圖5表明,CNN對大部分信號類型都能進行準確識別,而對于AM-DSB和WBFM,16QAM和64QAM的識別效果較差。因為生成數(shù)據(jù)集時,觀測窗口小,信息率低,信息之間關(guān)聯(lián)性小,所以難以區(qū)分AM-DSB和WBFM。而對于16QAM和64QAM,這兩種信號的IQ信息相似,也難以進行分類識別。另外,在0dB情況,QPSK和8PSK兩種信號也有較少的混淆。
圖5 在信噪比為0 dB時CNN的混淆矩陣
圖6為CNN在信噪比為18 dB時的識別結(jié)果混淆矩陣。圖6表明,在信噪比為18 dB時,CNN對BPSK信號的識別準確率較0 dB時有少許的提高,對于AM-DSB和WBFM,16QAM和64QAM的識別,CNN表現(xiàn)的效果仍然較差,而對于其他類型信號,CNN取得了較好的識別性能。
圖6 在信噪比為18 dB時CNN的混淆矩陣
針對基于特征提取的調(diào)制信號識別算法準確率不高的問題,本文采用卷積神經(jīng)網(wǎng)絡(CNN)用于調(diào)制信號的識別。卷積神經(jīng)網(wǎng)絡可以直接對二維樣本進行特征學習,避免專家特征計算過程,直接將調(diào)制信號的IQ分量作為網(wǎng)絡輸入。利用卷積層提取空間特征,還能學習到樣本的時序特征。本文采用國際標準數(shù)據(jù)集,其中的信號受多種信道效應影響,接近真實通信環(huán)境。仿真結(jié)果表明,在信噪比大于-16 dB情況下,CNN的調(diào)制信號識別準確率遠遠高于SVM和KNN,說明基于卷積神經(jīng)網(wǎng)絡的調(diào)制識別算法不僅可以避免人工提取專家特征,而且在性能上也有很大的優(yōu)勢。