袁 磊, 楊偉明, 郭宇航
(蘭州大學信息科學與工程學院,蘭州 730030)
人工智能(Artificial Intelligence,AI)已經在計算機視覺、語音識別和機器翻譯等領域發揮巨大作用,同時也推動著無線通信行業發展[1]。隨著移動數據流量爆炸性增長及業務多樣化需求,許多國家將研究重點從5G逐步轉移到6G,由AI與無線通信結合的智能通信領域已成為6G發展的主流方向之一[2],近年來該領域在信道估計、信號檢測、信道解碼、端到端通信系統等方面取得較多研究進展[3-6],但仍處于探索階段,機遇與挑戰并存。
我校通信工程專業入選2019年度國家級一流本科專業建設點,無線通信技術作為本專業必修課,遵循新工科人才培養和工程教育認證的要求,以“智能基座”產教融合協同育人基地建設為契機,借助華為提供的昇騰和MindSpore[7]軟硬件資源,以智能通信為改革突破口,將相關最新技術引入無線通信課程中,讓學生們緊跟學科發展前沿。課程包含理論講授和模型實踐兩部分,教師講授無線通信和深度學習(Deep Learning,DL)相關基礎知識,學生獨立在華為一站式開發平臺ModelArts[8]上使用華為自研AI框架MindSpore動手開發智能通信模型,促進學生工程意識和專業素養的提高。
目前,基于DL的教學實驗設計日益受到重視。文獻[9]中結合冰壺運動和機器人技術,開展人工智能相關實驗教學工作,文獻[10]中則基于TensorFlow框架設計了垃圾分揀機器人教學實驗平臺。在國家級一流本科專業建設和人工智能時代到來的推動下,我校通信工程專業積極探索基于DL的智能無線通信教學改革,率先使用國產AI框架和開發平臺進行智能通信實驗教學,將多個典型的智能通信前沿模型實例帶進本科生課堂,實驗取得了不錯的教學效果,加深了學生對智能通信系統設計的理解,提高了學生們學習的積極性,實驗的創新體現在如圖1所示的4個方面。

圖1 實驗創新點
(1)將智能通信首次引入本科教學課堂,融入實驗,更新課程內容,為智能通信實驗教學改革積累經驗。通過實驗教學,學生不僅鞏固了自身通信專業知識,還掌握了智能通信最新技術。
(2)使用國產AI框架MindSpore和ModelArts平臺,兩者配套教學資源充足,包含教程文檔、實例模型和開源社區,支持學生設計和調試模型,鍛煉學生編程能力。
(3)實驗采用校企結合方式,邀請華為公司技術骨干進行案例介紹,與學生和教師充分交流,學生積極分享實驗成果,鍛煉表達能力,及時反饋實驗教學信息。
(4)充分利用ModelArts開發平臺的靈活性,學生可以隨時隨地登錄ModelArts進行線上實驗,不受時間和場地限制,提高學生自主學習能力。
MindSpore是華為公司推出的新一代深度學習框架,支持終端、邊緣、云全場景靈活部署,具有編程簡單、端云協同、調試輕松、性能卓越、開源開放等特點[7]。相比TensorFlow和PyTorch等AI框架,MindSpore減少了代碼量,提升了代碼的可讀性和運行效率。
ModelArts是華為推出的一站式AI應用開發和部署平臺,其整體架構如圖2所示。ModelArts支持數據處理、算法準備、模型訓練、評估調優、部署發布等全流程開發,使AI應用開發效率更高、門檻更低、成本更低[8]。

圖2 ModelArts架構[8]
學生借助華為云提供的PyCharm ToolKit插件可以方便將開發腳本提交ModelArts公有云訓練環境,只需在PyCharm開發工具內或登錄ModelArts網頁便可查看模型訓練日志,靈活安排時間完成實驗。圖3所示是ModelArts訓練作業參數設置界面,學生可以在此界面內選擇算法來源、數據來源、資源池及規格,給定訓練輸出位置和作業日志路徑等參數,操作簡潔明了,便于學生快速使用。在訓練作業運行時,學生可通過點擊訓練作業,及時獲取訓練作業的狀態信息、運行時間、資源占用情況等信息,及時掌控作業進程。

圖3 ModelArts訓練作業界面
我校通信工程專業無線通信技術課程教學改革逐步將智能通信熱點引入課堂,實驗采取模型復現與創新相結合的方式,將無線通信、AI和DL等理論知識融合,具有綜合性、創新性和開放性,適合向通信專業高年級本科生開設。本文將選取教學創新中的兩個典型實驗進行詳細介紹,即基于卷積神經網絡(Convolutional Neural Network,CNN)的數字調制類型盲識別和基于神經網絡譯碼器(Neural NetworksDecoder,NND)[11]的低密度奇偶校驗(Low Density Parity Check,LDPC)碼譯碼算法。實驗內容豐富,包括數據集生成、模型搭建、訓練推理和結果分析等步驟,很好地鍛煉學生的思維能力和實踐能力。
數字調制類型盲識別一直是國內外無線通信領域研究的熱點之一[12]。實驗1在此應用場景下設計而成,其整體流程如圖4所示,共由以下4部分組成:①訓練和驗證數據集由4種典型數字調制類型在不同信噪比下生成;②基于AI框架MindSpore搭建CNN模型,用PyCharm ToolKit上傳代碼至ModelArts開發平臺;③在ModelArts上導入模型和數據集,設置運行參數;④進行CNN模型訓練推理和調試參數,畫出識別精度曲線和分類混淆矩陣,完成數字調制類型盲識別實驗。

圖4 調制類型盲識別實驗流程圖
3.1.1 卷積神經網絡
實驗1選用AlexNet[13]和ResNet50[14]兩種經典CNN模型。AlexNet是2012年ImageNet大規模視覺識別挑戰賽(ImageNet Large Scale Visual Recognition Challenge,ILSVRC)競賽冠軍模型,結構可用圖5表示,主要由5個卷積層和3個全連接層組成。AlexNet作為實驗1基礎內容,難度中等,適合大多數同學自主完成實驗,從而掌握CNN基本結構。ResNet50模型結構稍復雜,作為實驗1的提升內容,供學有余力的同學進一步發掘潛能,為日后進行相關科研夯實基礎。

圖5 AlexNet結構
3.1.2 數字調制數據集
實驗選擇相移鍵控(Phase Shift Keying,PSK)和正交幅度調制(Quadrature Amplitude Modulation,QAM)兩種調制方式,調制類型包括QPSK、8PSK、16QAM、64QAM。調制信號受加性高斯白噪聲干擾,信噪比(Signal Noise Ratio,SNR)取0、2、4、6、8、10 dB。首先將接收信號映射到如圖6所示的復平面中的某個點,形成接收星座圖。然后將映射區域分割成224×224個大小相同的小網格,每個小網格代表一個像素點,統計每個網格中點的數目,確定顏色,最終生成彩色圖像作為實驗數據集。每種調制類型在不同SNR下各生成1 050張星座圖,其中1 000張作為訓練集,50張作為驗證集。圖7所示為SNR為4 dB和10 dB時數據集中星座圖樣例。

圖6 彩色星座圖數據集生成示意圖

圖7 調制星座圖數據集樣例
3.1.3 參數設置及實驗結果
實驗1具體參數設置為:訓練次數為50,批數量為32,使用多分類交叉熵函數(Cross Entropy Loss)計算損失,采用Momentum進行參數更新[12],學習率為0.01。在ModelArts上選擇專屬資源池中Ascend 910 CPU 24核完成訓練和推理。
圖8所示是SNR為4 dB和10 dB時單獨訓練AlexNet網絡模型的損失和精度曲線。當SNR為10 dB時,訓練損失在訓練次數為25后穩定在0.025附近不再下降,驗證集的精度達到99.69%。當SNR為4 dB時,訓練損失最終逐漸收斂在0.045,驗證精度約為83%。

圖8 AlexNet模型損失和精度曲線
實驗1結果的分類混淆矩陣如圖9所示,從圖9可知,SNR為10 dB時,BPSK、8PSK、16QAM、64QAM 4類數字調制類型的盲識別準確率幾乎達到100%,而SNR為4 dB時,識別準確率平均降低15%。

圖9 混淆矩陣
為了進一步研究不同SNR下AlexNet模型對4類數字調制類型盲識別的精度和魯棒性,實驗將所有訓練數據集作為整體統一輸入AlexNet模型進行訓練,在不同SNR下的驗證集分別推理,畫出圖10所示的4種調制類型在不同SNR下的盲識別精度曲線。

圖10 調制類型盲識別精度曲線
實驗1使學生掌握卷積神經網絡原理與結構的同時,還能鞏固數字調制理論。數據集以彩色圖片方式顯現,學生能夠直觀地看到各種調制類型的差異,激發學生的好奇心,加深實驗印象。實驗結合MindSpore框架和ModelArts開發平臺,內容多樣,可提高學生綜合性實驗能力。
3.2.1 整體流程
實驗2的整體流程如圖11所示,具體包括如下3個部分:
(1)老師課堂講授LDPC碼在高斯信道下的置信傳播(Belief Propagation,BP)譯碼算法[15]。長度k=8的信息由碼率為0.5的LDPC碼編碼得到長度為n=16的碼字c=(c1,c2,…,cn),其經過BPSK調制得到符號序列X=(x1,x2,…,xn),X受到均值為0,方差為σ2的加性高斯白噪聲干擾,得到信道輸出序列Y=(y1,y2,…,yn),再根據公式計算Y的對數似然比(Log Likelihood Ratios,LLR),將LLR和碼字c分別作為數據集和真實標簽保存。

(2)學生使用MindSpore框架搭建由輸入層、隱藏層和輸出層構成的NND模型,隱藏層采用較為簡單的3層全連接神經網絡(Fully Connected Neural Networks,FCNN)。NND的各層節點數如圖11所示,其推理輸出用c′表示。實驗還仿真了不同迭代次數的LDPC碼BP譯碼算法,與NND形成對照實驗。

圖11 基于NND的LDPC碼譯碼實驗流程圖
(3)學生將數據集和NND模型腳本上傳至ModelArts開發平臺,創建作業并設置相關運行參數進行模型的訓練和推理。收集實驗數據,畫出NND訓練損失與精度曲線及NND與BP譯碼的比特錯誤率(Bit Error Rate,BER)和碼字錯誤率(Codeword Error Rate,CER)對照曲線,完成實驗。
3.2.2 NND譯碼模型參數設置
實驗2中,加性高斯白噪聲信道下的SNR取1~5 dB。為了將所有可能的碼字輸入NND訓練,每個SNR下的訓練數據集大小為2n,并額外生成大小為212的驗證數據集。訓練次數設置為100,批數量為512,由于是0和1的二分類問題,損失用公式

計算均方誤差(Mean Square Error,MSE)[11],優化器使用Adam,學習率采用Adam優化器默認值0.001,NND中非線性激活函數使用修正線性單元(Rectified Linear Unit,ReLU)。在ModelArts平臺訓練和推理時,選擇專屬資源池中Ascend 910 CPU 24核。
3.2.3 實驗結果
NND模型的訓練損失和驗證精度曲線如圖12所示,由圖可知,訓練次數為80時,損失收斂在0.02附近并不再下降,譯碼精度最終穩定在98%。

圖12 NND的損失和精度曲線
圖13是在不同SNR下,NND模型與傳統BP譯碼算法的BER和CER比較結果,NND的BER和CER比BP譯碼算法在迭代次數(Iteration Number,IN)為5和30時分別提升約1 dB和0.7 dB。實驗不僅包含了LDPC碼的傳統BP譯碼算法知識,還設計了基于FCNN的NND模型,通過對比實驗,將理論與實踐相結合,幫助學生養成主動分析問題、親自動手編程的好習慣。

圖13 NND與BP譯碼算法對比
為了適應未來人工智能時代的通信工程師培養,我校無線通信技術課程教學改革依托MindSpore和ModelArts資源,將智能通信領域最新科研成果引入通信工程專業本科生實驗中,開發了基于DL的數字調制類型盲識別實驗和基于NND的LDPC碼譯碼實驗。學生通過學習智能通信模型、調試參數、數據分析處理等實驗步驟,掌握了如何將DL基本理論應用到無線通信系統設計中,鍛煉了編程能力和交流表達能力,培養了自主學習和獨立思考的習慣,為參加各類競賽打下堅實基礎。