一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于联盟链和联邦学习的数据管理方法、装置及设备与流程

2021-10-29 21:16:00 来源:中国专利 TAG:数据管理 数据处理 联邦 装置 方法


1.本发明涉及数据处理技术领域,尤其涉及一种基于联盟链和联邦学习的数据管理方法、装置及设备。


背景技术:

2.城市计算是以城市为应用场景,计算机科学技术与城市规划、交通、能源、环境和经济等学科融合的新兴领域,通过不断获取、整合和分析城市中多种异构大数据来解决城市所面临的挑战。智慧城市建设目前已经初见成效,借助人工智能、云计算、大数据现代化技术,城市计算在智慧交通、智慧医疗等领域发挥了很大作用。但同时也暴露出目前智慧城市建设还不完善,因为竞争关系、安全问题、审批流程等因素,数据在不同拥有方,云和端以及物联网节点之间的流通存在着难以打破的壁垒,形成所谓的“数据孤岛”问题,无法进行安全可信的数据共享来支持城市计算。“联邦机器学习”(federated machine learning)在本质上是一种数据加密的分布式机器学习技术,参与各方可以在不披露底层数据和底层数据的加密(混淆)形态的前提下共建模型。它可以实现各个参与方的私有数据不出本地,通过加密机制下的参数交换方式,就能在不违反相关法律的情况下,建立一个虚拟的全局模型。区块链是一种去中心化、数据加密、不可篡改的分布式共享数据库,结合了智能合约的区块链技术可以作为联邦学习任务的服务平台,为联邦学习的各个参与方提供任务分发与数据共享的功能。
3.目前,基于区块链和联邦学习的数据共享方式,一般都是通过将数据存储于区块链内,然后数据需求方发送数据需求到区块链系统,区块链系统将相关数据返回至数据需求者,相关数据多数为某一节点提供的。
4.但是,单纯直接地从区块链中进行数据共享的方式,得到的目标数据与需求数据匹配度相对较低。


技术实现要素:

5.本发明提供一种基于联盟链和联邦学习的数据管理方法、装置及设备,用以解决现有技术中单纯直接地从通过区块链进行数据共享,容易导致目标数据与需求数据匹配度低的缺陷,实现提高目标数据与需求数据的匹配度。
6.本发明提供一种基于联盟链和联邦学习的数据管理方法,包括:
7.接收数据需求方发送的数据请求指令,所述数据请求指令包括需求方标识和请求数据类别;
8.调用智能合约将所述需求方标识和所述请求数据类别共享至联盟链上;
9.在所述联盟链上,检索与所述请求数据类别相关联的数据相关节点,每个所述数据相关节点均包括有与所述请求数据类别相关联的本地数据集;
10.基于联邦机器学习,对所述本地数据集进行训练,得到全局模型;
11.根据所述全局模型和所述需求方标识输出目标数据至所述数据需求方。
12.根据本发明提供的一种基于联盟链和联邦学习的数据管理方法,所述基于联邦机器学习,对所述本地数据集进行训练,得到全局模型,包括:
13.基于联邦机器学习,对每个所述本地数据集分别进行训练,得到对应的本地局部模型;
14.基于联邦机器学习,对所述本地局部模型进行训练,得到全局模型。
15.根据本发明提供的一种基于联盟链和联邦学习的数据管理方法,所述根据所述全局模型和所述需求方标识输出目标数据至所述数据需求方之后,还包括:
16.识别所述目标数据中由每个所述数据相关节点所提供的数据量;
17.确定每个所述本地局部模型的准确率;
18.根据所述提供的数据量和所述本地局部模型的准确率,确定每个所述数据相关节点的激励收益,并分配所述激励收益至对应的数据相关节点。
19.根据本发明提供的一种基于联盟链和联邦学习的数据管理方法,所述确定每个所述本地局部模型的准确率,包括:
20.基于预设平均绝对误差公式,确定本地局部模型的准确率。
21.根据本发明提供的一种基于联盟链和联邦学习的数据管理方法,所述根据所述提供的数据量和所述本地局部模型的准确率,确定每个所述数据相关节点的激励收益,包括:
22.确定单位数据量价格;
23.根据所述单位数据量价格、所述提供的数据量和所述本地局部模型的准确率,确定预设收益计算公式;
24.通过所述预设收益计算公式,确定每个所述数据相关节点的激励收益。
25.根据本发明提供的一种基于联盟链和联邦学习的数据管理方法,所述得到全局模型之后,还包括:
26.基于每个所述本地局部模型的准确率,在所有所述数据相关节点之中,确定领导节点;
27.通过所述领导节点收集所述联盟链接收到的所有数据,并将所述数据整合为目标区块;
28.广播所述目标区块至每个所述数据相关节点,以使所述数据相关节点对所述目标区块进行认证;
29.若所述数据相关节点均表示认证通过,则存储所述目标区块至联盟链中。
30.根据本发明提供的一种基于联盟链和联邦学习的数据管理方法,所述基于每个所述本地局部模型的准确率,在所有所述数据相关节点之中,确定领导节点,包括:
31.基于每个所述本地局部模型的准确率,在所述数据相关节点中确定委员会节点;
32.根据预设验证公式,计算每个所述委员会节点对应的本地局部模型的准确率;
33.按照所述委员会节点对应的本地局部模型的准确率的大小,在所述委员会节点中确定领导节点。
34.根据本发明提供的一种基于联盟链和联邦学习的数据管理方法,所述接收数据需求方发送的数据请求指令之前,还包括:
35.接收数据提供者的注册申请,所述注册申请包括公钥、数据配置文件和钱包账户;
36.根据所述公钥、所述数据配置文件和所述钱包账户,生成数据检索记录;
37.上传所述数据检索记录至联盟链上,以使所述联盟链中的任一节点对所述数据配置文件进行验证。
38.本发明还提供一种基于联盟链和联邦学习的数据管理装置,包括:
39.接收模块,用于接收数据需求方发送的数据请求指令,所述数据请求指令包括需求方标识和请求数据类别;
40.共享模块,用于调用智能合约将所述需求方标识和所述请求数据类别共享至联盟链上;
41.检索模块,用于在所述联盟链上,检索与所述请求数据类别相关联的数据相关节点,每个所述数据相关节点均包括有与所述请求数据类别相关联的本地数据集;
42.训练模块,用于基于联邦机器学习,对所述本地数据集进行训练,得到全局模型;
43.输出模块,用于根据所述全局模型和所述需求方标识输出目标数据至所述数据需求方。
44.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于联盟链和联邦学习的数据管理方法的步骤。
45.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于联盟链和联邦学习的数据管理方法的步骤。
46.本发明提供的一种基于联盟链和联邦学习的数据管理方法、装置及设备,方法通过接收数据需求方发送的数据请求指令,数据请求指令包括需求方标识和请求数据类别;调用智能合约将需求方标识和请求数据类别共享至联盟链上;在联盟链上,检索与请求数据类别相关联的数据相关节点,每个数据相关节点均包括有与请求数据类别相关联的本地数据集;基于联邦机器学习,对本地数据集进行训练,得到全局模型;根据全局模型和需求方标识输出目标数据至数据需求方的方式,使得获得的目标数据不单单由某一节点所提供,而且基于联邦机器学习模型,使得能够将不同数据相关节点的相关数据进行融合发送至数据需求方,使得在获取到完整的目标数据的同时,还有效地保证了目标数据的准确度,提高了目标数据与需求数据的匹配度。
附图说明
47.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
48.图1是本发明提供的基于联盟链和联邦学习的数据管理方法的流程示意图之一;
49.图2是本发明提供的基于联盟链和联邦学习的数据管理方法的流程示意图之二;
50.图3是本发明提供的基于联盟链和联邦学习的数据管理装置的结构示意图;
51.图4是本发明提供的电子设备的结构示意图。
具体实施方式
52.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
53.下面结合图1

图4描述本发明的一种基于联盟链和联邦学习的数据管理方法、装置及设备。
54.图1是本发明提供的基于联盟链和联邦学习的数据管理方法的流程示意图之一。
55.如图1所示,本实施例提供的一种基于联盟链和联邦学习的数据管理方法,包括以下步骤:
56.101、接收数据需求方发送的数据请求指令,数据请求指令包括需求方标识和请求数据类别。
57.数据需求方根据自身实际需求,发送数据请求指令,数据请求指令包括需求方标识和请求数据类别。其中,需求方标识的作用是当最后找到匹配的数据之后,能够将检索到的数据有效地返回至数据需求方,保证书数据传输的速度,而请求数据类别,则是代表数据需求方所实际需要的数据。也就是说,包括了需求是什么,需求的地址是什么,从而可以更好地保证完成整个数据的获取。
58.在智慧城市中,数据提供者获取数据的具体获取方式,通过无处不在的传感网利用传感节点与现实城市关联起来,对海量数据进行存储、计算、分析,无线传感网的传感节点采集网络数据,并把数据整合后发送到邻近的数据聚合基站,本文定义这些数据采集基站为数据聚合节点,每个城市都会配置多个这样的具有计算和存储资源的实体(如基站、政府机关服务器等)。本文的数据聚合节点通过有线网络连接通信,从而保证数据聚合节点能够可靠地协同处理数据。具体来说,本地的数据聚合节点收集并分析本地数据,通过有线网络向区块链共享本地数据,并且按需获取自己需要的数据,从而保证数据分析的实时性和正确性。数据聚合节点负责收集并管理来自本地的事务。这些事务在审核通过完成共识机制之后,就会被压缩整理成区块。区块是由区块头和区块体构成的,区块头中写下了前序区块头的哈希(hash)值、时间戳(timestamp)和该区块体merkle根。
59.102、调用智能合约将需求方标识和请求数据类别共享至联盟链上。
60.具体的,调用智能合约将需求方标识和请求类别共享至联盟链上,联盟链是介于公有链与私有链之间的一种区块链,它弱化了去中心化,来得到更高的共识达成效率,因此比公有链的共识效率更高并且比私有链的去中心化程度更强,在城市数据联邦学习的场景下,联盟链更能满足需求。
61.103、在联盟链上,检索与请求数据类别相关联的数据相关节点,每个数据相关节点均包括有与请求数据类别相关联的本地数据集。
62.联盟链上检索与请求数据类别相关联的数据相关节点,其中,每个数据相关节点均包括有与请求数据类别相关联的本地数据集。在一个具体的数据需求方发送数据需求时,可能所需求的数据会在多个数据提供者中所拥有,此时便需要分别将其进行获取,而可能就会包含了多个数据节点,本实施例中便可以将其进行全部完整的获取,定义每一个数据相关节点所提供的数据均构成一个本地数据集。
63.在实施例中有两种类型的交易,检索交易和数据共享交易。由于大多数数据都是敏感的,而且数据量很大,因此将数据放在存储空间有限的区块链上是一项资源密集型的、风险很大的任务。因此,利用联盟链来检索数据,而真正的数据由其所有者本地存储。当一个新的数据提供者参与时,它的唯一身份标识(id)被记录为区块链中的一个交易,以及它的数据的概要,包括数据类别、数据类型和数据大小。所有来自多个参与者的数据档案都将以交易的形式记录下来。每个数据共享事件也作为一个交易存储在区块链中,这样可以跟踪数据的使用情况,以便进一步审计。
64.104、基于联邦机器学习,对本地数据集进行训练,得到全局模型。
65.每个数据相关节点均包括有一个本地数据集,其中可能包括了重复的数据,或者是有差别的一些数据,此时,便可以基于联邦机器学习对本地数据进行训练,得到全局模型,使得可以更好地完成对数据的获取。具体的,基于联邦机器学习,对本地数据集进行训练,得到全局模型,包括:基于联邦机器学习,对每个本地数据集分别进行训练,得到对应的本地局部模型,然后再基于联邦机器学习,对本地局部模型进行训练,得到全局模型。
66.对于任何数据参与方,学习本地局部模型步骤如下:
67.(1)选择本地数据集。持有数据的相关节点在本地找到与请求相关的本地数据集。
68.(2)本地局部模型训练。数据相关方在本地运行机器学习算法来训练本地局部模型。
69.(3)协作多方学习。将本地局部模型作为事务广播给各个参与者,以进行联邦学习参数更新,这个过程会迭代进行,直至训练模型结果达到预期值,以完成本地局部模型的训练。
70.105、根据全局模型和需求方标识输出目标数据至数据需求方。
71.通过全局模型,便可以得到需求方想要得到的数据,定义数据需求方需要的数据为目标数据。得到了目标数据以后,便可以根据需求方标识,将目标数据返回至数据需求方,从而完成数据的管理。
72.设n个数据相关方和一个他们共同的联合数据集d。对于任何数据相关方p
i
,它拥有一个局部数据集d
i
∈d。这n个数据相关方同意在不透露任何私密信息的情况下共享其数据。设由请求方发出的带有查询的数据共享请求r=r1,r2,

r
m
,于查询请求不返回原始数据,而是向这些查询提供计算结果以供共享。所有与请求相关的参与者协同相应的学习算法,在不泄漏任何私有数据的情况下,训练一个全局模型m。最后,将训练好的全局数据模型m返回给数据请求方,数据请求方便可以在本地获得关于其数据共享请求的答案r(m)。
73.本实施例提供的一种基于联盟链和联邦学习的数据管理方法,通过接收数据需求方发送的数据请求指令,数据请求指令包括需求方标识和请求数据类别;调用智能合约将需求方标识和请求数据类别共享至联盟链上;在联盟链上,检索与请求数据类别相关联的数据相关节点,每个数据相关节点均包括有与请求数据类别相关联的本地数据集;基于联邦机器学习,对本地数据集进行训练,得到全局模型;根据全局模型和需求方标识输出目标数据至数据需求方的方式,使得获得的目标数据不单单由某一节点所提供,而且基于联邦机器学习模型,使得能够将不同数据相关节点的相关数据进行融合发送至数据需求方,使得在获取到完整的目标数据的同时,还有效地保证了目标数据的准确度,提高了目标数据与需求数据的匹配度。
74.图2是本发明提供的基于联盟链和联邦学习的数据管理方法的流程示意图之二。
75.如图2所示,本实施例提供的基于联盟链和联邦学习的数据管理方法,为激励数据提供者提供的数据全面且准确,本实施例包括以下步骤:
76.201、接收数据需求方发送的数据请求指令,数据请求指令包括需求方标识和请求数据类别。
77.202、调用智能合约将需求方标识和请求数据类别共享至联盟链上。
78.203、在联盟链上,检索与请求数据类别相关联的数据相关节点,每个数据相关节点均包括有与请求数据类别相关联的本地数据集。
79.204、基于联邦机器学习,对本地数据集进行训练,得到全局模型。
80.205、根据全局模型和需求方标识输出目标数据至数据需求方。
81.关于步骤201

205的具体内容,在上述实施例对应的步骤101

105中已经做了详尽的解释说明,本实施例中不再进行具体阐述,可以相互参照理解。
82.206、识别目标数据中由每个数据相关节点所提供的数据量。
83.具体的,在每次联邦学习任务执行完毕之后,需要对数据相关方进行发放奖励来进行激励,但由于各个数据相关节点数据量不同、局部模型质量亦有优劣之分,所以如何公平地分发数据费用也是需要考虑的问题。可以按照预设的方式进行数据统计,因为对于一个具体的目标数据,可能包括有多个数据提供者所提供组合而成,因此,首先便需要先确定每个数据提供者所提供的数据的多少,从而根据不同的数据量给予不同的激励,可以更好地提高数据提供者的积极性,也更加公平。
84.207、确定每个本地局部模型的准确率。
85.因为每个数据相关节点,所以在达成共识过程中需要对本地模型的好坏进行评估验证。本实施例中用模型预测准确度来量化表示联邦学习本地局部模型的质量。具体而言,在分类任务中,准确率可以使用正确分类记录所占比例来表示,基于预设平均绝对误差公式,确定本地局部模型的准确率。回归任务中,准确率使用平均绝对误差mean absolute error(mae)来衡量:
[0086][0087]
如(1),其中y
i
是数据记录的真实结果,f(x
i
)是模型m
i
的预测输出结果。mae越低,m
i
的准确性越高,说明其联邦学习训练模型的质量越高。便可以根据(1)得到每一个本地局部模型的准确率。
[0088]
208、根据提供的数据量和本地局部模型的准确率,确定每个数据相关节点的激励收益,并分配激励收益至对应的数据相关节点。
[0089]
为了使得激励奖励分配的更加合理,在获取到每个数据相关节点提供的数据量和每个数据相关节点对应的本地局部模型的准确率以后,便综合数据量多少和准确率的高低进行奖励收益的分配。
[0090]
具体的,包括,首先确定单位数据量价格,然后根据单位数据量价格、所述提供的数据量和本地局部模型的准确率,确定预设收益计算公式,通过预设收益计算公式,确定每个数据相关节点的激励收益。则不仅仅需要确定数据提供者的收益,还要确定数据需求方
的费用支出,具体可以按照以下公式进行相关费用的计算。
[0091]
对于数据请求方,一次联邦学习任务的费用为公式(2)
[0092][0093]
其中,p为单位量数据价格,|∑
i
d
i
|为数据总量,f

表示数据需求方需要支付的费用。
[0094]
对于每个数据提供方,一次联邦学习任务的收入为公式(3)
[0095][0096]
其中,|d
j
|表示该数据相关节点数据量,表示数据提供方的收益,n为自然数。根据借助mae来量化表示该节点局部模型训练质量,训练质量越高,该节点的收入也就越高。
[0097]
于是,便可以更加准确且公平的计算出数据需求者的支付费用和数据提供者的不同收益,也就是说数据提供者提供的数据越全面且准确,则获得的收益也就越高,从而实现更好地刺激数据提供者对数据的提供。
[0098]
进一步的,本实施例中在,还包括:基于每个本地局部模型的准确率,在所有数据相关节点之中,确定领导节点;通过领导节点收集联盟链接收到的所有数据,并将数据整合为目标区块;广播目标区块至每个数据相关节点,以使数据相关节点对所述目标区块进行认证;若数据相关节点均表示认证通过,则存储目标区块至联盟链中,例如认证通过的方式可以是所有的数据相关节点均认可,也可以是达到一定的百分比的数据相关节点表示认可。
[0099]
具体的,基于每个本地局部模型的准确率,在所有数据相关节点之中,确定领导节点。首先,基于每个本地局部模型的准确率,在数据相关节点中确定委员会节点。达成共识的过程是由选举出的委员会节点根据联邦学习的工作情况来执行的。委员会节点是从所有数据相关方节点中选出,共识消息只需要发送给委员会节点即可,无需向所有节点发送,这也减少了一定程度上的通信开销。在响应联邦学习任务的过程当中,委员会节点p
i
将自己训练好的本地模型m
i
传递给下一个委员会节点。将这种模型传输的过程记录为一个事务该事务的记录元组如表1所示:
[0100]
表1
[0101][0102]
每个委员会节点p
i
都有一对公钥与私钥(pk
i
,sk
i
),用来加密以及签名。然后p
i
向其他委员会节点广播经过加密的自己的公钥。
[0103]
然后,根据预设验证公式,计算每个委员会节点对应的本地局部模型的准确率。委员会节点对应的本地局部模型的mae计算公式(4)如下:
[0104][0105]
其中,mae(m
j
)是本地局部模型m
j
计算出的mae,γ量化表示p
j
对全局模型m的贡献权重,γ的计算公式(5)如下:
[0106][0107]
其中,d
j
表示委员会节点p
j
训练数据量的大小,γ由d
j
以及其他数据参与方数据规模来确定。
[0108]
最后,按照委员会节点对应的本地局部模型的准确率的大小,在委员会节点中确定领导节点,可以是准确率最高的委员会节点对应的本地局部模型作为领导节点。
[0109]
在确定得到领导节点以后,领导节点来协商所有节点的共识过程。领导节点首先收集所接收到的所有事务、在联盟链中接收到的所有数据,包括最后训练得到的全局模型m,然后将其整合为一个目标区块其中h
k
是区块的区块头,是时间戳。然后,领导节点将b
k
广播给所有数据相关节点,来进行认证环节。数据相关节点首先会验证区块的区块头格式、区块大小、交易时间戳等常规信息,还会像比特币那样验证事务的传递轨迹以审核区块正确性。委员会节点会验证每个事务,计算mae(m
i
)和mae(m)。如果计算出的mae在一定的误差范围之内,就会向领导节点发送确认信息。如果该区块得到了所有认证节点的确认,则领导节点就会把自己签名过的区块发送给所有节点,该区块即被不可篡改地存储在区块链中。使得,当再次有同样的数据需求者进行数据获取时,便不需要再进行重新的联邦机器学习,直接在联盟链中读取相关的数据即可。同时费用支付和收益也均按照相关的标准,有效地提高了数据获取的效率。
[0110]
进一步的,本实施例中,还包括:接收数据提供者的注册申请,注册申请包括公钥、数据配置文件和钱包账户,根据公钥、数据配置文件和钱包账户,生成数据检索记录;上传数据检索记录至联盟链上,以使联盟链中的任一节点对数据配置文件进行验证。节点注册,在收到节点注册请求后调用智能合约将节点信息注册到区块链上,然后调用智能合约将该节点数据记录注册到链上。节点信息更新,在收到节点信息更新请求后,调用智能合约更新该节点的数据记录。在节点第一次注册到区块链上后,调用智能合约注册钱包账户。数据请求节点在发起数据请求前会调用函数由数据请求节点向区块链平台交付资金,在联邦学习任务结束后数据提供方会调用获取应得的收益。
[0111]
通过引入联盟链平台提高了联邦学习的安全性,代替了中心化服务器,避免了单点故障的风险和系统性能瓶颈,借助智能合约使联邦学习任务分发、多方联邦学习、费用计算等功能得以自动化执行。通过联邦学习驱动的potq共识机制,避免了计算资源的浪费。对数据相关节点根据数据量与训练质量公平地进行数据费用的收支。
[0112]
基于同一总的发明构思,本技术还保护一种基于联盟链和联邦学习的数据管理装置。下面对本发明提供的基于联盟链和联邦学习的数据管理装置进行描述,下文描述的基于联盟链和联邦学习的数据管理装置与上文描述的基于联盟链和联邦学习的数据管理方法可相互对应参照。
[0113]
图3是本发明提供的基于联盟链和联邦学习的数据管理装置的结构示意图。
[0114]
如图3所示,本实施例提供的一种基于联盟链和联邦学习的数据管理装置,包括:
[0115]
接收模块10,用于接收数据需求方发送的数据请求指令,数据请求指令包括需求方标识和请求数据类别;
[0116]
共享模块20,用于调用智能合约将需求方标识和请求数据类别共享至联盟链上;
[0117]
检索模块30,用于在联盟链上,检索与请求数据类别相关联的数据相关节点,每个数据相关节点均包括有与请求数据类别相关联的本地数据集;
[0118]
训练模块40,用于基于联邦机器学习,对本地数据集进行训练,得到全局模型;
[0119]
输出模块50,用于根据全局模型和需求方标识输出目标数据至数据需求方。
[0120]
本实施例提供的一种基于联盟链和联邦学习的数据管理装置,通过接收数据需求方发送的数据请求指令,数据请求指令包括需求方标识和请求数据类别;调用智能合约将需求方标识和请求数据类别共享至联盟链上;在联盟链上,检索与请求数据类别相关联的数据相关节点,每个数据相关节点均包括有与请求数据类别相关联的本地数据集;基于联邦机器学习,对本地数据集进行训练,得到全局模型;根据全局模型和需求方标识输出目标数据至数据需求方的方式,使得获得的目标数据不单单由某一节点所提供,而且基于联邦机器学习模型,使得能够将不同数据相关节点的相关数据进行融合发送至数据需求方,使得在获取到完整的目标数据的同时,还有效地保证了目标数据的准确度,提高了目标数据与需求数据的匹配度。
[0121]
进一步的,本实施例中的训练模块40,具体用于
[0122]
基于联邦机器学习,对每个本地数据集分别进行训练,得到对应的本地局部模型;
[0123]
基于联邦机器学习,对本地局部模型进行训练,得到全局模型。
[0124]
进一步的,本实施例中还包括,激励模块,用于:
[0125]
识别目标数据中由每个数据相关节点所提供的数据量;
[0126]
确定每个本地局部模型的准确率;确定每个本地局部模型的准确率,包括:基于预设平均绝对误差公式,确定本地局部模型的准确率。
[0127]
根据提供的数据量和本地局部模型的准确率,确定每个数据相关节点的激励收益,并分配激励收益至对应的数据相关节点。
[0128]
进一步的,本实施例中的激励模块,具体用于:
[0129]
确定单位数据量价格;
[0130]
根据单位数据量价格、所述提供的数据量和本地局部模型的准确率,确定预设收益计算公式;
[0131]
通过预设收益计算公式,确定每个数据相关节点的激励收益。
[0132]
进一步的,本实施例中还包括存储模块,用于:
[0133]
基于每个本地局部模型的准确率,在所有数据相关节点之中,确定领导节点;
[0134]
通过领导节点收集联盟链接收到的所有数据,并将数据整合为目标区块;
[0135]
广播目标区块至每个数据相关节点,以使数据相关节点对目标区块进行认证;
[0136]
若数据相关节点均表示认证通过,则存储目标区块至联盟链中。
[0137]
进一步的,本实施例中的存储模块,具体用于:
[0138]
基于每个本地局部模型的准确率,在数据相关节点中确定委员会节点;
[0139]
根据预设验证公式,计算每个委员会节点对应的本地局部模型的准确率;
[0140]
按照委员会节点对应的本地局部模型的准确率的大小,在委员会节点中确定领导节点。
[0141]
进一步的,本实施例中还包括,注册模块,用于:
[0142]
接收数据提供者的注册申请,注册申请包括公钥、数据配置文件和钱包账户;
[0143]
根据公钥、数据配置文件和钱包账户,生成数据检索记录;
[0144]
上传数据检索记录至联盟链上,以使联盟链中的任一节点对数据配置文件进行验证。
[0145]
图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(communications interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行基于联盟链和联邦学习的数据管理方法,该方法包括:接收数据需求方发送的数据请求指令,所述数据请求指令包括需求方标识和请求数据类别;调用智能合约将所述需求方标识和所述请求数据类别共享至联盟链上;在所述联盟链上,检索与所述请求数据类别相关联的数据相关节点,每个所述数据相关节点均包括有与所述请求数据类别相关联的本地数据集;基于联邦机器学习,对所述本地数据集进行训练,得到全局模型;根据所述全局模型和所述需求方标识输出目标数据至所述数据需求方。
[0146]
此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0147]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的基于联盟链和联邦学习的数据管理方法,该方法包括:接收数据需求方发送的数据请求指令,所述数据请求指令包括需求方标识和请求数据类别;调用智能合约将所述需求方标识和所述请求数据类别共享至联盟链上;在所述联盟链上,检索与所述请求数据类别相关联的数据相关节点,每个所述数据相关节点均包括有与所述请求数据类别相关联的本地数据集;基于联邦机器学习,对所述本地数据集进行训练,得到全局模型;根据所述全局模型和所述需求方标识输出目标数据至所述数据需求方。
[0148]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的基于联盟链和联邦学习的数据管理方法,该方法包括:接收数据需求方发送的数据请求指令,所述数据请求指令包括需求方标识和请求数据类别;调用智能合约将所述需求方标识和所述请求数据类别共享至联盟
链上;在所述联盟链上,检索与所述请求数据类别相关联的数据相关节点,每个所述数据相关节点均包括有与所述请求数据类别相关联的本地数据集;基于联邦机器学习,对所述本地数据集进行训练,得到全局模型;根据所述全局模型和所述需求方标识输出目标数据至所述数据需求方。
[0149]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0150]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0151]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜