廖 勇,李玉杰
(重慶大學(xué)微電子與通信工程學(xué)院,重慶 400044)
大規(guī)模多輸入多輸(Multiple-Input Multiple-Output,MIMO)作為下一代無線通信系統(tǒng)的一項(xiàng)關(guān)鍵技術(shù),通過在基站(Base Station,BS)配備數(shù)十根甚至數(shù)百根天線,可以大幅度提高頻譜效率和能量效率[1].為了充分利用空間分集和復(fù)用增益,大規(guī)模MIMO系統(tǒng)需要獲取足夠精確的下行鏈路信道狀態(tài)信息(Channel State Information,CSI)[2].在頻分雙工(Frequency Division Duplexing,F(xiàn)DD)大規(guī)模MIMO 系統(tǒng)中,用戶設(shè)備(User Equipment,UE)必須首先估計(jì)下行鏈路CSI,再通過反饋鏈路反饋回BS[3].當(dāng)收發(fā)端天線數(shù)量不大時(shí),基于碼本的反饋方法可以有效地解決反饋開銷問題,如文獻(xiàn)[4,5]提出的通過網(wǎng)格解碼和低緯度矢量量化碼本的方法.不過隨著天線數(shù)的增加,碼本變得非常巨大,碼字搜索也變得異常困難.
在大規(guī)模MIMO 系統(tǒng)中,信道間具有很強(qiáng)的空間相關(guān)性[6].一方面,由于真實(shí)環(huán)境中有限的散射環(huán)境,時(shí)域無線多徑信道大部分路徑的能量為零,這使得多徑信道呈現(xiàn)出稀疏性;另一方面,由于BS 周圍的散射體有限,大規(guī)模MIMO 信道在角度域內(nèi)呈現(xiàn)稀疏性[7].因此研究人員將壓縮感知(Compressed Sensing,CS)[8]應(yīng)用在CSI 反饋中.不過現(xiàn)有的CS 方法存在兩個(gè)問題:一個(gè)是嚴(yán)重依賴信道的稀疏特性.然而真實(shí)信道并非嚴(yán)格稀疏;另一個(gè)是現(xiàn)存CS 算法大多都依靠迭代完成信號的重建,在低壓縮率時(shí)其重建性能差,重建速度較慢.
近年來,深度學(xué)習(xí)(Deep Learning,DL)方法逐漸在CSI 反饋中得到應(yīng)用,已有研究學(xué)者提出了一些基于DL 的CSI 反饋框架.如文獻(xiàn)[9~11]提出的一系列基于DL的信道恢復(fù)框架,即在UE使用編碼器將信道矩陣轉(zhuǎn)換為碼字,在BS 解碼器使用ResNet 或雙向長短期記憶網(wǎng)絡(luò)來恢復(fù)信道矩陣.另外,為了降低網(wǎng)絡(luò)的復(fù)雜度,也有研究學(xué)者提出了CS 聯(lián)合DL 的框架[12],先在UE 利用高斯隨機(jī)矩陣將CSI 矩陣壓縮為測量向量,接著在BS 利用金字塔池化網(wǎng)絡(luò)和ResNet 來恢復(fù)信道矩陣,但其性能并未有明顯提升.
針對高復(fù)雜度和反饋開銷大的問題,本文提出了一種輕量化低復(fù)雜度的CSI 反饋網(wǎng)絡(luò)LCsiNet,該網(wǎng)絡(luò)在UE 采用連續(xù)的平均池化層(Average Pooling,AP)、卷積網(wǎng)絡(luò)(Convolution Neural Network,CNN)和深度可分離卷積網(wǎng)絡(luò)(Depthwise Separable Convolution Neural Network,DSCNN)[13]所組成的結(jié)構(gòu)逐步縮小原始的CSI矩陣得到壓縮后的碼字矩陣,其中AP 是利用了一種計(jì)算量較小的池化技術(shù)來縮小矩陣的尺度,而DSCNN 是一種通過減少網(wǎng)絡(luò)參數(shù)量來降低計(jì)算密度的改進(jìn)型CNN,在加深網(wǎng)絡(luò)的同時(shí)提升其性能.BS首先采用連續(xù)的上采樣層(Up Sampling,US)、CNN 和DSCNN 所組成的結(jié)構(gòu)逐步擴(kuò)大壓縮的碼字矩陣,重建初始CSI 矩陣;接著,利用殘差網(wǎng)絡(luò)[14](Residual Network,ResNet)這種可以逐步微調(diào)的結(jié)構(gòu)構(gòu)建了一種雙路的殘差卷積塊,將初始CSI 逐漸逼近原始CSI.我們在復(fù)雜度和重建質(zhì)量指標(biāo)對比了目前主流的CSI 反饋框架CsiNet、CSReNet和CsiNetPlus.分析與仿真結(jié)果表明,相較于這些代表性方法,本文所提方法在復(fù)雜度、重構(gòu)質(zhì)量以及運(yùn)行時(shí)間上均有更好的性能表現(xiàn).
我們考慮一種單小區(qū)大規(guī)模MIMO通信系統(tǒng),該通信系統(tǒng)在基站端有Nt(Nt?1)根發(fā)射天線,用戶端有單根接收天線,采用正交頻分復(fù)用(Orthogonal Frequency Division Multiplexing,OFDM),并有Ns個(gè)子載波.接收端信號y可以被描述為
為更好地設(shè)計(jì)預(yù)編碼向量ui,在CSI反饋流程中,需要在基站端得到一個(gè)足夠精確的,而這正是CSI反饋當(dāng)中最需要解決的問題,通過更低的反饋量獲得更好的重建效果.在FDD 大規(guī)模MIMO 系統(tǒng)中,CSI 反饋即是在UE 經(jīng)信道估計(jì)得到的信道矩陣通過反饋鏈路發(fā)送到BS.此時(shí)我們需要反饋的數(shù)據(jù)量可以被表示為Ns×Nt個(gè)復(fù)數(shù)值,在反饋鏈路中,這個(gè)數(shù)據(jù)量是非常大的,需要占據(jù)大量珍貴的帶寬資源.由于CSI 矩陣在虛擬角度域是稀疏的,該虛擬角度域矩陣可通過兩個(gè)離散傅里葉變換(Discrete Fourier Transform,DFT)矩陣求得
其中,Ds是一個(gè)Ns×Ns的DFT 矩陣,Dt是一個(gè)Nt×Nt的DFT 矩陣.在真實(shí)的信道環(huán)境中,信號的多徑時(shí)延只集中在幾條路徑上,因此導(dǎo)致角度域中大多數(shù)元素是為0的,僅前′行中包含非零元素,因此我們將原始的Ns×Nt矩陣截?cái)酁榈慕財(cái)嗑仃?在本文當(dāng)中,我們所涉及的CSI流程中需要反饋的矩陣即為上述的截?cái)嗑仃?/p>
其中,Sen是編碼器的輸出結(jié)果,Sen在不同的壓縮率下有不同的矩陣大小,fen(·)表示為編碼器函數(shù).接著,我們將得到的碼字矩陣Sen反饋回BS 端.一旦BS 得到壓縮后的CSI矩陣Sen,就可以通過BS基于DL框架實(shí)現(xiàn)的解碼器重建矩陣H,這個(gè)重建過程可以被表述為
卷積神經(jīng)網(wǎng)絡(luò)本身所具有的對“圖像”進(jìn)行特征提取的特性,因此在面對CSI 反饋領(lǐng)域中的大量CSI 矩陣時(shí),二維卷積神經(jīng)網(wǎng)絡(luò)可以提取其中的特征信息,實(shí)現(xiàn)UE 處CSI 矩陣的壓縮以及BS 處CSI 矩陣的重建.現(xiàn)行的基于DL 的CSI 反饋框架基本為CNN 和全連接層(Full Connected layer,F(xiàn)C)相結(jié)合的形式所構(gòu)建,然而這種形式所構(gòu)建的網(wǎng)絡(luò)其網(wǎng)絡(luò)參數(shù)量和計(jì)算密度都被FC所占據(jù),復(fù)雜度較高.因此,本文提出一種輕量化LCsi-Net,目的是為了降低網(wǎng)絡(luò)的復(fù)雜度,同時(shí)提高網(wǎng)絡(luò)的重建性能.
在本文中,我們所提的基于DL 的網(wǎng)絡(luò)LCsiNet 是一種完全基于卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),相比如今較新的基于DL的CSI反饋框架廣泛使用FC和CNN結(jié)合而言,擁有更低的復(fù)雜度,網(wǎng)絡(luò)參數(shù)量也更少.降低網(wǎng)絡(luò)的參數(shù)量和復(fù)雜度其目的是為了更低的模型存儲(chǔ)占用和計(jì)算復(fù)雜度.這樣一來,UE 通信終端計(jì)算負(fù)載更低,存儲(chǔ)占用更小.
為了壓縮CSI 矩陣同時(shí)降低網(wǎng)絡(luò)參數(shù)量和計(jì)算復(fù)雜度,我們引入了AP、DSCNN 和US.前文中,對于CSI復(fù)數(shù)截?cái)嗑仃嘓∈,為了方便數(shù)據(jù)的處理和訓(xùn)練,我們將其轉(zhuǎn)化為(即將實(shí)部和虛部分為兩個(gè)不同的通道).在針對不同的天線配置時(shí),矩陣的大小可根據(jù)DFT 變換之后確定,此時(shí)我們改動(dòng)網(wǎng)絡(luò)的輸入輸出大小即可.理由是在天線配置加大的情況下,角度域矩陣會(huì)逐漸增大,但是信號的能量依然只是集中在部分路徑上,整個(gè)角度域矩陣的稀疏程度也會(huì)增大.
具體細(xì)節(jié)可見圖1 中的UE encoder 部分,將H作為UE 編碼器的輸入,首先經(jīng)過一個(gè)ConvBN(它由一個(gè)3×3 卷積核的CNN、批量歸一化層(Batch Normalization,BN)和激活函數(shù)LeakyReLU 組成),輸出特征圖數(shù)目為64.接著,通過連續(xù)的四個(gè)AP-SEConvBN(SEConvBN 與ConvBN 不同的是,其中的CNN 被更換為3×3卷積核的DSCNN)和一個(gè)AP-ConvBN,得到經(jīng)過壓縮后的碼字矩陣Sen,特征圖數(shù)目的變換為64 →128 →256 →M/4.每個(gè)AP-SEConvBN 都由一個(gè)池化窗口大小為2×2 的AP和一個(gè)SEConvBN 構(gòu)成,每個(gè)AP-ConvBN 由一個(gè)池化窗口大小為2×2 的AP 和一個(gè)ConvBN 構(gòu)成.DSCNN 相比CNN,參數(shù)量更少.DSCNN 和CNN 的參數(shù)量計(jì)算的具體細(xì)節(jié)描述如:假設(shè)輸入兩個(gè)卷積層的矩陣規(guī)格為(w,l,c),卷積核心大小(k,k)并且不計(jì)算偏置項(xiàng),最后的輸出通道數(shù)為m.對于CNN 來說,有多少個(gè)輸入通道,就有多少個(gè)卷積核.CNN 的參數(shù)量為m×k×k×c.對于DSCNN,首先進(jìn)行通道卷積(即可以得到與輸入通道數(shù)相等的特征圖數(shù)目)接著,在對每個(gè)輸出特征圖進(jìn)行1×1 的逐點(diǎn)卷積,參數(shù)量計(jì)算得到(k×k+m) ×c.與CNN相比,DSCNN參數(shù)量得到減少.
圖1 編解碼器結(jié)構(gòu)設(shè)計(jì)
圖1 中的BS decoder 部分,對于解碼器結(jié)構(gòu)設(shè)計(jì),相比于編碼器結(jié)構(gòu)設(shè)計(jì)而言要更復(fù)雜,網(wǎng)絡(luò)層數(shù)更深.我們將UE 編碼器(encoder)輸出得到碼字矩陣Sen輸入BS解碼器(decoder),編碼器首先是1個(gè)US-ConvBN 和3個(gè)連續(xù)的US-SEConvBN,每個(gè)US-ConvBN 由一個(gè)數(shù)據(jù)插值窗口大小為2×2 的US 和一個(gè)ConvBN 構(gòu)成,每個(gè)US-SEConvBN 由一個(gè)US 和一個(gè)SEConvBN 構(gòu)成.US 可以使得輸入的數(shù)據(jù)維度提升,其原理是通過對特征圖數(shù)據(jù)的行和列進(jìn)行重復(fù)的插值過程完成升維.連續(xù)的4個(gè)US-ConvBN 和US-SEConvBN 的特征圖數(shù)目變換過程為M/4 →256 →128 →64.接著,通過一個(gè)ConvBN得到Ns′×Nt×2 的輸出后,再輸入到連續(xù)的兩個(gè)ConvBlock,每個(gè)ConvBlock 都是根據(jù)殘差網(wǎng)絡(luò)的形式所構(gòu)建的一種參數(shù)量較少的雙路殘差卷積塊.首先將的輸入分為兩支路,每條支路均由CNN 構(gòu)成.上邊的支路采用卷積核1×5 和5×1 的兩個(gè)CNN,輸出特征圖數(shù)目都為8.下邊的支路采用3×3、1×7 和7×1 的卷積核的CNN 構(gòu)成,輸出特征圖數(shù)目也都為8.接著,將兩條支路的輸出特征圖進(jìn)行合并,即輸出特征圖數(shù)目為兩支路之和為16.通過一個(gè)ConvBN 后的輸出與整個(gè)ConvBlock 的輸入的和作為ConvBlock 的輸出.最后將′×Nt×2 的輸出通過一個(gè)3×3 卷積核的CNN(激活函數(shù)Sigmoid,可以將數(shù)據(jù)調(diào)整至0~1)得到最終的重建結(jié)果
對于LCsiNet 的訓(xùn)練,我們采用端到端的訓(xùn)練方式(編碼器與解碼器作為一個(gè)網(wǎng)絡(luò)進(jìn)行訓(xùn)練),這樣不僅能夠方便地對我們所設(shè)計(jì)的網(wǎng)絡(luò)進(jìn)行訓(xùn)練和調(diào)試,同時(shí)也能更好地學(xué)習(xí)調(diào)整網(wǎng)絡(luò)結(jié)構(gòu)中的權(quán)重和偏置參數(shù).假設(shè)我們輸入LCsiNet 的數(shù)據(jù)為Hi,那么整個(gè)編解碼器的輸入輸出可表示為其中的i是第i個(gè)樣本.在訓(xùn)練過程中,我們采用自適應(yīng)矩估計(jì)(Adaptive moment estimation,Adam)算法優(yōu)化器,計(jì)算表達(dá)式見式(6).
其中,‖ · ‖2表示為歐幾里得范數(shù),T為訓(xùn)練樣本的總量.
損失函數(shù)采用均方誤差(Mean Square Error,MSE),其計(jì)算方式如式(7).
時(shí)間和空間復(fù)雜度是衡量一個(gè)算法復(fù)雜度的兩個(gè)重要指標(biāo).同樣的在DL 中,也有兩個(gè)具體的復(fù)雜度指標(biāo),即對應(yīng)時(shí)間復(fù)雜度的浮點(diǎn)運(yùn)算數(shù)(FLOating Point operations,F(xiàn)LOPs),對應(yīng)空間復(fù)雜度的模型參數(shù)量(Model Parameters,MP).本文所提的LCsiNet 其目的是為了降低模型的復(fù)雜度,提升CSI 重建精度.由于本文所提的模型以及與之對比已提出的模型使用的網(wǎng)絡(luò)結(jié)構(gòu)主要是全連接層和卷積層.因此對全連接層和卷積層的浮點(diǎn)運(yùn)算數(shù)和網(wǎng)絡(luò)參數(shù)量進(jìn)行計(jì)算分析.
全連接層的復(fù)雜度計(jì)算:假設(shè)輸入的數(shù)據(jù)維度(N,D),隱藏層權(quán)重維度(D,out),輸出(N,out),那么它的FLOPs和MP見式(8)和(9).
卷積層的復(fù)雜度計(jì)算:假設(shè)輸出特征圖的寬高分別為W和H,卷積核大小為K1×K2,Cin為輸入通道數(shù)(卷積核的層數(shù)),Cout為輸出通道數(shù)(卷積核的個(gè)數(shù)),那么它的FLOPs和MP見式(10)和(11).
根據(jù)上述計(jì)算方式,我們分別得到了CsiNet、Csi-NetPlus 和LCsiNet 的MP 和FLOPs.由于CS-ReNet 中其編碼器是由隨機(jī)投影矩陣構(gòu)成,并不是基于DL 所搭建的深度自編碼器,因此不納入該對比中.從表1 我們可以看出,單純在編碼器中,F(xiàn)C所占有的參數(shù)量是極多數(shù)的,即便是更大的卷積核更多的卷積層的CsiNetPlus,F(xiàn)C 依然占據(jù)其模型參數(shù)量的大多數(shù).我們所提的網(wǎng)絡(luò)結(jié)構(gòu)也正是針對該問題所提,通過去除FC,大大降低UE 端編碼器的復(fù)雜度之外,轉(zhuǎn)而利用參數(shù)量,計(jì)算密度都較小的DSCNN和AP結(jié)合來達(dá)到降低特征圖大小,完成矩陣壓縮過程.
表1 編碼器結(jié)構(gòu)中FC層對參數(shù)量的占用
另外,從表2 對三種方法的整體結(jié)構(gòu)MP 和FLOPs對比來看,LCsiNet 在AP、US、DSCNN 和CNN 相結(jié)合的形式下,MP 和FLOPs 相比其余的網(wǎng)絡(luò)都要小,NMSE 和ρ也都有明顯的提升,說明所提網(wǎng)絡(luò)LCsiNet 在能夠提升性能之外,也降低了網(wǎng)絡(luò)的復(fù)雜度.
表2 三種方法的MP和FLOPs的對比
在Matlab 仿真平臺中采用COST2100[15]信道模型產(chǎn)生訓(xùn)練集、驗(yàn)證集和測試集數(shù)據(jù),該信道模型是一種基于幾何的隨機(jī)信道模型,產(chǎn)生兩類數(shù)據(jù)集:(1)工作頻率為5.3 GHz 頻段的室內(nèi)微蜂窩場景.(2)工作頻率300 MHz 頻段的室外場景.發(fā)射接收天線數(shù)32、1,線性天線陣列,波長為1/2天線間距,子載波數(shù)1024.原始信道矩陣在角度域是稀疏的,DFT 變換之后,只取前′=32 行.采用的深度學(xué)習(xí)開源框架為Keras.數(shù)據(jù)集分布:訓(xùn)練驗(yàn)證測試:1000003000020000.批次數(shù)據(jù)大?。╞atch size)為200,訓(xùn)練輪次(epoch)1500,學(xué)習(xí)率(learning rate)0.001.仿真設(shè)備配置CPU:Inte(lR)Xeon(R)E5-2678,內(nèi)存:64 GB,GPU:RTX 2080Ti.
將LCsiNet 網(wǎng)絡(luò)與現(xiàn)行CS 算法和DL 算法進(jìn)行比較.CS 算法有TVAL3[16]、OMP[17]方法.DL 算法有Csi-Net、CsiNetPlus 和CS-ReNet.TVAL3 是一種非??焖俚幕谌兞康幕謴?fù)算法,它考慮了越來越復(fù)雜的先驗(yàn)知識.OMP 是一種需要知道稀疏度先驗(yàn)的貪婪迭代算法.CsiNet 是最早使用DL 的自編碼器方法,它引入了殘差結(jié)構(gòu)增強(qiáng)恢復(fù)效果.CsiNetPlus 則是在CsiNet 的基礎(chǔ)上采用更大卷積核并且使用更多的殘差結(jié)構(gòu)來提升CSI 重建質(zhì)量.CS-ReNet 引入金字塔池化層SPP-Net 的概念來消除CsiNet 出現(xiàn)的過擬合現(xiàn)象,同時(shí)利用隨機(jī)投影矩陣壓縮信號減輕UE端的計(jì)算存儲(chǔ)壓力.
以下分析性能優(yōu)劣采用兩個(gè)指標(biāo):計(jì)算H和之間的歸一化均方誤差(Normalized Mean Square Error,NMSE),見式(12).
計(jì)算重建子載波向量與原始子載波向量之間的余弦相似度,見式(13).
根據(jù)圖2 和圖3 所示,壓縮率(Compression Ratio,CR)的取值根據(jù)式子進(jìn)行確定.M的取值為32、64、128、256、512,對應(yīng)的CR值為1/4、1/8、1/16、1/32、1/64.在1/4到1/16壓縮率之間,基于CS的方法還是有效的,但是在更低壓縮率時(shí),高斯隨機(jī)矩陣采樣無法提取有效信息,因此基于CS 的方法是無法重建信號的.如TVAL3 在1/16 壓縮率時(shí),NMSE 和余弦相似度驟降.因此我們可以得出一個(gè)結(jié)論,低壓縮率下,CS算法的重構(gòu)是無效的.反觀基于DL 的方法,雖然也受壓縮率大小的影響,但是其在更低壓縮率的表現(xiàn)顯然是優(yōu)于CS算法,在應(yīng)對更低壓縮率時(shí),網(wǎng)絡(luò)所能學(xué)習(xí)到的原始信號的信息更多,重建效果也就更好.本文所提的LCsiNet在1500輪的訓(xùn)練條件下,也表現(xiàn)出了更好的NMSE 和余弦相似度.從圖中可以看到CsiNetPlus 較之CsiNet 有不小性能提升,其本質(zhì)上是增加了網(wǎng)絡(luò)的深度,改用了更大的卷積核.而本文所提的LCsiNet 則是在保證良好的NMSE和余弦相似度下,達(dá)到更低的復(fù)雜度,更少的網(wǎng)絡(luò)參數(shù)量.
圖2 不同壓縮率下的NMSE
圖3 不同壓縮率下的ρ
除此之外,由于CSI矩陣獲取的精確性往往會(huì)影響B(tài)S 對預(yù)編碼向量的設(shè)計(jì).預(yù)編碼向量設(shè)計(jì)的好壞又會(huì)決定整個(gè)系統(tǒng)的性能表現(xiàn),因此我們這里選取兩個(gè)具有代表性的室內(nèi)場景下的壓縮率1/4 和1/32 進(jìn)行誤碼率的仿真.仿真結(jié)果如圖4,從圖中可以看出,本文所提出的LCsiNet 在恢復(fù)精度更高的情況下,給誤碼率也帶來一定程度的增益.其次,在執(zhí)行測試集的單個(gè)樣本的平均運(yùn)行時(shí)間上,CsiNet:0.18 ms,CsiNetPlus:0.23 ms,LCsiNet:0.15 ms,基于DL 的方法相比基于CS 的算法,會(huì)快幾十倍到上百倍.
圖4 室內(nèi)場景下的誤碼率
在本文中,我們提出了一種輕量化低復(fù)雜度的CSI反饋框架LCsiNet,相比于現(xiàn)有的基于DL的方法和基于CS 的方法,其信道矩陣的重建質(zhì)量更好.更好地利用了AP、US、DSCNN 和CNN 的特性,合理地將原始CSI 進(jìn)行壓縮和重建,采用參數(shù)量更小且性能更優(yōu)的DSCNN加深網(wǎng)絡(luò),提升了CSI 重建的精度.通過仿真分析對比發(fā)現(xiàn),LCsiNet 在降低網(wǎng)絡(luò)復(fù)雜度的同時(shí)也獲得了不錯(cuò)的性能表現(xiàn).