利用CNN 和小波变换的室内定位信号识别
2022-04-15张忠健席志红
张忠健,席志红
哈尔滨工程大学 信息与通信工程学院,黑龙江 哈尔滨 150001
室内定位技术已成为一个研究热点,如蓝牙技术、WIFI 技术和射频识别技术等。相比之下,与IEEE802.15.4—2011 标准兼容的超宽带(UWB)定位技术在定位精度、实时性能和带宽等方面都具有很大的优势[1]。影响超宽带定位系统定位精度的一个重要原因是超宽带信号的非视距传播。预先从定位信号中区分出NLOS 信号,进而可以抑制由于信号非视距传播产生的测距误差,达到提高定位精度的效果[2]。基于机器学习和深度学习的方法在NLOS 识别中已经得到了广泛的研究。机器学习包括支持向量机(SVM)[3]、K 近邻(k-nearest neighbors,KNN)[4]、决策树(decision tree,DT)[5]和随机森林(random forest,RF)[6]等方法,这些方法都是利用一些超宽带信道脉冲响应的特性,如接收到的信号能量、最大振幅、上升时间、平均附加时延和均方根(root mean square,RMS)延时拓展等作为识别特征,来进行NLOS 识别。深度学习方面,文献[7]在没有信道先验知识的情况下,利用原始信道脉冲响应(channel impulse response,CIR)结合卷积神经网络(CNN)对NLOS信号进行分类。文献[8]同样是利用原始信道脉冲响应信息,提出一种CNN 和长短期记忆(long short-term memory,LSTM)相结合的方法对非视距信号进行分类。除此之外,文献[9]在延迟角域提取分类特征,并且考虑了信号的多径效应和空间选择性衰落。
本文研究信号识别所使用的室内定位技术是由超宽带无线电基于测量2 个节点之间的飞行时间(time of flight,ToF),从而获取测距信息,最终将多个测距信息交汇,实现位置估计。从CIR 信息得到的传播特性可以用来缓解由于环境中的NLOS 信号传播所导致的ToF 测距误差,或者直接删除由非视距传播条件产生的测距信息,从而显著提高定位性能,因此对NLOS 识别的研究至关重要。本文在卷积神经网络GoogleNet 的基础上,对网络结构进行优化,提出了一种基于莫雷(Morlet)连续小波变换和卷积神经网络(CWTCNN)的NLOS 识别方法。CWT-CNN 将超宽带信号转换为时频谱图像,并利用精确的时频域特征识别NLOS 信号。仿真结果表明,CWT-CNN的性能优于仅采用时域特征的传统方法。
1 Morlet 连续小波变换
由于超宽带信道脉冲响应是由不同的频率分量组成的,在本文中,将信道脉冲响应转换为时频域图像,以促进特征提取。连续小波变换(CWT)是最常用的时频分析工具,它使用一系列小波函数来分解时频域的信号。它继承和发展了短时傅里叶变换(short-time Fourier transform,STFT)的思想,但与STFT 不同,CWT 可以在高频中提供高时间分辨率和低频分辨率,通过调整尺度和平移参数,在低频中提供高频分辨率和低时间分辨率。给定信号x(t),小波变换被定义为
其中,母小波的选择往往对时频分析的效果至关重要,需要设置非正交小波函数才能得到光滑的连续小波振幅。此外,还需要一个复小波来获得关于时间序列的振幅和相位信息。本文以Morlet 小波[11]作为母小波,因为Morlet 小波不仅是非正交的,而且是由高斯调节的复指数小波。此外,Morlet 小波在时间定位和频率定位之间具有正确的平衡[12]。Morlet 小波的小波基函数可以表示为
式中: ϖ0=2πFc, 其中Fb是 小波的带宽。Fc和Fb这2 个参数的设置会影响时间分辨率和频率分辨率,需要根据具体任务进行调整。
通过CWT 可以得到信号小波标度图,如图1所示。从标度图可以看到一些时频域上的细节特征。例如,在时域上,NLOS 信号的上升时间比LOS 信号的上升时间长;由于信号多径效应引起的频率选择性衰落,NLOS 信号的明亮垂直线在时频谱上显得更加不连续。
图1 LOS/NLOS 小波变换标度
2 CWT-CNN 模型
CNN 是一种多层次的神经网络,它使用卷积操作来代替深度神经网络中的一般乘法,可以通过训练自动提取识别特征,近年来已广泛应用于分类任务中,特别是在图像识别中[13]。CNN 相对于其他网络的优越性归因于2 个重要概念:稀疏交互和参数共享[14]。稀疏交互降低了模型的计算复杂度,提高了其统计效率;参数共享是指在乘法运算中使用相同的参数,即在处理输入的不同位置时,每个卷积核的参数是相同的。
本文所提出的CWT-CNN 是在GoogleNet-Inception V1 网络上进行改进,网络框架如图2 所示。GoogleNet 网络一共有22 层,其中最重要的是卷积层。卷积层应用一组称为滤波器或核的权重来提取特征,原理上,可以通过增加卷积层数来提取相关的高级特征,利用反向传播误差来训练卷积核的权值,使用ReLU 层作为激活函数来实现非线性功能。批处理归一化层通常放置在卷积层和ReLU 层之间,该层对各通道的特征图进行归一化处理,减少了训练时间和网络初始化的灵敏度。池化层又称次采样层,用于计算放置在先前卷积层中的相邻神经元内的最大卷积特征,池化层可以降低特征维度,加快训练过程。网络最后一层通常连接到2 个用来计算类分数的完全连接的神经元。
图2 CWT-CNN 信号识别网络框架
Inception V1 模块是本文CWT-CNN 网络框架的重要组成部分。CWT-CNN 有9 个Inception V1模块,如图3 所示。
图3 Inception V1 模块
Inception V1 的作用是用一个较好的分辨率覆盖一个更大的区域,以获得关于该图像的细节信息。这些模块用于提高网络的计算效率,可以通过使用堆叠1 ×1卷积的降维方法来实现。模块对具有3 个不同大小的滤波器(1 ×1、 3×3、 5×5)和最大池化层的输入进行卷积,最后将所有输出连接在一起。这些模块缓解了计算成本问题和过拟合问题。此外CWT-CNN 还进行了如下修改:
1)为了防止网络过度拟合,GoogleNet 中的dropout 层以给定的概率将输入神经元随机设置为零,用概率为0.6 的dropout 层替换网络中的最后一个dropout 层 pool5-drop_7×7 _s1。
2)网络的卷积层提取图像特征,最后一个可学习层和最后一个分类层用来对输入图像进行分类。GoogLeNet 中的 loss3-classifier和 output这2 层包含如何将网络的提取特征组合成类概率、损失值和预测标签的信息。为了重新训练GoogLeNet对RGB 图像进行分类,将这2 个层替换为与数据相适应的新层。将全连接层 loss3-classifier替换为一个新的全连接层,该层的滤波器数量等于类的数量。
3)分类层是指网络的输出层。将分类层替换为不带类标签的新层new_classoutput,网络在训练时自动设置层的输出类。
3 实验结果与分析
本文中所有实验分别在2 种实验环境下完成,实验硬件环境为一台CPU 为Intel i5-5200U,显存为8 GB,内存为240 GB 的笔记本电脑。CNN、SVM 和本文提出的CWT-CNN,这3 种方法均在Windows10 操作系统上实现。CWT-CNN 方法的深度学习框架是基于Matlab 2019b 的深度学习工具箱进行编程,同时还使用了小波工具箱;对照实验CNN 方法,软件环境基于Python 语言的TensorFlow 架构进行编程;对照实验SVM 方法利用Matlab 的统计和机器学习工具箱进行编程。
3.1 模型评估指标
为了评价本文卷积神经网络的性能,将通过计算混淆矩阵得到的指标作为评估模型性能的指标[7]。分类任务完成之后,混淆矩阵中产生4 类,分别为真阳性率(true positive rate,TPR)RTP、真阴性率(true negative rate,TNR)RTN、假阳性率(False positive rate,FPR)RFP和 假 阴 性 率(false negative rate,FNR)RFN。本文应用的分类模型评估指标如下:
3.2 数据集
实验使用一个GitHub 开源数据集[3]。数据集采集于7 种不同的室内环境,以构建更通用的模型,防止在特定环境中过度拟合。为了加快数据集的获取,测量没有在预定义网格上进行严格的节点定位,而是在选定的室内环境中,将一个UWB节点放置在一个随机的固定位置,并且在整个环境中移动另一个UWB 节点的同时进行测量。先收集了3 000 个视距信道条件下的测量值,然后收集了同一环境下3 000 个非视距信道条件下的测量值。为了确保收集到的测量值始终符合信道状态,测量人员跟踪2 个UWB 节点的信道条件,可视链路条件下为LOS 信道,非视距链路条件下为NLOS 信道。测量了7 种不同的室内环境:2 个办公环境、1 个小车间、2 个公寓、1 个厨房和1 个锅炉房。这些环境中的每一个都具有特定的多径传播特性,这增加了数据集的丰富度,防止LOS 和NLOS 的分类模型被过度拟合到单个环境中。在数据集中,每个测量数据包括距离估计(基于估计的信号飞行时间)、接收信号强度值、噪声等级和CIR。
数据集采集使用DWM1000 模块[15],DWM1000是一种基于无线电脉冲超宽带(IR-UWB)技术开发的低成本收发装置,数据集中采集的每个信道脉冲响应数据的脉冲重复频率为64 MHz,且每个数据有1 016 个采样样本,其时间分辨率约为1 ns或为499.2 MHz 基频的半周期。
若将完整的信道脉冲响应执行小波变换,会导致图像中多数像素包含无用信息,无用的信息会浪费计算资源和处理时间。另一方面,被截取的信号需要保留原始信号中的主要能量和部分拖尾。由于每个信道脉冲响应在不同的到达时间处开始上升,因此确定信道脉冲响应第一路径的索引对获取有用信息是十分重要的。DWM1000 使用内置的基于阈值的能量检测算法确定信号的第一路径索引,数据集中已提供该索引值。从第一路径索引开始,使用前152 个CIR 样本。图4 中可视化了一个样本长度为152 的CIR 示例,大约152 个样本保存了有关环境中传播特性的大部分有用信息[7]。最后,将小波变换得到的标度图创建为大小为 224×224×3的RGB 图像。
图4 NLOS 信道脉冲响应示例
本文选取数据集中的6 种环境(2 种办公室环境中选择1 种)中各1 000 个样本进行实验,每种环境的数据集按照60%、20%、20%的比例划分为训练集、验证集和测试集。
3.3 实验结果与对比
当使用相同参数获取多个信号的连续小波变换时,可以使用CWT 滤波器组。使用Matlab 小波变换工具箱的CWT 滤波器组对数据集中所有信号进行预处理,滤波器组的母小波选择为Morlet小波。
分类模型训练过程设置最小批的大小为15,最大迭代次数为10,初始学习率为,使用动量随机梯度下降优化器,前一迭代的更新参数对当前迭代随机梯度下降的贡献设置为0.9。
根据以上所设定的参数和模型评估指标,分别训练属于6 种室内场景的CWT-CNN 模型。随着迭代次数的不断增加,场景6(锅炉房)训练准确率的变化曲线如图5 所示。为了方便可视化观察,将训练准确率进行平滑处理(蓝色曲线)。从图5 可以看出,场景6 模型并未出现过拟合现象,且最终验证集准确率为90.50%。
图5 场景6 的训练准确率变化曲线
数据集中6 种环境的每一个都具有特定的多径传播特性,因此增加了分类模型的丰富性。本文分别测试了6 种场景分类模型的性能,如表1所示。除公寓场景外,其他5 种场景分类准确率均达到87%以上。从整体分类性能来看,卧室场景和锅炉房场景优于其他场景。公寓场景模型分类性能最差,粗略估计是此数据集在测量时受环境多径效应及非视距影响,数据集缺少泛化能力,导致分类性能低于其他场景。
表1 CWT-CNN 在6 种场景中的分类性能 %
为了进一步验证CWT-CNN 分类模型的信号分类效果,设置了与基于信道脉冲响应本身特征的CNN 分类模型[7]和基于SVM 的分类模型[3]的对比试验。实验数据集选择场景6(锅炉房)数据集,实验结果如表2 所示。
表2 本文方法与现有方法的性能对比 %
从表2 可以看出,本文提出的方法在场景6 中的F1值为89.72%,相较于传统CNN 和SVM方法分别提高了0.74%和3.31%,在相同场景中,本文通过采用小波变换和修改传统卷积神经网络的办法,提高了模型对NLOS 信号的特征提取能力和识别能力。本文所提方法整体性能略优于其他2 种现存方法,但与传统CNN 方法相比识别准确率和F1值较为接近,说明本文所提卷积神经网络模型和对数据中有用特征提取能力还需进一步优化和提升。
3.4 特征可视化分析
图6 给出了本文卷积神经网络的图像特征提取部分过程。卷积神经网络利用特征对图像进行分类,网络在训练过程中由浅到深的不断学习这些特征。由网络末端全连接层输出的特征对应于先前卷积层所学习特征的高级组合。
图6 模型训练过程中部分特征图像可视化
由图6 可知,conv1 和conv2 层是处于网络开始的卷积层,具有较小的感受野,因此学习的特征较少且低水平,这层特征图主要包含边缘和颜色信息。用于conv2 层的滤波器检测到比conv1层更为复杂的特征。随着网络深度的增加,接进网络末端的卷积层具有更大的感受野,inception_4e可以提取到图像的图案和纹理这样的高阶特征信息。更换的全连接层滤波器个数等于信号类的数量,此层融合了各卷积层上的特征。通过充分理解神经网络的特征信息,才能对现有的模型做出更好的优化。
4 结论
本文针对卷积神经网络在识别超宽带室内定位信号时提取特征不明显、准确率较低等问题,提出了一种与连续小波变换相结合的非视距信号识别方法,即CWT-CNN。CWT-CNN 能同时在时频范围内分析UWB 信道脉冲响应,并在特定场景下准确识别超宽带非视距信号。仿真结果表明,CWT-CNN 在6 种不同室内场景中都达到了预期的效果,与传统方法CNN 和SVM 相比,准确率分别提高了1.77%和5.50%。由于本文提出的方法是在不同场景中训练各自的信号分类模型,且将某一种分类模型应用于另外一种场景时,信号识别效果并不理想,因此在接下来的工作中希望实现一种适用于不同场景的超宽带非视距信号分类模型,进一步提升模型的鲁棒性和识别的准确率。