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