利索能及
我要发布
收藏
专利号: 2022108846446
申请人: 浙江工业大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-07-29
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.基于iForest和低秩矩阵分解的WiFi指纹定位异常数据处理方法,其特征在于,包括如下步骤:(1)离线建立WiFi指纹库,利用移动设备实时采集WiFi指纹数据和地磁数据进行最邻近(NN)粗定位,设定阈值对定位的欧氏距离进行比较,判断实时采集的WiFi指纹数据是否可靠;详细步骤如下:(1.1)完成室内WiFi指纹数据库建立;

(1.2)利用移动设备对所在位置的WiFi的RSS值和地磁进行读取,形成所在点的位置指纹数据(1.3)利用最邻近(NN)算法对采取的指纹数据进行匹配,两种信号匹配结果在一定误差内,则可认为此时WiFi指纹信号为可靠的;

其中最邻近(NN)算法的操作具体如下:

output=argmin(Li)#(2)

其中Li为实时采集的RSS和指纹库中的第i个采样点的RSS的欧式距离,选择最小的距离记录的对应点作为结果输出,其中N为总的AP维数,RSSij为对应的 中的指纹特征,RSSj′为当前实时指纹数据中的RSS;

同样的对于实时采集的地磁和数据库中的地磁指纹利用最邻近算法进行比对,具体过程类似对RSS值进行分析;

设定阈值T,其中(xa,ya)为基于WiFi指纹的最邻近算法输出点,(xb,yb)为基于地磁指纹的最邻近算法输出点,判断采集的WiFi指纹数据是否可靠:

(2)对于WiFi指纹数据进行异常值处理,结合离线指纹库中最邻近点的指纹数据,利用iForest算法分离异常值,将其设为缺失值;详细步骤如下:(2.1)对于在某一楼层(x,y)点所采集的原始指纹数据,用不同AP的RSS值表示,RSSi表示指纹信号中的第i个AP的RSS值:(2.2)在原有的离线指纹库中提取最邻近点的WiFi指纹信息:(2.3)利用原有的最邻近点指纹信息对采集的 数据进行iForest奇异值分离,其过程可以写成:先将离线指纹库和采集的指纹数据进行做差取绝对值处理,得到矩阵X:′ ′ ′

X=[|RSS1‑RSS1|,|RSS2‑RSS2|,…,|RSSi‑RSSi|]#(6)先对矩阵X进行孤立树处理,形成对应的孤立森林,具体步骤如下:′

从X中随机抽取 个样本点构成的X子集X 放入根节点;从d个维度中随机指定一个维度q,在当前数据中随机产生一个切割点p,′ ′

min(xij,j=q,xij∈X)

对于矩阵X中的每一个数据点xi,令其遍历每个孤立树,计算其平均高度h(xi),对其进行归一化处理,再利用以下公式对其进行异常值打分:其中 表示为:

从异常分值的公式看,如果数据x在多棵iTree中的平均路径长度越短,得分越接近1,表明数据x越异常;如果数据x在多棵iTree中的平均路径长度越长,得分越接近0,表示数据x越正常;如果数据x在多棵iTree中的平均路径长度接近整体均值,则打分会在0.5附近;对其得分进行阈值设定,高于阈值的得分判断为异常值,对其在采集的WiFi指纹数据中进行缺失处理,设置为NULL;将处理完成的指纹数据矩阵定义为(2.4)对更新完成的采集指纹RSS矩阵 进行保存,用于后续低秩矩阵分解;

(3)对于在经过(2)处理的存在缺失值的实时WiFi指纹数据,替换对应的离线指纹库中最邻近指纹的数据,进行低秩矩阵分解,预测还原对应的缺失值;详细步骤如下:(3.1)先将经过iForest处理后的RSS矩阵:代替离线数据库中的最邻近点的 形成新的指纹库数据矩阵R:(3.2)若矩阵R不包含缺失值,将其分解为:

若R中包含缺失值,使用梯度下降法,找到矩阵R的近似矩阵 使得二者的相差最小,即损失函数J达到最小值,损失函数J:带入化简可得:

其中的uil,vjl就是U矩阵和V矩阵的所求参数;基于损失函数计算梯度,通过梯度下降的方式更新U矩阵和V矩阵:为了使uil,vjl元素不要过大,加入正则项β,完善预测过程,损失函数改变为:则梯度为:

梯度下降公式更新为:

(3.3)将其缺失值利用低秩矩阵分解补全后保存,形成新的具有预测补全的指纹数据用于后续的指纹库更新和模型的预测定位;

(4)将所采集到的经过处理后的WiFi指纹数据,用于深度学习模型的验证,并纳入WiFi离线指纹库进行指纹库的更新。