基于区块链网络的联邦学习工作流构建方法及相关设备技术

技术编号:37603835 阅读:9 留言:0更新日期:2023-05-18 11:55
本申请提供一种基于区块链网络的联邦学习工作流构建方法及相关设备;方法包括:令训练任务的发起者部署区块链的运行环境,并作为一个计算节点加入区块链;令发起者创建训练任务,其中,训练任务包括,对预设的联邦学习模型进行训练的任务;令发起者选择加入至区块链的联邦成员,并将训练任务发送至选择的每个联邦成员;令每个联邦成员接收训练任务至本地;令发起者和每个联邦成员对各自本地的训练任务的训练数据进行验证,将训练数据通过验证的联邦成员加入至联邦学习模型的训练;令发起者和全部加入训练的联邦成员中,均执行各自本地的训练任务,在各自本地的训练任务完成后下载训练好的联邦学习模型至发起者的本地。练好的联邦学习模型至发起者的本地。练好的联邦学习模型至发起者的本地。

【技术实现步骤摘要】
基于区块链网络的联邦学习工作流构建方法及相关设备


[0001]本申请的实施例涉及联邦学习的
,尤其涉及一种基于区块链网络的联邦学习工作流构建方法及相关设备。

技术介绍

[0002]在相关的联邦学习的训练方式中,往往是采用单个服务器来进行数据的聚合和分发,但是这种中心化的聚合架构,容易产生明显的单点故障,从而导致整个系统的容错性降低。
[0003]在将区块链网络应用到联邦学习的训练中时,由于训练过程复杂,使得工作流的逻辑不够清晰,进而导致进行训练操作时,显示出的操作界面也难以观察出具备清晰逻辑的工作流,而在区块链中进行联邦学习时,目前尚无能够清晰展示工作流的操作界面,从而令训练操作在实施时极为不便。

技术实现思路

[0004]有鉴于此,本申请的目的在于提出一种基于区块链网络的联邦学习工作流构建方法及相关设备。
[0005]基于上述目的,本申请提供了基于区块链网络的联邦学习工作流构建方法,包括:令训练任务的发起者部署区块链的运行环境,并作为一个计算节点加入所述区块链;令所述发起者创建训练任务,其中,所述训练任务包括,对预设的联邦学习模型进行训练的任务;令所述发起者选择加入至所述区块链的联邦成员,并将所述训练任务发送至选择的每个联邦成员;令所述每个联邦成员接收所述训练任务至本地;令所述发起者和所述每个联邦成员对各自本地的训练任务的训练数据进行验证,将训练数据通过验证的联邦成员加入至所述联邦学习模型的训练;令所述发起者和全部加入训练的联邦成员中,均执行所述各自本地的训练任务,在所述各自本地的训练任务完成后下载训练好的联邦学习模型至所述发起者的本地。
[0006]进一步地,加入所述区块链,包括:令所述发起者将任务信息至所述区块链中,其中,所述任务信息包括,所述训练任务中的相关信息;并令所述发起者接受所述区块链对该发起者的授权许可的验证;响应于所述发起者通过所述授权许可的验证,将所述发起者作为所述区块链中的一个计算节点,并加入至所述区块链中。
[0007]进一步地,令所述发起者创建训练任务之后,还包括:令所述发起者设置数据的预处理程序;
其中,预处理程序包括,对所述数据进行特征采样的特征采样程序,对所述数据进行特征清洗的特征清洗程序,对所述数据中的缺失值进行填充的缺失值填充程序,对所述数据中的异常值进行处理的异常值处理程序,和对所述数据的特征进行归一化的特征归一化程序。
[0008]进一步地,令所述发起者选择加入至所述区块链的联邦成员,包括:对接受所述训练任务的联邦成员进行授权许可的验证;响应于任意联邦成员通过所述授权许可的验证,选择该联邦成员作为所述区块链中的一个计算节点,并加入至所述区块链中。
[0009]进一步地,令所述发起者和所述每个联邦成员对各自本地的训练任务的训练数据进行验证之后,还包括:令所述发起者和所述每个联邦成员分析各自的训练数据的数据特征,并根据各自的数据特征定义各自的特征工程;令所述发起者和所述每个联邦成员为各自的联邦学习模型定义模型结构,并为各自的训练任务定义训练策略。
[0010]进一步地,执行所述各自本地的训练任务,包括:在每轮训练中,在所述发起者和所述每个联邦成员中选举出一个聚合节点;令所述聚合节点聚合所述区块链中其他计算节点的本地训练参数,得到本轮公共训练参数,并令所述其他计算节点利用本轮次的所述公共训练参数完成本轮次的训练;令所述每个其他计算节点将各自本轮训练的本地训练参数发送至所述聚合节点进行聚合,得到下一轮次训练中进行共享的公共训练参数,并进行下一轮次的训练直至所述联邦学习模型训练完成。
[0011]进一步地,令所述聚合节点聚合所述区块链中其他计算节点的本地训练参数,得到本轮公共训练参数,并令所述其他计算节点利用本轮次的所述公共训练参数完成本轮次的训练,包括:令所述聚合节点聚合所述区块链中其他计算节点各自在前一轮次训练的本地训练参数,得到本轮次训练的公共训练参数;令所述聚合节点按照预设的智能合约向所述其他计算节点共享本轮次训练的所述本轮公共训练参数;令所述其他计算节点利用本轮次训练的所述公共训练参数进行本轮次所述各自本地的训练任务,并得到本轮次训练的本地训练参数。
[0012]基于同一专利技术构思,本申请还提供了一种基于区块链网络的联邦学习工作流构建装置,包括:注册模块、任务创建模块、节点选择模块、任务共享模块、验证模块和计算模块;其中,所述注册模块,被配置为,令训练任务的发起者部署区块链的运行环境,并作为一个计算节点加入所述区块链;所述任务创建模块,被配置为,令所述发起者创建训练任务,其中,所述训练任务包括,对预设的联邦学习模型进行训练的任务;所述节点选择模块,被配置为,令所述发起者选择加入至所述区块链的联邦成员,并将所述训练任务发送至选择的每个联邦成员;所述任务共享模块,被配置为,令所述每个联邦成员接收所述训练任务至本地;
所述验证模块,被配置为,令所述发起者和所述每个联邦成员对各自本地的训练任务的训练数据进行验证,将训练数据通过验证的联邦成员加入至所述联邦学习模型的训练;所述计算模块,被配置为,令所述发起者和全部加入训练的联邦成员中,均执行所述各自本地的训练任务,在所述各自本地的训练任务完成后下载训练好的联邦学习模型至所述发起者的本地。
[0013]基于同一专利技术构思,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一项所述的基于区块链网络的联邦学习工作流构建方法。
[0014]基于同一专利技术构思,本申请还提供了一种非暂态计算机可读存储介质,其中,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上述基于区块链网络的联邦学习工作流构建方法。
[0015]从上面所述可以看出,本申请提供的基于区块链网络的联邦学习工作流构建方法及相关设备,基于部署的区块链的运行环境,将联邦学习模型的训练在区块链中进行,并在工作流中,将训练任务的创建,联邦成员的选择,训练数据的验证,以及计算任务的执行进行划分,综合考虑了不同操作在工作流中的不同作用,来进行工作流的设计,并根据工作流的逻辑来设计的操作界面,从而实现从部署运行环境到训练结束一体化的工作流设计,以及,操作界面的设计。
附图说明
[0016]为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0017]图1为本申请实施例的基于区块链网络的联邦学习工作流构建方法的流程图;图2为本申请实施例的训练联邦学习模型的工作流的界面示意图;图3为本申请实施例的基于区块链网络的联邦学习工作流构建装置结构示意图;图4为本申请实施例的电子设备结构示意图。
具体实施方式
[0018]为使本申请的目的、技术方案和优点更加清楚明白,以下结合本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于区块链网络的联邦学习工作流构建方法,其特征在于,包括:令训练任务的发起者部署区块链的运行环境,并作为一个计算节点加入所述区块链;令所述发起者创建训练任务,其中,所述训练任务包括,对预设的联邦学习模型进行训练的任务;令所述发起者选择加入至所述区块链的联邦成员,并将所述训练任务发送至选择的每个联邦成员;令所述每个联邦成员接收所述训练任务至本地;令所述发起者和所述每个联邦成员对各自本地的训练任务的训练数据进行验证,将训练数据通过验证的联邦成员加入至所述联邦学习模型的训练;令所述发起者和全部加入训练的联邦成员中,均执行所述各自本地的训练任务,在所述各自本地的训练任务完成后下载训练好的联邦学习模型至所述发起者的本地。2.根据权利要求1所述的方法,其特征在于,所述加入所述区块链之后,还包括:令所述发起者将任务信息至所述区块链中,其中,所述任务信息包括,所述训练任务中的相关信息;并令所述发起者接受所述区块链对该发起者的授权许可的验证;响应于所述发起者通过所述授权许可的验证,将所述发起者作为所述区块链中的一个计算节点,并加入至所述区块链中。3.根据权利要求1所述的方法,其特征在于,所述令所述发起者创建训练任务,包括:令所述发起者设置数据的预处理程序;其中,预处理程序包括,对所述数据进行特征采样的特征采样程序,对所述数据进行特征清洗的特征清洗程序,对所述数据中的缺失值进行填充的缺失值填充程序,对所述数据中的异常值进行处理的异常值处理程序,和对所述数据的特征进行归一化的特征归一化程序。4.根据权利要求1所述的方法,其特征在于,所述令所述发起者选择加入至所述区块链的联邦成员,包括:对接受所述训练任务的联邦成员进行授权许可的验证;响应于任意联邦成员通过所述授权许可的验证,选择该联邦成员作为所述区块链中的一个计算节点,并加入至所述区块链中。5.根据权利要求1所述的方法,其特征在于,所述令所述发起者和所述每个联邦成员对各自本地的训练任务的训练数据进行验证之后,还包括:令所述发起者和所述每个联邦成员分析各自的训练数据的数据特征,并根据各自的数据特征定义各自的特征工程;令所述发起者和所述每个联邦成员为各自的联邦学习模型定义模型结构,并为各自的训练任务定义训练策略。6.根据权利要求1所述的方法,其特征在于,所述执行所述各自本地的训练任务,包括:在每轮训练中,在所述发起者和所述每个联邦成员中选举出一个聚合节点;令所述聚合节...

【专利技术属性】
技术研发人员:王光宇高天润吕鹏帅张平
申请(专利权)人:北京邮电大学
类型:发明
国别省市:

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

1