薛 松,倪 林,2,盧 磊
(1.東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,上海 201620;2.數(shù)字化紡織服裝技術(shù)教育部工程研究中心,上海 201620)
隨著海量物聯(lián)網(wǎng)設(shè)備的接入,針對大規(guī)模機器類通信應(yīng)用場景,低功耗廣域網(wǎng)(Low Power Wide Area Network,LPWAN)的研究成為了熱點。LPWAN填補了低功耗、低速率的廣域物聯(lián)網(wǎng)應(yīng)用的技術(shù)空白,為超過四分之一的物聯(lián)網(wǎng)接入設(shè)備提供了網(wǎng)絡(luò)連接。LoRa是LPWAN中工作在ISM頻段的一項重要技術(shù),具有功耗低、傳輸距離遠(yuǎn)、成本低等特點,受到了廣泛關(guān)注。
通常LoRa包括Semtech公司持有的物理層調(diào)制專利和LoRa聯(lián)盟制定的數(shù)據(jù)鏈路層協(xié)議標(biāo)準(zhǔn)LoRaWAN。本文研究的是物理層調(diào)制解調(diào)技術(shù),由于專利文件中沒有涉及調(diào)制解調(diào)具體過程,關(guān)于LoRa物理層的研究較少。文獻[3]給出了LoRa調(diào)制解調(diào)過程的數(shù)學(xué)描述,并對不同擴頻因子LoRa信號的正交性給出了證明。文獻[4]推導(dǎo)出了在AWGN信道和瑞利衰落信道中LoRa解調(diào)的誤碼率閉式表達式,并通過與模型仿真數(shù)據(jù)曲線對比,證明了表達式的準(zhǔn)確性。文獻[5]將誤碼率作為性能評估指標(biāo),模擬了快衰落信道中LoRa信號調(diào)制解調(diào)過程,實驗結(jié)果表明快衰落信道環(huán)境中盲目增大擴頻因子反而會導(dǎo)致能耗增加和可靠性降低。
近年來,深度學(xué)習(xí)因其具有解決復(fù)雜任務(wù)的能力而被應(yīng)用到了圖像處理和信號模式識別等諸多領(lǐng)域。文獻[6]將深度學(xué)習(xí)應(yīng)用于信道解碼,提出了一種用于Polar碼的新型殘差神經(jīng)網(wǎng)絡(luò)解碼器,在解碼時延和誤碼率性能上相比傳統(tǒng)解碼器有著大幅提升。文獻[7]通過對比不同架構(gòu)的卷積神經(jīng)網(wǎng)絡(luò),將深度學(xué)習(xí)應(yīng)用于二次調(diào)制信號的識別,有效提高了識別準(zhǔn)確率。
本文在LoRa物理層研究的基礎(chǔ)上,提出了一種基于卷積神經(jīng)網(wǎng)絡(luò) (Convolutional Neural Networks, CNN)的LoRa信號識別模型。相比于傳統(tǒng)的匹配濾波接收,該方法能夠有效降低系統(tǒng)誤碼率,提高系統(tǒng)通信距離以及延長節(jié)點電池壽命。
LoRa調(diào)制信號實質(zhì)上是一種線性調(diào)頻擴頻(Chirp Spread Spectrum, CSS)信號,將信息調(diào)制到初始頻率后通過線性調(diào)頻將頻率擴展到整個帶寬。調(diào)制后的信號具有抗干擾性強、傳輸距離遠(yuǎn)等特點。線性調(diào)頻信號的一般數(shù)學(xué)形式可表示為:
式中:()為信號幅度函數(shù);()為信號頻率函數(shù);為信號有效持續(xù)時間。
LoRa調(diào)制信號通常采用升線性調(diào)頻,其頻率函數(shù)在一個信號周期內(nèi)表現(xiàn)為分段函數(shù)的形式。LoRa信號頻率函數(shù)可表示為:
式中:>0表示升線性調(diào)頻;為調(diào)制后的初始頻率;為LoRa信號帶寬。式(2)對應(yīng)的LoRa信號頻率隨時間變化情況如圖1所示。
圖1 LoRa信號頻率變化示意圖
LoRa網(wǎng)絡(luò)以上行通信為主,終端節(jié)點電池的壽命關(guān)乎到網(wǎng)絡(luò)運行質(zhì)量,當(dāng)環(huán)境噪聲干擾較大時,節(jié)點采用自適應(yīng)速率機制(Adaptive Date Rate, ADR)提高擴頻因子,以增加節(jié)點功耗和信號傳輸時延為代價,實現(xiàn)信息的可靠傳輸。但ADR機制的頻繁調(diào)度和長時間采用較大的擴頻因子會導(dǎo)致通信時延變長、傳輸不穩(wěn)定以及節(jié)點功耗增加等影響通信質(zhì)量的問題。
線性調(diào)頻信號具有相關(guān)性好的特性,在信號接收端通常采用匹配濾波進行信號解調(diào)接收,接收信號與本地匹配信號時域相乘可得正弦信號,再對該正弦信號進行傅里葉變換后可以得到傳輸信息,從而實現(xiàn)解線性調(diào)頻。
采樣信號相應(yīng)的匹配信號可表示為:
采樣信號與匹配信號共軛相乘后進行離散傅里葉變換得:
式中,=2,表明采樣信號與匹配信號共軛相乘后的頻譜為一個沖激函數(shù),峰值出現(xiàn)在相對頻移大小的值處。
采用匹配濾波的LoRa信號調(diào)制解調(diào)流程框圖如圖2所示。
圖2 LoRa信號調(diào)制解調(diào)基本流程
CNN具有表征學(xué)習(xí)能力和稀疏連接特性,能夠?qū)斎胄畔⑦M行特征提取,可以直接處理已調(diào)信號的IQ分量。LoRa調(diào)制信號在擴頻因子為SF時,有{0, 1, 2, ..., 2-1}共2種類型,因而LoRa信號的識別過程可以轉(zhuǎn)換為多分類問題。本文設(shè)計了一種監(jiān)督式學(xué)習(xí)的CNN模型,部署在LoRa網(wǎng)關(guān)用于替代傳統(tǒng)的匹配濾波解調(diào),從而能夠降低誤碼率,避免節(jié)點頻繁使用ADR機制,延長節(jié)點電池壽命。
本文設(shè)計的CNN模型結(jié)構(gòu)如圖3所示,神經(jīng)網(wǎng)絡(luò)由輸入層、卷積層、全連接層、分類層組成。由于信號樣本的維度較低,只應(yīng)用了卷積層對信號數(shù)據(jù)特征進行提取,沒有采用池化層下采樣來進行特征降維。
圖3 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
神經(jīng)網(wǎng)絡(luò)不能直接處理復(fù)數(shù),因此在采樣信號輸入前,先將信號的實部和虛部分別提取并拼接起來,進行信號的預(yù)處理。輸入層輸入的信號大小為2×1 024,其中2表示信號的實部和虛部,1 024表示采樣信號數(shù)據(jù)。卷積層用于信號數(shù)據(jù)特征的提取,包括兩個一維卷積層,分別含512和256個卷積核,卷積核尺寸參數(shù)均為2,均采用LeakyReLU激活函數(shù),通過補零填充保證數(shù)據(jù)邊緣特征的提取以及數(shù)據(jù)維度的一致。模型采用兩層卷積層,不僅可以提取信號的二維特征以及學(xué)習(xí)信號特征間的關(guān)聯(lián),還可以減少冗余特征。
卷積層輸出的信號二維特征張量經(jīng)過壓平層后轉(zhuǎn)換為一維特征張量,再輸入到全連接層。全連接層前兩層均采用256個神經(jīng)元,激活函數(shù)均采用LeakyReLU;為了防止訓(xùn)練出現(xiàn)過擬合,都加入系數(shù)為0.5的Dropout層,使得模型每次訓(xùn)練時隨機失活一半的神經(jīng)元,避免過于依賴局部特征。
神經(jīng)網(wǎng)絡(luò)的最后一層是激活函數(shù)為Softmax的128神經(jīng)元全連接層,也起到多分類輸出的作用,神經(jīng)元的個數(shù)與分類數(shù)目對應(yīng)。網(wǎng)絡(luò)模型具體參數(shù)見表1所列。
表1 CNN模型參數(shù)
激活函數(shù)為深度學(xué)習(xí)模型引入了非線性,早期應(yīng)用的Sigmoid和tanh函數(shù)存在梯度消失的問題,而ReLU函數(shù)的提出解決了梯度消失問題,并引入了稀疏性,是目前最常用的激活函數(shù)。但ReLU函數(shù)在負(fù)方向取值為0,可能導(dǎo)致神經(jīng)元在反向傳播時梯度為0以及節(jié)點參數(shù)無法更新的情況。LeakyReLU函數(shù)是在ReLU函數(shù)基礎(chǔ)上,負(fù)方向取負(fù)值,從而避免神經(jīng)元參數(shù)無法更新和學(xué)習(xí)的情況。LeakyReLU和ReLU函數(shù)的圖像如圖4所示,本文采用取值為0.01的LeakyReLU激活函數(shù)。
圖4 LeakyReLU和ReLU函數(shù)的圖像
輸出層采用的Softmax激活函數(shù)用于將神經(jīng)網(wǎng)絡(luò)預(yù)測輸出結(jié)果經(jīng)過式(8)進行精確的概率模型描述,使得每個輸出值為0到1的概率表示每種分類的可能性大小,且輸出值的總和為1。
式中:為分類類別總數(shù);為預(yù)測輸出值;為深度學(xué)習(xí)模型的預(yù)測值;表示深度學(xué)習(xí)模型第個輸出。
神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練過程中需要通過損失函數(shù)來計算網(wǎng)絡(luò)模型的預(yù)測值和預(yù)期輸出值之間的相似程度,從而評估模型的性能。多分類交叉熵(Categorical Cross-Entropy, CCE)常作為多分類問題的損失函數(shù),其本質(zhì)是Softmax激活函數(shù)和交叉熵?fù)p失函數(shù)的串聯(lián)輸出,可表示為:
本文先對基于匹配濾波的LoRa解調(diào)進行了仿真驗證,在MATLAB R2020a軟件平臺上搭建了如圖2所示的LoRa調(diào)制解調(diào)模型,得到在不同信噪比的加性高斯白噪聲信道中的LoRa解調(diào)誤碼率如圖5所示,與文獻[4]中推導(dǎo)的閉式誤碼率表達式對應(yīng)的曲線十分相似,從而驗證了仿真的正確性,為后續(xù)仿真奠定了基礎(chǔ)。
圖5 匹配濾波解調(diào)誤碼率仿真結(jié)果
在基于深度學(xué)習(xí)的LoRa信號識別仿真實驗中,采用TensorFlow2.0作為后端的Keras搭建CNN網(wǎng)絡(luò)模型,數(shù)據(jù)集均來自上述匹配濾波模型信道輸出后的采樣數(shù)據(jù),其中LoRa信號帶寬為125 kHz,擴頻因子SF取7,采樣點數(shù)為1 024;訓(xùn)練集、測試集為經(jīng)過不同信噪比高斯白噪聲信道的混合數(shù)據(jù),大小分別為(60 000,2,1 024)(20 000,2,1 024),并基于Nvidia GeForce GTX1050圖形處理器平臺進行處理。
圖6所示是分別基于CNN、匹配濾波以及常用于時序信號處理的RNN、LSTM模型在LoRa信號識別中的性能比較。由圖6可見,深度學(xué)習(xí)模型在LoRa信號識別上均優(yōu)于傳統(tǒng)匹配濾波解調(diào),其中CNN模型因其優(yōu)秀的提取特征的能力,在誤碼率為10時,信噪比較匹配濾波解調(diào)有5~6 dB的提升,與RNN、LSTM模型相比有1~2 dB的提升。
圖6 匹配濾波和神經(jīng)網(wǎng)絡(luò)模型的信號識別性能比較
Semtech公司在技術(shù)手冊中給出了LoRa在不同擴頻因子條件下對應(yīng)的接收最低信噪比,由接收機靈敏度公式=-174+NF+101g+SNR可以求出表2中對應(yīng)的接收靈敏度,其中為接收靈敏度,單位為dBm;NF為硬件噪聲系數(shù),取6 dB;為帶寬,取125 kHz;SNR為對應(yīng)的信噪比。
表2 不同擴頻因子對應(yīng)的接收靈敏度
由圖6中各模型在誤碼率為10時的信噪比以及接收機靈敏度公式,可得出對應(yīng)的接收靈敏度。在此基礎(chǔ)上再結(jié)合自由空間傳輸損耗公式=32.44+201g+201g,其中為自由空間損耗,為自由空間傳播的無線通信距離,為載波頻率。在LoRa節(jié)點發(fā)射功率為10 dBm、載波頻率為433 MHz的條件下,可得表3所列的各模型在自由空間的傳播距離,深度學(xué)習(xí)模型相比于匹配濾波均有50%以上的提升;而CNN模型相比于匹配濾波提升了87%,相比于RNN和LSTM提升了12%~18%。
表3 不同信號識別方式性能比較
針對基于匹配濾波的傳統(tǒng)解調(diào)方式在低信噪比環(huán)境下容易出現(xiàn)誤碼率較大以及頻繁開啟ADR機制導(dǎo)致LoRa節(jié)點功耗增加、傳輸時延變長的問題,本文提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的LoRa信號識別模型。卷積神經(jīng)網(wǎng)絡(luò)能在訓(xùn)練過程中學(xué)習(xí)到輸入信號的時序特征,從而能對低信噪比LoRa信號進行準(zhǔn)確的分類識別;部署在LoRa網(wǎng)關(guān)上,能在小擴頻因子的條件下準(zhǔn)確接收低信噪比節(jié)點信號,降低節(jié)點功耗。在實驗仿真的基礎(chǔ)上,本文提出的卷積神經(jīng)網(wǎng)絡(luò)模型在誤碼率為10時,信噪比有5~6 dB的提升,自由空間傳播距離有80%~90%的性能提升,從而進一步擴大了應(yīng)用場景范圍。在野生動物追蹤、智慧牧場、氣象監(jiān)測等廣距離、低速率、弱實時性場景的物聯(lián)網(wǎng)應(yīng)用中更具應(yīng)用價值。