華敏妤,張逸彬,孫金龍,楊潔
(南京郵電大學(xué)通信與信息工程學(xué)院,江蘇 南京 210023)
大規(guī)模MIMO(Multi-Input Multi-Output,多輸入多輸出)技術(shù)被認(rèn)為是未來(lái)通信的關(guān)鍵技術(shù)[1-3],然而,對(duì)于大規(guī)模MIMO 系統(tǒng),其潛在的益處很大程度上取決于BS(Base Station,基站)側(cè)CSI(Channel State Information,信道狀態(tài)信息)的準(zhǔn)確獲取[4]。在FDD(Frequency Division Duplexing,頻分雙工)系統(tǒng)中,由于上下行通信鏈路所處的頻段不同,無(wú)法利用信道互易性由上行CSI 估計(jì)得到下行CSI[6],所以必須采用反饋方案讓BS 側(cè)實(shí)時(shí)地獲取CSI,這必然會(huì)消耗寶貴的帶寬資源[7]。在大規(guī)模MIMO 系統(tǒng)中,隨著系統(tǒng)帶寬的增加,反饋量也會(huì)成倍增加,而降低反饋量可以有效提升頻譜利用率和系統(tǒng)性能。因此,合理的信道反饋是較為精確地獲取下行CSI 的有效方案。
近年來(lái),許多學(xué)者致力于探索在FDD 系統(tǒng)下CSI 反饋的方案。與傳統(tǒng)的基于碼本的部分CSI 反饋相比,更多的研究方案傾向于使用DL(Deep Learning,深度學(xué)習(xí))技術(shù)獲取BS 側(cè)的CSI[8]。C-K Wen[8]等人使用深度學(xué)習(xí)技術(shù)開(kāi)發(fā)了一種新型CSI 壓縮反饋機(jī)制:CsiNet。該機(jī)制有效利用了訓(xùn)練樣本中的信道結(jié)構(gòu),在UE(User Equipment,用戶設(shè)備)側(cè)將估計(jì)的下行CSI 壓縮成碼字并反饋給BS,再在BS 側(cè)恢復(fù)下行CSI。J Guo[9]等人基于CsiNet 進(jìn)一步提出了一個(gè)多種壓縮率的傳感神經(jīng)網(wǎng)絡(luò)框架:CsiNet+,提升了CsiNet的網(wǎng)絡(luò)性能。與CsiNet+不同的是,劉振宇[10]提出了基于維度壓縮與碼字量化聯(lián)合優(yōu)化的CSI 反饋方案CQNet 網(wǎng)絡(luò),以解決CSI 矩陣壓縮反饋傳輸效率低的問(wèn)題。除此以外,隨著對(duì)下行CSI 反饋研究的深入,下行鏈路會(huì)造成過(guò)大的開(kāi)銷。對(duì)此,Y Cui[11]等人探索了一種新的解決方案,提出了基于Google 著名的Transformer 結(jié)構(gòu)的深度學(xué)習(xí)網(wǎng)絡(luò)TransNet 來(lái)完成CSI 的壓縮和反饋。
目前無(wú)線通信領(lǐng)域中許多IEEE802.11 標(biāo)準(zhǔn)使用OFDM(Orthogonal Frequency Division Multiplexing,正交頻分復(fù)用)調(diào)制信號(hào),上述方法不可避免地會(huì)帶來(lái)I/Q樣本的分解問(wèn)題。針對(duì)訓(xùn)練過(guò)程分解復(fù)值帶來(lái)的信息損失,本文提出了一種基于深度學(xué)習(xí)[12]的FDD 大規(guī)模MIMO系統(tǒng)CSI 壓縮反饋方案——CVCNN(Complex-Valued Convolutional Neural Network,復(fù)數(shù)卷積神經(jīng)網(wǎng)絡(luò))。該方案利用CVCNN 架構(gòu)對(duì)CSI 中的I/Q 樣本直接進(jìn)行壓縮和解壓縮,在BS 端近乎完美地恢復(fù)出了完整的CSI。
本文考慮一個(gè)簡(jiǎn)單的大規(guī)模MIMO 通信系統(tǒng)[16],假設(shè)在BS 端有Nt根發(fā)射天線,UE 端有Nr根接收天線,該通信系統(tǒng)有Nc個(gè)子載波、No個(gè)OFDM 符號(hào)數(shù)。由于傳輸過(guò)程中不可避免會(huì)產(chǎn)生噪聲,因此在第i個(gè)子載波上接收信號(hào)可以表示為:
其中,yi∈C 為接收端的信號(hào),為發(fā)送數(shù)據(jù)矢量,為第i個(gè)子載波上Nt根發(fā)射天線與Nr根接收天線之間的信道矩陣,ni∈C 為信道中的加性高斯白噪聲。CSI 對(duì)應(yīng)的信道矩陣H是每個(gè)子載波信息的集合,則CSI 矩陣可以表示為:
其中,hi為一個(gè)復(fù)數(shù)值,代表第i個(gè)子載波的衰落增益和相位偏移,i取整數(shù)且。
在FDD 系統(tǒng)中,下行鏈路CSI 矩陣由UE 估計(jì)并反饋給BS,具體的CSI 反饋過(guò)程如圖1 所示。假設(shè)UE 端獲得了完美的下行CSI,故將重點(diǎn)放在下行CSI 的壓縮反饋過(guò)程中。本文提出的CVCNN 算法將編碼器部署在UE端,編碼器由特征提取模塊和壓縮模塊組成,以減少反饋開(kāi)銷。壓縮后的CSI 矩陣H可以表示為:
其中,fen表示壓縮過(guò)程,H和分別表示原始的和壓縮后的下行CSI 矩陣,λ1表示壓縮過(guò)程的訓(xùn)練參數(shù)。將通過(guò)信道發(fā)送給BS,BS 端部署了相應(yīng)的譯碼器,通過(guò)解壓縮操作重構(gòu)接近最佳的信道矩陣。具體的解壓縮過(guò)程可以表示為:
其中,fde表示解壓縮過(guò)程,表示從重構(gòu)出的下行鏈路CSI 矩陣,λ2表示解壓縮過(guò)程的訓(xùn)練參數(shù)。
圖1 CSI反饋過(guò)程圖
結(jié)合式(3) 和式(4),可以采用MSE(Mean Square Error,均方誤差)來(lái)衡量整個(gè)網(wǎng)絡(luò)的損失。MSE 的公式可以表示為:
其中,H和分別表示神經(jīng)網(wǎng)絡(luò)的輸入和輸出,表示L2范數(shù)。
為了進(jìn)一步減小MSE 的誤差影響,使用NMSE(Normalized Mean Square Error,歸一化均方誤差)來(lái)衡量測(cè)試值與真實(shí)值之間的差異,NMSE 的公式為:
其中,H和分別表示原始的CSI 矩陣和重構(gòu)得到的CSI 矩陣。此外,為了衡量反饋CSI 的質(zhì)量,還需余弦相似性指標(biāo):
其中,Hn表示第n個(gè)樣本的原始CSI 矩陣,表示第n個(gè)樣本重構(gòu)出的CSI 矩陣,NTest表示測(cè)試集的樣本數(shù)。
目前大多數(shù)用于深度學(xué)習(xí)的體系結(jié)構(gòu)以及算法都是基于實(shí)值表示的,然而對(duì)于無(wú)線通信領(lǐng)域采用的OFDM調(diào)制信號(hào)來(lái)說(shuō),這會(huì)帶來(lái)I/Q 信號(hào)分解的問(wèn)題。受復(fù)卷積和復(fù)數(shù)批量歸一化算法[18]的啟發(fā),提出了采用復(fù)數(shù)網(wǎng)絡(luò)的CVCNN 算法對(duì)高維I/Q 信號(hào)直接進(jìn)行操作,避免信號(hào)分解帶來(lái)的信息損失問(wèn)題。
由于CVCNN 算法中采用的是三維復(fù)數(shù)卷積核,為了更好地理解三維復(fù)數(shù)卷積,參考Trabelsi[18]等人的相關(guān)工作,簡(jiǎn)要介紹二維復(fù)數(shù)卷積操作。
為了在復(fù)數(shù)域中實(shí)現(xiàn)與傳統(tǒng)實(shí)值二維卷積等價(jià),Trabelsi等人將復(fù)數(shù)濾波器矩陣W=A+iB與復(fù)數(shù)向量h=x+iy卷積,其中A和B是實(shí)數(shù)矩陣,x和y是實(shí)數(shù)向量。卷積可得:
為了更加直觀地體現(xiàn)二維復(fù)數(shù)卷積操作,復(fù)數(shù)卷積過(guò)程示意圖如圖2 所示:
圖2 二維復(fù)數(shù)卷積過(guò)程示意圖
在二維復(fù)卷積操作的基礎(chǔ)上,Trabelsi 等人提出了一種基于二維矢量白化的方案以實(shí)現(xiàn)復(fù)數(shù)BN(Batch Normalization,批量歸一化),加快網(wǎng)絡(luò)的訓(xùn)練速度。
K He[19]等人指出,可以通過(guò)在原有的模型中加入殘差網(wǎng)絡(luò),以此緩解在深度神經(jīng)網(wǎng)絡(luò)中增加深度帶來(lái)的梯度消失問(wèn)題。殘差網(wǎng)絡(luò)由于普適性較好,本文將其沿用于CVCNN 架構(gòu),用于提升譯碼的準(zhǔn)確度。
殘差網(wǎng)絡(luò)通過(guò)反向傳播來(lái)自任務(wù)特定損失函數(shù)的誤差來(lái)訓(xùn)練該殘差塊的參數(shù)。為此,CVCNN 對(duì)復(fù)數(shù)輸入執(zhí)行Conv→BN→激活函數(shù)操作,然后將其反饋到第一個(gè)殘差塊。將最后一個(gè)殘差塊的輸出與其上卷積的輸出連接在一起,作為殘差深度神經(jīng)網(wǎng)絡(luò)的輸出,以此提升譯碼準(zhǔn)確度。具體的殘差網(wǎng)絡(luò)結(jié)構(gòu)如圖3 所示:
圖3 殘差網(wǎng)絡(luò)結(jié)構(gòu)示意圖
在CVCNN 架構(gòu)中加入了殘差網(wǎng)絡(luò)模塊,有效控制了網(wǎng)絡(luò)退化的問(wèn)題,提升了網(wǎng)絡(luò)的表現(xiàn)。
為了降低反饋開(kāi)銷,傳統(tǒng)的基準(zhǔn)算法CsiNet 及其改進(jìn)型在壓縮和解壓縮過(guò)程中采用FC(Fully Connected Layer,全連接層),然而,在使用FC 將高維矩陣降維至一維時(shí),會(huì)增加不必要的計(jì)算開(kāi)銷。因此,基于復(fù)數(shù)神經(jīng)網(wǎng)絡(luò)和殘差網(wǎng)絡(luò),提出了CVCNN 壓縮反饋架構(gòu)。CVCNN創(chuàng)新性地使用復(fù)卷積層和反卷積層來(lái)進(jìn)行壓縮與恢復(fù)所估計(jì)的下行CSI 測(cè)量值。具體來(lái)說(shuō),即在編碼器中使用復(fù)卷積層將高維的下行CSI 矩陣壓縮成低維的碼字,在譯碼器中使用反卷積層解壓縮碼字,恢復(fù)出高維的下行CSI。
在所提出的CVCNN 架構(gòu)中,壓縮模塊和解壓縮模塊分別采用一個(gè)復(fù)卷積層和一個(gè)反卷積層來(lái)控制CR(Compression Ratio,壓縮率),即當(dāng)步長(zhǎng)設(shè)置為(2,2,2)時(shí),CR=1/8,此時(shí)壓縮模塊的輸入和輸出的形狀分別為(Nc,No,Nt,Nr,2)和(Nc/2,No/2,Nt×Nr/2,2)。具體的CVCNN 架構(gòu)如圖4 所示。
CVCNN 通過(guò)加深網(wǎng)絡(luò)來(lái)提高網(wǎng)絡(luò)的學(xué)習(xí)能力,其中,特征提取模塊中每個(gè)卷積層濾波器的個(gè)數(shù)為8-16-32-16-8-1。由于在復(fù)卷積層中,濾波器會(huì)以2 倍的系數(shù)進(jìn)行運(yùn)算,故最后一個(gè)復(fù)卷積層中濾波器個(gè)數(shù)設(shè)置為1,以此保證輸出數(shù)據(jù)維度不變。與此同時(shí),在每一個(gè)復(fù)卷積層和反卷積層后使用復(fù)數(shù)BN層和LeakyReLU,分別用于防止過(guò)擬合和避免梯度消失。
綜上所述,可以用算法流程圖來(lái)表示整個(gè)CVCNN的相關(guān)架構(gòu)。
圖4 CVCNN壓縮反饋架構(gòu)圖
將所提出的CVCNN 壓縮反饋算法與傳統(tǒng)的基準(zhǔn)算法CsiNet 進(jìn)行仿真對(duì)比,該比較基于相同的數(shù)據(jù)集與參數(shù)設(shè)置。
數(shù)據(jù)集使用Matlab 5G 工具箱進(jìn)行生成,遵循3GPP TR 38.901 協(xié)議標(biāo)準(zhǔn)中的CDL 模型。本數(shù)據(jù)集采用CDL-A 信道模型,且上行和下行鏈路的載波頻率分別設(shè)置為2.0 GHz 和2.1 GHz,載波間隔分別設(shè)置為15 kHz和30 kHz。在BS 端使用帶有32 根發(fā)射天線的均勻線陣,在UE 端使用2 根接收天線。由于在5G NR 中,資源塊被定義為12 個(gè)連續(xù)的子載波,在進(jìn)行數(shù)據(jù)集生成時(shí)資源塊數(shù)設(shè)置為6,故子載波數(shù)為72。OFDM 符號(hào)數(shù)設(shè)置為14,其余的參數(shù)設(shè)置均是3GPP TR 38.901 協(xié)議標(biāo)準(zhǔn)的默認(rèn)設(shè)置。因此,可以生成所需的下行鏈路CSI 矩陣H0∈C72×14×32×2×2。經(jīng)過(guò)數(shù)據(jù)預(yù)處理后,輸入神經(jīng)網(wǎng)絡(luò)的下行鏈路CSI 矩陣變?yōu)镠∈C72×14×(32×2)×2。
CVCNN 與CsiNet 的參數(shù)設(shè)置一致,具體設(shè)置如表1 所示:
表1 CVCNN參數(shù)設(shè)置
(1)計(jì)算復(fù)雜度
通常一個(gè)神經(jīng)網(wǎng)絡(luò)模型的復(fù)雜度可以用2 個(gè)指標(biāo)來(lái)描述,分別是模型的參數(shù)量和模型的計(jì)算量,其中,模型的計(jì)算量可以通過(guò)浮點(diǎn)運(yùn)算數(shù)FLOPs來(lái)衡量。整個(gè)神經(jīng)網(wǎng)絡(luò)的FLOPs可計(jì)算如下:
其中,D表示該神經(jīng)網(wǎng)絡(luò)的層數(shù),VMl表示某一層輸出特性圖的大小,Kl表示某一層卷積核的大小,Cl-1和Ci分別表示某一層的輸入和輸出通道數(shù)。根據(jù)上述公式和仿真結(jié)果,將所提出的CVCNN 和基準(zhǔn)算法CsiNet 分別進(jìn)行了參數(shù)量和計(jì)算量的比較,比較結(jié)果如表2 和表3 所示:
表2 CVCNN與CsiNet模型參數(shù)量比較
表3 CVCNN與CsiNet模型計(jì)算量比較
通過(guò)表2 可以發(fā)現(xiàn),基準(zhǔn)算法CsiNet 中FC 的參數(shù)量幾乎占據(jù)了全部參數(shù)量的99.9%。而本文所提出的CVCNN 算法則由于采用的復(fù)數(shù)全卷積結(jié)構(gòu),避免使用FC 層造成參數(shù)量過(guò)大,使得參數(shù)量相較于CsiNet 有了顯著的降低。與此同時(shí),比較參數(shù)量結(jié)果還可以看出,CsiNet 完全依靠FC 層進(jìn)行壓縮,故CR=1/8 時(shí)參數(shù)量近乎是CR=1/16 時(shí)參數(shù)量的2 倍,其余壓縮比情況均類似。而所提出的CVCNN 有效避免了FC 層的缺陷,通過(guò)卷積層壓縮成低維碼字。在CR 改變的情況下,整體網(wǎng)絡(luò)的結(jié)構(gòu)不發(fā)生變化,僅僅數(shù)據(jù)維度產(chǎn)生了改變,使得參數(shù)量很好地穩(wěn)定在一個(gè)較少的水平。
由表3 可以得出,采用復(fù)數(shù)全卷積神經(jīng)網(wǎng)絡(luò)的CVCNN 在計(jì)算量上相較于CsiNet 也有了很大的提升。當(dāng)CR=1/8 時(shí),參數(shù)量降低了750 倍,計(jì)算量降低了1 028 倍,大大降低了網(wǎng)絡(luò)的存儲(chǔ)和計(jì)算開(kāi)銷。
(2)重構(gòu)性能
將所提出的CVCNN 復(fù)數(shù)網(wǎng)絡(luò)與基準(zhǔn)算法CsiNet 實(shí)數(shù)網(wǎng)絡(luò)對(duì)于下行鏈路CSI 的重構(gòu)性能進(jìn)行了比較,性能比較結(jié)果如表4 所示:
表4 CVCNN與CsiNet重構(gòu)性能比較
為了更加直觀地體現(xiàn)CVCNN 與CsiNet 在不同CR情況下的重構(gòu)性能,根據(jù)表4 的仿真實(shí)驗(yàn)結(jié)果在Matlab中繪制了NMSE 對(duì)比表,具體的趨勢(shì)如圖5 所示:
圖5 CVCNN與CsiNet在不同壓縮比情況下的NMSE對(duì)比圖
由于本文進(jìn)行對(duì)比實(shí)驗(yàn)時(shí)選取的是經(jīng)典的CsiNet,該網(wǎng)絡(luò)同時(shí)也是一個(gè)實(shí)數(shù)網(wǎng)絡(luò),可以很好地與所提出的CVCNN 復(fù)數(shù)網(wǎng)絡(luò)進(jìn)行比較。分析圖5 可以發(fā)現(xiàn),在不同CR 的情況下,CVCNN 下行鏈路CSI 的重構(gòu)精度明顯優(yōu)于基準(zhǔn)算法CsiNet,特別是在較小CR 的情況下。與CsiNet 經(jīng)典實(shí)數(shù)模型相比,CVCNN 復(fù)數(shù)模型在重構(gòu)精度上實(shí)現(xiàn)了近6 dB 的增益,證明了復(fù)數(shù)模型的優(yōu)越性。然而,通過(guò)重構(gòu)性能可以發(fā)現(xiàn),在CR=1/8 和CR=1/16 的情況下,比較結(jié)果差距很小。經(jīng)過(guò)進(jìn)一步的分析,猜想到可能的情況為:數(shù)據(jù)維度較大,在進(jìn)行較小CR 仿真實(shí)驗(yàn)時(shí)造成結(jié)果相差不大,通過(guò)CR=1/32 和CR=1/64 的仿真結(jié)果驗(yàn)證后,證明了該猜想的可能性。
本文針對(duì)傳統(tǒng)的實(shí)數(shù)CSI 反饋算法的弊端,提出了CVCNN 壓縮反饋算法,就重建性能、存儲(chǔ)和計(jì)算開(kāi)銷等方面將CVCNN 與基準(zhǔn)算法CsiNet 進(jìn)行了詳細(xì)對(duì)比。實(shí)驗(yàn)結(jié)果表明,在計(jì)算復(fù)雜度方面,CVCNN 算法采用的全卷積層相較于CsiNet 采用的FC 層實(shí)現(xiàn)了參數(shù)量和計(jì)算量的顯著降低;在重構(gòu)性能方面,CVCNN 的復(fù)數(shù)架構(gòu)相較于CsiNet 的實(shí)數(shù)架構(gòu)也有了近6 dB 的性能增益。CVCNN 算法通過(guò)高維復(fù)數(shù)卷積運(yùn)算,有效避免了I/Q 樣本復(fù)值分解的問(wèn)題,在不損失信息的情況下進(jìn)一步進(jìn)行復(fù)數(shù)域的壓縮與反饋,提升了下行CSI 的重構(gòu)精度。