一种基于区块链的分布式机器学习系统技术方案

技术编号:22643467 阅读:47 留言:0更新日期:2019-11-26 16:35
本发明专利技术属于机器学习技术领域,公开了一种基于区块链的分布式机器学习系统,包括数据处理方注册模块、联合训练准备模块、联合训练组建立模块、协同训练模块、联合学习模型购买模块、错误行为检测模块以及联合学习区块链;该系统提出了带信任和激励的联合学习的联合学习区块链,利用区块链存储模型训练者的资质信息和可验证的训练细节,以供公众审核,并利用激励机制激励模型训练者诚实行为;采用联合学习区块链取代传统的参数服务器,其聚合结果是链上共识一致的,并且可以为联合训练的机器学习模型提供一个健康透明环境,为了降低错误行为检测和模型查询的时间成本,本发明专利技术采用双倍双布隆过滤器来加速区块链记录信息的查询,降低了区块链查询的时间成本。

A distributed machine learning system based on blockchain

The invention belongs to the field of machine learning technology, and discloses a distributed machine learning system based on block chain, including data processor registration module, joint training preparation module, joint training group establishment module, cooperative training module, joint learning model purchase module, error behavior detection module and joint learning block chain; the system proposes a joint with trust and incentive In the cooperative learning blockchain, the qualification information and verifiable training details of the model trainers are stored in the blockchain for public review, and the incentive mechanism is used to encourage the honest behavior of the model trainers; the cooperative learning blockchain is used to replace the traditional parameter server, and the aggregation result is consistent on the chain, and it can be used for the cooperative training machine learning model For a healthy and transparent environment, in order to reduce the time cost of error behavior detection and model query, the invention adopts double double bloom filter to accelerate the query of blockchain record information and reduce the time cost of blockchain query.

【技术实现步骤摘要】
一种基于区块链的分布式机器学习系统
本专利技术属于机器学习
,更具体地,涉及一种基于区块链的分布式机器学习系统。
技术介绍
机器学习对全行业和服务有显著的价值,但机器学习模型的训练往往需要大量敏感数据,然而目前数据隐私已成为世界性的重大问题,更为严格的数据保护法规也被颁布,大量的数据被分散在不同的组织中,这使得对数据的利用变得更加困难。联合学习是Google提出的一种分布式、隐私保护的机器学习方法,也被称为联邦学习、协作学习或分布式学习,它结合了机器学习和分布式计算,由参数服务器和分布式数据处理方共同训练生成一个全局模型。在联合学习中,训练数据由数据处理方独立地进行本地训练,本地训练得到的模型梯度被模糊化并发送到参数服务器,该服务器聚合这些梯度并相应地更新全局模型参数。然后,数据处理器从服务器下载更新的参数,进入下一个训练迭代;分布式训练过程不断重复进行,直到模型精度高于预先指定的阈值。联合学习可以对大量分散的数据集进行训练,并在分布式模型训练者之间传递训练模型的中间状态,并保护分布式训练数据以及本地机器学习模型的隐私性,通过一个半诚实的参数服务器整合本地模型训练的结果,更新全局模型,使得没有足够数据样本的数据处理方可以通过联合学习构建更强大的模型。尽管有这些好处,在联合学习中仍存在一些显著但缺乏关注的问题。首先,联合学习缺乏恶意数据处理方的可审计性,不诚实的训练合作者会破坏模型的训练,比如不诚实的联合训练者会把错误的模糊化梯度以及去模糊化的信息块上传到参数服务器。并且在现实世界中,集中式参数服务器在单点故障下易受攻击,这会给所有模型训练方带来损失。此外,联合学习假设分布式训练数据足够充足,训练者可以自愿、诚实地进行模型训练;事实上,现实中的数据处理方由于担心不诚实的联合学习合作者,而且不愿意在没有激励的情况下训练模型,往往不愿意参与到联合学习的合作中。联合学习实现了数据和模型的隐私保护,但这也使得保证正确性和可用性变得更加困难。参数服务器接收到本地训练结果后,参数服务器并不能防止攻击者控制的客户端向其他客户端发送错误的消息,若多个训练者中止训练或向其联合伙伴发送错误消息,这种分布式模型训练方法可能会失败,而且是不可审核的,而参数服务器可能由于单点故障而计算错误;此外,联合学习缺乏激励机制来吸引足够的分布式训练数据和计算能力。
技术实现思路
针对现有技术的以上缺陷或改进需求,本专利技术提供了一种基于区块链的分布式机器学习系统,其目的在于通过可验证的训练流程和公开透明的审计处理来识别不诚实方,并评估每个数据处理者的可靠性。为实现上述目的,按照本专利技术的一个方面,提供了一种基于区块链的分布式机器学习系统,包括数据处理方注册模块、联合训练准备模块、联合训练组建立模块、协同训练模块、联合学习模型购买模块、错误行为检测模块以及联合学习区块链;其中,数据处理方注册模块用于根据数据处理方输入的资质描述文件和数据资源获得在联合学习区块链中的密钥;联合学习区块链将数据处理方的资质信息、数据资源、历史协作训练活动记录和可靠性存储到联合学习区块链块;数据处理方通过联合学习区块链来更新联合学习区块链记录的注册信息;联合训练准备模块用于发布联合学习模型、以及联合训练合作意向信息;数据处理方通过联合训练准备模块发布拟在联合学习区块链中进行协作训练的联合学习模型的信息;注册的数据处理方可接收所有的联合学习模型信息,选择感兴趣的联合学习模型,并发布相应的联合学习模型的协作意向信息;联合学习区块链将根据联合学习模型意图为模型训练任务分配数据处理方;联合训练组建立模块用于建立联合训练组;联合训练组建立后,进入协同训练阶段;协同训练模块用于进行联合数据处理方密码设置和秘密共享的协同训练准备;在协作训练准备完成后,每个联合体中的数据处理方将逐步进入协作训练的迭代;数据处理放在本地训练它们的模型,并生成梯度;然后由数据处理方通过模糊化其局部梯度,并将带有证明的模糊化梯度上载到联合学习区块链;联合学习区块链记录所有验证的模糊化梯度,联合学习区块链节点下载所有模糊化梯度来计算聚合结果并发布聚合结果;联合学习区块链选择可靠性最高的节点作为联合学习区块链的临时记录者,将训练整合结果记录到新生成的区块中;数据处理方下载结果并协作解密聚合结果;联合学习模型购买模块,用于根据数据处理方的意向信息以及数据资源的可靠性和训练贡献量来设定模型价格;联合学习模型的模型描述和商品信息记录被存储到联合学习区块链中;联合学习模型的潜在购买者可通过联合学习区块链获取联合学习模型信息及其数据处理方信息,通过联合学习模型购买模块来购买联合学习区块链中的联合学习模型;错误行为检测模块,用于检测错误行为并报告到联合学习区块链;联合学习区块链对检测到的错误行为进行透明处理,并强制停止检测到错误行为的数据处理方的协作训练,禁止出售由检测到错误行为的数据处理方训练的联合学习模型。优选地,上述基于区块链的分布式机器学习系统中,联合意向信息包括数据处理方公钥、联合学习模型、期望价格、期望收入和/或估算成本。优选地,上述基于区块链的分布式机器学习系统,联合学习区块链接收模型买方上传的联合学习模型的性能评估信息以及模型购买者反馈的信息,在固定的时间间隔内依据上述性能评估信息以及反馈信息更新各数据处理方的可靠性,自动分配各联合学习模型产生的利润数据。优选地,上述基于区块链的分布式机器学习系统,联合学习区块链记录检测到的错误的模糊化梯度、错误的去模糊化信息块及其证明,相关数据处理方的注册信息和协同建模历史也被联合学习区块链永久、透明地记录;联合学习模型买家可在联合学习区块链中查询到联合学习模型的合法性并购买允许销售的联合学习模型;举报者则可在联合学习区块链中查询联合学习区块链记录,并监听联合学习区块链的事件和判决。优选地,上述基于区块链的分布式机器学习系统,每个注册的数据处理方将其去模糊化的信息块共享,并返回去模糊化的结果;然后对联合学习模型进行迭代,并进行联合学习模型之间的相互评估;每个数据处理方的可靠性根据该数据处理方的联合伙伴的评价进行更新,并开始下一次本地训练和模型迭代。优选地,上述基于区块链的分布式机器学习系统,联合学习区块链的数据层依次包括数据处理方记录、联合学习模型记录、布隆过滤器和默克尔树;网络层与现有的P2P网络协议兼容性;应用层为数据处理方提供联合学习模型交易市场,并且为联合模型训练提供透明化监管平台,模型购买者可以查询允许销售的联合学习模型,发送联合学习模型购买请求,获得完成训练的联合学习模型,并将模型使用评价反馈至联合学习区块链;协同训练者可以从联合学习区块链获得公平的利润份额,举报者可以从联合学习区块链查询和审计联合学习区块链中的联合学习模型和数据处理方历史记录,验证模糊化梯度和去模糊化信息块,向联合学习区块链报告错误行为。优选地,上述基于区块链的分布式机器学习系统,联合模型训练基于区块链共识和多个联合学习区块链智能合约来实现合作,包括激励合约、联合训练组建立合约、协作本文档来自技高网
...

【技术保护点】
1.一种基于区块链的分布式机器学习系统,其特征在于,包括数据处理方注册模块、联合训练准备模块、联合训练组建立模块、协同训练模块、联合学习模型购买模块、错误行为检测模块以及联合学习区块链;/n所述数据处理方注册模块用于根据数据处理方输入的资质描述文件和数据资源获得在所述联合学习区块链中的密钥;所述联合学习区块链将数据处理方的资质信息、数据资源、历史协作训练活动记录和可靠性存储到联合学习区块链块;数据处理方通过联合学习区块链来更新联合学习区块链记录的注册信息;/n所述联合训练准备模块用于发布联合学习模型、以及联合训练合作意向信息;数据处理方通过联合训练准备模块发布拟在联合学习区块链中进行协作训练的联合学习模型的信息;注册的数据处理方可接收所有的联合学习模型信息,选择感兴趣的联合学习模型,并发布相应的联合学习模型的协作意向信息;联合学习区块链将根据联合学习模型意图为模型训练任务分配数据处理方;/n所述联合训练组建立模块用于建立联合训练组;联合训练组建立后,进入协同训练阶段;/n所述协同训练模块用于进行联合数据处理方密码设置和秘密共享的协同训练准备;在协作训练准备完成后,每个联合体中的数据处理方将逐步进入协作训练的迭代;数据处理放在本地训练它们的模型,并生成梯度;然后由数据处理方通过模糊化其局部梯度,并将带有证明的模糊化梯度上载到联合学习区块链;联合学习区块链记录所有验证的模糊化梯度,联合学习区块链节点下载所有模糊化梯度来计算聚合结果并发布聚合结果;联合学习区块链选择可靠性最高的节点作为联合学习区块链的临时记录者,将训练整合结果记录到新生成的区块中;数据处理方下载结果并协作解密聚合结果;/n所述联合学习模型购买模块用于根据数据处理方的联合意向信息以及数据资源的可靠性和训练贡献量来设定模型价格;联合学习模型的模型描述和商品信息记录被存储到联合学习区块链中;/n所述错误行为检测模块用于检测错误行为并报告到联合学习区块链;联合学习区块链对检测到的错误行为进行透明处理,并强制停止检测到错误行为的数据处理方的协作训练,禁止出售由检测到错误行为的数据处理方训练的联合学习模型。/n...

【技术特征摘要】
1.一种基于区块链的分布式机器学习系统,其特征在于,包括数据处理方注册模块、联合训练准备模块、联合训练组建立模块、协同训练模块、联合学习模型购买模块、错误行为检测模块以及联合学习区块链;
所述数据处理方注册模块用于根据数据处理方输入的资质描述文件和数据资源获得在所述联合学习区块链中的密钥;所述联合学习区块链将数据处理方的资质信息、数据资源、历史协作训练活动记录和可靠性存储到联合学习区块链块;数据处理方通过联合学习区块链来更新联合学习区块链记录的注册信息;
所述联合训练准备模块用于发布联合学习模型、以及联合训练合作意向信息;数据处理方通过联合训练准备模块发布拟在联合学习区块链中进行协作训练的联合学习模型的信息;注册的数据处理方可接收所有的联合学习模型信息,选择感兴趣的联合学习模型,并发布相应的联合学习模型的协作意向信息;联合学习区块链将根据联合学习模型意图为模型训练任务分配数据处理方;
所述联合训练组建立模块用于建立联合训练组;联合训练组建立后,进入协同训练阶段;
所述协同训练模块用于进行联合数据处理方密码设置和秘密共享的协同训练准备;在协作训练准备完成后,每个联合体中的数据处理方将逐步进入协作训练的迭代;数据处理放在本地训练它们的模型,并生成梯度;然后由数据处理方通过模糊化其局部梯度,并将带有证明的模糊化梯度上载到联合学习区块链;联合学习区块链记录所有验证的模糊化梯度,联合学习区块链节点下载所有模糊化梯度来计算聚合结果并发布聚合结果;联合学习区块链选择可靠性最高的节点作为联合学习区块链的临时记录者,将训练整合结果记录到新生成的区块中;数据处理方下载结果并协作解密聚合结果;
所述联合学习模型购买模块用于根据数据处理方的联合意向信息以及数据资源的可靠性和训练贡献量来设定模型价格;联合学习模型的模型描述和商品信息记录被存储到联合学习区块链中;
所述错误行为检测模块用于检测错误行为并报告到联合学习区块链;联合学习区块链对检测到的错误行为进行透明处理,并强制停止检测到错误行为的数据处理方的协作训练,禁止出售由检测到错误行为的数据处理方训练的联合学习模型。


2.如权利要求1所述的基于区块链的分布式机器学习系统,其特征在于,所述联合意向信息包括数据处理方公钥、联合学习模型、期望价格、期望收入和/或估算成本。


3.如权利要求1或2所述的基于区块链的分...

【专利技术属性】
技术研发人员:包象琳
申请(专利权)人:安徽航天信息有限公司
类型:发明
国别省市:安徽;34

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

1