基于深度学习的LoRa信号识别研究
2022-09-19薛松,倪林,2,卢磊
薛 松,倪 林,2,卢 磊
(1.东华大学 信息科学与技术学院,上海 201620;2.数字化纺织服装技术教育部工程研究中心,上海 201620)
0 引 言
随着海量物联网设备的接入,针对大规模机器类通信应用场景,低功耗广域网(Low Power Wide Area Network,LPWAN)的研究成为了热点。LPWAN填补了低功耗、低速率的广域物联网应用的技术空白,为超过四分之一的物联网接入设备提供了网络连接。LoRa是LPWAN中工作在ISM频段的一项重要技术,具有功耗低、传输距离远、成本低等特点,受到了广泛关注。
通常LoRa包括Semtech公司持有的物理层调制专利和LoRa联盟制定的数据链路层协议标准LoRaWAN。本文研究的是物理层调制解调技术,由于专利文件中没有涉及调制解调具体过程,关于LoRa物理层的研究较少。文献[3]给出了LoRa调制解调过程的数学描述,并对不同扩频因子LoRa信号的正交性给出了证明。文献[4]推导出了在AWGN信道和瑞利衰落信道中LoRa解调的误码率闭式表达式,并通过与模型仿真数据曲线对比,证明了表达式的准确性。文献[5]将误码率作为性能评估指标,模拟了快衰落信道中LoRa信号调制解调过程,实验结果表明快衰落信道环境中盲目增大扩频因子反而会导致能耗增加和可靠性降低。
近年来,深度学习因其具有解决复杂任务的能力而被应用到了图像处理和信号模式识别等诸多领域。文献[6]将深度学习应用于信道解码,提出了一种用于Polar码的新型残差神经网络解码器,在解码时延和误码率性能上相比传统解码器有着大幅提升。文献[7]通过对比不同架构的卷积神经网络,将深度学习应用于二次调制信号的识别,有效提高了识别准确率。
本文在LoRa物理层研究的基础上,提出了一种基于卷积神经网络 (Convolutional Neural Networks, CNN)的LoRa信号识别模型。相比于传统的匹配滤波接收,该方法能够有效降低系统误码率,提高系统通信距离以及延长节点电池寿命。
1 LoRa调制信号
LoRa调制信号实质上是一种线性调频扩频(Chirp Spread Spectrum, CSS)信号,将信息调制到初始频率后通过线性调频将频率扩展到整个带宽。调制后的信号具有抗干扰性强、传输距离远等特点。线性调频信号的一般数学形式可表示为:
式中:()为信号幅度函数;()为信号频率函数;为信号有效持续时间。
LoRa调制信号通常采用升线性调频,其频率函数在一个信号周期内表现为分段函数的形式。LoRa信号频率函数可表示为:
式中:>0表示升线性调频;为调制后的初始频率;为LoRa信号带宽。式(2)对应的LoRa信号频率随时间变化情况如图1所示。
图1 LoRa信号频率变化示意图
LoRa网络以上行通信为主,终端节点电池的寿命关乎到网络运行质量,当环境噪声干扰较大时,节点采用自适应速率机制(Adaptive Date Rate, ADR)提高扩频因子,以增加节点功耗和信号传输时延为代价,实现信息的可靠传输。但ADR机制的频繁调度和长时间采用较大的扩频因子会导致通信时延变长、传输不稳定以及节点功耗增加等影响通信质量的问题。
2 匹配滤波接收
线性调频信号具有相关性好的特性,在信号接收端通常采用匹配滤波进行信号解调接收,接收信号与本地匹配信号时域相乘可得正弦信号,再对该正弦信号进行傅里叶变换后可以得到传输信息,从而实现解线性调频。
采样信号相应的匹配信号可表示为:
采样信号与匹配信号共轭相乘后进行离散傅里叶变换得:
式中,=2,表明采样信号与匹配信号共轭相乘后的频谱为一个冲激函数,峰值出现在相对频移大小的值处。
采用匹配滤波的LoRa信号调制解调流程框图如图2所示。
图2 LoRa信号调制解调基本流程
3 基于CNN的LoRa信号识别
CNN具有表征学习能力和稀疏连接特性,能够对输入信息进行特征提取,可以直接处理已调信号的IQ分量。LoRa调制信号在扩频因子为SF时,有{0, 1, 2, ..., 2-1}共2种类型,因而LoRa信号的识别过程可以转换为多分类问题。本文设计了一种监督式学习的CNN模型,部署在LoRa网关用于替代传统的匹配滤波解调,从而能够降低误码率,避免节点频繁使用ADR机制,延长节点电池寿命。
3.1 CNN模型设计
本文设计的CNN模型结构如图3所示,神经网络由输入层、卷积层、全连接层、分类层组成。由于信号样本的维度较低,只应用了卷积层对信号数据特征进行提取,没有采用池化层下采样来进行特征降维。
图3 神经网络结构
神经网络不能直接处理复数,因此在采样信号输入前,先将信号的实部和虚部分别提取并拼接起来,进行信号的预处理。输入层输入的信号大小为2×1 024,其中2表示信号的实部和虚部,1 024表示采样信号数据。卷积层用于信号数据特征的提取,包括两个一维卷积层,分别含512和256个卷积核,卷积核尺寸参数均为2,均采用LeakyReLU激活函数,通过补零填充保证数据边缘特征的提取以及数据维度的一致。模型采用两层卷积层,不仅可以提取信号的二维特征以及学习信号特征间的关联,还可以减少冗余特征。
卷积层输出的信号二维特征张量经过压平层后转换为一维特征张量,再输入到全连接层。全连接层前两层均采用256个神经元,激活函数均采用LeakyReLU;为了防止训练出现过拟合,都加入系数为0.5的Dropout层,使得模型每次训练时随机失活一半的神经元,避免过于依赖局部特征。
神经网络的最后一层是激活函数为Softmax的128神经元全连接层,也起到多分类输出的作用,神经元的个数与分类数目对应。网络模型具体参数见表1所列。
表1 CNN模型参数
3.2 CNN模型激活函数选择
激活函数为深度学习模型引入了非线性,早期应用的Sigmoid和tanh函数存在梯度消失的问题,而ReLU函数的提出解决了梯度消失问题,并引入了稀疏性,是目前最常用的激活函数。但ReLU函数在负方向取值为0,可能导致神经元在反向传播时梯度为0以及节点参数无法更新的情况。LeakyReLU函数是在ReLU函数基础上,负方向取负值,从而避免神经元参数无法更新和学习的情况。LeakyReLU和ReLU函数的图像如图4所示,本文采用取值为0.01的LeakyReLU激活函数。
图4 LeakyReLU和ReLU函数的图像
输出层采用的Softmax激活函数用于将神经网络预测输出结果经过式(8)进行精确的概率模型描述,使得每个输出值为0到1的概率表示每种分类的可能性大小,且输出值的总和为1。
式中:为分类类别总数;为预测输出值;为深度学习模型的预测值;表示深度学习模型第个输出。
3.3 CNN模型性能评估指标
神经网络模型训练过程中需要通过损失函数来计算网络模型的预测值和预期输出值之间的相似程度,从而评估模型的性能。多分类交叉熵(Categorical Cross-Entropy, CCE)常作为多分类问题的损失函数,其本质是Softmax激活函数和交叉熵损失函数的串联输出,可表示为:
4 仿真实验与分析
本文先对基于匹配滤波的LoRa解调进行了仿真验证,在MATLAB R2020a软件平台上搭建了如图2所示的LoRa调制解调模型,得到在不同信噪比的加性高斯白噪声信道中的LoRa解调误码率如图5所示,与文献[4]中推导的闭式误码率表达式对应的曲线十分相似,从而验证了仿真的正确性,为后续仿真奠定了基础。
图5 匹配滤波解调误码率仿真结果
在基于深度学习的LoRa信号识别仿真实验中,采用TensorFlow2.0作为后端的Keras搭建CNN网络模型,数据集均来自上述匹配滤波模型信道输出后的采样数据,其中LoRa信号带宽为125 kHz,扩频因子SF取7,采样点数为1 024;训练集、测试集为经过不同信噪比高斯白噪声信道的混合数据,大小分别为(60 000,2,1 024)(20 000,2,1 024),并基于Nvidia GeForce GTX1050图形处理器平台进行处理。
图6所示是分别基于CNN、匹配滤波以及常用于时序信号处理的RNN、LSTM模型在LoRa信号识别中的性能比较。由图6可见,深度学习模型在LoRa信号识别上均优于传统匹配滤波解调,其中CNN模型因其优秀的提取特征的能力,在误码率为10时,信噪比较匹配滤波解调有5~6 dB的提升,与RNN、LSTM模型相比有1~2 dB的提升。
图6 匹配滤波和神经网络模型的信号识别性能比较
Semtech公司在技术手册中给出了LoRa在不同扩频因子条件下对应的接收最低信噪比,由接收机灵敏度公式=-174+NF+101g+SNR可以求出表2中对应的接收灵敏度,其中为接收灵敏度,单位为dBm;NF为硬件噪声系数,取6 dB;为带宽,取125 kHz;SNR为对应的信噪比。
表2 不同扩频因子对应的接收灵敏度
由图6中各模型在误码率为10时的信噪比以及接收机灵敏度公式,可得出对应的接收灵敏度。在此基础上再结合自由空间传输损耗公式=32.44+201g+201g,其中为自由空间损耗,为自由空间传播的无线通信距离,为载波频率。在LoRa节点发射功率为10 dBm、载波频率为433 MHz的条件下,可得表3所列的各模型在自由空间的传播距离,深度学习模型相比于匹配滤波均有50%以上的提升;而CNN模型相比于匹配滤波提升了87%,相比于RNN和LSTM提升了12%~18%。
表3 不同信号识别方式性能比较
5 结 语
针对基于匹配滤波的传统解调方式在低信噪比环境下容易出现误码率较大以及频繁开启ADR机制导致LoRa节点功耗增加、传输时延变长的问题,本文提出了一种基于卷积神经网络的LoRa信号识别模型。卷积神经网络能在训练过程中学习到输入信号的时序特征,从而能对低信噪比LoRa信号进行准确的分类识别;部署在LoRa网关上,能在小扩频因子的条件下准确接收低信噪比节点信号,降低节点功耗。在实验仿真的基础上,本文提出的卷积神经网络模型在误码率为10时,信噪比有5~6 dB的提升,自由空间传播距离有80%~90%的性能提升,从而进一步扩大了应用场景范围。在野生动物追踪、智慧牧场、气象监测等广距离、低速率、弱实时性场景的物联网应用中更具应用价值。