浙江大学学报(工学版), 2025, 59(9): 1814-1825 doi: 10.3785/j.issn.1008-973X.2025.09.005

计算机技术

去中心化的室内定位众包数据质量控制方法

张学军,, 邝浚鑫, 李成泽, 李梅, 张斌, 加小红

兰州交通大学 电子与信息工程学院,甘肃 兰州 730070

Decentralized indoor positioning crowdsourcing data quality control method

ZHANG Xuejun,, KUANG Junxin, LI Chengze, LI Mei, ZHANG Bin, JIA Xiaohong

School of Electronic and Information Engineering, Lanzhou Jiaotong University, Lanzhou 730070, China

收稿日期: 2024-07-31  

基金资助: 国家自然科学基金资助项目(61762058,62366029);甘肃省重点研发计划资助项目(25YFFA089);甘肃省教育厅产业支撑基金资助项目(2022CYZC-38);高校教师创新基金项目(2024A-039).

Received: 2024-07-31  

Fund supported: 国家自然科学基金资助项目(61762058,62366029);甘肃省重点研发计划资助项目(25YFFA089);甘肃省教育厅产业支撑基金资助项目(2022CYZC-38);高校教师创新基金项目(2024A-039).

作者简介 About authors

张学军(1977—),男,教授,博导,从事数据安全与机器学习、物联网安全研究.orcid.org/0009-0000-5726-0661.E-mail:xuejunzhang@mail.lzjtu.cn , E-mail:xuejunzhang@mail.lzjtu.cn

摘要

现有基于区块链的众包指纹收集方法在数据质量控制共识、激励机制报酬分配方面缺乏对指纹数据本身分布特征的有效利用,从而影响数据收集质量. 为此提出考虑指纹数据分布特征的去中心化的室内定位众包数据质量控制方法. 根据指纹数据分布特征设计数据质量控制共识算法,通过检索相同标签类内的历史数据估算指纹数据分布的特征参数,当用户提交的指纹数据向量与历史均值向量的带权均方差小于给定阈值时,将用户数据上链,若链上已有该数据则不上链以抵御重放攻击. 为了保护用户身份隐私,将用户数据匿名上传并利用Schnorr协议验证区块所有权. 根据用户提交的指纹分布与链上指纹分布的数据质量误差来确定合适的激励函数. 在UJIIndoorLoc、MALL、WiFi-RSS这3个指纹数据集上的实验表明,与原始数据集相比,通过本研究方法筛选的指纹数据使室内定位模型的训练精度分别提升约10、3、10个百分点,有效提高了指纹数据采集的质量.

关键词: 室内定位 ; 接收信号强度(RSS)指纹 ; 区块链 ; 众包收集 ; 数据质量

Abstract

Existing blockchain-based crowdsourcing methods for fingerprint data lack effective utilization of fingerprint distribution characteristics in data quality control consensus and incentive mechanism reward distribution, affecting data collection quality. To address this issue, a decentralized indoor positioning crowdsourcing data quality control method considering fingerprint distribution features was proposed. A data quality control consensus algorithm was designed based on fingerprint distribution characteristics. Characteristic parameters were estimated by retrieving historical data within identical label classes. User-submitted fingerprint vectors were chained only when their weighted mean square error with historical mean vectors was below a given threshold. Duplicate data were rejected to resist replay attacks. To protect user identity privacy, data were anonymously uploaded with the block ownership verified using the Schnorr protocol. An appropriate incentive function was determined according to the data quality errors between user-submitted and on-chain fingerprint distributions. Experiments on three fingerprint datasets (UJIIndoorLoc, MALL and WiFi-RSS) demonstrated that compared with the original datasets, fingerprint data filtered by the proposed method improved training accuracy of indoor positioning models by approximately 10, 3 and 10 percentage points respectively, effectively enhancing fingerprint data acquisition quality.

Keywords: indoor positioning ; received signal strength (RSS) fingerprint ; blockchain ; crowdsourcing collection ; data quality

PDF (1342KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

张学军, 邝浚鑫, 李成泽, 李梅, 张斌, 加小红. 去中心化的室内定位众包数据质量控制方法. 浙江大学学报(工学版)[J], 2025, 59(9): 1814-1825 doi:10.3785/j.issn.1008-973X.2025.09.005

ZHANG Xuejun, KUANG Junxin, LI Chengze, LI Mei, ZHANG Bin, JIA Xiaohong. Decentralized indoor positioning crowdsourcing data quality control method. Journal of Zhejiang University(Engineering Science)[J], 2025, 59(9): 1814-1825 doi:10.3785/j.issn.1008-973X.2025.09.005

无线WiFi指纹室内定位利用WiFi接收信号强度(received signal strength, RSS)作为指纹,通过采集和分析RSS指纹的特征来确定移动设备在室内的位置. 近年来,国内外研究者对无线指纹定位方法进行了深入研究,其重点主要集中在算法优化、应用场景探索、实用性与商业化应用等方面[1-3],其中,基于学习的指纹室内定位方法对数据的依赖偏高,所使用数据集的质量会很大程度影响模型性能. 因此,指纹室内定位离线训练阶段RSS数据采集的质量监控过程尤为重要.

基于区块链的数据收集方法是研究热点,区块链是集体维护的分布式数据库,利用加密技术避免信息被篡改与伪造. 为了保证网络中各节点数据一致,须设计合理的共识机制[4]. 现有共识机制可粗略分为2大类. 1)基于证明的“proof-of-x”共识机制. 这类共识机制主要应用于公链系统,其需要矿工证明某个活动或条件已经被完成,以此获得添加区块和获得奖励的权利,其中工作量证明(Proof-of-Work, PoW) 算法使用最广泛[5],占数字加密货币总市值的90%以上. 此外,还有权益证明(Proof-of-Stake, PoS)[6]算法、委托权益证明(Delegated-Proof-of-Stake, DPoS)算法[7],但它们将大部分算力集中在计算随机数哈希值、用户资产和高信用节点上,未考虑数据本身特征,难以准确检验数据质量. Huang等[8]提出BlockSense,通过引入同态加密技术保护用户数据隐私,使用数据证明(Proof-of-Data, PoD)算法控制数据质量,但其缺乏对RSS指纹数据分布的进一步深入分析. 2)基于投票的共识机制. 这类共识机制中的成员倾向于对每一个决策进行投票,依多数投票决出结果,或由群体普遍接受某决策,在某些情况下,领导者被选中后代表成员群体执行活动. 许多研究[9-14]将基于投票的共识机制应用于众包采集过程,本质上是选择可信度高的节点,但其仍缺少对数据本身特点的考虑. Li等[9]提出基于区块链的通用框架CrowdBC,使用智能合约来执行任务. Wu等[10]在BRPC方案中提出挖掘真实值算法,从用户信用度的角度评估数据质量,并使用Paillier密码系统实现计算验证协议以保护用户隐私. Cai等[11]设计了可验证的群智感知系统,利用同态性质检查数据聚合的正确性. Shen等[12]提出基于区块链的轻量化隐私保护质量验证众包收集框架,设计的参与者管理合约让众包任务能够透明、公平地执行,在质量控制方面,将信用值高的节点提交的数据作为高质量数据,并给出报酬分配策略. Lu等[13]设计基于区块链的匿名可溯源问责众包系统,保证了用户的匿名性与隐私;Zou等[14]提出去中心化的可信众包收集系统CrowdHB,其采用混合区块链架构,并利用智能合约实现位置隐私保护,在提高系统性能的同时保证数据质量. 在质量控制方面,这一类方法本质上是对网络中结点的筛选而非对数据本身的筛选.

上述基于区块链的众包数据收集方法在隐私安全、区块链安全、激励机制等方面取得了一定进展,但他们在数据质量控制方面尚未充分考虑数据的分布特征. 因此,如何设计针对室内定位数据收集的去中心化RSS数据质量控制方法,已经成为亟待解决的难题.

针对以上挑战,提出去中心化的室内定位众包数据质量控制方法. 本研究的主要贡献如下:1)提出基于区块链的众包指纹数据收集共识算法PoWFQ,通过考虑历史RSS数据分布,从均值和方差的角度衡量数据分布差异,识别异常值并将其剔除,并使用环签名技术保护用户账号隐私,在质量评估阶段对比新数据与历史数据,防止恶意用户上传相同数据进行双花攻击;2)设计有效的激励函数,综合考虑用户数据与历史数据分布的差异、用户提交的数据量以及用户耗能,并在用户分配报酬前使用非交互式Schnorr协议进行数据确权,实现对用户提交高质量RSS数据的有效激励;3)在多个真实指纹数据集上进行全面的实验,验证PoWFQ方法的有效性.

1. 相关理论与技术基础

1.1. 非交互式Schnorr协议

Schnorr协议[15]在Alice(证明者)和Bob(验证者)之间交互运行. Alice公开她的公钥$ {\text{Pk}} = G[a] $,其中$ a $为Alice的私钥,$ G $为生成元. 身份认证过程如下:Alice选择一个随机数$ v \in [1,n - 1] $,计算$ V = G[v] $${{c}}= \operatorname{Hash}(\mathrm{Pk}, {V}) $,其中Hash( )是哈希函数,${z}={v}+ {G}[{c}] $,并将(V, z)发送给Bob. Bob(或者任意一个验证者)执行以下检验:1) 计算${c}=\operatorname{Hash}(\mathrm{Pk},{V})$;2) 验证G[z]是否等于G[v]+c×Pk. 如果验证不成立,则身份验证失败.

1.2. 区块结构

为了满足用户隐私需求与数据质量验证工作,除了基本的前块哈希值、时间戳、Merkle根外,PoWFQ在区块头中还加入了环签名所需的公钥集合、与环签名以及用于身份认证的操作数$ {\text{Operator}} $. 操作数由众包用户公钥与随机数c在椭圆曲线上的乘法运算得到,区块体中包含RSS信号向量、位置标签、采集能耗、参考节点的哈希值等,其中节点哈希值用来验证区块数据的完整性,区块结构如图1所示.

图 1

图 1   区块头和区块体结构

Fig.1   Structure of block header and block body


1.3. 单点信号传播模型

RSS信号具有聚集性,短时间内对于同一个AP而言,相同位置的RSS信号相对稳定但可能会有异常值[16],因为温度、湿度、障碍物等环境因素或者恶意用户扰动都可能会导致信号出现异常值.

设用户在位置$ {r} = (x,y) $处连接到某AP并记录到了一个RSS信号$ P({{r}}) $,根据文献[17],$ P({{r}}) $可表示为

$ P(r) = \mu ({r})+\sigma \gamma. $

式中:$ \mu ({\boldsymbol{r}}) $表示在$ {r} $点连接该AP时的平均信号强度;$ \gamma $表示信号在传播过程中受环境影响而产生的噪声,$ \gamma \sim N(0,1.0) $$ \sigma $为噪声振幅,可以理解成噪声系数. 由式(1)可知,$ \mu (r) $$ \gamma $直接影响到数据质量的评估,如何消除环境因素产生的$ \sigma \gamma $偏差项是质量控制的主要问题.

2. RSS指纹数据质量控制框架

根据对室内定位指纹信号特点与传播模型的分析,提出考虑指纹数据分布特性的基于区块链的众包指纹数据质量控制方法框架,具体如图2所示. 边缘服务器负责任务发布、报酬计算与协调节点的连接;众包用户负责感知无线信号并上传;验证工人负责评估数据质量;全节点负责维护和验证完整区块链数据.

图 2

图 2   去中心化的室内定位RSS指纹数据质量控制框架

Fig.2   Framework of decentralized indoor positioning RSS fingerprint data quality control


RSS指纹数据采集流程如下. 1)边缘服务器进行任务发布(见图2中过程①),其中,任务文件包含目标建筑的室内区域网格划分与位置标签划分,边缘服务器在每一个任务开始与结束时都须向全网节点广播;2)众包用户收到任务信息后使用自己的终端设备在目标场景中采集RSS指纹信息,为了不向验证工人透露账户身份信息,使用环签名机制[18]实现对验证节点的身份匿名,随后将数据广播给与自己相连接的节点(见图2过程②);3)验证工人接收到新的待验证数据后向全节点请求历史数据,确认用户未发起双花攻击后,利用PoWFQ算法对比用户当前新数据与历史数据,当新数据满足质量需求时,将其打包成区块并被广播至整个区块链网络;当新数据不满足质量需求时不予上链(见图2过程③、④、⑤);4)当到达采集任务截止时间或边缘服务器须停止任务时,向全网广播任务停止消息,随后边缘服务器访问区块链网络获取数据,构建完整数据集并训练室内定位模型(见图2过程⑥);5)边缘服务器根据用户数据误差为其分配报酬(见图2过程⑦). 本研究重点研究过程⑤的数据质量控制方法以及过程⑦的报酬分配方法.

3. 质量控制共识算法

3.1. 数据质量评估

结合数据采集点的聚集特点与信号传播模型,主要考虑基于公链的众包采集场景,假设用户提交的RSS数据可以表示为$ ({{\boldsymbol{R}}_{{\text{SS}}}},{\mathrm{label}},E) $,其中,$ {{\boldsymbol{R}}_{{\text{SS}}}} $为用户能检测到的所有AP的信号值向量,$ {\mathrm{label}} $为位置标签,$ E $为用户采集数据的能源消耗. $ {{\boldsymbol{R}}_{{\text{SS}}}} $中每个rssi(i=1,···,N)分量都服从式(1)的传播模型,且各分量两两独立同分布. 虽然各分量都服从正态分布,但其均值与方差受到用户所在环境影响而有所不同,$ {{\boldsymbol{R}}_{{\text{SS}}}} $向量服从$ N({\mu _1},{\mu _2} ,\cdots ,{\mu _n},\sigma _1^2,\sigma _2^2, \cdots, \sigma _n^2) $$ n $维正态分布,因此,可将RSS质量评估问题转化为对$ n $维正态分布的讨论.

某个特定标签内的真实数据分布的参数难以确定,但可以用历史数据的样本均值来逼近真实分布的均值. 部分公共场所已存在一些公开的RSS信号数据集,可以使用这些已公开数据集作为历史数据,以评估新数据的质量. 倘若目标任务区域或公共场所不存在相关的历史数据,可以提前设置一个RSS数据采样阶段,让节点在很短时间内(2~3 d)周期性采集该区域内的RSS数据作为初始历史数据[19],在后续众包收集过程中不断更新历史数据. 在获得历史数据后,便可求出其均值向量$ \overline {{{\boldsymbol{R}}_{{\text{SS}}}}} ({\overline {{\text{rss}}} _{\text{1}}}{\text{,}}{\overline {{\text{rss}}} _{\text{2}}},\cdots{\overline {{\text{,rss}}} _n}) $,仅须计算$ \overline {{{\boldsymbol{R}}_{{\text{SS}}}}} $与用户数据信号向量u之间的距离$ d $,根据$ d $的大小来判断用户上传的数据是否合格.

当用户将采集的$ {{\boldsymbol{R}}_{{\text{SS}}}} $上传至验证工人的待验证池后,矿工便对数据包中的$ {{\boldsymbol{R}}_{{\text{SS}}}} $进行质量控制,判断用户数据与历史数据间的距离是否在阈值内,其go语言伪代码如算法1所示.

算法1  质量验证算法

输入$ \small{{u}({x_1},{x_2}\cdots{x_n},{\mathrm{label}},E)} $

输出$ \small {{\mathrm{ bool }}} $

1.  num == 0

2.  while node.hash != genieshash do

3.   getblock (node.hash)

4.   if node.label ==$ {u} $.label

5.    if node.data ==$ {u} $.data

6.     return false

7.    endif

8.    num++

9.   endif

10.  if num == N

11.   break

12.  endif

13.  node.hash = previousblockhash

14.  endwhile

15. Calculate the mean vector and variance vector of N data

16. Copy variance into var_copy[ ]

17. Sort variance

18. var index[ ]

19. for i = 0 ; i < len(variance) ; i++

20.  value = var_copy[i]

21.  for v = range variance

22.   if v == value

23.   index = append(index, i)

24.  endfor

25. endfor

26. sum = Sum (index)

27. var weight[ ]

28. Calculate weight

29. calculate $\small{ d = \displaystyle{\sum}_{i = 1}^n {{w_i} \sigma _i^2}} $

30. calculate $ \small{{\text{Dis}} = \left[ {{{\displaystyle{\sum}_{k = 1}^n {{w_k}({{\overline {{\text{rss}}} }_k} - {x_k})} }^2}}\right]^{1/2}} $

31. if $\small{ {\text{Dis}} <d} $

32.  packing blocks and upload blocks

33.  return true

34. else

35.  print(‘数据质量不合格’)

36.  return false

37. endif

常见的计算复合高斯分布之间距离的方法包括马氏距离(Mahalanobis distance)[20]、KL散度[21]、巴塔查里亚距离(Bhattacharyya distance)[22]. 其中,KL散度、巴塔查里亚距离须已知2批数据的概率分布,但考虑到用户提交的数据有可能仅有一条,KL散度、巴塔查里亚距离不适用于这种距离计算场景;马氏距离可计算2个向量之间的距离,同时考虑了各个维度上的差异以及它们之间的协方差结构,但利用其直接求$ \overline {{{\boldsymbol{R}}_{{\text{SS}}}}} $$ {{\boldsymbol{u}}} $的协方差矩阵与逆矩阵,计算复杂度会随$ {{\boldsymbol{u}}} $的维度$ n $变大而大幅增加,不适用于算力有限的终端设备. 为了降低算法的计算开销,提高数据收集效率,使用带权均方差来衡量$ \overline {{{\boldsymbol{R}}_{{\text{SS}}}}} $$ {{\boldsymbol{u}}} $之间的距离$ {\text{Dis}} $:

$ {{\mathrm{Dis}}} = \left[ {{{\sum\nolimits_{k = 1}^n {{w_k}({{\overline {{\text{rss}}} }_{{k}}} - {x_k})} }^2}}\right]^{1/2}. $

式中:$ {w_k} $$ {{\boldsymbol{u}}} $的第k个属性列的权重,$ {\overline {{\text{rss}}} _{{k}}} $为均值向量中的第k个元素,$ {x_k} $$ {{\boldsymbol{u}}} $中的第k个信号值. 因此,用户数据质量的控制可量化为

$ {d_{\text{q}}} = \left\{ {\begin{array}{*{20}{ll}} {\text{qualified}},&{\text{Dis}} < d; \\ {\text{unqualified}},&{\text{Dis}} \geqslant d .\end{array}} \right. $

式中:d为阈值. 由式(2)可知,均值向量与各分量权重对用户提交数据的评价起重要作用,本研究通过引入区块链的公链技术,将数据质量控制过程从边缘服务器移至公链网络,且任一节点都可验证区块数据的正确性.

3.2. 质量控制阈值的选定

质量控制阈值$ d $直接关系到数据质量的控制,$ d $的取值尤为重要. 由于采集的RSS信号会随着环境、时间不断变化,并且难以得知真实分布的准确参数,拟用样本均值作为真实分布的均值. 不失一般性,假设某一个标签$ p $内已有m个样本:

对于该m个样本的每一个属性列$i\;(1 \leqslant i \leqslant n) $,求其均值$\mu_{i} $和方差$\sigma_i^2 $,得到所有属性列的方差向量,表示为${{\bf{var}}}_{{p}}\left(\sigma_1^2, \sigma_2^2, \cdots, \sigma_n^2\right) $. 一般来说,短时间内同一地点连接固定AP的信号是趋于稳定的,借鉴卡尔曼滤波器加权处理思想,将所有属性列的方差$ \sigma _i^2 $做加权求和,目的是给方差波动更大的属性列分配更小的权重,这些权重反映了数据的可靠性与相关性. 某一列的$ \sigma _i^2 $越小,认为该列的均值更具参考价值,从而为其分配更多权重,反之,该列数据波动较大说明其可能包含过多的环境噪声,故为其分配更少的权重. 对于$ {{\bf{var}}_{{p}}} $,用$ {\bf{serial}}({{k}_{\text{1}}}{\text{,}}{{k}_{\text{2}}},\cdots,{{k}_{{n}}}) $表示$ {{\bf{var}}_{{p}}} $的顺序向量,其中$ {k_i} $表示$ {{\bf{var}}_{{p}}} $中第i个分量在$ {{\bf{var}}_{{p}}} $所有分量中顺序排列的序号数,$ {k_i} \in {{\bf{Z}}^+},1 \leqslant {k_i} \leqslant n $$ {\bf{weight}}({{w}_{\text{1}}},{{w}_{\text{2}}} ,\cdots, {{w}_{{n}}}) $表示$ {{\bf{var}}_{{p}}} $中各分量的权值,表达式如下:

$ {w_i} = {{k_{j}^2}}\bigg/{{\displaystyle\sum\nolimits_{i = 1}^n {k_i^2} }}. $

式中:$ j = {\text{subscript}}({\text{name}}({\text{serial}},n - {\text{indexof}}({k_i},{\text{serial}}) $+1)),$ {\text{indexof}}({k_i},{\text{serial}}) $为返回序号操作,返回$ {k_i} $$ {\text{serial}} $中的序号;$ {\text{name}}({\text{serial}},n - {\text{indexof}}({k_i})+1) $为取变量名操作,返回$ {\text{serial}} $中序号等于$ n - {\text{indexof}}({k_i})+1 $的变量名$ {k_s} $$ {\text{subscript}}({x_i}) $为取下标操作,返回$ {x_i} $的下标$ i $. 在得到$ {{\bf{var}}_{{p}}} $的各属性列权重后,用d作为参考阈值:

$ d = \sum\nolimits_{i = 1}^n {{w_i} \sigma _i^2}. $

该方法考虑了已有数据集中列属性数值的波动情况,认为波动少的属性列具有更高的可信度,分配更多的权重,设置权重的另一个原因是,用户采集的RSS信号往往具有稀疏性,对于第j个RP点来讲,该点能检测到的RSS信号强度个数有限,在计算$ {\text{Dis}} $时对这些能检测到的分量分配更多的权重$ {w_i} $,提高其对$ {\text{Dis}} $的敏感度.

3.3. 抵御重放攻击

在区块链众包收集中,重放攻击是常见的安全威胁,该攻击通过重复提交已经执行过的交易或操作来欺骗系统,从而获得不当的利益或破坏系统的正常运行. 若攻击者在短时间内重复提交相同数据,可能导致区块链上存在相同的指纹数据,使模型的训练数据集特征单一,导致模型过拟合. 为了抵御该攻击,在验证节点检索链上的历史数据时,判断用户提交的待审核数据是否已存在,若发现存在相同数据,则直接停止验证过程,判定其为异常数据. Lee等[16]提到特定时间段内的RSS信号值趋于稳定但仍有波动,距今时间过长的信号记录可能会产生较大波动,所以在PoWFQ共识算法中读取特定标签内最新的N个数据,分析这一批数据的分布特征. 短时间内N的取值越大,消除环境噪声的效果越明显. 经过实验表明,使用PoWFQ算法可抵御重放攻击,防止恶意用户上传相同数据来骗取报酬.

4. 激励机制

为了激励用户提交满足质量要求的RSS数据,边缘服务器须根据用户上传数据质量为其分配合适的报酬.

由于用户匿名上传数据,在进行报酬分配前须先进行数据确权. 例如,用户A想要证明自己提交了区块m的数据时,边缘服务器生成一个随机数$ v $发送给用户A,用户A将区块中的$ {\text{Operator}} $解密得到真实$ c $值,用户再计算$ z=v+G[c] $;随后用户A将证明$ (V,z) $发送给边缘服务器,边缘服务器验证$ G(z)=G(V)+c \times G[a]$是否成立;在证明区块m的数据确实由用户A上传后,边缘服务器计算区块m中的数据质量,根据数据质量误差Ferror、用户采集能耗E、提交的数据量$ q $与数据提交时间$ t $等变量给用户A提供报酬. 假设用户的真实位置为$ {r} $,最大位置估计误差为$ \delta $,用户所提交的信号数据指向的可能是以$ {r} $所指点为圆心, $ \left| \delta \right| $为半径的圆内的任一位置点,计为$ {r'} $. 在位置$ {r} $处观测到的RSS读数会受到环境噪声、设备测量误差的影响,因此观测到的$ \mu (r) $会偏离RSS读数均值的真实值$ {\mu ^*}(r) $,这会导致假设在$ {r} $处提交定位需求的用户会被系统定位在$ {r'} $处. 这是导致基于众包的指纹采集方法定位估计不准确的根本原因. 式(1)表明,采集到的RSS越接近$ \mu '(r) $的真实值,RSS的质量越高. 为了表述简单,先固定一个RP点与一个AP点来讨论,用$ {P_t} \in {\bf{Z}} $表示一个位置在t时刻采集的指纹集,用$ {\mu ^*} $表示真实的无线指纹数据的均值,用$ {h_t} $表示在t时刻之前所采集到的RSS信号的均值. 目的是使得$ {\mu ^*} $$ {h_t} $之间的差异最小,然而关键挑战在于实际采集场景中无法得知该点无线信号的真实均值$ {\mu ^*} $.

根据式(1)中的电波传播模型,用户提交的数据服从高斯分布,不同位置点的信号满足独立同分布. 每一个位置采集的信号强度都有一个分布,如图3所示,按照区间估计思想认为落在$ [{P_{\beta /2}},{P_{1 - \beta /2}}] $中的是正确信号值. 在采样期间,室内环境和噪声影响使得采样分布与真实分布间有整体偏移,但用户还是认为落在$ [P_{\beta /2}^{'},P_{1 - \beta /2}^{'}] $中信号值是该点的正常信号值. 若采集的信号值落在$ [{P_{\beta /2}},P_{\beta /2}^{'}] $,该信号值本是真实分布中的正常信号值,但由于用户观测的是偏移后的分布,且$ [{P_{\beta /2}},P_{\beta /2}^{'}] $不在偏移后分布的置信区间内,用户会将正确的信号值抛弃,从而损失部分数据精度[17].

图 3

图 3   指纹数据分布误差

Fig.3   Fingerprint data distribution error


若采集的信号值落在$ [{P_{1 - \beta /2}},P_{1 - \beta /2}^{'}] $中,该信号值虽在观测时偏移后的分布置信区间内但不在真实分布中的置信区间内,该情况接受了异常值. 为此,在算法PoWFQ中,将落入该区间的RSS信号值依然判定为异常信号值. 用图3中阴影部分的面积来衡量数据误差.

在计算用户A在标签k上的数据质量误差时,边缘服务器从链上获取标签km条记录:

对于其中某个属性列的变量$ {X_i} \sim N({\mu _i},\sigma _i^2) $,根据边缘服务器设置的置信度$ \beta $,计算置信区间,公式如下:

$ P\left( - {z_{\beta /2}} <\frac{{\overline X - {{\widehat \mu }_i}}}{{\sigma /\sqrt n }} <{z_{\beta /2}}\right) = 1 - \beta. $

式中:$ \beta $为显著性水平;$ [ - {z_{\beta /2}}, - {z_{\beta /2}}] $为置信区间;$ {\widehat \mu _i} $为样本均值,$ n $为样本数,$ \sigma $为标准差.

$ \left. {\begin{array}{*{20}{l}} {{P_{\beta /2}} = - {z_{\beta /2}} \times \sigma /\sqrt n +\widehat {{\mu _i}}} ,\\ {{P_{1 - \beta /2}} = {z_{\beta /2}}\times \sigma /\sqrt n +\widehat {{\mu _i}}} .\end{array}} \right\} $

使用式(6)、(7)计算出置信区间后,再计算用户A提交数据的属性列$ {X_i} $的均值. 将用户A的均值与总体均值的差值$ {d_{{\text{error}}}} = |P{'_{\beta /2}} - {P_{\beta /2}}| $,当作真实分布与采集分布的总体偏移量. 指纹数据分布的数据质量误差定义为

$ \begin{split} {F_{{\text{error}}{{\text{s}}_r}}}(P;\mu ({{r}})) =& \left| {\int_{{P_{\beta /2}}}^{P{'_{\beta /2}}} {{p_{{\text{r}} }}(x;\mu ({{r}}))} {\mathrm{d}}x} \right|+\\&\left| {\int_{{P_{1 - \beta /2}}}^{P{'_{1 - \beta /2}}} {{p_{{\text{r}} }}(x;\mu ({{r}}))} {\mathrm{d}}x} \right|.\end{split} $

式(8)描述了当用户在$ {{ r}} $处采集的信号数据服从均值为$ \mu ({{r}}) $,方差为$ {\sigma ^2} $的高斯分布时,用户A的数据与总体数据分布之间的误差,该式用信号值落在$ [{P_{\beta /2}},P{'_{\beta /2}}] $$ [{P_{1 - \beta /2}},P{'_{1 - \beta /2}}] $之间的概率来衡量用户提交的数据与真实数据的差异程度,最后将用户信号向量每一列对应的$ {F_{{\text{errors}}}} $相加即为用户的数据质量误差.

当边缘服务器能够量化出数据的质量误差后,便可通过用户提交的数据数量、数据质量与设备能耗3个角度为用户发放报酬. 手机在数据上传过程中的能耗主要受到以下几个因素的影响:

1)手机可能会配备不同类型的传感器,用于采集各种数据,如位置、加速度、声音等. 这些传感器的使用会消耗手机的电能.

2)数据上传须使用手机的网络连接,包括WiFi、蜂窝网络. 在数据传输过程中,手机须保持网络连接,这会消耗电能. 此外,网络环境的好坏也会影响到数据传输的能耗,例如在信号较弱的区域,手机可能需要更多的功率来保持网络连接. 网络传输能耗可以根据数据传输时的带宽、传输速率和传输距离等因素进行估算.

3)在数据上传之前,手机可能须对采集到的数据进行处理和压缩,以减少数据传输的大小和时间. 数据处理和压缩需要消耗手机的CPU和内存资源,从而增加了能耗.

4)在数据上传过程中,手机的屏幕须保持开启状态,以便用户操作和监控数据上传的进度,此过程也会增加手机的能耗.

综上所述,手机在参与众包数据上传时会消耗大量的电能,用$ E = {E_{{\text{network}}}}+{E_{{\text{device}}}}+{E_{{\text{process}}}} $来表示终端设备采集时的总能耗.

考虑到用户不会在报酬低于自身采集能耗的情况下完成众包任务,故服务器至少为众包用户补偿采集能耗;根据总能耗与数据质量,边缘服务器按如下公式给终端分发任务报酬:

$ {\text{reword}}({F_{{\text{error}}}},E) = \left\{ {\begin{array}{*{20}{ll}} E \left(2 - {{\mathrm{e}}^{ - {{q t}}/{{{F_{{\text{error}}}}}}}}\right),&{F_{{\text{error}}}} \ne 0; \\ 2 E,&{F_{{\text{error}}}} = 0 .\end{array}} \right. $

用户提交的数据量越多、提交数据时的时间戳越大,得到的报酬则越多. 由式(9)可知$ {\text{reword}}({F_{{\text{error}}}},E) $随着$ {F_{{\text{error}}}} $的增大而逐渐减少. 当$ {F_{{\text{error}}}} $趋于正无穷时$ {\text{reward}} = E $,表示用户提交的数据误差过大,只能为其补偿提交数据的采集开销;当$ {F_{{\text{error}}}} $趋于0时$ {\text{reward}} = 2 E $,表示用户提交的数据误差小,除了补偿用户的采集开销外还给予额外奖励,但最高不超用户采集能耗开销的2倍. 该计算采集报酬方案的优点是由边缘服务器计算用户报酬,终端用户只须计算数据的带权均方差,缓解了终端设备层的计算压力,尽可能地减少数据提交的时间消耗.

5. 实验结果分析

实验主要模拟2个阶段:1)用户端在采集到某个标签的RSS信号后,验证工人的数据质量控制过程,该过程将满足质量需求的数据记录上传至公链;2)在满足质量的数据收集完之后,数据需求方用这些数据训练机器学习模型并计算用户报酬. 实验评价指标分别为数据上传的效率、机器学习的模型性能以及数据集聚类程度.

5.1. 实验配置

实验分为终端侧与边缘服务器侧,终端侧使用Goland在本地模拟数据采集流程,实现数据共识、质量评估判断与数据上传工作;边缘服务器侧使用Pycharm部署CNN训练模型[23-24]实现室内定位模型的训练,同时对比经过本研究方法筛选前后的数据对模型精度的影响,判断众包采集任务的完成质量. 硬件设备如下:Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz 2.60 GHz,NVIDIA GTX965M 2G GDDR5 独立显卡,8 GB RAM,6 GB显存,CNN网络模型学习率为0.2,batch_size大小为64,需要训练的参数量为118410. 模型各层参数设置如表1所示.

表 1   CNN定位模型的网络参数

Tab.1  Network parameters of CNN location model

输出形式参数个数
Conv2d_1(Conv2D)(None,1,53,32)192
Conv2d_2(Conv2D)(None,1,53,32)10304
max_pooling2d_1(MaxPooling2D)(None,1,24,64)0
dropout_1 (Dropout)(None,1,13,64)0
flatten_1 (Flatten)(None,832)0
dense_1 (Dense)(None,128)106624
dropout_2 (Dropout)(None,128)0
dense_2 (Dense)(None,10)1290

新窗口打开| 下载CSV


5.2. 实验数据集

采用UJIIndoorLoc[25]、MALL[26]、WiFi-RSS[27]指纹数据集来模拟用户提交数据,数据集按7∶3的比例划分为训练集与验证集,检验PoWFQ算法对数据的聚合程度以及对后续模型精度的影响.

1) MALL数据集:采自一个31.8 m×14.95 m的购物中心区域,整个区域被划分为10个标签. 在所有采集位置点附近共布设了22个信标,可以稳定检测到来自35个WiFi AP的信号. MALL数据集包含7000个有效样本,每个样本只包含一个位置ID和35维WiFi特征.

2) UJIIndoorLoc数据集:采自Universitat Jaume I的一个长为390 m宽为270 m区域的4层建筑,该数据集包含19937个训练样本和1111个测试样本,每个样本包含520维WiFi RSS特征、经纬度坐标、楼层分类、采集的时间戳、采集的设备ID以及已有的空间分类序号.

3)WiFi-RSS数据集:采自东伦敦建筑大学,该数据集包含18750个样本记录,250个RP位置,每个位置点采集了75个样本,每个样本包含27维WiFi RSS信标、横纵坐标与高度信息. 本研究将250个位置点当作250个标签. 由于原始的数据集中信号值文件与位置坐标文件是分开的,在模拟实验前将其整合成一个文件. 因为该数据集只测量了固定高度处的RSS,"xyz"文件夹中z值为0,本研究将其当作采自一个平面的数据集来使用.

通常情况下,RSS范围为(−45, −100) dBm,如果用户位置离AP位置近,则其RSS信号较强;相反,若用户位置远离AP位置,则其信号较弱甚至不可用. 实验中将信号强度较弱的RSS值设置为−200 dBm,3个数据集在输入到模型中使用前都使用z-score方法进行归一化处理.

5.3. 评价指标

实验采用3个性能指标来评价所提方法的性能,分别为出块耗时、模型性能与数据的轮廓系数. 本研究方法的总体目标是在可接受的出块耗时下尽可能提高模型性能.

出块耗时是指区块链网络中生成新区块所需的时间,是区块链性能和效率的重要指标. 用共识结束时刻的时间戳减去共识开始时刻的时间戳来记录每一次共识验证的时间.

模型性能指标主要有训练精度、训练损失、验证精度与验证损失. 其中,训练精度为模型在训练数据集上预测正确的样本占总样本的比例;训练损失为训练数据集中真实标签与预测标签的交叉损失熵;验证精度为模型在验证数据集上预测正确的样本占总样本的比例;验证损失为验证数据集中真实标签与预测标签的交叉损失熵.

从基于学习的室内定位角度看,模型将样本划分到正确的标签便认为模型效果良好. 为了进一步评估数据的质量,引入轮廓系数$ s(i) $评价第$ i $个数据的聚类效果,并使用总体轮廓系数评价整个数据集的聚类效果,其表达式如下:

$ S = \frac{1}{n}\sum\nolimits_{i = 1}^n {{s}(i)}. $

式中:n为数据集记录的总条数;$ {s}(i) = \dfrac{{{b}(i) - {a}(i)}}{{\max\; ({a}(i),{b}(i))}} $$ {a}(i) $为数据点i与同簇内其他所有点的平均距离,$ b(i) $为数据点i与其他簇的所有点的平均距离,$\max(\cdot ) $为求最大值函数.

总体轮廓系数综合考虑了样本与其所属簇内的相似度、相邻簇间的不相似度,总体轮廓系数的取值范围为[−1.0,1.0],总体轮廓系数越接近1.0,簇内差距越小,簇间距离越大,数据集聚类效果越好;反之,聚类效果越差.

5.4. 实验结果与分析

共识算法是保障区块链网络正常运行的重要机制之一,其出块效率直接影响区块链网络的性能和吞吐量,为此实验模拟了众包收集阶段所提共识算法PoWFQ与PoW[5]、PoS[6]、DPoS[7]、PoD[8]公链共识算法的出块效率对比分析,同时模拟用户提交RSS数据时筛选异常值的过程.

5.4.1. 历史数据数量的影响

历史数据条数直接影响到PoWFQ的质量评估结果与共识耗时,采用滑动窗口的大小来衡量历史数据的数量,滑动窗口越大,参考的历史数据数量越多. 为了方便,研究滑动窗口大小为10、15、20时历史数据数量对共识耗时与模型性能的影响,实验结果分别用PoWFQ-winlen10、PoWFQ-winlen15与PoWFQ-winlen20表示.

表2所示为PoWFQ方法在UJIIndoorLoc、MALL、WiFi-RSS这3个数据集上模拟上传300条数据记录时,滑动窗口大小分别为10、15、20对应的平均耗时. 可以看出,随着滑动窗口大小的增加,共识耗时大致呈现增长趋势,因为滑动窗口越大,须参考的历史数据数量越多,计算每个属性列的均值和方差耗时更多. 当滑动窗口为15时,在MALL和WiFi-RSS数据集上有非常微小的下降,这可能是因为在MALL和WiFi-RSS数据集上,PoWFQ计算均值和方差时的有效属性列数减少了;随着数据维度的增加,不管滑动窗口大小是多少,PoWFQ的共识耗时都在增加,在维度最高的UJIIndoorLoc数据集上的平均耗时分别达到21.633333.398734.3033 ms,原因是总体数据维度越高以及每条记录所含的有效属性列数越多,计算列属性权重需要的耗时就越多.

表 2   不同窗口大小下的平均共识耗时

Tab.2  Average consensus time under different window sizes

数据集平均耗时/ms
PoWFQ-
winlen10
PoWFQ-
winlen15
PoWFQ-
winlen20
UJIIndoorLoc21.633333.398734.3033
WiFi-RSS20.990019.162828.4033
MALL18.530018.396721.7110

新窗口打开| 下载CSV


表3所示为滑动窗口大小为10、15、20时,PoWFQ筛选UJIIndoorLoc、MALL、WiFi-RSS这3个数据集后得到的新数据集对模型性能的影响. 其中,$ {a_{\rm{train}}} $为训练精度,$ {l_{\rm{train}}} $为训练损失,$ {a_{\rm{val}}} $为验证精度,$ {l_{\rm{val}}} $为验证损失. 可以看出,随着滑动窗口大小的增加,定位模型的训练精度和验证精度在各个数据集上整体呈现下降趋势,说明历史数据数量变多,并不能带来模型性能的提升,原因可能是窗口越大会使得式(3)中的质量控制阈值$ d $越大,从而放宽了筛选的条件,筛选出的数据中可能存在大量与真实数据分布有偏差的RSS数据.

表 3   不同窗口大小的PoWFQ对模型性能的影响

Tab.3  Influence of PoWFQ with different window sizes on model performance

滑动窗口大小数据集$ {a_{\rm{train}}} $$ {l_{\rm{train}}} $$ {a_{\rm{val}}} $$ {l_{\rm{val}}} $
PoWFQ-winlen10UJIIndoorLoc0.89190.34880.65632.1507
WiFi-RSS0.79180.65560.50582.0796
MALL0.90930.26170.89270.3614
PoWFQ-winlen15UJIIndoorLoc0.96640.07260.60003.1297
WiFi-RSS0.63971.09720.24054.3345
MALL0.72160.75920.69760.8146
PoWFQ-winlen20UJIIndoorLoc0.87400.40000.63332.1305
WiFi-RSS0.74310.77470.44323.5678
MALL0.70040.80390.71740.7660

新窗口打开| 下载CSV


表4所示为滑动窗口大小为10、15、20时,PoWFQ筛选完UJIIndoorLoc、MALL、WiFi-RSS这3个数据集后数据集的轮廓系数. 可以看出,相比于滑动窗口大小为15、20时的轮廓系数,滑动窗口大小为10时,PoWFQ筛选3个数据集后得到的总体轮廓系数均达到了最大值,说明滑动窗口大小为10时,同一标签内的数据相似性更高,数据聚类效果更好,更有利于定位模型的训练.

表 4   不同窗口大小PoWFQ筛选数据集后轮廓系数的变化

Tab.4  Change of silhouette coefficient after PoWFQ screening data set with different window sizes

数据集PoWFQ-
winlen10
PoWFQ-
winlen15
PoWFQ-
winlen20
UJIIndoorLoc0.1363110.0019600.145020
MALL0.1967420.0129950.013133
WiFi-RSS0.1498710.0994220.075516

新窗口打开| 下载CSV


表5所示为不同滑动窗口大小下,PoWFQ筛选完UJIIndoorLoc、MALL、WiFi-RSS这3个数据集后数据集记录条数的变化情况. 可以看出,对于MALL数据集与WiFi-RSS数据集而言,不同滑动窗口大小筛选掉的记录条数都约为200013000,原因可能是MALL数据集本身数据较为集中,故筛选条数较少;对UJIIndoorLoc数据集而言,不同窗口大小筛选后的数据条数并不相近,这种情况可能是因为UJIIndoorLoc数据集维度高、稀疏性大.

表 5   不同窗口大小PoWFQ筛选不同数据集后的条数变化

Tab.5  Number change of PoWFQ with different window sizes after screening different data sets

数据集UJIIndoorLocMALLWiFi-RSS
原始数据19937700018750
PoWFQ-winlen101638448005072
PoWFQ-winlen151183746534917
PoWFQ-winlen201971648746118

新窗口打开| 下载CSV


综合考虑共识耗时、模型训练精度与数据聚类效果3个方面,将滑动窗口大小设置为10时,PoWFQ算法能够获得更好的性能. 因此,以下所有实验均采用滑动窗口大小为10.

5.4.2. 出块效率的实验对比分析

UJIIndoorLoc数据集模拟的采集数据中有520维RSS与一个位置标签,MALL数据集模拟35维RSS与一个位置标签,WiFi-RSS数据集模拟27维RSS与一个位置标签,如表6所示为使用不同数据集上传相同的300个样本时各共识算法的平均出块速度对比. 其中,ts为平均耗时. 可以看出,由于须计算复杂的哈希值,PoW的出块速度速度慢且极不稳定,出块耗时远高于PoS、DPoS、PoD以及PoWFQ. PoS通过验证持有代币的权益来确定出块权再生成新的区块;DPoS通过选举一组受托人来验证交易并生成新的区块;PoD以验证池中一批数据的中位数为基准,将与基准偏差大的数据剔除. 因此,PoS、DPoS和PoD的出块耗时主要花费在出块权的计算上,不需要大量的计算资源. 而且,这3种共识算法在每一次共识过程中的计算任务都基本相似. 因此,它们的出块耗时基本都约为10 ms.

表 6   不同共识算法上传300条记录的平均耗时

Tab.6  Average time of uploading 300 records by different consensus algorithms

数据集ts/ms
PoWPoSDpoSPoDPoWFQ
UJIIndoorLoc1964.60009.72339.366713.616721.6333
MALL427.54008.60338.866710.053318.5300
WiFi-RSS345.02678.84338.990010.003320.9900

新窗口打开| 下载CSV


PoWFQ在考虑多维RSS信号特征分布的情况下,计算样本分布与真实分布的带权均方差,用户能感知到的AP点多(用户所持设备的性能会影响用户能感知到的AP点个数与信号强度),上传的数据中RSS向量维度便相应增加,计算复杂度便也随之增加. 在3个数据集中,UJIIndoorLoc因其总体维度高及每条记录所含的有效维度多,在模拟共识处理的300条记录中,耗时约为21 ms;MALL与WiFi-RSS维度数量相近,耗时约为20 ms. 与PoS、DPoS相比,PoWFQ在保证数据质量的同时,区块的平均出块耗时不超过20 ms,在可接受范围内,并且PoWFQ在保护用户身份隐私、抵御双花攻击的同时,还能控制RSS指纹数据质量. 如表7所示为PoWFQ与其他共识算法的比较.

表 7   不同共识算法功能对比

Tab.7  Functional comparison of different consensus algorithms

共识算法数据隐私双花攻击数据质量
Pod×
Pow××
Pos×××
Dpos×××
PoWFQ

新窗口打开| 下载CSV


5.4.3. 模型性能的实验对比分析

由于PoW、PoS与DPoS的重点不是考虑RSS指纹的分布特性与数据质量,无论用户上传的数据是否合格,在PoW计算出合格的哈希值、PoS通过虚拟代币数量确定出块权、DPoS通过投票确定出块权后,这3种共识算法采集而来的数据与原始数据集一样. PoD认为一批数据中的中位数质量最佳,会将与中位数差值大于阈值$ {\mathrm{sigma}} $的数据剔除.

使用PoD共识算法与PoWFQ处理UJIIndoorLoc、WiFi-RSS、MALL这3个数据集,并将处理后的数据集用于训练机器学习模型,其性能如图4所示. 可以看出,在使用PoWFQ后,模型在UJIIndoorLoc、MALL、WiFi-RSS这3个数据集上分别在300、300、1500轮后达到收敛,且模型训练精度都有提升.

图 4

图 4   3个数据集上的模型训练和测试精度对比

Fig.4   Comparison of model training and testing accuracy on three datasets


表8所示为3个数据集在使用PoWFQ筛选后模型性能的对比. UJIIndoorLoc与WiFi-RSS数据集中数据记录条数多且每条记录中可检测到的有效属性列数量有限,数据稀疏性比MALL数据集高,再加上UJIIndoorLoc与WiFi-RSS数据集记录条数是MALL数据集记录条数的2~3倍,使得PoWFQ能够剔除UJIIndoorLoc、WiFi-RSS数据集中更多的异常值数据记录. 相反,MALL数据集中记录条数更少,每条记录中可检测到的属性列条数基本在30列以上,而MALL数据集RSS信号的属性列总共为35列,数据的聚合程度本身就比UJIIndoorLoc与WiFi-RSS高,因此,PoWFQ方法能够识别的MALL中的异常数据更少,筛选前后的数据对模型性能的影响也比前2个数据集筛选前后对模型性能的影响要小. 值得注意的是,虽然PoWFQ筛选前后,模型的训练精度提升了近10个百分点,但是测试损失比共识处理前的测试损失要高出0.5~1.0倍. 结合图4表8可以看出,PoD对无线信号的历史分布考虑不足,只对待验证数据进行中位数聚类,缺少对RSS信号时间层面变化规律的考虑. 在UJIIndoorLoc与WiFi-RSS数据集上,PoD的质量控制效果并不理想,与原始数据集相比,模型训练精度分别下降了约3和7个百分点,但在MALL数据集上的模型训练精度提升了约2个百分点,这可能是由于MALL数据集中数据的聚合程度本身较高,整体数据记录相似,而PoD的中位数滑动窗口算法筛选完该数据集后,相同标签内的数据特征更加稳定. 整体来看,PoWFQ算法通过考虑RSS信号特征分布对模型性能和数据质量控制有所帮助.

表 8   PoW、PoS、DpoS、PoD与PoWFQ对模型性能的影响

Tab.8  Effect of PoW, PoS, DpoS, PoD and PoWFQ on model performance

共识算法数据集$ {a_{{{\mathrm{train}}}}} $$ {l_{{{\mathrm{train}}}}} $$ {a_{{{\mathrm{val}}}}} $$ {l_{{{\mathrm{val}}}}} $
PoWUJIIndoorLoc0.77100.74720.44483.7624
WiFi-RSS0.70560.98210.68871.1992
MALL0.87200.34580.90930.3323
PoSUJIIndoorLoc0.80050.66610.67001.4324
WiFi-RSS0.69990.99770.69621.2308
MALL0.88320.32640.90360.3490
DPoSUJIIndoorLoc0.79570.67990.64121.6682
WiFi-RSS0.67791.07180.65441.3273
MALL0.87160.37040.89570.3506
PoDUJIIndoorLoc0.84320.58760.35265.6292
WiFi-RSS0.30862.81000.07824.4087
MALL0.89000.34250.29623.2239
PoWFQUJIIndoorLoc0.89190.34880.65632.1507
WiFi-RSS0.79180.65560.50582.0796
MALL0.90930.26170.89270.3614

新窗口打开| 下载CSV


5.4.4. 采集数据质量分析

表9所示为不同数据集筛选前后的轮廓系数. 可以看出,在使用PoD方法筛选过后,UJIIndoorLoc、MALL数据集总体轮廓系数下降了0.1086010.154624,但WiFi-RSS数据集的总体轮廓系数提高了0.066671,原因可能是PoD筛选完MALL数据集后使其特征稳定但簇间距离也变小,WiFi-RSS数据集为室内定点定量采样,同一个RP点上重复采集75条RSS记录,而PoD的滑动窗口中位数算法对此类数据有更好的筛选效果.

表 9   不同数据集筛选前后的轮廓系数

Tab.9  Silhouette coefficient before and after screening different datasets

数据集原始数据PoWFQ筛选后PoD筛选后
UJIIndoorLoc0.1279070.1363110.019306
MALL0.1907220.1967420.036098
WiFi-RSS0.1434820.1498710.210153

新窗口打开| 下载CSV


5.4.5. 奖励报酬

MALL、WiFi-RSS数据集中未给出采集用户信息,因此本节实验仅在UJIIndoorLoc数据集上进行,如图5显示了UJIIndoorLoc数据集中18个用户的报酬因子RF,用各自的报酬因子乘以各自的采集消耗即为最终的采集报酬. 可以看出,多数用户的最终报酬为采集消耗的2倍,其他用户的采集报酬在采集消耗的1.5~1.8倍间不等. 除了数据质量外,UJIIndoorLoc的不同用户采集的数据记录条数也不同,对于提交了更多记录的用户,他们数据集的分布与完整数据集的分布更加接近,$ {F_{{\mathrm{errors}}}} $更小,最后得到的报酬就更多. 由此可见,成功提交的数据记录条数与数据质量共同影响最终报酬,这有利于刺激用户提交更多、更有利于模型训练的高质量的数据.

图 5

图 5   UJIIndoorLoc数据集中用户的报酬因子

Fig.5   Reward factor of users in UJIIndoorLoc dataset


6. 结 语

针对移动众包下的无线RSS数据采集场景,考虑WiFi信号数据的分布特征,提出基于区块链的RSS数据质量控制算法PoWFQ,通过比较用户上传的数据与已有历史数据分布之间的差异程度来剔除异常值,使得众包数据聚合程度更高,这种轻量化的方法更容易在移动终端中实现. 在3个不同规模RSS指纹数据集上的实验表明,使用PoWFQ筛选过的数据使定位模型的训练精度分别提升了10、3和10个百分点. 而且,PoWFQ算法在这3个数据集上的出块时间均约为20 ms,在保护用户隐私、抵御双花攻击和控制数量质量的同时,获得了较快的出块速度. 在后续研究中,将考虑如何降低计算耗时,使PoWFQ更好地应用于实际海量RSS指纹采集场景.

参考文献

KHATRI I, KUMAR D, GUPTA A

A noise robust kernel fuzzy clustering based on picture fuzzy sets and KL divergence measure for MRI image segmentation

[J]. Applied Intelligence, 2023, 53 (13): 16487- 16518

DOI:10.1007/s10489-022-04315-4      [本文引用: 1]

WANG H, LIAO Y, LI Y, et al

BDR-net: bhattacharyya distance-based distribution metric modeling for rotating object detection in remote sensing

[J]. IEEE Transactions on Instrumentation and Measurement, 2022, 72: 5002612

[本文引用: 1]

张学军, 何福存, 盖继扬, 等

边缘计算下指纹室内定位差分私有联邦学习模型

[J]. 计算机研究与发展, 2022, 59 (12): 2667- 2688

DOI:10.7544/issn1000-1239.20210270      [本文引用: 1]

ZHANG Xuejun, HE Fucun, GAI Jiyang, et al

A differentially private federated learning model for fingerprinting indoor localization in edge computing

[J]. Journal of Computer Research and Development, 2022, 59 (12): 2667- 2688

DOI:10.7544/issn1000-1239.20210270      [本文引用: 1]

ZHANG X, HE F, CHEN Q, et al

A differentially private indoor localization scheme with fusion of WiFi and bluetooth fingerprints in edge computing

[J]. Neural Computing and Applications, 2022, 34 (6): 4111- 4132

DOI:10.1007/s00521-021-06815-9      [本文引用: 1]

TORRES-SOSPEDRA J, MONTOLIU R, MARTÍNEZ-USÓ A, et al. UJIIndoorLoc: a new multi-building and multi-floor database for WLAN fingerprint-based indoor localization problems [C]// Proceedings of the International Conference on Indoor Positioning and Indoor Navigation. Busan: IEEE, 2014: 261–270.

[本文引用: 1]

JIANG X, CHEN Y, LIU J, et al

FSELM: fusion semi-supervised extreme learning machine for indoor localization with Wi-Fi and Bluetooth fingerprints

[J]. Soft Computing, 2018, 22 (11): 3621- 3635

DOI:10.1007/s00500-018-3171-4      [本文引用: 1]

NABATI M, ALI GHORASHI S

A real-time fingerprint-based indoor positioning using deep learning and preceding states

[J]. Expert Systems with Applications, 2023, 213: 118889

DOI:10.1016/j.eswa.2022.118889      [本文引用: 1]

SINHA R S, HWANG S H

Comparison of CNN applications for RSSI-based fingerprint indoor localization

[J]. Electronics, 2019, 8 (9): 989

DOI:10.3390/electronics8090989      [本文引用: 1]

FENG X, NGUYEN K A, LUO Z

A survey of deep learning approaches for WiFi-based indoor positioning

[J]. Journal of Information and Telecommunication, 2022, 6 (2): 163- 216

DOI:10.1080/24751839.2021.1975425     

HASSEN W F, MEZGHANI J. CNN based approach for indoor positioning services using RSSI fingerprinting technique [C]// Proceedings of the International Wireless Communications and Mobile Computing. Dubrovnik: IEEE, 2022: 778–783.

[本文引用: 1]

SINGH A, KUMAR G, SAHA R, et al

A survey and taxonomy of consensus protocols for blockchains

[J]. Journal of Systems Architecture, 2022, 127: 102503

DOI:10.1016/j.sysarc.2022.102503      [本文引用: 1]

KARA M, LAOUID A, ALSHAIKH M, et al

A compute and wait in PoW (CW-PoW) consensus algorithm for preserving energy consumption

[J]. Applied Sciences, 2021, 11 (15): 6750

DOI:10.3390/app11156750      [本文引用: 2]

TRIVEDI A, MISTRY H, SHAH Y, et al. Enhanced schema for proof of stake mechanism based on stake size and random validator selection [C]// Proceedings of the International Conference on Advanced Computing Technologies and Applications. Mumbai: IEEE, 2023: 1–6.

[本文引用: 2]

KIM J, OH S, KIM Y, et al. Improving voting of block producers for delegated proof-of-stake with quadratic delegate [C]// Proceedings of the International Conference on Platform Technology and Service. Busan: IEEE, 2023: 13–17.

[本文引用: 2]

HUANG J, KONG L, CHENG L, et al

BlockSense: towards trustworthy mobile crowdsensing via proof-of-data blockchain

[J]. IEEE Transactions on Mobile Computing, 2024, 23 (2): 1016- 1033

[本文引用: 2]

LI M, WENG J, YANG A, et al

CrowdBC: a blockchain-based decentralized framework for crowdsourcing

[J]. IEEE Transactions on Parallel and Distributed Systems, 2019, 30 (6): 1251- 1266

DOI:10.1109/TPDS.2018.2881735      [本文引用: 2]

WU H, DÜDDER B, WANG L, et al

Blockchain-based reliable and privacy-aware crowdsourcing with truth and fairness assurance

[J]. IEEE Internet of Things Journal, 2022, 9 (5): 3586- 3598

DOI:10.1109/JIOT.2021.3097950      [本文引用: 1]

CAI C, ZHENG Y, DU Y, et al

Towards private, robust, and verifiable crowdsensing systems via public blockchains

[J]. IEEE Transactions on Dependable and Secure Computing, 2021, 18 (4): 1893- 1907

[本文引用: 1]

SHEN X, XU C, ZHU L, et al

Blockchain-based lightweight and privacy-preserving quality assurance framework in crowdsensing systems

[J]. IEEE Internet of Things Journal, 2024, 11 (1): 974- 986

DOI:10.1109/JIOT.2023.3288349      [本文引用: 1]

LU Y, TANG Q, WANG G. ZebraLancer: private and anonymous crowdsourcing system atop open blockchain [C]// Proceedings of the IEEE 38th International Conference on Distributed Computing Systems. Vienna: IEEE, 2018: 853–865.

[本文引用: 1]

ZOU S, XI J, XU G, et al

CrowdHB: a decentralized location privacy-preserving crowdsensing system based on a hybrid blockchain network

[J]. IEEE Internet of Things Journal, 2022, 9 (16): 14803- 14817

DOI:10.1109/JIOT.2021.3084937      [本文引用: 2]

ZHAO W, PENG Y, XIE F, et al. Nominative signature scheme based on schnorr signature [C]// Proceedings of the IEEE International Conference on Computer Science and Automation Engineering. Zhangjiajie: IEEE, 2012: 724–728.

[本文引用: 1]

LEE H, LEE J

Convolutional model with a time series feature based on RSSI analysis with the Markov transition field for enhancement of location recognition

[J]. Sensors, 2023, 23 (7): 3453

DOI:10.3390/s23073453      [本文引用: 2]

TIAN X, ZHANG W, YANG Y, et al

Toward a quality-aware online pricing mechanism for crowdsensed wireless fingerprints

[J]. IEEE Transactions on Vehicular Technology, 2018, 67 (7): 5953- 5964

DOI:10.1109/TVT.2018.2805383      [本文引用: 2]

PITU F, GAITAN N C. Survey of security, performance, and profitability of monero: a browser-based cryptocurrency [C]// Proceedings of the 3rd International Conference on Electrical, Computer, Communications and Mechatronics Engineering. Tenerife: IEEE, 2023: 1–5.

[本文引用: 1]

XU T, CAI Y. Exploring historical location data for anonymity preservation in location-based services [C]// Proceedings of the 27th Conference on Computer Communications. Phoenix: IEEE, 2008: 547–555.

[本文引用: 1]

ROSZKOWSKA E, FILIPOWICZ-CHOMKO M, ŁYCZKOWSKA-HANĆKOWIAK A, et al

Extended hellwig’s method utilizing entropy-based weights and mahalanobis distance: applications in evaluating sustainable development in the education area

[J]. Entropy, 2024, 26 (3): 197

DOI:10.3390/e26030197      [本文引用: 1]

/