一种利用CSI多径及机器学习的室外指纹定位方法与流程

文档序号:15744812发布日期:2018-10-23 22:57阅读:451来源:国知局

本发明属于通信技术领域,具体涉及一种利用CSI多径及机器学习的室外指纹定位方法。



背景技术:

随着对基于定位服务的应用需求急剧增长,精确的定位技术引起了人们的广泛关注。在室外环境中,GPS仍然占据主导地位,且在大多数应用场景下均能获得较好的定位精度。但众所周知GPS无法应用于室内定位,且在楼房、建筑密集的市区存在城市峡谷效应,这在一定程度上限制了GPS的应用范围。除此之外,还有GSM蜂窝网络定位与无线定位技术,前者应用范围更广,可以同时应用于室内与室外环境,但定位精度受到蜂窝网络半径的限制,通常有较大误差;后者通常都需要辅助设备,并且传播距离比较短,通常用在室内定位。

目前,相关领域的研究学者进行了深入的研究,特别是在无线定位领域,试图找到应用范围更广、定位精度更高的方法。总的来说,目前存在两大类无线定位技术,一是基于距离的定位技术,另一种是无需距离的定位技术。前者通过一定的测距技术,例如RSS、TOA、TDOA或AOA等方式,获取信标节点与目标节点之间的距离或者方位信息,而后利用三边测量法或者三角测量法对目标位置进行定位。但每种测距技术都建立在一定的理想条件之下,极易受到外界环境的影响,从而导致在某些情况下的误差较大。无需测距的定位技术通常有两种:信标定位与指纹定位。前者通常是利用信标节点之间相互通信,未知位置被确定为包含未知节点的信标节点所组成区域的质心。但一般情况下,信标节点的筛选比较复杂。

近年来兴起的指纹定位技术,因其高精度、低复杂度而受到了越来越多的关注。其本质是建立位置与信号或数据之间的映射图谱,将每个位置特征化,而后通过将未知位置的特征量与映射图谱进行对比,获取最匹配的位置信息。指纹定位方法通常可以分为离线训练与在线定位两个阶段。离线阶段需要从一个区域的所有数据样本中提取对应位置的特征量,组建指纹库;在线阶段则是将未知位置用户的数据信息与指纹库中特征进行对比,并通过一定的定位算法得到估计位置。

现有的指纹定位技术大多应用于室内环境,对于室外定位的研究较少。在室外指纹定位中,RSS及其组合形式因其简单易测,是最为常用的指纹特征量,但因为这是对信号的一种粗略描述,信息利用不充分,且极易受到阴影衰落等影响,有时定位精度较低。除此之外,不同的场景下需要不同的特征量,特征量的选取决定了定位性能,而人工设计选取特征量是费时费力且效率较低的。



技术实现要素:

本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种利用CSI多径及机器学习的室外指纹定位方法,同时设计了一种分层的系统结构,可以实现较高的定位精度。

本发明采用以下技术方案:

一种利用CSI多径及机器学习的室外指纹定位方法,接收端在小区内获取多条可分辨的多径信号,对多径信号进行数据收集和预处理获得离线多径CSI数据并进行分组与编号,在离线阶段对分组的多径CSI数据进行分层训练,使得训练标签与网络输出的均方误差最小,采用softmax回归分类器,对训练后的数据进行回归分类,建立指纹库完成离线阶段训练,当接收到来自未知位置用户的CSI信息后,CSI信号经过神经网络正向传播与回归分类器,利用KNN算法对分类器的输出进行分类,挑选概率最大的K个位置进行加权平均计算得到用户的位置。

具体的,离线CSI数据收集与预处理具体为:

对每条路径的CSI数据进行采样,得到从第m条发射天线到第n条接收天线之间的第i条路径的CSI信息hnmi,将多条天线上的数据平均化,同时提取每条路径CSI的幅值与相位,得到2(L+1)×1维的训练数据h,根据已知CSI信息与用户位置的对应关系,对h进行分组与编号。

进一步的,将小区均匀划分为N1个块,每个块再次均匀划分为N2个子块,第i个块内第j个子块内用户的CSI数据表示为H(i,j)=[i,j,hT]T,H便作为训练数据进行离线训练,2(L+1)×1维的训练数据h如下:

h=[|h0|,|h1|,…,|hL|,∠h0,∠h1,…,∠hL]T

其中,h0为直射路径的CSI,h1为第一条散射路径的CSI,hL为第L条散射路径的CSI,T为矩阵转置。

具体的,离线阶段的任务是根据获取的有标签的训练数据,对机器学习和回归分类器网络的参数进行训练,训练的目标是使得训练标签与网络输出的均方误差最小,并建立网络训练的惩罚函数。

进一步的,离线阶段分层训练具体如下:

首先进行机器学习网络,采用三层的神经网络,各层节点的激励函数采用S函数,训练数据输入网络后,根据激励函数得到每层的输出,作为下一层的输入,经过层层正向传播,最终得到网络输出;根据最小均方误差原则构造罚函数并用梯度下降算法更新迭代得到最终的训练参数,训练后的权值W,b作为指纹库的一部分被存储起来;

然后将神经网络训练输出数据作为分类器的输入,然后将其划分到C类,该输入数据属于每一类的概率作为分类器的输出,根据最小均方误差原则构造罚函数并用梯度下降算法更新迭代得到最终的训练参数,将W,b,θ一起组成指纹库,θ为分类器参数。

进一步的,根据最小均方误差原则得到机器学习网络的罚函数如下:

其中,M为训练样本数,y(m)为理想输出,也就是训练数据标签,o(3)(m)为第三层神经网络的实际输出,W(12),W(23)分别为第一二层和第二三层之间的权值,λ为权值衰减因子。

进一步的,根据激励函数得到每层的输出作为下一层的输入,经过层层正向传播最终得到网络输出如下:

o(1)(m)=x(m)

o(2)(m)=f(W(12)x(m)+b(2))

o(3)(m)=f(o(2)(m)W(23)+b(3))=f(f(W(12)x(m)+b(2))W(23)+b(3))

其中,o(1)(m)为第一层神经网络的实际输出,o(2)(m)为第二层神经网络的实际输出,x(m)为输入训练数据;

第二层神经网络的实际输出中W(12)与b(2)的更新方程如下:

其中,α为学习速率。

进一步的,分类器的输出如下:

其中,是一个C×1的矩阵,每一项表示在给定的情况下,属于每一类的概率,为神经网络的训练输出,即回归分类器的输入,θ为分类器的参数。

具体的,当接收来自未知位置用户的CSI信息后,仅提取数据的幅值与相位信息,即h=[|h0|,|h1|,…,|hL|,∠h0,∠h1,…,∠hL],经过机器学习网络正向传播与回归分类器分类,得到该未知数据属于每一待定位置的概率,利用KNN算法,挑选概率最大的K个位置进行加权平均作为最后的估计位置(x,y)如下:

其中,(xr,yr)为第r个估计位置。

具体的,在50~100m区域内,利用基站对移动用户进行定位,多径信号中存在一条直射路径与L条散射路径,基站与用户均配备多天线且为均匀线阵,每根天线为全向天线,基站与用户之间的第i条路径的信道数据模型模如下:

其中,N,M分别是基站与用户的天线数,L为散射路径数,σSF,ρ分别是阴影衰落与路径损耗因子,βi为第i条路径信道复增益系数,dn,dm分别是基站与用户天线阵列间隔,θi,AoA,θi,AoD分别是第i条路径的AoA,AoD。

与现有技术相比,本发明至少具有以下有益效果:

本发明一种利用CSI多径及机器学习的室外指纹定位方法,接收端在小区内获取多条可分辨的多径信号,对多径信号进行数据收集和预处理获得离线多径CSI数据并进行分组与编号,在离线阶段对分组的多径CSI数据进行分层训练,使得训练标签与网络输出的均方误差最小,采用softmax回归分类器,对训练后的数据进行回归分类,建立指纹库完成离线阶段训练,当接收到来自未知位置用户的CSI信息后,CSI信号经过机器学习网络正向传播与回归分类器分类,对分类器的输出利用KNN算法,挑选概率最大的K个位置进行加权平均计算得到用户的位置,有效提高室外定位的精度,省时省力,效率高,适用范围广。

进一步的,将离线获取的CSI数据,在进行训练之前进行预处理,等价于人工提取初步特征的过程,可以使得学习网络更快速准确地从训练数据中提取深层次的特征。

进一步的,离线训练阶段,采用有监督的训练,利用实际输出与理想输出(标签)的均方误差构造罚函数;同时为了防止过拟合,保证罚函数的凸性,在罚函数中加入权值平方项。

进一步的,softmax回归分类器是用以解决多模式逻辑回归方法,通常用以解决多分类问题,根据分类器的输出可以得到输入数据属于每一类别的概率,而不只是最终的分类结果(max),有利于对最终结果进行优化,从而提高定位精度。

进一步的,采用分层设计的思想,在第一层训练粗略确定用户位置的基础上,进一步精确用户位置坐标,不仅可以减少计算复杂度与工作量,同时可以极大地提高定位精度。

进一步的,在多分类问题中,采用KNN算法尤为合适,在最优选项的基础上,充分考虑K个次优项,极大地避提高了分类的准确率。

综上所述,本发明有效提高室外定位的精度,省时省力,效率高,适用范围广。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

图1为本发明方法所应用的场景实例及角度示意图;

图2为本发明给出的方案实现模块流程图;

图3为本发明给出了在定位方法中,取不同K值时定位均方误差的累积分布图。

具体实施方式

本发明提供了一种利用CSI多径及机器学习的室外指纹定位方法,包括以下步骤:

S1、离线CSI数据收集与预处理

在一个特定的区域内,接收端可以获取多条可分辨的多径信号,从中提取多径信号的CSI信息,而后从这些CSI信息中提取幅值与相位信息。根据已知CSI信息与用户位置的对应关系,将获取的离线多径CSI数据进行分组与编号,以便接下来的离线分层训练。

S2、离线阶段分层训练

离线训练采用机器学习的方法,可以自动的从步骤S1得到的数据中提取特征,建立指纹库。同时这里设计了一种分层的系统结构,第一层机器学习网络可以初步确定用户的大体位置,然后在此基础上通过再一次的训练可以更加精确的确定用户位置。两次机器学习采用一种softmax回归分类器,对训练后的数据进行回归分类,最后利用一定的定位算法计算得到用户的位置。

离线阶段的主要任务是根据获取的有标签的训练数据,对上述网络的权值等参数进行训练。训练的目标是使得训练标签与网络输出的均方误差最小,并根据这一原理建立网络训练的惩罚函数。

首先是机器学习网络,本发明采用三层的神经网络,训练数据输入网络后,根据预设的激励函数可以得到每层的输出,以此作为下一层的输入,经过层层正向传播,最终得到网络输出;

根据最小均方误差原则可以得到罚函数如下所示:

其中M为训练样本数,y(m)为理想输出,也就是训练数据标签,o(3)(m)为第三层神经网络的实际输出,W(12),W(23)分别为第一二层和第二三层之间的权值,λ为权值衰减因子。

网络权值与偏倚的迭代更新方法采用梯度下降方法,以第二层为例,可以得到W(12)与b(2)的更新方程:

其中,α为学习速率。训练后的权值W,b作为指纹库的一部分被存储起来。

机器学习网络之后紧跟一个softmax回归分类器,将神经网络训练输出数据作为分类器的输入,然后将其划分到C类,该输入数据属于每一类的概率作为分类器的输出:

其中,是一个C×1的矩阵,每一项表示在给定的情况下,属于每一类的概率。为神经网络的训练输出(特征),即回归分类器的输入,θ为分类器的参数,根据最小均方误差原则构造罚函数并用梯度下降算法更新迭代得到最终的训练参数。W,b,θ一起组成指纹库。

两层训练独立完成,独立建立指纹库。至此,离线训练阶段完成。

S3、在线阶段直接定位。

当接收到来自未知位置用户的CSI信息后,仅将数据提取幅值与相位后送入机器学习网络与回归分类器,如公式(1)与公式(4)所示,可以得到该未知数据属于每一待定位置的概率。最后利用KNN算法,挑选概率最大的K个位置进行加权平均作为最后的估计位置:

其中,(xr,yr)为第r个估计位置。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中的描述和所示的本发明实施例的组件可以通过各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,本发明一种利用CSI多径及机器学习的室外指纹定位方法,在一个城市微小区环境内(小区范围50-100m左右),利用本小区或相邻小区的若干基站对移动用户进行定位。小区内随机分布若干障碍物,使得到达基站的信号存在多径效应。每条路径的CSI信息中包含该路径在传输中经历的散射、反射或路径损耗等复杂环境信息。我们选择一种应用场景,即多径信号中存在一条直射路径与L条散射路径。基站与用户均配备多天线且为均匀线阵,每根天线为全向天线。各角度关系如图1中所示。由此可以将基站与用户之间的第i条路径的信道数据建模为如下形式:

其中,N,M分别是基站与用户的天线数,L为散射路径数,σSF,ρ分别是阴影衰落与路径损耗因子,βi为第i条路径信道复增益系数,τi为第i条路径的时延,λ为信号波长,dn,dm分别是基站与用户天线阵列间隔,θi,AoA,θi,AoD分别是第i条路径的AoA,AoD。

利用上述CSI多径信息,结合机器学习方法进行室外定位,具体实施步骤如下:

(1)离线CSI数据收集与预处理

对每条路径的CSI数据进行采样,便得到从第m条发射天线到第n条接收天线之间的第i条路径的CSI信息:hnmi。为减小每条路径的波动与干扰,我们将多条天线上的数据进行平均化:

与此同时提取每条路径CSI的幅值与相位,从而得到我们2(L+1)×1维的训练数据:

h=[|h0|,|h1|,…,|hL|,∠h0,∠h1,…,∠hL]T

其中,h0为直射路径的CSI,hi为第i条散射路径的CSI。

根据已知CSI信息与用户位置的对应关系,对h进行分组与编号。具体来讲,整个小区可以均匀划分为N1个块,每个块再次均匀划分为N2个子块,这样第i个块内第j个子块内用户的CSI数据可以表示为H(i,j)=[i,j,hT]T,H便作为训练数据进行接下来的离线训练。

(2)离线阶段分层训练。

离线阶段的主要任务是根据获取的有标签的训练数据集{x(m),m=1,2,…,M}(=H),对机器学习和回归分类器网络的参数进行训练。训练的目标是使得训练标签与网络输出的均方误差最小,并根据这一原理建立网络训练的惩罚函数。

首先是机器学习网络,本发明采用三层的神经网络,各层节点的激励函数采用S函数:

训练数据输入网络后,根据激励函数可以得到每层的输出,以此作为下一层的输入,经过层层正向传播,最终得到网络输出;

根据最小均方误差原则可以得到罚函数如下所示:

其中,M为训练样本数,y(m)为理想输出,也就是训练数据标签,o(3)(m)为第三层神经网络的实际输出,W(12),W(23)分别为第一二层和第二三层之间的权值,λ为权值衰减因子。

网络权值与偏倚的迭代更新方法采用梯度下降方法,以第二层为例,可以得到W(12)与b(2)的更新方程:

其中,α为学习速率。训练后的权值W,b作为指纹库的一部分被存储起来。

机器学习网络之后紧跟一个softmax回归分类器,将神经网络训练输出数据作为分类器的输入,然后将其划分到C类,该输入数据属于每一类的概率作为分类器的输出:

其中,是一个C×1的矩阵,每一项表示在给定的情况下,属于每一类的概率。为神经网络的训练输出(特征),即回归分类器的输入,θ为分类器的参数,根据最小均方误差原则构造罚函数并用梯度下降算法更新迭代得到最终的训练参数;W,b,θ一起组成指纹库。

(3)在线阶段直接定位。

当接收到来自未知位置用户的CSI信息后,仅提取数据的幅值与相位信息,即h=[|h0|,|h1|,…,|hL|,∠h0,∠h1,…,∠hL],送入机器学习网络与回归分类器,经历如公式(1)与公式(4)所示过程,可以得到该未知数据属于每一待定位置的概率。最后利用KNN算法,挑选概率最大的K个位置进行加权平均作为最后的估计位置:

其中,(xr,yr)为第r个估计位置。

图3给出了在一个40m×40m的范围内,两级分层共40×25个训练位置的情况下定位均方误差的累计分布图。由图可得,均方误差距离为1米左右,且有80%左右的测试点误差在1.5米以下,由此可见,采用本发明方案可以极大地提高室外定位精度,取得较好的性能。

以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1