APP下载

基于改进ResNet的射频指纹识别方法*

2022-04-26谢跃雷邓涵方

电讯技术 2022年4期
关键词:路由器残差射频

谢跃雷,邓涵方

(1.桂林电子科技大学 信息与通信学院,广西 桂林 541004;2.卫星导航定位与位置服务国家地方联合工程研究中心,广西 桂林 541004)

0 引 言

无线设备由于其内部电子器件的容差,导致设备之间存在硬件上的差异,即使相同型号的设备也存在细微差异,这种差异使得辐射的电磁波信号携带了每个设备独有的硬件特征,通过接收射频信号就可以提取该特征,这就是“射频指纹”[1](Radio Frequency Fingerprinting,RFF)。通过射频指纹可有效识别辐射源个体,在无线网络安全、无线电管理及无线设备故障诊断等方向有着广泛的应用前景。

传统的射频指纹识别方法主要是基于特征工程,使用时频分析技术如希尔伯特-黄变换(Hilbert-Huang Transform,HHT)、小波变换(Continuous Wavelet Transform,CWT)、同步挤压小波变换(Synchrosqueezing Wavelet Transform,SWT)等,使用信号各变换域统计特征的RF-DNA(RF-distinct Native Attribute)方法,以及使用选择双谱、积分双谱等对信号双谱人工特征降维处理再分类识别[2],即通过接收瞬态射频信号或稳态射频信号,在时域或变换域提取信号的物理参数特征及统计特征,选取一个或多个特征构成射频指纹,再利用分类器实现无线通信个体的识别。但这些基于特征工程的识别方法严重依赖人工设计的射频指纹,缺乏普适性。从2018年起,深度学习开始应用到射频指纹识别领域,射频指纹识别也从经验驱动的人造特征范式过渡到了数据驱动的端到端表示学习范式的新纪元[3-4]。

文献[5]对基带信号进行差分处理以消除载频偏差和相位偏差对特征提取的影响,并映射为差分星座图,使用卷积神经网络(Convolutional Neural Networks,CNN)自动提取星座图内指纹特征。差分星座图确实能完整地表示出信号的指纹特征,但其只能对部分调制方式的信号进行识别,如正交频分复用(Orthogonal Frequency Division Multiplexing,OFDM)信号由于其多载波特性,星座图呈不规则形状,无法进行指纹特征提取。文献[6]使用压缩双谱结合CNN识别特定的信号源。双谱人工降维确实能去除冗余信息,但也存在细微特征损失的问题。文献[7]使用全双谱和卷积神经网络结合进行调制识别和初步的信号身份识别。文献[8]基于电台信号的矩形积分双谱特征,使用半监督矩形网络提取电台指纹特征,在小样本条件下达到了较高的识别率。文献[9]直接使用电台IQ时间序列训练堆栈式长短时记忆(Long Short-Term Memory,LSTM)网络,并取得了不错的效果。文献[10]将6个相同的ZigBee设备作为信号源,评估了三种类型神经网络对射频指纹识别的性能差异,以增强物联网设备的安全性。文献[11]使用152层的残差神经网络(Residual Neural Network,ResNet)识别特征增强后的几种调制信号,但较深的网络势必会带来较高的训练难度。文献[12]将信号的双谱等高图输入深度卷积神经网络完成雷达信号识别。

受到上述文献的启发,本文针对射频指纹识别人工提取信号指纹特征不充分、特征区分度不高进而导致识别率较低的问题,设计了一种轻量级的残差神经网络,利用残差神经网络可以自动提取图像特征并分类的优点,将其与待识别通信设备的信号双谱等高图结合,自动提取图中蕴含的信号指纹特征并识别出对应的设备。为了验证本文提出的改进残差神经网络模型是否更加适合射频指纹分类识别,对双谱等高图和传统卷积神经网络模型两种算法进行了实验对比,结果表明本文的改进模型在不同信噪比下的识别率相较对比算法都有显著提高,能有效识别同型号相同通信模式的无线通信设备个体。

1 信号双谱模型及ResNet

1.1 信号双谱模型

信号的双谱是最低阶数的高阶谱,计算量相对较小,其研究处理在高阶谱中最简单,表征信号非对称、非线性的特征,因此不同信号源信号的双谱图之间一定存在差异,是目前研究信号处理的前沿方法。

这里考虑基于稳态信号的射频指纹识别研究,假设接收机可以单独捕获每一个无线设备发射的信号,且不存在信号盲分离的问题,若待识别设备发射的基带信号为s(n),则接收到的基带信号序列可表示为

X(n)=s(n)+w(n)。

(1)

式中:w(n)为信道中存在的加性噪声。则信号序列X(n)的k阶累积量可表示为

ckx(τ1,…,τk-1)=cum[X(n),X(n+τ1),…,X(n+τk-1)]。

(2)

式中:τ1,τ2,…,τk-1为时延,X(n)的k阶谱定义为其k阶累积量的k-1维离散时间傅里叶变换,即

Skx(ω1,ω2,…,ωk-1)=

(3)

式中:ω1,ω2,…,ωk-1为频率分量,当k=3时即为双谱,又称三阶谱,其表达式为

(4)

式中:三阶累积量的计算公式为c3x(τ1,τ2)=E{X(n)X(n+τ1)X(n+τ2)},E{·}表示对括号内求期望。

由于高斯随机变量二阶以上的累积量恒为零,即ckx=0(k≥3),所以双谱理论上对高斯白噪声有抑制作用,同时又能很好地表征信号因辐射源电路特性造成的细微特征,能为本文算法提供有效的抗噪声性能。图1是两个同型号相同工作状态的WiFi路由器实测信号的双谱等高图,等高线颜色深浅表示双谱幅值大小,幅值越大颜色越浅。可以看出两个WiFi信号的双谱谱峰规则地分布在双谱域中,但峰值与形状有所差别,很好地表征了非对称、非线性特征。

(a)路由器1

双谱直接使用会因维度较高而可能出现维数灾难问题,目前主要采用局部积分双谱将其降维,但是局部积分处理实质上是一种人工降维的方式,势必会造成信号部分细微特征损失,而这些细微特征很有可能便是我们需要的射频指纹特征。随着深度学习在图像、语音识别中的成功应用,利用神经网络的“黑盒”特性,让其自动降维并提取双谱等高图中的射频指纹特征并完成分类,成为射频指纹识别的一个新的热点,ResNet就是其中一种神经网络结构。

1.2 ResNet结构

传统的卷积神经网络存在随着深度的增加,准确率会达到饱和然后迅速退化的问题,这使得传统的卷积神经网络在某些复杂的任务中会达到一个性能瓶颈,即无法通过增加网络层数来优化性能。然而这种问题被文献[13]证明了并不是由过拟合造成的。对此He等人[14]提出了一种具有残差结构的深度神经网络来解决退化问题。传统的卷积神经网络是由堆叠层直接拟合所需的底层映射,而残差网络构建了带有“快捷连接(Shortcut Connection)”的模块,如图2所示。

图2 残差模块结构图

假设拟合目标函数为H(x),非线性的叠加层为F(x),传统的做法是使F(x)逼近H(x),而残差结构中采用F(x)逼近H(x)-x的方式,此结构的优点是能让网络将浅层特征恒等映射到深层,浅层和深层得到有效沟通。网络前向传播时使得浅层特征在深层不容易被忽视,在反向传播时深层的梯度可以直接传回浅层,很好地解决了网络退化的问题,因此可以设计出深度较大的网络模型,从而获得更好的网络性能。

对于图2中的残差模块,其拥有两层卷积层和一个快捷连接,定义为[14]

y=F(x,{Wi})+x。

(5)

式中:x、y为模块的输入与输出,Wi为各层的权重,F(x,{Wi})是模块需要拟合的映射。

层与层之间的激活函数(activation function)使用线性整流函数(ReLU):

f(x)=max(0,x)。

(6)

2 基于改进ResNet的射频指纹识别算法

2.1 改进的ResNet模型

残差神经网络包含输入卷积层、残差模块、池化层和输出全连接层。本文基于文献[14]中提出的ResNet18层模型做了一定修改,提出了适用于双谱等高图识别的12层网络模型,在一定程度上降低了模型容量,使其更易部署在嵌入式设备中。模型具体配置与总参数量如表1所示,输入大小为64×64的双谱等高图。

表1 改进的ResNet模型和ResNet18模型结构

本文改进模型相比ResNet18输入通道数由64减少为32,8个残差模块缩减为5个,5个残差模块中的卷积层通道数也相应减少,并将最后的平均池化更换为最大池化,降低了整个网络参数量的同时也保持了较高的分类识别性能。为了保留信号细微特征,本文没有对双谱做局部积分等处理。高维的数据势必会包含较多的无用特征,也增大了计算量,对此可以利用神经网络自动对双谱数据进行筛选降维,最大限度地保留有用特征。图3为部分改进模型中间层特征图,可以看出不同的卷积层提取的是不同风格的双谱等高图特征,且相同层的特征图也存在不同。

图3 中间层特征图可视化

训练采用小批量梯度下降(Mini-Batch Gradient Descent)的方式,其把数据分为若干批(batch),按批来更新参数,综合了批量梯度下降和随机梯度下降的优点,计算量较小,梯度下降的收敛性较好。

为了提高模型的泛化能力并加快训练速度,需对数据做批归一化(Batch Normalization)处理。假设输入的一个批次的数据为B={x1…xm}共m个数据,那么此批次数据的均值为

(7)

方差为

(8)

对x做归一化:

(9)

引入缩放和平移变量γ和β,那么输出为

(10)

式(9)中ε的大小设置为1×10-5,作用是提高归一化计算的稳定性。

为了衡量模型执行分类任务时的优异程度,选择交叉熵(CrossEntropyLoss)作为模型的损失函数:

(11)

式中:p(xi)为输入数据期望输出类别的概率,q(xi)为实际输出类别概率。

最后使用Softmax分类器进行分类。Softmax分类器将其输入归一化为一组概率值p,其数学表达式为

(12)

式中:zi为模型最后一层的输出,i为类别索引,C为类别总数。输出的概率满足

(13)

2.2 射频指纹识别算法

本文所提的基于改进ResNet射频指纹识别算法的主要步骤如下:

Step1 待识别发射机带通信号采集。对接收到的射频信号进行下变频和IQ解调后得到复基带时间序列x(n)=xI(n)+jxQ(n),其中xI(n)为同相分量,xQ(n)为正交分量。

Step2 数据预处理。将采集到的原始复基带时间序列x(n)做能量归一化处理,然后将数据分割为多个片段,每段包含1 024个采样点。

Step3 计算信号双谱生成等高图。双谱将上一步中每个时间序列片段做三阶累积量估计,再通过傅里叶变换得到双谱估计。利用双谱的对称性减少计算量,具体步骤见文献[15],将输出的双谱图的同值点连线形成二维等高图。

Step4 训练ResNet。将生成的双谱等高图按数量比例6∶1随机分配为训练集和测试集。使用数据集多次训练改进的ResNet,选择一组最优的超参数以达到网络的最佳性能并保存权值数据。训练过程见图4。

图4 基于双谱等高图的改进ResNet训练流程

Step5 识别。使用改进的ResNet推理发射机信号的双谱等高图完成射频指纹识别。

3 实验与分析

为了验证本文所提算法的性能,搭建了实验平台。实验采取的信号样本来自6台华为ws5106路由器,如图5(a)所示。路由器的工作模式统一设置为发送IEEE802.11.a协议的WiFi信号,使用40号信道,中心频率为5.2 GHz,信道带宽为20 MHz。信号采集装置使用NI公司的USRP2954软件无线电设备。在实验室实际电磁环境下分别采集每台路由器的发射信号,将USRP2954载频设置为5.2 GHz,采样频率设置为40.96 MHz。信号经过下变频处理得到基带I/Q正交数据。实验的神经网络模型均在一台CPU为Intel Core i5 9500 3.0 GHz、内存12 GB、Windows10系统、基于python语言的开源深度学习框架Pytorch上运行。

图5 实验数据采集环境

实验采用三种算法识别射频指纹,分别为本文算法(双谱等高图+改进的12层ResNet)、对比算法1(双谱等高图+无快捷连接的ResNet18)和对比算法2(双谱等高图+12层CNN)。对比算法2中的CNN模型为本文提出的12层ResNet去掉快捷连接后的卷积神经网络,其他参数保持不变,目的是检验残差神经网络与传统卷积神经网络的性能差异。

3.1 实验流程

(1)数据采集

路由器信号通过非协作的方式接收,实验环境如图5(b)所示,路由器与USRP2954的接收天线摆放位置图中已作标注。实验中6台路由器依次放置在图中所示固定的位置采集信号样本。

(2)计算双谱等高图

将USRP2954所采集的波形文件送入Matlab软件进行处理。首先将信号序列分割为每段1 024个采样点的多个片段,再依次把每个片段做能量归一化并使用间接估计法计算双谱,最后使用contour函数绘制等高图并保存。

(3)训练并测试神经网络

将双谱等高图按照对应的路由器分类打包制成数据集。其中,训练集一共36 000张图片,每个路由器对应6 000张图;测试集一共6 000张图片,每个路由器对应1 000张图。将这42 000张图片做预处理——尺寸缩减为64×64,并灰度化,则网络的输入形状为(1,64,64)。批处理的大小设置为300,学习率为0.05。

3.2 结果分析

本节通过对三种不同算法在实际电磁环境下与不同信噪比(Signal-to-Noise Ratio,SNR)加性高斯白噪声环境下进行实验,评估不同条件下算法的性能。为了具体评估本文所提算法对于每一个路由器个体的识别效果,这里采用混淆矩阵来显示识别情况。

对于实际电磁环境,没有手动添加任何噪声的情况下,三种算法的识别率见表2,识别混淆矩阵见图6。

表2 不同算法的识别率结果

图6 不同算法的分类混淆矩阵

从表2中可以看出,残差神经网络与取消了浅层到深层快捷连接的传统卷积神经网络性能有显著差距,证明了残差神经网络的性能确实较传统卷积神经网络更优秀。本文的轻量化改进是成功的,改进的12层ResNet模型将识别率提升到了95.2%。

对采集到的基带复信号使用Matlab软件的AWGN函数加上一组信噪比0:5:30 dB的高斯白噪声来模拟噪声环境,评估本文算法在噪声环境下的识别性能,结果如图7所示。

图7 不同信噪比下算法的识别率

观察图7可得三种算法在信噪比高于10 dB的情况下都可以保持一个不错的识别率,其中本文提出的改进的12层ResNet模型在10 dB时达到了90%左右的识别率,其抗噪声性能比另两种更优秀。但是信噪比低于5 dB时识别性能下降较大,本文的改进模型在5 dB时有大约72%的识别率,仍然高于其他两种算法。

下面通过混淆矩阵具体分析算法加噪情况下的识别性能。图8为文中提到的三种不同算法在信噪比为10 dB下的识别混淆矩阵,可以直观了解6个路由器个体的射频指纹识别情况。从图8可以看出,改进的12层ResNet算法在10 dB条件下能较好分清路由器,且发现5号路由器无论使用哪种网络都能较好地分辨,说明其发射的信号带有较显著的指纹特征,且受噪声影响较小。算法2采用的12层CNN由于拟合度不够使得对2号路由器和3号路由器的识别效果较差,算法1采用的无快捷连接的ResNet18由于模型复杂度较高反而比本文改进的残差网络的识别率低,说明传统卷积网络并不是层数越多越好,而本文的12层ResNet则较好地平衡了模型复杂度和性能。

图8 三种算法在10 dB信噪比下的分类混淆矩阵

图9对比了不同网络模型在本实验环境下训练一个epoch以及测试的所需时间,我们发现模型大小并不总是与处理数据所需的时间相关。

图9 各网络模型训练和测试耗时

结合表3可知,不论是算法2的12层传统卷积神经网络还是本文提出的改进的12层ResNet的模型大小相较于算法1的18层卷积神经网络有着极大的减小,其中改进的ResNet模型大小约是其模型大小的1/22,不加噪时的识别率却有约0.5%的提升,而相较于12层传统卷积神经网络,本文所提的改进模型在参数略微增大的情况下识别率有大约1.4%的提升。更大的模型可能意味着更长的训练时间与更多的硬件资源消耗,本文的改进12层ResNet模型相较于对比网络模型有较大优势,不仅有较高的识别率,而且更易部署在嵌入式设备中。

表3 各网络模型大小与参数量

4 结束语

本文将时下火热的深度学习与传统的信号处理手段相结合进行射频指纹识别。双谱可以很好地将信号细微特征表征出来供分析使用,使用深度学习能解决人工提取特征存在的特征不充分、不适合的问题。将较为先进的残差神经网络模型引入并进行改进,减少了计算量并获得了较好的识别效果。信号双谱与本文改进的残差神经网络的结合,在一定的噪声条件下能对6种同型号的路由器进行有效的个体识别,充分证明了本算法在较复杂电磁情况下的实用性。但是在实验研究过程中发现本算法需要较多的有标签样本数据才能达到理想的识别效果,所以还有进一步改进的空间,比如采用半监督学习的方式减小有标签样本的需求。

猜你喜欢

路由器残差射频
买千兆路由器看接口参数
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
5G OTA射频测试系统
维持生命
路由器每天都要关
路由器每天都要关
关于射频前端芯片研发与管理模式的思考
基于残差学习的自适应无人机目标跟踪算法
基于深度卷积的残差三生网络研究与应用