基于迁移学习提高W iFi室内定位中信道状态信息指纹库的鲁棒性

2023-11-18 08:49李玉柏
电子与信息学报 2023年10期
关键词:降维室内环境载波

李玉柏 孙 迅

(电子科技大学信息与通信工程学院 成都 611731)

1 引言

室内定位是当今定位研究的热点内容。如何利用现有设备进行高精度定位是全世界研究人员都在进行研究的课题。随着定位技术的逐渐成熟,可以使用W iFi进行室内定位。

目前主流的室内定位解决方案有很多,Sadruddin等人[1]利用加速度传感器来对行人进行室内定位,Bai等人[2]利用低功耗蓝牙对老年人进行室内定位监测,Chóliz等人[3]提出一种基于超宽带(U ltra W ide Band,UWB)的室内定位算法,Liu等人[4]介绍了基于W iFi的室内定位框架,Gan等人[5]提出了一种基于伪卫星和UW B的室内定位算法等。在室内定位算法方面,有基于传统建模的方法,如文献[6,7]给出了室内空间信道的传播模型,直接解算室内定位结果。文献[8,9]则是基于学习的解决方案,通过建立离线指纹数据库来进行定位。

在利用W iFi的室内定位中,近年来越来越多的研究人员选择使用信道状态信息(Channel State Information,CSI)数据代替接收信号强度(Received Signal Strength Indicator,RSSI)信号进行室内定位。CSI表示正交频分复用(Orthogonal Frequency Division M ultiplexing,OFDM)技术的W iFi信号体制在信道中的传播信息,与只能获取单个数据的RSSI不同,CSI可以获得各个不同频率子载波组成的信息向量,利用CSI数可以设计具有更高定位精度的定位系统。

但是,无论上述哪种方案,都会面临一个难以解决的问题。即随着时间的推移,室内环境发生变化后,这些离线指纹数据库或建模公式将不再与室内环境完美匹配。测试数据与原始的训练数据分布将会不同,这就会造成巨大的误差。如图1所示,图1(a)为机器学习训练完成,指纹库刚建立时的定位结果,误差很小,图1(b)为3周后的定位结果,随着室内环境的变化,存在很大的误差。两图右侧的红色点为实际位置,蓝色点为预测位置。为了解决这个问题,本文提出使用迁移学习方法来建立指纹数据库,以训练数据为源域,室内环境变化后的数据为目标域,然后使用迁移学习方法迁移其数据分布,以便它们可以映射到相同的分布。实验证明,本文算法在建立指纹库一段时间后性能只有些微下降,具有较高的鲁棒性。而基于传统深度学习的算法在一段时间后,室内环境发生变化导致指纹数据库与当前室内环境不匹配,从而致使性能严重下降。

图1 室内环境变化前后定位误差

1.1 测试数据

测量数据源通常包括信号强度值(RSSI)[10]、到达角(Angle-O f-A rrival,AOA)[11]、到达时差(Time Difference O f A rrival,TDOA)[12]和基于惯性导航的行人航位推算(Pedestrian Dead Reckon ing,PDR)[1]。在W iFi定位中,也有许多研究人员选择使用CSI信号进行定位,如文献[13,14]就是使用CSI信号作为信号源。

对于RSSI,距离损失模型被世界各地的学者广泛使用,其计算公式为

其中,PL是路径损耗,n是平均路径损耗分量,表示路径损耗随距离增加的速度,d0是参考距离,d是收发距离,[]表示单位。路径损耗模型提供了一种严格的方法来量化传输距离和环境参数对无线链路信号强度和容量的影响。然而,现有的模型不能准确地捕获复杂信号衰减,也不能区分相邻位置的RSSI值之间的细微差异。

信道状态信息(CSI)描述通信链路的信道特性,尤其是信号如何从发射机传播到接收机,并表示散射、衰落和功率随距离衰减的综合影响。在窄带信道中,无线环境的联合作用产生一个线性模型,如式(2)所示

其中,Y(f)和X(f)分 别是接收和发送的信号,H(f)是复信道频率响应,N是加性高斯白噪声。根据定义,基于OFDM的W iFi系统使用多个子载波进行数据传输。每个副载波上的信道特性包括幅度衰减和相位偏移,其可以使用复数进行标识。在窄带平坦衰落信道中,频域OFDM系统可以如式(3)所示

其中,k是子载波的序列号,‖H k ‖表 示第k个子载波的振幅,∠H k表示该第k个子载波的相位。

1.2 定位方法

为了进行室内定位,来自世界各地的研究人员使用了多种方法,Ayabakan等人[15]提出了一种基于卡尔曼滤波的定位方法,Silva等人[16]提出了一种基于粒子滤波的定位方法,Jedari等人[6]提出了一种基于信道传播模型的定位方法,以及Ibrahim等人[17]和Edel等人[18]提出了基于机器学习的定位方法。在这些研究中,也有利用迁移学习进行定位的,例如,Gao等人[19]使用迁移学习来解决更换路由器后的指纹库迁移问题,Li等人[20]使用迁移学习解决RSSI信道变化问题。对于CSI数据,许多研究人员致力于分析其传播信道,希望完全过滤环境噪声和硬件噪声,包括多径、采样频率偏移、采样时间偏移、包检测延迟等。Ibrahim等人[17]在训练后直接使用机器学习算法来解决测试数据,但针对环境变化后的指纹库恶化问题的研究并未取得实质性进展。

1.3 迁移学习方法

迁移学习是指一种学习对另一种学习的影响,通过该方法,可以利用少量标记数据来对其他的无标签数据进行分类,并在源域和目标域之间迁移。目前主流的迁移学习方法包括文献[21]提出的域对抗神经网络(Domain-Adversarial Neural Networks,DANN)、文献[22]提出的深度适配网络(Deep Adaptation Netow rk,DAN)和文献[23]提出的深度子领域自适应的方法(Deep Subdom ain Adap tation Network,DSAN)等等。世界各地的许多学者已经将迁移学习应用于许多领域,Sheoran等人[24]使用迁移学习进行年龄和性别预测,Aneja等人[25]将迁移学习用于癌症诊断,Horry等人[26]以及Pathak等人[27]通过迁移学习检测covid-19等等。

本文做出的主要贡献如下:

(1)本文针对CSI信号提出一种信号预处理方法,包括自动增益控制(Automatic Gain Control,AGC)补偿、CSI信号的噪声过滤以及数据降维等。该算法可以有效地从CSI数据中提取定位信息,提高定位精度。

(2)设计了一个迁移学习网络,包括特征提取器、域鉴别器和位置预测器,并将其应用于W iFi室内定位,取得了良好的定位效果。

(3)对测试数据进行选择,利用优秀的测试数据和信标采集的数据更新指纹库,充分利用现有的数据条件,显著延长定位系统的生命周期,强化了其鲁棒性。

本文将以如下方式展开:第1节概述室内定位研究现状与本文贡献。第2节简介本文提出的系统模型。第3节详细介绍系统的设计和算法,包括数据预处理算法,对接收到的CSI数据进行处理以得到合适的指纹数据。以及利用迁移学习的方法进行指纹定位。第4节利用提出的系统进行的实验以及评估,包含CSI与RSSI的对比,数据预处理算法的实验,以及与传统深度学习方法的对比。第5节为对本文的总结。

2 系统模型

本节将介绍基于CSI和迁移学习的室内定位系统架构。定位系统的总体架构如图2所示,包括预处理模块、特征提取模块、域鉴别器模块、位置预测器模块和更新模块。

数据预处理:由接收设备采集的CSI数据不能直接用于位置预测,因为W iFi芯片的AGC[28]模块将破坏CSI幅度中的距离信息,从而无法进行位置预测。因此,在数据预处理模块中,本文需要使用RSSI信号来消除AGC的影响。然后,由于CSI中存在一些异常数据,因此有必要在迁移学习之前删除这些异常数据。最后,本文的数据维度太高,需要降低维数以减少数据量,并提取出有效的定位信息。

特征提取器:一方面,它可以提取后续网络训练所需的特征,以便于网络训练。另一方面,可以将源域样本和目标域样本混合以映射到一个相同的分布。

域鉴别器:对输入的CSI数据进行分类,辨别出数据来自源域还是目标域,并输出域间损失Ld作为总损失的一部分。

位置预测器:使用特征提取器提取的信息对样本进行分类,并输出预测结果。此外,位置预测器可以计算预测损失Lp作为总损失的一部分。

更新模块:对优良的测试数据进行挑选,以及对信标采集的数据进行挑选,选取出适合训练的数据并输入到网络中重新进行训练,以提高指纹库的鲁棒性和生命周期。

3 数据预处理与迁移学习算法

3.1 数据预处理算法

由于AGC会将所有数据调制到同一区间内,丢失CSI幅度数据中的距离信息,所以利用原始CSI数据无法进行定位。本文利用RSSI数据来对CSI数据进行重构,使我们重新获得CSI数据中的距离信息从而能进行室内定位。首先,本文需要通过RSSI数据来计算缩放因子s。对于接收到的CSI和RSSI信号,由于RSSI反映了所有子载波的聚合功率,因此可以利用RSSI数据估计CSI的实际幅度。测得的RSSI信号以分贝(d Bm)为单位,将其转化为标称功率下后,可以得到如式(4)的关系式

其中PCSI为C SI的各个子载波功率之和。第i个子载波的接收数据为c sii=αi+jβi。故可得到缩放因子s的计算表达式为

其中,Nsub为 子载波数,IEEE 802.11n协议下20 MHz对应的子载波数为64。然后再利用这个缩放因子去对CSI数据进行还原,并转换为d Bm单位下的幅度值,即可得到包含距离信息的C SI数据

其中,CSIraw为原始的CSI数据,C SIAGC为经过去除A GC影 响后的C SI数据。

其次,对于测试数据,由于环境噪声或硬件问题,会出现一些离群的数据,并且误差相对较大。使用这些数据进行训练将会降低分类器的精度,对指纹库的构建具有负面影响。本文采用具有噪声的基于密度的聚类方法(Density-Based Spatial Clustering of App lications w ith Noise,DBSCAN)对这些数据进行处理,选取聚类结果中密度最大的一类作为测试数据,滤除其余数据,王迪也[29]已证明该聚类算法对滤除CSI离群帧的有效性。

最后,由于CSI数据的维度较高,为了减少计算量并去除CSI数据中包含的与定位无关的信息,本文需要在训练之前进行降维处理,使得其特征集中到低维空间,降低计算量的同时提高精度。首先,对于IEEE 802.11ac协议中对子载波功能的定义中,20 MHz下包含两端共11个保护子载波,以及零号子载波,这12个子载波都不是数据子载波,故对这些子载波数据可以进行删除。对于剩下的子载波数据,本文使用主成分分析(Principal Component Analysis,PCA)来对其进行降维。对于CSIAGC=(csi1,csi2,...,csin),其数据维度为n,假设需要将其降维到m。先对其进行中心化,即所有子载波上的数据减去其均值

该算法流程图如图3所示。

数据预处理部分具体算法如算法1所示。

3.2 迁移学习算法

在经过3.1节的数据预处理之后,可以获得指纹定位所需的指纹特征数据。接下来,将使用迁移学习对其进行训练,从而建立指纹数据库。迁移学习的网络结构如图4所示。

图4 迁移学习网络架构

3.2.1特征提取器

对于已经数据预处理后的数据C SIi,将其作为1维的指纹输入进一个全连接神经网络,来提取其特征。此处对于一个训练优秀的特征提取器而言,输出的数据理应无法辨别来源于源域还是目标域,能够将分布不同的源域数据与目标域数据映射到相同的分布空间中。前向计算过程如式(8)所示

其中,ME为一个多层全连接神经网络,ΘME为ME的参数,Zi为特征提取器输出向量,R eLU为激活函数。

3.2.2位置预测器

这里将进行定位的预测输出,对于位置预测器的输入数据Z i,经过长短时记忆神经网络(Long Short Term M emory,LSTM)后得到

其中,MP为一个L STM网络,譬如Zhang等人[30]就提出了一种利用LSTM网络进行CSI定位的室内定位系统。ΘMP为MP的参数,为MP的输出。然后把LSTM网络的输出通过一个激活函数为Softm ax的输出层,这样就可以直接得到位置预测器在某个位置的预测概率

其中n S和nT分别表示在MMD计算中源域数据向量的个数和目标域数据向量的个数。κ(·)代表核函数:f(u)·f(v)=κ(u,v)。本文使用径向基函数作为MMD的核函数,其表达式为

这样就可以得到域间距离作为域间分布损失L d=MMD(S,T),当源域数据S与目标域数据T分布完全相同时,Ld=0。

迁移学习训练算法如算法2所示。

3.2.4可靠数据挑选和网络更新

在指纹数据库的更新中,需要找到新的数据作为目标域数据,以完成迁移学习,实现指纹数据库更新的目标。这些新的数据来源主要分为两类:测试数据中的优良数据,以及信标采集的数据。

对于测试数据,本文选择满足条件D(CSIi)<δ且不包含异常值的数据作为新的数据来源,此类数据的数据集大小不确定,会随接入用户密集程度发生改变,且各个定位点出现概率不同。而对于信标采集的数据,对其进行3.1节的数据预处理算法后也作为新的数据来源,此类数据的数据集大小较为固定,同时各个定位分类点的数据量会较为均衡。

然后将这两种数据都作为目标域数据放入迁移学习网络中,以更新我们的网络参数,使指纹数据库尽可能跟踪环境的变化,从而可以最大限度地利用已有的资源来延长网络的使用寿命。

网络更新算法如算法3所示。

算法2 迁移学习训练与位置预测

4 实验评估

在本文的实验评估中,使用nexus 6p作为接收设备,其芯片为bcm4358,利用开源固件nexmon[32,33]可以接收并导出CSI数据以及RSSI数据。实验在5 GHz接收频率、20 M Hz带宽上接收CSI信号。CSI数据的每个帧包含64个子载波,本文使用幅度作为输入数据。发送端路由器包括3个型号不同的路由器,分别为ASUSRT-AC86U,TL-WAR1200L以及TL-W DR 6300。每秒将接收10个CSI数据帧,每次从3个路由器接收CSI数据,然后进行数据拼接,即每次接收3×64维CSI数据。数据拼接过程如图5所示。

图5 CSI数据拼接

室内环境测试如图6所示。进行测试的实验室长16.5m、宽8m。图6的红点表示室内定位接收端的测试位置。相邻测试点之间的横向间距为1.5m,纵向间距为0.8 m。本文在3个不同的位置摆放了3台路由器,它们将连续向接收设备发送数据。实验室每周有1节课,所以室内环境变化很大,主要是桌椅位置的变化。综上,本实验中的主要环境变化包括室内物理环境变化、电压变化引起的路由器功率变化以及不同天气引起的空气温湿度变化,可以作为一个典型的室内环境变化的室内定位场景使用。

图6 室内环境

本文的评估实验使用python语言完成,并基于pytorch搭建了神经网络,包括本文的迁移学习网络以及4.3节进行对比的CNN,DNN,LSTM等网络。特征提取器包含两个隐藏层,神经元节点个数都为100,第1个隐藏层的输入维度为数据预处理算法进行降维后的CSI数据维度:nn.Linear(m,100),第2个隐藏层的输入维度则为第1个隐藏层的输出维度:nn.Linear(100,100)。位置预测器的网络结构为nn.LSTM(100,35),35指的是图6中测试点的个数,输入为特征提取器的输出。本文使用RMSprop(Root M ean Square p rop)算法作为优化器算法,以对步长因子进行优化。

算法3 网络更新算法

4.1 数据预处理算法评估

首先来看数据预处理各部分的重要性,本文将对比不进行数据预处理、仅对AGC进行补偿、不进行降维、不对误差帧进行滤除以及进行完整的数据预处理算法进行实验对比。

图7中“原始CSI”指的是由接收机接收到的CSI数据,“AGC补偿”指的是针对AGC进行补偿后的CSI数据。由于不去除AGC的影响对定位精度的影响太大,所以其他3组都已经过了“AGC补偿”算法。“帧过滤”指的是利用聚类算法去除掉离群数据或者异常帧后的数据。“数据降维”指的是经过了删除非数据子载波,以及PCA算法降维后的数据,“CSI_pre”指的是经过了全部数据预处理算法后的数据。从图7可以看出,数据预处理对于利用CSI进行室内定位的系统而言是必不可少的。由于AGC破坏了幅度中的距离信息,所以在利用原始的CSI数据进行室内定位时定位效果较差。对比“原始CSI”和“AGC补偿”可以看出,去除AGC影响后定位系统的性能将显著上升。

图7 CSI数据预处理算法比较

对比“AGC补偿”和“帧过滤”,以及对比和“CSI_pre”可以看出,过滤异常帧对于提升定位系统的性能也有帮助。对比“AGC补偿”和“数据降维”,以及对比“帧过滤”和“CSI_pre”可以看出,对CSI数据进行降维对性能的提升是显著的,可以通过表中的数据了解:数据降维对性能的提升在第1周、第2周、第3周都要大于46%,所以在对CSI数据进行预处理时,进行降维是不可或缺的一步。

至此,证明了本文所提数据预处理算法的有效性,AGC补偿、帧过滤以及数据降维在CSI数据的预处理算法中都是有着关键作用的。

4.2 CSI和RSSI数据评估

接下来将对CSI和RSSI之间的训练情况进行对比,包含CSI降维到10,15,30,40维以及RSSI的定位系统的评估对比。评估结果如图8所示。

图8 对比RSSI与各维度下的CSI数据

从图8可以看出,CSI数据在降维到不同的维数时会有不同的定位精度表现,这也意味着,降维带来的定位信息数据特征的集中与降维带来的信息损失会存在一个最佳点,既不会因为过度降维而损失有效信息,也不会因为维度过高而导致信息分布散乱。本次实验中,维度为30的时候是一个理想的目标维度。当维度较低时,利用CSI进行定位就会接近于RSSI的效果。当维度较高时,可以参考图6中的“帧过滤”,定位系统的表现也不够好。

至此,本文设计实验评估对比了CSI与RSSI在室内定位方面的表现,我们可以得出结论,CSI相比于RSSI,可以携带更多的信息,利用CSI能够有效提高室内定位的精度。

4.3 不同定位算法评估

最后将本文提出的算法与非迁移学习的方法进行对比,包括LSTM,DNN,SVM,CNN等。本次实验评估的CSI数据已通过3.1节提出的数据预处理算法进行了处理,且降维到30维进行。对于非迁移学习方法构建的室内定位系统,本文对其亦进行了数据库的更新操作,具体方法为在已训练好的网络中混入优良的测试数据与信标采集的数据,数据集与迁移学习算法中相同,然后对这些非迁移学习网络进行再训练,更新网络参数,使其对新的环境具有适配性,如此能保证在室内环境发生较大变化后不会产生指纹库完全失效的情况,也能提高非迁移学习算法对应指纹库的鲁棒性,这样也能保证实验对比的公平性,更加精确地论证本文所提算法的有效性。实验结果如图9所示。

图9 室内定位中的不同方法

从图9可以看到,在第1周各种算法刚建立指纹库时,各个定位系统的预测位置的准确率都很高。但是随着室内环境变化,不论是LSTM,CNN,DNN这样的深度神经网络算法,还是SVM这样的传统机器学习算法,性能上都会严重下降。1周后的数据测试就只有LSTM的准确率高于90%,两周后LSTM,CNN,SVM,DNN等非迁移学习算法的准确率都有了更为明显的下降,降低到90%以下,其中SVM和DNN已经不高于80%,而本文提出的DANN在一段时间后性能只有些微下降,1周后的准确率在98%,两周后的准确率在97%,相比于其他的非迁移学习定位系统,对抗室内环境变化的优势很明显。需要指出的是,本文迁移学习算法的位置预测器中的LSTM网络的网络结构,与实验对比中LSTM的网络结构是相同的。两者的实验结果对比也可以看出,特征提取器与域鉴别器对数据的映射训练是有效的。

5 结束语

本文利用迁移学习的方式进行室内定位,通过实验评估对比,相较于其他的机器学习算法,本文所提算法在时间变化以及室内环境变化上的抗性更强,在同样代价的情况下拥有比其他算法更持久的有效期。同时也设计实验证明了本文所提数据预处理算法的有效性以及必要性。在时间过去1周后本文所提算法依然拥有98%的预测准确率,两周后拥有97%的预测准确率,明显超过传统的深度学习方法。未来的工作将会聚焦在更长时间的数据迁移以及更复杂场景下的室内定位中。

猜你喜欢
降维室内环境载波
混动成为降维打击的实力 东风风神皓极
降维打击
室内环境检测及控制系统设计
多肉植物垂直绿化在室内环境中的应用探究
植物在航站楼室内环境中的应用
应急广播系统中副载波的构建与应用
室内环境下移动机器人三维视觉SLAM
低压载波通讯测试仪的开发与应用
抛物化Navier-Stokes方程的降维仿真模型
基于特征联合和偏最小二乘降维的手势识别