一种大规模物联网联邦学习隐私保护方法及系统技术方案

技术编号:37432927 阅读:20 留言:0更新日期:2023-05-05 19:47
本发明专利技术公开了一种大规模物联网联邦学习隐私保护方法及系统。本发明专利技术使用基于区块链的支付激励方法来迫使矿工和机构诚实行事,从而加快联邦学习收敛;此外,考虑到现实网络环境中矿工存在断网现象,导致共识协议中断,影响收敛速度,本发明专利技术设计了基于PVSS的鲁棒权益证明共识来解决这一问题。实验表明,本发明专利技术的激励机制能够提高预测的准确性,降低参与者不诚实的可能性;且本发明专利技术提出的架构可以很好的具有鲁棒性地保护设备隐私。有鲁棒性地保护设备隐私。有鲁棒性地保护设备隐私。

【技术实现步骤摘要】
一种大规模物联网联邦学习隐私保护方法及系统


[0001]本专利技术属于分布式系统、人工智能和隐私计算融合的
,具体涉及一种区块链激励的大规模物联网联邦学习隐私保护方法及系统。

技术介绍

[0002]物联网(IoT)在近年来成为工业、医疗、交通等领域的焦点。物联网的蓬勃发展为边缘设备数据的获取和共享提供了新的范式,通过边缘物理设备的部署(例如智能烟雾报警器、网联智能监控、空气污染检测仪、各类智能家居设备等),依赖专用传感器系统(mini

H、Oval等),以及成熟的无线网标准(5G、ZigBee、NB

IoT等),做到实时收集、计算、共享各类边缘环境数据(例如道路监控视频图像、车辆传感流量、移动设备数据等),生成海量可用的实时边缘环境数据。
[0003]另一方面,以智能监控人脸识别、边缘恶意流量识别为目标的边缘端机器学习任务在近些年取得了重大进展,其训练过程需要大量高质量数据作为训练样本,这些物联网数据往往来自于不同设备厂商或机构自身的数据中心。物联网的兴起为边缘场景各类分类预测任务提供了更精准的数据。但基础设施所属机构之间存在数据孤岛问题,物联网数据的隐私性使得各机构不愿意直接共享他们的数据,联邦学习的提出解决了这个问题,基础设施机构无需共享数据,而是仅提供训练过程参数就可以进行更加精准的预测或分类。
[0004]传统的联邦学习架构都依赖一个中心化的参数服务器进行参数聚合,一旦产生物理故障或拜占庭攻击,会令联邦学习系统产生单点失效的风险。另外,联邦学习在传递参数过程中,能够被推测出原始数据分布情况,这对隐私敏感的物联网场景是不可容忍的。为了解决上述两个问题,很多工作引入了区块链作为一个去中心化的解决方案。矿工可以分布式地进行参数聚合,通过共识机制保证聚合内容的正确性以及矿工的诚实性。但现有的方案大多采取pow的共识机制,无意义的哈希运算将会消耗大量的能源,且性能很低。基于区块链的具有委员会共识的联邦学习区块链架构被提出,能够提升系统的吞吐量,如PoFL共识,将无意义的哈希运算变为有意义的运算,但这些工作都没有考虑到矿工节点的动态性。如果在共识执行过程中,矿工节点掉线,不仅会让区块链系统停摆,也会大大减慢联邦学习收敛的速度。
[0005]对联邦学习的激励机制包括声誉机制、最优定价策略以及博弈论方法,但在一个还没涉及到买方市场的联邦学习系统中,上述工作失去了基本的假设。本专利技术希望基础设施机构能够在训练之前就获得足够的动力参与到训练中。

技术实现思路

[0006]本专利技术的目的在于提供一种区块链激励的大规模物联网联邦学习隐私保护方法及系统,通过设计一种鲁棒性共识RPoS赋能的区块链架构,以防止参与到区块链的物联网设备在运行时离线导致系统停摆。同时设计一种基于区块链的支付激励手段,提高设备参与的积极性。
[0007]本专利技术的技术方案如下:
[0008]一种大规模物联网联邦学习隐私保护方法,其步骤包括:
[0009]1)基础设施服务机构i的各移动物联网设备IoT将所收集的物联网数据利用基础设施服务机构i的公钥进行加密;基础设施服务机构i的IoT设备根据当前位置和矿工节点的代币数量选取一矿工节点作为中继节点,将加密数据通过所述中继节点转发给服务器D
i
并给予所述中继节点代币激励;或基础设施服务机构i的IoT设备直接将加密数据直接传递给服务器D
i
;其中,i=1~N,N为区块链系统中基础设施服务机构的服务器总数,基础设施服务机构i的IoT集合为x
i
为基础设施服务机构i拥有的IoT设备总数,为基础设施服务机构i拥有的第x
i
个IoT设备,服务器D
i
为基础设施服务机构i的服务器;
[0010]2)参数服务器根据各基础设施服务机构的需求制定联邦学习训练目标并生成参与训练的基础设施服务机构名单;然后所述参数服务器向该基础设施服务机构名单中的各基础设施服务机构方请求其公钥;所述参数服务器根据所获取公钥对该基础设施服务机构名单中的基础设施服务机构进行验证通过后,将初始化参数集合、深度学习模型以及初始的代币ECoin通过区块链智能合约发送给对应基础设施服务机构;所述参数服务器将参与训练的基础设施服务机构公钥集广播给区块链矿工节点,并确认每个矿工节点的唯一ID;
[0011]3)第t轮次训练时,获取到初始化参数的基础设施服务机构利用本地的所述物联网数据对所述深度学习模型进行本地训练,并使用私钥对第t轮训练结果进行签名;然后将签名结果封装成交易投入到区块链交易池中;
[0012]4)矿工节点收到所述区块链交易池中的交易后,利用所述基础设施服务机构公钥集对收到的交易进行验证,验证通过后查询是否重复获取,舍弃重复获取的交易;然后所述矿工节点对收到的交易中的参数执行参数聚合算法,并将聚合的参数、时间戳、代币数量、验证结果打包成为一个区块;
[0013]5)第t轮训练时所述参数服务器从各所述矿工节点中选出一个矿工节点作为出块节点;其他矿工节点对所述出块节点的区块进行验证后,将所述出块节点的区块进行上链并给予所述出块节点代币激励;
[0014]6)该基础设施服务机构名单中的各基础设施服务机构从所述出块节点的区块中获取聚合参数对所述深度学习模型进行第t+1轮训练,直到所述深度学习模型收敛。
[0015]进一步的,第t轮训练时所述参数服务器获取一个随机种子ρ
t
,并基于各所述矿工节点的当前代币数量,从各所述矿工节点中选出一个矿工节点作为出块节点。
[0016]进一步的,选出所述出块节点的方法为:选取当前代币数量最多的k个矿工节点组成一个节点委员会MinerGroup={M1,M2,

,M
k
},其中第i个矿工节点M
i
生成一随机字符串s
i
,并生成一随机数nonce
i
;i=1~k;然后基于s
i
使用随机种子生成算法PVSS生成随机种子ρ
t
;基于所述节点委员会的矿工节点及其当前代币数生成一个默克尔树,其中,矿工节点作为默克尔树的叶子节点,叶子节点中存储着对应矿工节点的当前代币数量,即权益值;默克尔树使用随机种子ρ
t
生成一个相同的随机数序列,所述随机数序列包含的随机数个数为默克尔树的层数;两个节点的父节点存储子节点哈希之和的哈希以及两个子节点的权益值之和;根据随机种子ρ
t
生成一个在节点左右子树之和范围内的随机数,并规定当所述随机数
小于两个子节点中较大权益值时,选择较大权益对应的子节点。
[0017]进一步的,对该基础设施服务机构名单中的各基础设施服务机构方进行激励的金额为其中,T表示总训练轮数,δ表示激励单价,att(t)为收益衰减因子函数,pun(t)为惩罚衰减因子函数,t表示训练轮次,SC为分配给基础设施服务机构方的初始代币,DC为基础设施本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种大规模物联网联邦学习隐私保护方法,其步骤包括:1)基础设施服务机构i的各移动物联网设备IoT将所收集的物联网数据利用基础设施服务机构i的公钥进行加密;基础设施服务机构i的IoT设备根据当前位置和矿工节点的代币数量选取一矿工节点作为中继节点,将加密数据通过所述中继节点转发给服务器D
i
并给予所述中继节点代币激励;或基础设施服务机构i的IoT设备直接将加密数据直接传递给服务器D
i
;其中,i=1~N,N为区块链系统中基础设施服务机构的服务器总数,基础设施服务机构i的IoT集合为x
i
为基础设施服务机构i拥有的IoT设备总数,为基础设施服务机构i拥有的第x
i
个IoT设备,服务器D
i
为基础设施服务机构i的服务器;2)参数服务器根据各基础设施服务机构的需求制定联邦学习训练目标并生成参与训练的基础设施服务机构名单;然后所述参数服务器向该基础设施服务机构名单中的各基础设施服务机构方请求其公钥;所述参数服务器根据所获取公钥对该基础设施服务机构名单中的基础设施服务机构进行验证通过后,将初始化参数集合、深度学习模型以及初始的代币ECoin通过区块链智能合约发送给对应基础设施服务机构;所述参数服务器将参与训练的基础设施服务机构公钥集广播给区块链矿工节点,并确认每个矿工节点的唯一ID;3)第t轮次训练时,获取到初始化参数的基础设施服务机构利用本地的所述物联网数据对所述深度学习模型进行本地训练,并使用私钥对第t轮训练结果进行签名;然后将签名结果封装成交易投入到区块链交易池中;4)矿工节点收到所述区块链交易池中的交易后,利用所述基础设施服务机构公钥集对收到的交易进行验证,验证通过后查询是否重复获取,舍弃重复获取的交易;然后所述矿工节点对收到的交易中的参数执行参数聚合算法,并将聚合的参数、时间戳、代币数量、验证结果打包成为一个区块;5)第t轮训练时所述参数服务器从各所述矿工节点中选出一个矿工节点作为出块节点;其他矿工节点对所述出块节点的区块进行验证后,将所述出块节点的区块进行上链并给予所述出块节点代币激励;6)该基础设施服务机构名单中的各基础设施服务机构从所述出块节点的区块中获取聚合参数对所述深度学习模型进行第t+1轮训练,直到所述深度学习模型收敛。2.根据权利要求1所述的方法,其特征在于,第t轮训练时所述参数服务器获取一个随机种子ρ
t
,并基于各所述矿工节点的当前代币数量,从各所述矿工节点中选出一个矿工节点作为出块节点。3.根据权利要求2所述的方法,其特征在于,选出所述出块节点的方法为:选取当前代币数量最多的k个矿工节点组成一个节点委员会MinerGroup={M1,M2,

,M
k
},其中第i个矿工节点M
i
生成一随机字符串s
i
,并生成一随机数nonce
i
;i=1~k;然后基于s
i
使用随机种子生成算法PVSS生成随机种子ρ
t
;基于所述节点委员会的矿工节点及其当前代币数生成一个默克尔树,其中,矿工节点作为默克尔树的叶子节点,叶子节点中存储着对应矿工节点的当前代币数量,即权益值;默克尔树使用随机种子ρ
t
生成一个相同的随机数序列,所述随机数序列包含的随机数个数为默克尔树的层数;两个节点的父节点存储子节点哈希之和的哈希以及两个子节点的权益值之和;根据随机种子ρ
t
生成一个在节点左右子树之和范围内的随机数,并规定当所述随机数小于两个子节点中较大权益值时,选择较大权益对应的子节点。
4.根据权利要求1所述的方法,其特征在于,对该基础设施服务机构名单中的各基础设施服务机构方进行激励的金额为其中,T表示总训练轮数,δ表示激励单价,att(t)为收益衰减因子函数,pun(t)为惩罚衰减因子函数,t表示...

【专利技术属性】
技术研发人员:张文源吴广君李军李斌斌孙嘉伟
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1