任佳鑫,張?zhí)靿?/p>
(北京交通大學(xué)計算機與信息技術(shù)學(xué)院,北京100044)
隨著第五代移動技術(shù)的大規(guī)模商用,物聯(lián)網(wǎng)技術(shù)的興起以及人工智能技術(shù)的迅猛發(fā)展,人們逐漸進入“萬物互聯(lián)、萬物感知”的智能時代。在智能時代中,通信媒介和通信場景都將發(fā)生巨大變革。由于頻譜資源的緊張以及對功耗、速度、環(huán)保、覆蓋場景等多方面的需求,可見光通信、毫米波等新興場景逐漸成為新的熱門。其中可見光通信技術(shù)以其廣泛的前景成為其中的一個非常有潛力的技術(shù)方向??梢姽馔ㄐ牛╒isible Light Communication)[1]是通過發(fā)光二極管(LED)發(fā)出高速明暗閃爍的信號來進行數(shù)據(jù)傳輸?shù)囊环N無線傳輸技術(shù)??梢姽馔ㄐ啪哂谐杀镜土?、高速、頻譜資源豐富等優(yōu)點,具有廣泛的應(yīng)用場景,常見的包括家庭數(shù)據(jù)傳輸、醫(yī)院等電磁敏感的場所、照明感應(yīng)場所等[1-2]。
但是在可見光通信系統(tǒng)中廣泛存在著非線性的問題??梢姽馔ㄐ畔到y(tǒng)中存在的非線性問題主要分為兩種,一種是由于正交頻分復(fù)用技術(shù)(Orthogonal Frequency Division Multiplexing,OFDM)引起的高峰均功率比,會使得信號更易進入功率放大器的非線性區(qū)域。第二種是由于可見光通信技術(shù)采用的強度調(diào)制直接檢測技術(shù)(IM/DD)引起的LED非線性。在強度調(diào)制直接檢測技術(shù)(IM/DD)中,電信號需要轉(zhuǎn)化為非負(fù)的光強信號以驅(qū)動發(fā)光二極管。然而由于電光功率轉(zhuǎn)換是非線性函數(shù),有限的帶寬會引入存儲效應(yīng),這使得LED成為可見光通信中非線性的主要來源。與此同時,可見光中的強度調(diào)制直接檢測技術(shù)通過添加直流偏置來保證信號的非負(fù)性增加了系統(tǒng)功耗,提高了信號峰值,使信號更易進入非線性區(qū)域。這使得可見光通信中的非線性問題更加突出。目前對于通信系統(tǒng)中非線性的研究主要集中于第一種由OFDM引起的非線性問題,對第二種LED本身的非線性問題在非線性模型構(gòu)建、非線性抑制上的研究尚不充分。對LED中存在的非線性進行建模是解決可見光通信中非線性問題的基礎(chǔ),所以對可見光非線性系統(tǒng)的建模也成為了亟待解決的問題。
目前可見光非線性系統(tǒng)的最常用的建模方式有Wiener模型、Hammerstein模型、記憶多項式模型等,通過這些數(shù)學(xué)模型可以較為有效地刻畫出有記憶效應(yīng)的功率放大器的模型,然而現(xiàn)有模型在進行參數(shù)估計時并不精確。另外隨著自編碼器等端到端解決方案的發(fā)展,通信系統(tǒng)可以通過一個完整的神經(jīng)網(wǎng)絡(luò)來進行描述,可以利用一些已有的先驗知識可以對其進行更好地描述。
與傳統(tǒng)OFDM系統(tǒng)不同,在可見光通信中,為了保證信號的正實性,DCO-OFDM系統(tǒng)需要對信號進行子載波分配和埃爾米特(Hermitian)映射[5],接著對信號進行直流偏置,輸入功率放大器,隨后經(jīng)過光調(diào)制器將電信號轉(zhuǎn)化為光信號。光信號經(jīng)過信道后,到達接收機,經(jīng)光電二極管轉(zhuǎn)化為電信號,然后進行隔直流處理,去除直流分量,獲得雙極性信號,隨后經(jīng)過解映射等步驟得到最終信號。DCO-OFDM模型如圖1所示。
圖1 DCO-OFDM模型
可見光通信系統(tǒng)中許多物理設(shè)備都表現(xiàn)出非線性效應(yīng),這會顯著降低系統(tǒng)的性能。其中非線性的主要來源是功率放大器。只有當(dāng)正向電壓大于開啟電壓時,才會出現(xiàn)正向電流。此外,電光轉(zhuǎn)換也是非線性的。
針對LED的非線性預(yù)失真技術(shù)的研究,首先要對可見光通信系統(tǒng)進行建模。LED是頻率相關(guān)設(shè)備,因此不可以忽略其記憶效應(yīng)。同時,對于超出動態(tài)范圍的信號需要進行雙向削波。固態(tài)功率放大器(Solidstate Power Amplifier,SSPA)通常采用線性濾波器和無記憶非線性的級聯(lián)組合來表示,即二箱模型[10]。因此,我們采用Wiener-Hammerstein模型[11]進行可見光系統(tǒng)非線性功率放大器的建模,如圖2所示。
圖2 Wiener-Hammerstein模型
我們用兩個模塊來對可見光通信中有記憶效應(yīng)的功率放大器建模,其中線性時不變模塊[6]用來表示功率放大器的記憶效應(yīng)。使用非線性模塊用來表示功率放大器的非線性。線性時不變模塊可以表示為:為了獲得延遲抽頭的值,記憶多項式函數(shù)由矩陣方程表示。根據(jù)時域中測得的輸入和輸出數(shù)據(jù),我們可以定義:
其中,Q是最大記憶深度,Q=3,信號在t時刻的輸出不僅與t時刻的輸入有關(guān),還與t-1時刻和t-2時刻的輸入有關(guān)。信號非線性模塊可以用Rapps模型[11]來進行描述。
非線性模塊Rapps模型的表達式如公式(4)所示,其中,Vin是輸入LED的電壓值,Imax為當(dāng)前最大的輸出,k是拐點系數(shù),它控制從線性到飽和區(qū)域的過渡的平滑度。
其中,VTOV=0.2V,Imax=0.5A。
Volterra方法是常見的帶有記憶效應(yīng)的非線性建模方法,該方法采用多項式的方法來對非線性函數(shù)進行近似[4]。將多項式轉(zhuǎn)化為參數(shù)矩陣和功率放大器的輸入信號矩陣的乘積,隨后將結(jié)果與通過功率放大器后的信號進行比對,逐漸迭代求出參數(shù)矩陣中的值。該方法通過引入了記憶深度Q,與泰勒級數(shù)建模方法相比對有記憶效應(yīng)的非線性方程有更好地刻畫效果。
其中,多項式的表達式如公式所示,其中z(n)為通過功率放大器前的正實信號,x(n)為通過功率放大器后的信號,^x(n)為經(jīng)過Volterra多項式方程后的估計結(jié)果。
問題轉(zhuǎn)化為最小化估計誤差,采用最小均方算法(Least Mean Square,LMS)進行迭代優(yōu)化,找到迭代后的參數(shù)。如公式(10)所示,通過實際輸出信號與估計信號的差值求出估計誤差。將得到的估計誤差進行迭代優(yōu)化,找出估計誤差最小的ω即為最優(yōu)的參數(shù)矩陣的值。
《金粉世家》里的重要角色冷清秋,這是作者張恨水別具匠心安排的一個核心人物,作者讓冷清秋走進金府,去見證金府內(nèi)部一切的腐敗與衰落。冷清秋進金府就像《紅樓夢》里的林黛玉進賈府一樣,而與林黛玉不同的是冷清秋實現(xiàn)了自己的愛情,但最終沒有將愛情進行到底,以一個避世者的姿態(tài)離開了金府。
本文將提出一個基于神經(jīng)網(wǎng)絡(luò)的可見光通信非線性建模方法。具體而言,本文提出了一個具有三層深度的神經(jīng)網(wǎng)絡(luò)。使用模擬信號來進行訓(xùn)練集和標(biāo)簽信號的獲取,將正實數(shù)信號通過一定的變換后輸入神經(jīng)網(wǎng)絡(luò),將輸出的結(jié)果與實際的輸出結(jié)果進行比對來進行訓(xùn)練。
深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network)是最常見的一種深度學(xué)習(xí)的方法,屬于有監(jiān)督學(xué)習(xí)中的一種。前饋網(wǎng)絡(luò)中各個神經(jīng)元按照接收信息的先后分為不同的組,每一組可以看作一個神經(jīng)層,除去最開始的輸入層和最后的輸出層以外,中間的層叫做隱層。深度神經(jīng)網(wǎng)絡(luò)由多個隱層組成,每一層中的神經(jīng)元接收前一層神經(jīng)元傳來的信息,并輸出到下一層神經(jīng)元,整個網(wǎng)絡(luò)中的信息朝一個方向進行傳播。當(dāng)傳播到輸出層后,將得到的輸出值和標(biāo)簽中的結(jié)果進行比對,將比較的結(jié)果通過反向傳播的方式反饋給之前各層的神經(jīng)元,調(diào)整神經(jīng)元中的權(quán)重等參數(shù)。不斷地迭代之前的步驟,直至最終的輸出結(jié)果和標(biāo)簽的相似程度達到設(shè)定的閾值。
對于任意的神經(jīng)元來說,其接收d個前一層的輸入x1,x2,…,xd,令矩陣ω=[ω1,ω2,…,ωn]表示權(quán)重向量,令z表示d個輸入的加權(quán)和,有:
其中b為偏置,將加權(quán)和z通過一個非線性函數(shù)f(·)后,得到的單個神經(jīng)元的輸出為y:
其中非線性函數(shù)f(·)稱為激活函數(shù),常見的激活函數(shù)有Sigmoid函數(shù)、Tanh函數(shù)、ReLU函數(shù)等。激活函數(shù)負(fù)責(zé)將神經(jīng)元的輸入映射到輸出端,使得深度神經(jīng)網(wǎng)絡(luò)擁有了強大的非線性表征能力,被廣泛地用于非線性建模中。
根據(jù)前饋神經(jīng)網(wǎng)絡(luò)的通用近似定理[9],常見的連續(xù)非線性函數(shù)都可以用前饋神經(jīng)網(wǎng)絡(luò)來近似。更準(zhǔn)確地說,僅有一層隱藏層的神經(jīng)網(wǎng)絡(luò)就可以有效地表示任何函數(shù)。但是,這樣的網(wǎng)絡(luò)結(jié)構(gòu)可能會格外龐大,無法正確地學(xué)習(xí)和泛化。單純地減少隱藏層的層數(shù)對資源消耗的減少并不明顯,但會顯著增加模型訓(xùn)練的難度,訓(xùn)練好的模型也更容易產(chǎn)生過擬合。因此,我們設(shè)計了一個包含三個隱藏層的深度神經(jīng)網(wǎng)絡(luò)來進行擬合功率放大器的非線性。本文提出的神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖3所示。
圖3 深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
深度神經(jīng)網(wǎng)絡(luò)主要包含有輸入層、隱藏層和輸出層。輸入數(shù)據(jù)集為模擬隨機信號16QAM調(diào)制方式下,在經(jīng)過功率放大器前的正實數(shù)信號,對應(yīng)訓(xùn)練集的標(biāo)簽為經(jīng)過功率放大器后的信號。訓(xùn)練數(shù)據(jù)按照訓(xùn)練集、驗證集、測試集8∶1∶1的比例進行劃分。
輸入層:輸入層神經(jīng)元數(shù)目為3個,其中輸入信號s=[x1,x2,…,xn],其中第一個神經(jīng)元的輸入信號為s1=[x1,x2,…,xn],第二個神經(jīng)元的輸入信號為s2=[x2,x3,…,xn,0],第三個神經(jīng)元的輸入信號為s3=[x3,x4,…,xn,0,0]。通過這種方法可以使神經(jīng)網(wǎng)絡(luò)具有記憶效應(yīng)。
隱藏層:為了使神經(jīng)網(wǎng)絡(luò)具有充分的表示能力,將三個隱藏層的神經(jīng)元數(shù)量設(shè)置為100。當(dāng)隱藏層神經(jīng)元的數(shù)目過少時,神經(jīng)網(wǎng)絡(luò)的表征能力較弱,當(dāng)隱藏層的神經(jīng)元數(shù)目過多時,訓(xùn)練時的參數(shù)較多,訓(xùn)練需要的時間過長。
輸出層:最后一層有一個神經(jīng)元,激活函數(shù)為Re-LU函數(shù):
最終的輸出是通過神經(jīng)網(wǎng)絡(luò)估計出的信號。得到輸出的估計信號后,將其與標(biāo)簽信號進行對比,并通過反向傳播進行訓(xùn)練。神經(jīng)網(wǎng)絡(luò)用來學(xué)習(xí)可見光通信系統(tǒng)中的非線性映射關(guān)系。表現(xiàn)在數(shù)據(jù)集上就是對于相同的輸入信號,使神經(jīng)網(wǎng)絡(luò)預(yù)測的輸出信號與真實信號盡可能相似。因此本文提出用交叉熵作為損失函數(shù):
其中m為信號長度,yout為功率放大器輸出的真實信號,^yout為神經(jīng)網(wǎng)絡(luò)輸出的估計信號。采用均方誤差作為損失函數(shù)可以有效檢測模型預(yù)測值和真實值之間的偏差。
將信號通過16QAM的調(diào)制方式進行調(diào)制,隨后經(jīng)過埃爾米特(Hermitian)映射,將復(fù)數(shù)信號轉(zhuǎn)化為實數(shù)信號,經(jīng)過添加偏置的方式將信號轉(zhuǎn)化為正實數(shù)信號。將經(jīng)過功率放大器之前的信號作為訓(xùn)練數(shù)據(jù),將通過功率放大器后的信號作為對應(yīng)的標(biāo)簽進行無監(jiān)督學(xué)習(xí),優(yōu)化器采用Adam優(yōu)化器,學(xué)習(xí)率為0.005,進行3000次完整訓(xùn)練,訓(xùn)練值和真實值的均方誤差隨訓(xùn)練次數(shù)的變化情況如圖4所示。隨著訓(xùn)練輪數(shù)的增加,預(yù)測值和真實信號的差距逐步減小,并且在訓(xùn)練輪數(shù)達到2500輪時逐步趨于平穩(wěn)。在3000輪訓(xùn)練結(jié)束后,測試集中的預(yù)測信號和真實輸出信號的均方誤差為4.53×10-6,而基于最小均方算法的Volterra多項式級數(shù)的預(yù)測信號和真實輸出信號的均方誤差為8.64×10-4??梢钥吹交谏疃葘W(xué)習(xí)的建模方法比傳統(tǒng)的基于最小均方算法的Volterra多項式級數(shù)的方法有了顯著提升。
圖4 誤差隨訓(xùn)練輪數(shù)變化趨勢
我們選取箱線圖來查看信號分布,如圖5所示,從左到右依次為實際信號的箱線圖、Volterra級數(shù)多項式輸出信號的箱線圖,神經(jīng)網(wǎng)絡(luò)輸出的箱線圖??梢钥吹綄嶋H信號的中位數(shù)在0.75附近,信號范圍在0~1.0。Volterra級數(shù)多項式的信號范圍在0.2~1.2附近,中位數(shù)低于0.75。神經(jīng)網(wǎng)絡(luò)的輸出信號中位數(shù)在0.75附近,范圍在0~1.0。神經(jīng)網(wǎng)絡(luò)輸出信號與實際輸出信號分布基本一致。
圖5 不同方案輸出信號與實際輸出信號箱線圖
我們選取信號的一部分進行不同方案間的對比,如圖6所示。選取1到64共64單位信號長度,查看輸出信號的實際情況,可以看到在神經(jīng)網(wǎng)絡(luò)方法的輸出信號與真實信號幾乎重合,僅在有限區(qū)域內(nèi)有一定偏差。Volterra多項式級數(shù)方法的輸出信號在大體趨勢上與真實信號一致,但是擬合效果仍與神經(jīng)網(wǎng)絡(luò)方法有較大差距。
圖6 不同方案輸出信號與實際輸出信號對比
我們生成10000條隨機信號序列,按照BPSK、16QAM、64QAM三種常見的可見光調(diào)制方式進行調(diào)制,統(tǒng)計在Volterra多項式級數(shù)和神經(jīng)網(wǎng)絡(luò)方法下的輸出結(jié)果與實際輸出結(jié)果的均方誤差,如表1所示。
表1 隨機信號在不同擬合方法、不同調(diào)制方式下的均方誤差
可以看到,相同調(diào)制方式下,BPSK調(diào)制方式下,Volterra多項式級數(shù)方法的均方誤差為8.54×10-4,神經(jīng)網(wǎng)絡(luò)方法擬合后的均方誤差為4.40×10-6。16QAM調(diào)制方式下,Volterra多項式級數(shù)方法的均方誤差為8.64×10-4,神經(jīng)網(wǎng)絡(luò)方法擬合后的均方誤差為4.53×10-6)。64QAM調(diào)制方式下,Volterra多項式級數(shù)方法的均方誤差為1.20×10-3,神經(jīng)網(wǎng)絡(luò)方法擬合后的均方誤差為6.40×10-6。神經(jīng)網(wǎng)絡(luò)方法的擬合效果要顯著優(yōu)于多項式級數(shù)方法。
本文提出一種基于深度學(xué)習(xí)的可見光通信非線性建模方法。在可見光通信系統(tǒng)功率放大器非線性建模的過程中,存在著記憶效應(yīng)和非線性效應(yīng)。目前廣泛應(yīng)用的方法是基于多項式的參數(shù)估計方法,如基于最小均方算法的Volterra多項式級數(shù)建模方法存在著擬合精度不足,對記憶效應(yīng)的刻畫能力較差的問題。本文以經(jīng)過功率放大器前后的模擬信號作為訓(xùn)練數(shù)據(jù)和標(biāo)簽,采用均方誤差作為損失函數(shù),訓(xùn)練后可以達到比原有的多項式建模方法更好的擬合程度,更好的表示能力。以均方誤差為指標(biāo)比傳統(tǒng)的基于最小均方算法的Volterra的多項式級數(shù)建模方法有顯著提高,證明了算法的有效性。