尹 航,田 甜,馮師軍,禹潤田
(中國電子科技集團公司第三研究所,北京 100015)
隨著水下攻防技術(shù)的快速發(fā)展,水下信息獲取和解析的需求越來越大。通過水下聲信號獲取信息是水下信息攻防的關(guān)鍵技術(shù)。水聲通信信號是水下聲信號的重要組成部分,而水聲通信調(diào)制模式識別是水下聲信號解析的重要環(huán)節(jié)。BP 神經(jīng)網(wǎng)絡(luò)是一種誤差逆向傳播、多層前饋的神經(jīng)網(wǎng)絡(luò),可以在沒有先驗知識的情況下,通過訓(xùn)練和學(xué)習(xí)記憶數(shù)據(jù)的輸入輸出映射關(guān)系。
本文根據(jù)水聲通信信號的特點,將通信特征參數(shù)和BP 神經(jīng)網(wǎng)絡(luò)結(jié)合,進行水聲通信調(diào)制模式識別。根據(jù)待識別信號的種類及特性,本文選取了6 類信號特征參數(shù)。基于BP 神經(jīng)網(wǎng)絡(luò)算法和水聲通信信號特征參數(shù),本文建立了BP 神經(jīng)網(wǎng)絡(luò)識別模型,設(shè)計了一種水聲通信信號(OFDM、BPSK、QPSK、FSK、MFSK)分類器。為了驗證方法的有效性,本文對仿真信號進行識別。仿真結(jié)果表明,結(jié)合信號特征參數(shù)與BP 神經(jīng)網(wǎng)絡(luò),所提方法可以取得較好的識別效果。
根據(jù)OFDM 與PSK、FSK 的時域、頻域特性,定義零中心歸一化瞬時幅度譜均值M1為[1-2]:
式中,Ns為數(shù)據(jù)樣本點數(shù);acn(i)=an(i)=1,為瞬時幅度a(i)的均值。通過對瞬時幅度的歸一化處理,可減少信道增益的影響。
頻移鍵控信號和非頻移鍵控信號的功率譜有很大區(qū)別。頻移鍵控(Frequency-Shift Keying,F(xiàn)SK)信號在各調(diào)制頻率上會出現(xiàn)明顯的單頻分量,相移鍵控(Phase-Shift Keying,PSK)信號無離散譜線的單峰。采用比值R來體現(xiàn)信號功率譜的形狀特征,反映的是信號功率譜包絡(luò)的變化程度,定義如下:
式中,μ是信號功率譜包絡(luò)的均值;σ2是信號功率譜包絡(luò)的方差。由定義式可知,若信號譜平坦,則比值R值趨于0。若信號存在多個峰,比值R隨著譜峰數(shù)的減少而增大。
零中心歸一化瞬時頻率絕對值的平均值Mf1定義為:
遞歸零中心歸一化瞬時頻率絕對值的平均值Mf2定義為:
表示信號的零中心歸一化瞬時頻率,ff=abs(f ')表示信號的瞬時頻率,f '=H(f)表示信號的希爾伯特變換。
2FSK 信號不含有絕對頻率信息,Mf2值在兩個大小相等、符號相反的頻率值之間變化,值較小。4FSK 信號本身含有絕對和直接的頻率信息,因此Mf2值較大。
定義Mf3為遞歸零中心歸一化后的瞬時頻率的絕對值再進行中心化的絕對值的平均值,可表示為:
定義Mp1為零中心歸一化瞬時相位絕對值的平均值,可表示為:
Mp1用于區(qū)分PSK 類信號。由于2PSK 信號只有兩個相位值,其平均后的絕對值為常數(shù),因此其中心歸一化瞬時相位的絕對值為常數(shù)。4PSK 信號包含絕對相位信息,取絕對值后仍帶有相位信息,因此4PSK 信號的Mp1值不是常數(shù)。
BP 神經(jīng)網(wǎng)絡(luò)在結(jié)構(gòu)上通常包含輸入層、隱含層及輸出層[3],結(jié)構(gòu)如圖1 所示。
神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)確定后,需要通過已知對應(yīng)關(guān)系的樣本集訓(xùn)練網(wǎng)絡(luò)。通過不斷反饋和修正各層神經(jīng)元的閾值和權(quán)值,可使網(wǎng)絡(luò)學(xué)習(xí)并記憶訓(xùn)練數(shù)據(jù)的輸入輸出映射關(guān)系。
訓(xùn)練過程分為兩個階段。第一個階段,設(shè)置網(wǎng)絡(luò)初始值,包括各層權(quán)值和閾值,輸入已知對應(yīng)關(guān)系的學(xué)習(xí)樣本,記錄每層網(wǎng)絡(luò)各神經(jīng)元的輸出。第二階段,對比神經(jīng)元輸出和樣本標(biāo)簽得到誤差,逆推各層權(quán)值和閾值,即從最后一層帶入前端各層,計算各層神經(jīng)元的權(quán)值和閾值對誤差的影響并進行更新。反復(fù)執(zhí)行訓(xùn)練過程,直到誤差值達到預(yù)期效果。
給定訓(xùn)練集D={(x1,y1),(x2,y2)…,(xm,ym)},xi∈Rd,yi∈Rl,即輸入數(shù)據(jù)有d個屬性描述,輸出l維實值向量。
BP 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示,輸入層包含d個神經(jīng)元,輸出層包含l個神經(jīng)元,隱含層包含q個神經(jīng)元。其中,輸出層的神經(jīng)元j的閾值為θj,隱含層的神經(jīng)元h的閾值為γh。vih為輸入層的神經(jīng)元i與隱含層的神經(jīng)元h之間的權(quán)重,ωhj為隱含層的神經(jīng)元h與輸出層的神經(jīng)元j的連接權(quán)重。若隱含層的神經(jīng)元h輸入是,則輸出層的神經(jīng)元j的輸入是,其中bh為隱含層的神經(jīng)元h的輸出。
選擇Sigmoid 函數(shù)作為隱含層和輸出層神經(jīng)元的激勵函數(shù)。
隱含層輸出為:
對訓(xùn)練集(xk,yk)(xk,yk),假定神經(jīng)網(wǎng)絡(luò)的輸出為即:
即網(wǎng)絡(luò)在(xk,yk)上的均方誤差Ek為:
BP 算法的目標(biāo)就是要最小化訓(xùn)練集D上的累計誤差E:
仿真水聲信道模型[4-6],在不同信噪比下將仿真通信信號經(jīng)過水聲信道模型產(chǎn)生信號數(shù)據(jù)集。將數(shù)據(jù)集隨機分為訓(xùn)練集和測試集,其中訓(xùn)練集用于訓(xùn)練神經(jīng)網(wǎng)絡(luò),測試集用于驗證神經(jīng)網(wǎng)絡(luò)性能。當(dāng)測試結(jié)果達到需要指標(biāo)時,可將神經(jīng)網(wǎng)絡(luò)用于識別非合作信號。訓(xùn)練流程如圖2 所示。
將6 類參數(shù)輸入BP 神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,達到預(yù)期指標(biāo)時訓(xùn)練停止,同時保留經(jīng)過訓(xùn)練的BP 神經(jīng)網(wǎng)絡(luò)各層參數(shù)用于測試。
選取6 種調(diào)制模式類型,每種調(diào)制方式生成200 組仿真數(shù)據(jù),其中100 組用于訓(xùn)練,100 組用于算法效果驗證。采樣率fs=90 kHz,數(shù)據(jù)參數(shù)如表1 所示。
表1 樣本數(shù)據(jù)參數(shù)
在SNR=0 dB 的情況下仿真水聲通信信號,計算各調(diào)制方式信號的特征參數(shù),結(jié)果如圖3~8所示。
在SNR=10 dB 情況下,仿真水聲通信信號,計算各調(diào)制方式信號的特征參數(shù),結(jié)果如圖9~14所示。
引入多途信道,分別在信噪比0 dB、2 dB、4 dB、6 dB、8 dB、10 dB 的條件下仿真。當(dāng)信噪比到8 dB 時,識別結(jié)果有明顯提高,如圖15 所示。
SNR=10 dB 時識別率可達到95%以上,結(jié)果如表2 所示。
表2 SNR=10 dB 時的識別率
本文研究了一種基于BP 神經(jīng)網(wǎng)絡(luò)的水聲通信調(diào)制模式識別方法。由仿真結(jié)果可以看出,識別結(jié)果正確率可以達到90%以上,證明此方法有效。由于實驗所使用的數(shù)據(jù)為仿真數(shù)據(jù),該算法在實際應(yīng)用中面對更復(fù)雜的海洋環(huán)境時的識別性能有待進一步研究。