劉振興,陳 震
(1.泰州職業(yè)技術(shù)學(xué)院 信息技術(shù)學(xué)院,江蘇 泰州 225300;2.南京信息工程大學(xué) 江蘇省大氣環(huán)境與裝備技術(shù)協(xié)同創(chuàng)新中心,江蘇 南京 210044)
近年來,水下無線通信在各種領(lǐng)域得到了廣泛應(yīng)用。人們?cè)絹碓疥P(guān)注水聲通信系統(tǒng)的研究,提出了常數(shù)模、小波和多小波等多種水聲信道均衡算法[1-3]。其中,常數(shù)模算法(Constant Modulus Algorithm,CMA)因結(jié)構(gòu)簡(jiǎn)單、性能穩(wěn)健、運(yùn)算量小而被廣泛使用,但其收斂精度不高。小波和多小波算法的均衡效果與其變換的稀疏能力有關(guān),且需事先選取小波和多小波系數(shù),影響了算法的實(shí)際應(yīng)用。均衡器完成的是一個(gè)非線性映射,可以描述為觀測(cè)空間的決策區(qū)域劃分問題,而神經(jīng)網(wǎng)絡(luò)可以形成比較復(fù)雜的非線性決策曲面,因此可以利用神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)均衡器。文獻(xiàn)[4]設(shè)計(jì)了基于BP神經(jīng)網(wǎng)絡(luò)的均衡器,對(duì)語音信號(hào)均衡算法進(jìn)行了研究。文獻(xiàn)[5]將RBF神經(jīng)網(wǎng)絡(luò)作為均衡器,對(duì)水聲信道低階調(diào)制信號(hào)的均衡進(jìn)行了研究。文獻(xiàn)[6]將非單點(diǎn)模糊化技術(shù)引入RBF網(wǎng)絡(luò),設(shè)計(jì)了非單點(diǎn)模糊徑向基函數(shù)(Radial Basis Function,RBF)網(wǎng)絡(luò)判決反饋均衡器,對(duì)均衡器的抗突發(fā)干擾能力和誤碼性能進(jìn)行了研究。常規(guī)的神經(jīng)網(wǎng)絡(luò)一般是多輸入單輸出系統(tǒng),數(shù)據(jù)的處理能力有限。深度學(xué)習(xí)技術(shù)的出現(xiàn),為處理這類問題提供了一個(gè)很好的方向。該技術(shù)不強(qiáng)調(diào)數(shù)據(jù)的先驗(yàn)特性,通過端到端的設(shè)計(jì)搭建網(wǎng)絡(luò)模型,注重模型的簡(jiǎn)單和通用,具有處理能力強(qiáng)、泛化性能好等特點(diǎn)。其中,降噪自編碼器可以模擬人腦思維方式,提取低噪數(shù)據(jù)特征,重構(gòu)無噪數(shù)據(jù),且網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單、算法復(fù)雜度低,廣泛應(yīng)用于機(jī)器視覺、圖像處理等領(lǐng)域[7-8]。但是,網(wǎng)絡(luò)的性能與其結(jié)構(gòu)有關(guān),要想獲得較好的性能,淺層網(wǎng)絡(luò)所需節(jié)點(diǎn)數(shù)與輸入數(shù)據(jù)數(shù)目呈指數(shù)關(guān)系,而深度網(wǎng)絡(luò)在間接性和表達(dá)能力上更具優(yōu)勢(shì),所需節(jié)點(diǎn)數(shù)與輸入數(shù)據(jù)數(shù)目呈多項(xiàng)式關(guān)系,特別是與自編碼網(wǎng)絡(luò)對(duì)應(yīng)的堆棧自編碼網(wǎng)絡(luò)可以模擬人的大腦活動(dòng),逐層提取輸入數(shù)據(jù)特征,表現(xiàn)更優(yōu)。文獻(xiàn)[9]對(duì)堆棧去噪自編碼器的構(gòu)建策略進(jìn)行了研究,采用“貪婪法”逐層訓(xùn)練整個(gè)深度網(wǎng)絡(luò)。實(shí)驗(yàn)結(jié)果表明,隨著隱層層數(shù)的增加,網(wǎng)絡(luò)性能不斷進(jìn)化,且預(yù)訓(xùn)練后的網(wǎng)絡(luò)性能優(yōu)于無預(yù)訓(xùn)練的網(wǎng)絡(luò)。但是,均衡與去噪不同。均衡實(shí)現(xiàn)的是逆向?yàn)V波過程,目的是恢復(fù)發(fā)射信號(hào)。深度去噪自編碼網(wǎng)絡(luò)的訓(xùn)練方法不適于均衡器,而神經(jīng)網(wǎng)絡(luò)處理的是實(shí)數(shù)信號(hào),通信中常見的高階調(diào)制信號(hào)無法直接送入神經(jīng)網(wǎng)絡(luò)進(jìn)行處理。
基于以上分析,本文對(duì)基于堆棧自編碼器的水聲信道均衡算法進(jìn)行研究。該算法首先將自編碼器作為均衡器,針對(duì)高階QAM信號(hào),采用信號(hào)變換降低信號(hào)的復(fù)雜度,通過多輸入多輸出變換,將串行的通信信號(hào)轉(zhuǎn)換為并行信號(hào)輸入均衡器進(jìn)行處理,通過對(duì)比輸出信號(hào)的誤差值調(diào)整網(wǎng)絡(luò)參數(shù),直至網(wǎng)絡(luò)穩(wěn)定。在此基礎(chǔ)上,進(jìn)一步研究了基于堆棧自編碼器的水聲信道均衡算法。該算法將堆棧自編碼器作為均衡器,采用“類貪婪法”逐層訓(xùn)練自編碼均衡器,然后反向微調(diào)整個(gè)網(wǎng)絡(luò)。水聲信道仿真結(jié)果表明,基于自編碼器的均衡算法和基于堆棧自編碼器的均衡算法都具有較好的均衡性能,其中堆棧自編碼器算法表現(xiàn)更優(yōu)。
自編碼器是一種自監(jiān)督網(wǎng)絡(luò),理想狀態(tài)下其輸出等于輸入。通過建立合理的損失項(xiàng),可以實(shí)現(xiàn)無監(jiān)督學(xué)習(xí)下隱層特征的提取。特別當(dāng)輸入特征彼此相關(guān)時(shí),自編碼學(xué)習(xí)算法可以提取輸入數(shù)據(jù)中的相關(guān)性。進(jìn)一步,以其提取的特征作為新的輸入,通過參數(shù)學(xué)習(xí)可以獲取對(duì)應(yīng)的編碼特征。三層自編碼器網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
網(wǎng)絡(luò)計(jì)算公式如下:
其中,X∈Rn表示輸入數(shù)據(jù),W(L)表示網(wǎng)絡(luò)第L+1和L層之間的連接權(quán)值,Z(L)表示第L層的輸入,a(L)表示第L層輸出,b(L)表示與L+1層節(jié)點(diǎn)相連接的偏置,f(·)表示激活函數(shù)。
假設(shè)訓(xùn)練集合包含m個(gè)訓(xùn)練樣本{(X(1),Y^(1)),…,(X(m),Y^(m))},采用批量梯度下降法對(duì)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí),單樣本的代價(jià)函數(shù)定義為:
總樣本代價(jià)函數(shù)定義為:
式中,第一項(xiàng)為均方誤差項(xiàng),第二項(xiàng)是正則項(xiàng),目的是減小權(quán)重的幅度,防止過度擬合。λ為權(quán)重衰減參數(shù),用于控制公式中兩項(xiàng)的重要性;sL表示第L層的神經(jīng)元個(gè)數(shù)。
堆棧自編碼器即將多個(gè)自編碼器堆棧而成,具有3個(gè)隱含層的堆棧自編碼器網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 堆棧自編碼器網(wǎng)絡(luò)結(jié)構(gòu)
網(wǎng)絡(luò)計(jì)算公式如下:
堆棧自編碼器通常采用逐層貪婪法進(jìn)行訓(xùn)練[9]。本文對(duì)此進(jìn)行了改進(jìn),采用“類貪婪法”逐層訓(xùn)練自編碼均衡器,訓(xùn)練過程如下。
(1)用帶標(biāo)簽的訓(xùn)練樣本{(X(1),Y^(1)),…,(X(m),Y^(m))}訓(xùn)練第一個(gè)自編碼均衡器,得到參數(shù)W(1,1)、W(1,2)、b(1,1)、b(1,2),其中X為均衡器輸入信號(hào),Y^為對(duì)應(yīng)的均衡器期望輸出。
(2)利用W(1,1)和b(1,1)得到輸入X和Y^的一階特征表示 h(1)(k)和 h(1)′(k),將 h(1)(k)和 h(1)′(k)分別作為第二個(gè)自編碼均衡器的輸入和期望輸出進(jìn)行訓(xùn)練,得到參數(shù) W(2,1)、W(2,2)、b(2,1)、b(2,2)。
(3)依次類推,直至訓(xùn)練完整個(gè)網(wǎng)絡(luò)。注意在訓(xùn)練某層自編碼器時(shí),保持其他層自編碼器參數(shù)不變。
當(dāng)信道傳輸高階信號(hào)時(shí),考慮到網(wǎng)絡(luò)特性,為了降低信號(hào)處理的復(fù)雜度,需要在均衡器的輸入端做信號(hào)變換,將復(fù)數(shù)信號(hào)變換為實(shí)數(shù)信號(hào)。為了使信號(hào)不失真,在均衡器的輸出端需做信號(hào)反變換,將實(shí)數(shù)信號(hào)變換為復(fù)數(shù)信號(hào)。
當(dāng)發(fā)射信號(hào)為16QAM信號(hào)時(shí),星座圖如圖3所示。
圖3 發(fā)射信號(hào)
圖4 信號(hào)變換原理
圖 4中,X(n)=[x(n),x(n-1),…,x(n-L+1)]為均衡器輸入的復(fù)數(shù)信號(hào),其中L表示均衡器的長度,X(n)=XR(n)+jXI(n)。對(duì)X(n)進(jìn)行信號(hào)變換轉(zhuǎn)換為兩路實(shí)數(shù)信號(hào)XR(n)和XI(n),分別送到均衡器進(jìn)行處理。YR(n)和YI(n)為與之對(duì)應(yīng)的兩路均衡器輸出信號(hào),經(jīng)過信號(hào)反變換后轉(zhuǎn)換為復(fù)數(shù)數(shù)信號(hào)Y(n),Y(n)=YR(n)+jYI(n)。變換原理為:
本文提出了基于堆棧自編碼器的信道均衡算法。該算法將堆棧自編碼器作為均衡器,當(dāng)發(fā)射高階信號(hào)時(shí),先將均衡器輸入信號(hào)進(jìn)行復(fù)實(shí)變換轉(zhuǎn)換為兩路實(shí)數(shù)信號(hào),然后分別經(jīng)串并轉(zhuǎn)換送入均衡器進(jìn)行處理,再在均衡器的輸出端作并串轉(zhuǎn)換和實(shí)復(fù)變換。算法原理如圖5所示。
圖5 基于堆棧自編碼器的信道均衡算法原理
圖5 中s(n)為發(fā)送的復(fù)數(shù)信號(hào),h(n)為傳輸信道,d(n)為信道的輸出信號(hào),w(n)為加性高斯白噪聲,x(n)為均衡器輸入信號(hào),Y(n)為均衡器輸出信號(hào)。
均衡器輸入為:
式中,q為堆棧稀疏自編碼網(wǎng)絡(luò)輸入層神經(jīng)元個(gè)數(shù)。
式中,p為水聲信道h(n)的長度。
堆棧自編碼器的訓(xùn)練分為兩部分:
早在20世紀(jì)40年代,Queney(1948)、Scorer(1949)和Scorer and Klieforth(1959)就從線性化的大氣運(yùn)動(dòng)方程組出發(fā),分別建立了二維條件下單層和二層的大氣背風(fēng)波的理論模型及其存在條件。Lyra(1943)從流體力學(xué)角度在一定的假設(shè)條件下試圖找到過山氣流的解析解。葉篤正(1956)在50年代對(duì)背風(fēng)波理論進(jìn)行了系統(tǒng)的總結(jié)。巢紀(jì)平等(1964)以兩層密度不同的流體模式為基礎(chǔ),討論小地形對(duì)氣流的影響,研究了背風(fēng)面“氣壓跳躍”的形成過程。這些都是對(duì)背風(fēng)波比較早期的研究,但其影響卻是極其深遠(yuǎn)的。
(1)如前面所述,采用“類貪婪法”逐層訓(xùn)練自編碼均衡器??紤]到信號(hào)的特性,文中激活函數(shù)選擇tanh函數(shù),即f(z)=(ez-e-z)/(ez+e-z)。
(2)微調(diào)
①根據(jù)式(7)和式(8)進(jìn)行前饋計(jì)算,計(jì)算各層的激勵(lì)響應(yīng)。
②計(jì)算殘差。
輸出層:
隱含層:
其中l(wèi)=2,…,nL-1。
③計(jì)算單偏導(dǎo)數(shù)。
④計(jì)算總樣本偏導(dǎo)數(shù)。
對(duì)樣本i=1到m,計(jì)算:
其中ΔW(l)為與W(l)相同大小的矩陣,Δb(l)為與b(l)相同大小的向量,初始值為0。
⑤更新參數(shù)。
其中μ為學(xué)習(xí)速率。
基于堆棧自編碼器的水聲信道均衡算法主要步驟歸結(jié)如下。
步驟1:根據(jù)式(9)和式(10)采用信號(hào)變換方法,將均衡器輸入的復(fù)數(shù)信號(hào)變換為實(shí)數(shù)信號(hào),并經(jīng)過串并轉(zhuǎn)換后送入堆棧自編碼網(wǎng)絡(luò)進(jìn)行處理。
步驟2:采用“類貪婪法”逐層訓(xùn)練自編碼均衡器。
步驟3:根據(jù)式(7)、式(8)和式(14)~式(21)微調(diào)堆棧自編碼均衡器,直至網(wǎng)絡(luò)穩(wěn)定。
步驟4:計(jì)算網(wǎng)絡(luò)穩(wěn)定后的輸出值。
步驟5:通過并串轉(zhuǎn)換和實(shí)復(fù)轉(zhuǎn)換將實(shí)數(shù)信號(hào)恢復(fù)為復(fù)數(shù)信號(hào)。
為了比較CMA、REA、AEA和SAEA共4種算法的性能,采用典型的混合相位水聲信道進(jìn)行仿真實(shí)驗(yàn),對(duì)比其在不同信噪比下的均方誤差值以及20 dB輸入信噪比下的均衡器星座圖。實(shí)驗(yàn)中發(fā)射信號(hào)為16-QAM,序列長度為12 000,AEA算法中采用自編碼器作為均衡器,SAEA算法中采用堆棧自編碼網(wǎng)絡(luò)作為均衡器,相關(guān)實(shí)驗(yàn)參數(shù)如表1所示。
表1 實(shí)驗(yàn)參數(shù)設(shè)置
表2為不同輸入信噪比下4種算法的均方誤差。由表2可知,AEA和SAEA的均方誤差小于CMA和REA均方誤差。當(dāng)輸入信噪比較大時(shí)(15~25 dB),AEA的均方誤差比CMA小4.5 dB左右,比REA小1.4 dB左右,SAEA的均方誤差比AEA小0.4~1.5 dB;當(dāng)輸入信噪比較小時(shí)(5~10 dB),AEA的均方誤差比CMA小1 dB左右,比REA小0.4 dB左右,而SAEA的均方誤差顯著減小,說明輸入信噪比較小時(shí),SAEA的均衡效果更突出。
表2 不同信噪比下的均方誤差
圖6為20 dB輸入信噪比下均衡器星座圖。由圖6可知,4種算法都能恢復(fù)發(fā)射信號(hào),但CMA的星座圖較松散,而REA、AEA和SAEA的星座圖較緊湊,特別圖6(e)所顯示的星座圖最集中、最清晰,說明SAEA算法的均衡性能最優(yōu),抗干擾能力最強(qiáng),其次為AEA算法。
圖6 星座圖
自編碼器在信道均衡中的應(yīng)用類似于其在圖像去噪和圖像超分辨率的應(yīng)用,通過對(duì)樣本的學(xué)習(xí)構(gòu)建網(wǎng)絡(luò)模型,建立輸入數(shù)據(jù)與期望輸出之間的對(duì)應(yīng)關(guān)系。本文采用堆棧自編碼器作為均衡器,并提出了一種“類貪婪”法逐層訓(xùn)練自編碼均衡器。與其他信道均衡算法相比,本文提出的算法具有更好的均衡性能和魯棒性,且不需要知道具體的信道模型,系統(tǒng)可以直接從數(shù)據(jù)中學(xué)習(xí)網(wǎng)絡(luò)參數(shù)。當(dāng)使用的環(huán)境改變時(shí),網(wǎng)絡(luò)結(jié)構(gòu)可以保持不變,只需要重新訓(xùn)練網(wǎng)絡(luò),更新參數(shù)。