基于分级降噪的电磁信号调制识别研究
2023-03-07吴美霖高瑜翔涂雅培张鑫宇
吴美霖,高瑜翔*,涂雅培,张鑫宇
(1.成都信息工程大学 通信工程学院,四川 成都 610225;2.气象信息与信号处理四川省高校重点实验室,四川 成都 610225)
0 引言
随着各种无线电设备的广泛使用,通信环境日益密集。电磁信号调制方式识别作为无线通信系统的基础任务之一,在电磁频谱检测[1]、认知无线电[2]和网络安全[3]等领域有着重要研究意义。电磁信号在复杂无线通信环境以及低信噪比(Signal to Noise Ratio,SNR)下的调制识别精度骤减问题,成为了无线通信领域的研究热点。
基于特征提取的调制识别方法主要任务是设计分类器来挖掘不同调制类型的信号特征,可分为基于人工设计特征[4-6]的传统调制识别方法与基于深度学习[7-9]的自动调制识别算法(Automatic Modulation Recognition,AMR)。随着认知智能时代的到来,深度学习重塑了无线电领域研究工作,基于深度学习的AMR算法已成为调制识别算法研究的主流。AMR通过提取采样电磁信号的潜在特征以及设计合适的深度学习模型,完成电磁信号调制方式的智能识别。
AMR使用的信号特征形式主要有图像特征[10]、参数特征[11]以及不做特征提取的原始采样数据。文献[12]通过时频残差网络提取彩色时频图的LBP纹理特征,完成了10种数字调制方式的高精度识别;文献[13]提出了一种基于嵌套式跳跃连接结构的残差网络AMR方法,在公开数据集0 dB以上达到92.3%的总体识别率;文献[14]首次引入SNR自动分级降噪的概念到AMR领域,证明了分级降噪后的调制识别精度高于电磁信号不降噪时的识别精度。在现有的诸多AMR算法中,发现仍然还存在以下问题:
① 识别精度优良的调制识别框架,往往需要复杂的数据预处理,其网络参数量庞大,在实际应用中会受限。
② 现有文献所提算法大部分适用于提高高SNR下的电磁信号调制识别精度,而在低SNR下缺乏简单、有效的调制识别算法。
考虑到以上问题,本文提出了一种基于自动分级降噪的调制识别框架。将原始数据作为输入,通过SNR分级网络将信号分为高、低SNR信号。对低SNR信号做降噪处理,再经过低复杂度的调制识别算法完成自动调制识别。整个识别过程,无需人工提取调制特征。本文所做工作如下:
① 提出了一种新的低复杂度的调制信号SNR自动分级降噪的通用框架,对低SNR数据做滤波降噪处理,能有效提高低SNR数据的识别精度,同时减少了低SNR数据对高SNR数据的干扰,有助于提高高SNR下的识别精度。
② 提出了一种低复杂度的高精度自动调制识别方法,将分级降噪后的数据作为输入,利用卷积长短期神经网络充分提取分级降噪后的电磁信号的时间和空间特征,完成信号的调制识别;相比于同类算法,使用较少数量的神经元达到了较高识别精度,降低了调制识别模型的复杂度。
③ 在开源数据集上仿真验证,将所提算法与其他AMR主流算法做对比试验,本文所提算法性能最佳,将分级降噪用于其他调制识别算法时,其他算法调制识别准确率也得到了稳定提升,扩展了低SNR下的调制识别性能提升方法。
1 相关工作
1.1 调制信号模型
对于调制后的电磁信号,通常以IQ数据的形式进行采样存储,因此可将接收到的电磁信号表示为:
x[i]=xI[i]+jxQ[i],
(1)
式中,xI[i]与xQ[i]分别表示第i个信号同相分量与正交分量的采样值集合。
随着电子环境和物理环境愈加复杂,电磁信号在较差的通信环境下发生严重失真。在信号传输过程中存在多种干扰噪声,本文按信号与噪声的关系将噪声分为加性噪声s1与乘性噪声s2,其表达式为:
s1=s(t)+n(t),
(2)
s2=s(t)[1+n(t)],
(3)
式中,n(t)表示电磁信号产生、传播和接收时噪声的总和;s(t)表示信号信息。
由于低SNR下直接进行电磁信号的调制识别时,调制识别准确率处于一个极低的水平且难以提高。因此,将结合深度学习对失真严重的电磁信号做分级降噪处理,用于提高低SNR下电磁信号调制方式的识别准确率。
1.2 分级降噪边界确定
对于高、低SNR电磁信号的分级降噪,首要任务是确定自动分级降噪的SNR边界。文献[14]中最先提出SNR分级的概念,研究人员通过传统的K均值聚类算法,得到高、低SNR聚类类标;再以2 dB为间隔得到各个SNR下的人工类标,将2种类标的重合率最大时所对应的SNR作为SNR分级边界,分级准确率如表1所示。
表1 文献[14]SNR分级准确率Tab.1 Classification accuracy of SNR in literature[14]
数据集RML2016.10a[15]中加入了莱斯衰落、多径等干扰,而数据集RML2016.4c干扰少、信号整体质量更好。由表1中数据可知,由传统的K均值聚类算法得到的SNR边界,在更复杂的RML2016.10a数据集上的SNR分级准确率还有待提高。
高、低SNR下的电磁信号最直观的差异就是低SNR下信号会发生更严重的畸变,对严重畸变的电磁信号进行滤波降噪,更加能够发挥分级降噪的有效性。根据K均值聚类算法所获得的SNR分类边界,是通过数据挖掘相似特征划分的数据簇。由于信号失真严重程度将直接影响识别精度,本文将信号失真程度与K均值聚类算法得到的SNR边界共同作为SNR分级边界确定的依据。SNR由低往高改变时,信号失真程度降低,调制识别精度提升,因此可以间接使用调制识别精度变化速率来表征信号失真程度的变化。在调制识别准确率变化最快处,所对应的SNR对调制识别性能影响最大。在自动调制识别领域经典文献[15]中,O’Shea等提出了一种经典的卷积神经网络(Convolutional Neural Network,CNN)级联结构用于自动调制识别,记作O’Shea_CNN。使用O’Shea_CNN对RML2016.10a原始数据集进行调制识别的识别准确率曲线如图1所示,本文将其用于衡量SNR变化时信号失真程度的变换。
图1 O’Shea_CNN调制识别准确率Fig.1 Modulation recognition accuracy of O’Shea_CNN
由图1可知,-8~-4 dB的识别曲线的斜率最大。滤波降噪对质量越好的信号,降噪作用越小,甚至会破坏信号原有特征。为充分发挥分级降噪算法的有效性,在-8~-4 dB中,可知-8 dB下的信号失真最严重,因此本文选择其中最低的SNR=-8 dB作为本文分级降噪的信噪比边界。在3.4节将分别以-4,-8 dB为分级降噪边界,进行不同SNR边界下的调制识别仿真,验证-8 dB更适合作为分级降噪的SNR边界。
1.3 低SNR电磁信号降噪
分级降噪的初衷就是对高、低SNR的电磁信号做更合适的预处理,高SNR的信号经过滤波降噪后反而会破坏原本的时序特征与空间特征,会降低高SNR下的调制识别精度。在1.2节中得到的分级降噪边界为-8 dB,为了更好地提高自动调制识别整体精度,本文将-20~-8 dB的数据定义为低SNR数据,对其进行滤波降噪处理,而-8~18 dB的数据不做降噪处理。
常见的信号降噪处理算法有中值滤波、均值滤波、小波变换和奇异值分解[16]等。为了抑制低SNR下信号中的高密度脉冲噪声,尽量恢复信号原有特征,需要一个高功率滤波器,本文选用中值滤波对低SNR数据进行降噪处理。利用中值滤波器的非线性性能消除脉冲噪声,滤波尺寸设置为1×5。8PSK,QAM64,QPSK在-8 dB时降噪前后的时域波形对比如图2所示,红色、蓝色波形分别表示IQ数据的实部、虚部数据的时域波形。经过降噪后,可以观测到信号波形特征有所恢复,这也是低SNR信号调制识别准确率提高的主要原因。
(a)降噪前波形图 (b)降噪后波形图图2 降噪前、后波形图Fig.2 Waveform before and after noise reduction
2 基于分级降噪的自动调制识别网络设计
本文提出的基于分级降噪的自动调制识别方法的整体处理流程如图3所示。下面将对SNR分级网络和自动调制识别网络2部分的设计过程进行描述。
图3 基于分级降噪的自动调制识别流程Fig.3 AMR flowchart based on partial noise reduction
2.1 SNR分级网络
SNR分级网络包含输入层、CNN、选通递归单元(Gated Recurrent Unit,GRU)、全连接层和输出层,网络结构如图4所示。
图4 SNR分级网络结构Fig.4 SNR partial network structure diagram
在SNR分级网络中,CNN层滤波器数量设置为128,目的是提取电磁信号的空间特征;接着使用2层GRU提取电磁信号的时间相关性,每层GRU后通过衰减层去除不重要参数,减少网络训练参数量;最后使用2层全连接层的堆叠结构,可以更好地处理非线性问题,提高分类准确率。在CNN和第1层全连接层中,使用线性整流函数ReLU作为激活函数,提高网络的收敛速度;在输出层使用Softmax回归模型,完成高、低SNR的电磁信号二分类任务。
2.2 自动调制识别网络
长短时记忆网络(Long Short-Term Memory,LSTM)在循环神经网络中添加了记忆处理模块,因此十分适合于提取时间序列的时间特征。本文所提自动调制识别网络结构如图5所示。
图5 自动调制识别网络结构Fig.5 AMR network structure diagram
自动调制识别网络的输入为经过分级降噪后的IQ采样信号,不再对信号做传统的调制特征提取操作,因此需要一种特征提取能力更强的自动调制识别算法。使用CNN级联2层LSTM的结构,即卷积长短时神经网络,可从空间和时间角度充分提取电磁信号调制特征。为了避免LSTM叠加造成数据冗余,使用衰减层来提高网络处理速度。自动调制识别网络使用的神经元个数较少,整个网络训练参数量不到11k,但在处理AMR任务时可获得较高识别精度。将本节所提的调制识别模型记作CLNN。
3 仿真验证
3.1 数据集及仿真条件
为了更好地验证所提方法在低SNR下和高SNR下调制信号识别率的提升程度以及普适性,本文所有仿真实验均在数据集RML2016.10a上进行。该数据集的相关参数介绍如表2所示。
表2 RML2016.10a参数介绍Tab.2 Parameters description of RML2016.10a
划分RML2016.10a中70%的采样样本作为训练集,15%的采样样本作为验证集,15%的采样样本作为测试集。仿真环境为Windows11操作系统,搭载NVIDIA RTX 3060 GPU,使用python接口的tensorflow2.4.0深度学习框架完成仿真实验。
3.2 评价指标
在SNR分级仿真验证中,使用分类识别准确率(Accuracy)和网络参数量作为评价指标。此部分准确率用于评估SNR分级网络对于高、低SNR电磁信号的分类能力。网络参数量用于衡量识别算法网络的复杂度与计算开销,识别性能相近时参数量越少的分类网络越优。Accuracy计算公式为:
(4)
式中,TP表示正类预测为正类的样本数;TN表示负类预测为负类的样本数;P,N分别表示正类、负类的样本总数。
在基于分级降噪的自动调制识别仿真验证中,使用网络参数量、分类识别准确率和混淆矩阵作为评价指标。其中,分类识别准确率用于观测各SNR下的识别精度及其变化趋势,也能更方便和其他调制识别算法做对比。混淆矩阵可以更加方便地观察到各类调制方式识别的正确率与误识别率,其纵坐标表示真实标签,横坐标表示预测标签,混淆矩阵的对角线越明显,表示各类调制方式的类间识别越准确。
3.3 SNR分级仿真验证
文献[14,17]中使用-4 dB作为SNR分级边界,本文选用-8 dB作为边界SNR,均使用深度学习的方法完成高、低SNR调制信号的自动分类。文献[14]使用2层LSTM的网络结构,记作2_LSTM;文献[17]使用2层CNN的网络结构,记作2_CNN。但2种方法的网络层中均使用了大量的神经元,用于提高高、低SNR分类精度,一定程度上造成SNR分级网络的参数冗余。
将本文的SNR分级网络结构记作CNN_GRU,根据文献[14,17]中公布的参数设置,将2_LSTM,2_CNN和CNN_GRU三种方法在同一硬件环境下进行仿真。3种方法的网络参数量和测试集上的SNR分级准确率对比如表3所示。
表3 SNR分级准确率Tab.3 Accuracy of SNR classification
在-4,-8 dB下,CNN_GRU的SNR分级准确率均为最高,且参数量少于另外2种方法。这表明CNN_GRU在处理高、低SNR分级任务时,是一种更有效的深度学习结构。虽然CNN_GRU在-4 dB时的SNR分级准确率高于其在-8 dB时的准确率,但-4 dB时信号质量优于-8 dB的信号,以-8 dB作为分级降噪的边界更能充分发挥分级降噪的作用。
3.4 基于分级降噪的自动调制识别仿真验证
为了验证基于分级降噪的自动调制识别方法的有效性,在RML2016.10a数据集上分别进行数据不降噪(None Noise Reduction)和数据分级降噪(Partial Noise Reduction)的调制识别仿真,使用2.2节中所提CLNN网络作为自动调制识别网络。为了验证1.2节所确定的高、低SNR边界-8 dB为最佳分类边界,增加-4 dB分级降噪后的调制识别效果进行对比。共设3个仿真实验,分别记作-8 dB_NNR+CLNN,-4 dB_PNR+CLNN和NNR+CLNN,11种模拟调制和数字调制方式的混合识别仿真实验结果如图6所示。
图6 不同SNR边界下的调制识别准确率Fig.6 Modulation recognition accuracy under different SNR boundaries
由图6可知,分级降噪的调制识别效果整体上优于不降噪的调制识别效果,因此分级降噪作为数据预处理,可以有效提高调制识别精度。-8 dB_PNR+CLNN的调制识别准确率始终高于-4 dB_PNR+CLNN,因此-8 dB是最佳SNR分级边界。分级降噪的调制识别准确率有一定的抖动,一部分原因是分级降噪准确率有待提高,另一部分原因是SNR边界处对高、低SNR不同的预处理造成的。
为了进一步评估所提方法在调制识别任务上的性能与模型复杂度,将-8 dB分级降噪的CLNN方法(记作PNR+CLNN),与NNR+CLNN和3种AMR基准模型进行仿真对比,即GRU2[18],OLCN[19]和LSTM2[20]。5种方法仿真结果如图7所示。
图7 不同算法调制识别准确率Fig.7 Modulation recognition accuracy of different algorithms
由图7可知,相较于其他算法,经过分级降噪后的PNR+CLNN在低SNR部分的调制识别性能有明显提升,在高SNR部分最高识别精度可达94.3%,达到了同类研究在128采样点数的数据集上的识别性能的较高水平。
为了观察分级降噪对其他调制识别模型性能的改善情况,新增经过-8 dB分级降噪的3种基准模型调制识别仿真实验,分别记作PNR+GRU2,PNR+OCLN和PNR+LSTM2。为了衡量各调制识别模型的复杂度,将各模型训练参数量也进行对比。在数据集RML201610a上,本文所提方法与基准模型的网络参数量、各SNR区间上的识别率对比如表4所示。
表4 不同算法网络参数量与识别精度对比Tab.4 Comparison of the number of network parameters and recognition accuracy under different algorithms
由表4可知,CLNN,OCLN,GRU2和LSTM2经过分级降噪(即PNR)后,各SNR区间的调制识别精度都有提升。在-20~-4 dB的低SNR区间上,各模型均有3%左右的精度提升。相较于3种基准模型,CLNN的调制识别方法模型参数量最少,并且CLNN与PNR+CLNN分别都达到了同种预处理下AMR算法中的最高调制识别准确率。
为了查看不同调制方式的识别情况,使用混淆矩阵对所提方法PNR+CLNN在8 dB下的调制识别性能进行分析,结果如图8所示。对角线上的数值越大,代表该类调制方式识别效果越好。
图8 SNR=8 dB,PNR+CLNN混淆矩阵Fig.8 SNR=8 dB, confusion matrix of PNR+CLNN
由图8可知,SNR=8 dB时,8BPSK,BPSK,CPFSK,GFSK,PAM4,QAM16,QAM64,QPSK和WBFM这9种调制方式的平均识别率可达到99%以上,难以识别的QAM16与QAM64的识别率得到了有效提高。与其他调制方式识别精度的提升相比,AM-DSB的识别率还有待提高,这主要是由于信号采样长度为128,AM-DSB由实际音频流采样得到,而在采样过程中有一段音频流中断期,影响了识别精度。在采样长度更长的数据集上,PNR+CLNN将获得更好的识别性能。
4 结束语
针对低SNR下调制识别精度低以及调制识别算法复杂的问题,提出了一种基于分级降噪的自动调制识别方法PNR+CLNN。实验表明,经过分级降噪能有效提高低SNR下调制方式的识别准确率,并且在高SNR下实现了数字、模拟调制方式的高精度识别,其中9种调制方式的平均识别准确率在高SNR下达到99%。同时分级降噪在其他调制识别模型上也有明显性能提升,具有良好的普适性。所提算法无需额外提取参数特征、图像特征以及其他人工调制特征,直接将采样数据作为输入,经过PNR+CLNN网络完成自动调制识别,整个算法的低复杂度特点使其更具实际应用价值。