System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,尤其涉及的是一种去中心化的联邦学习方法、系统及相关设备。
技术介绍
1、为了解决数据安全问题,联邦学习作为一种新兴的数据共享和分析方法,引起了广泛的关注。联邦学习能够在保护数据隐私的前提下,实现多个参与方之间的模型训练和知识共享。
2、相关技术中,在联邦学习的过程中,通常由一个固定的中心点服务器进行数据聚合,中心化问题严重。相关技术的问题在于,中心服务器容易出现单点故障问题,从而不利于提高模型训练的准确性。
3、因此,相关技术还有待改进和发展。
技术实现思路
1、本申请的主要目的在于提供一种去中心化的联邦学习方法、系统及相关设备,旨在解决相关技术中由一个固定的中心点服务器进行数据聚合时,容易在中心点服务器出现单点故障问题,不利于提高模型训练的准确性的技术问题。
2、为了实现上述目的,本申请第一方面提供一种去中心化的联邦学习方法,其中,上述去中心化的联邦学习方法包括:
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、由上可见,本申请方案中方法包括:联邦学习的参与方加入区块链,其中,上述参与方包括一个组织者和多个参与者;上述组织者将上述区块链中的参与者划分为普通节点和委员会节点;上述普通节点和上述委员会节点分别基于上述区块链获取联邦学习任务配置信息和当前轮次待训练的全局模型,并基于上述待训练的全局模型进行本地模型更新,获得前一轮次训练完成后的本地模型;上述普通节点根据节点本地数据本文档来自技高网...
【技术保护点】
1.一种去中心化的联邦学习方法,其特征在于,所述方法包括:
2.根据权利要求1所述的去中心化的联邦学习方法,其特征在于,所述组织者将所述区块链中的参与者划分为普通节点和委员会节点,包括:
3.根据权利要求2所述的去中心化的联邦学习方法,其特征在于,所述方法还包括:
4.根据权利要求2所述的去中心化的联邦学习方法,其特征在于,所述参与者对应的贡献度评分为所述参与者当前轮次的贡献度评分;
5.根据权利要求1所述的去中心化的联邦学习方法,其特征在于,所述委员会节点通过所述区块链获取所述本地训练模型,根据所述本地训练模型确定所述普通节点对应的贡献度评分以及当前轮次训练完成后的全局模型,并根据所述当前轮次训练完成后的全局模型确定所述委员会节点对应的贡献度评分,包括:
6.根据权利要求5所述的去中心化的联邦学习方法,其特征在于,所述方法还包括:
7.根据权利要求1至6任意一项所述的去中心化的联邦学习方法,其特征在于,所述方法还包括:
8.一种去中心化的联邦学习系统,其特征在于,所述系统包括:
9.
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有去中心化的联邦学习程序,所述去中心化的联邦学习程序被处理器执行时实现如权利要求1至7任意一项所述去中心化的联邦学习方法的步骤。
...【技术特征摘要】
1.一种去中心化的联邦学习方法,其特征在于,所述方法包括:
2.根据权利要求1所述的去中心化的联邦学习方法,其特征在于,所述组织者将所述区块链中的参与者划分为普通节点和委员会节点,包括:
3.根据权利要求2所述的去中心化的联邦学习方法,其特征在于,所述方法还包括:
4.根据权利要求2所述的去中心化的联邦学习方法,其特征在于,所述参与者对应的贡献度评分为所述参与者当前轮次的贡献度评分;
5.根据权利要求1所述的去中心化的联邦学习方法,其特征在于,所述委员会节点通过所述区块链获取所述本地训练模型,根据所述本地训练模型确定所述普通节点对应的贡献度评分以及当前轮次训练完成后的全局模型,并根据所述当前轮次训练完成后的全局模型确定所述委员会节点对应的贡献度评分,包括:
...【专利技术属性】
技术研发人员:刘洋,马国睿,漆舒汉,马雪婷,王轩,
申请(专利权)人:哈尔滨工业大学深圳哈尔滨工业大学深圳科技创新研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。