公开/公告号CN113836809A
专利类型发明专利
公开/公告日2021-12-24
原文格式PDF
申请/专利权人 上海万向区块链股份公司;
申请/专利号CN202111131454.9
发明设计人 赵笑尘;
申请日2021-09-26
分类号G06F30/27(20200101);G06F21/62(20130101);G06K9/62(20060101);G06N20/00(20190101);
代理机构31334 上海段和段律师事务所;
代理人李佳俊;郭国中
地址 200086 上海市虹口区塘沽路463号1201室
入库时间 2023-06-19 13:49:36
技术领域
本发明涉及数据安全技术领域,具体地,涉及一种基于区块链和联邦学习的跨行业数据联合建模方法及系统。
背景技术
区块链为互联网构建了信任机制,美国斯坦福大学的数学博士莫晓康认为,在21世纪科技创中,区块链与隐私计算技术具有最大的革命性与颠覆性,它正在引发第二次互联网革命,其冲击力可能超过1994年开始的第一次互联网革命。
一种将中心化的机器学习拆解为分布式的机器学习机器学习架构称为联邦学习,其通过将机器学习任务分发到终端设备节点进行学习,再将所有终端设备节点学习产生的梯度结果聚合得到最终训练结果的方法,有效帮助各用户打破数据孤岛,在满足用户隐私保护、数据安全和政府法规的要求下,进行广泛而深入的机器学习研究。
专利文献CN113204787A(申请号:202110493191.X)公开了一种基于区块链的联邦学习隐私保护方法、系统、设备和介质,通过根据各节点权重向量,由可信第三方生成主公/私钥、解密密钥和各节点加密密钥,并将主公钥、解密密钥和加密密钥发送至各节点,由主节点创建初始区块写入初始模型发布后,各节点下载初始模型进行训练,并采用加密密钥加密得到加密模型后上传至区块链,当各节点的加密模型全部上传至区块链后,各节点竞争生成模型聚合区块的权力,并由获得该权力的节点根据主公钥和解密密钥,将各节点的加密模型聚合生成全局模型后上传至区块链,再由主节点下载全局模型并进行理想模型判断的方法,增加了对节点来源和模型内容隐私的保护,降低了服务计算成本,提高了学习效率和服务质量。该专利各方持有的初始模型相同,并且持有的权重向量具有相同的形状。经过训练之后,全局模型会再次同步到各个参与方,保证上述一致性。因此各方的数据格式、规约存在统一的限制。同时,训练过程中各个节点之间不会存在交互,只有节点和区块链的交互。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于区块链和联邦学习的跨行业数据联合建模方法及系统。
根据本发明提供的一种基于区块链和联邦学习的跨行业数据联合建模方法,包括:
步骤S1:在联邦中心披露各企业的数据集情况;
步骤S2:通过联邦中心浏览各企业已披露的数据集,并进行数据列筛选;
步骤S3:根据实际需求确定联邦学习的预设算法,并联合多方企业发起联合训练请求;
步骤S4:根据联邦中心的调度,基于筛选的数据列,参与训练的各企业在本地启动联邦学习,直至训练完成,参与训练的各企业持有当前训练任务的半模型。
优选地,所述各企业的数据集情况包括:可用的数据列、各列的含义以及数据条目。
优选地,所述步骤S4采用:根据联邦中心的调度,参与训练的各企业在本地启动预处理和联邦学习,其中,各个中间变量通过加密方式进行多方交互;
在各企业在本地运算过程中,将发送出企业私域的数据进行加密后,和原文一同进行哈希运算,本地存储原文和密文后,将两者的哈希进行上链存证;
联邦中心对任务本身的元数据,进行哈希存证。
训练完成后,相关的参数或模型,由参与各企业分别持有。
优选地,利用训练得到的模型进行联邦推导;
所述利用训练得到的模型进行联邦推导采用:由联邦中心发起,并下发运算任务,发至分布式持有半模型的各企业。
优选地,在联邦训练和推导过程中,基于各参与企业提供的数据量和运算资源,对参与各企业进行基于区块链的激励。
根据本发明提供的一种基于区块链和联邦学习的跨行业数据联合建模系统,包括:
模块M1:在联邦中心披露各企业的数据集情况;
模块M2:通过联邦中心浏览各企业已披露的数据集,并进行数据列筛选;
模块M3:根据实际需求确定联邦学习的预设算法,并联合多方企业发起联合训练请求;
模块M4:根据联邦中心的调度,基于筛选的数据列,参与训练的各企业在本地启动联邦学习,直至训练完成,参与训练的各企业持有当前训练任务的半模型。
优选地,所述各企业的数据集情况包括:可用的数据列、各列的含义以及数据条目。
优选地,所述模块M4采用:根据联邦中心的调度,参与训练的各企业在本地启动预处理和联邦学习,其中,各个中间变量通过加密方式进行多方交互;
在各企业在本地运算过程中,将发送出企业私域的数据进行加密后,和原文一同进行哈希运算,本地存储原文和密文后,将两者的哈希进行上链存证;
联邦中心对任务本身的元数据,进行哈希存证。
训练完成后,相关的参数或模型,由参与各企业分别持有。
优选地,利用训练得到的模型进行联邦推导;
所述利用训练得到的模型进行联邦推导采用:由联邦中心发起,并下发运算任务,发至分布式持有半模型的各企业。
优选地,在联邦训练和推导过程中,基于各参与企业提供的数据量和运算资源,对参与各企业进行基于区块链的激励。
与现有技术相比,本发明具有如下的有益效果:
1、本发明采用纵向联邦学习技术,解决了跨行业数据多方协同运算的问题;
2、本发明在实现企业数据资产降本增效的同时,保证了企业数据安全;
3、本发明通过纵向联邦学习计数,实现了即使数据格式不同,维度不匹配,也可以进行多方协同运算;
4、本发明联邦学习过程中,通过对隐私计算技术的应用,保证了企业数据安全;
5、本发明各方持有的初始模型不同,都是全局模型的不同部分,各方的权重向量(半模型)也都具有不同的形状。各方根据特有的本地数据,与本地的权重向量进行运算后,通过中间结果加密交互的方式与其他节点进行交互,最终完成一次训练迭代,重复上述过程直至收敛;
6、在实际生产中,本发明提出了一种跨行业联合训练的方案,即使参与各方行业不同,数据维度不同,也可以打破已有数据壁垒进行联合学习。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为多方协同运算架构图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
根据本发明提供的一种基于区块链和联邦学习的跨行业数据联合建模方法,包括:
步骤S1:在联邦中心披露各企业的数据集情况;
步骤S2:通过联邦中心浏览各企业已披露的数据集,并进行数据列筛选;
步骤S3:根据实际需求确定联邦学习的预设算法,并联合多方企业发起联合训练请求;
步骤S4:根据联邦中心的调度,基于筛选的数据列,参与训练的各企业在本地启动联邦学习,直至训练完成,参与训练的各企业持有当前训练任务的半模型。
具体地,所述各企业的数据集情况包括:可用的数据列、各列的含义以及数据条目。
具体地,所述步骤S4采用:根据联邦中心的调度,参与训练的各企业在本地启动预处理和联邦学习,其中,各个中间变量通过加密方式进行多方交互;
在各企业在本地运算过程中,将发送出企业私域的数据进行加密后,和原文一同进行哈希运算,本地存储原文和密文后,将两者的哈希进行上链存证;
联邦中心对任务本身的元数据,进行哈希存证。
训练完成后,相关的参数或模型,由参与各企业分别持有。
具体地,利用训练得到的模型进行联邦推导;
所述利用训练得到的模型进行联邦推导采用:由联邦中心发起,并下发运算任务,发至分布式持有半模型的各企业。
具体地,在联邦训练和推导过程中,基于各参与企业提供的数据量和运算资源,对参与各企业进行基于区块链的激励。
根据本发明提供的一种基于区块链和联邦学习的跨行业数据联合建模系统,如图1所示,包括:
模块M1:在联邦中心披露各企业的数据集情况;
模块M2:通过联邦中心浏览各企业已披露的数据集,并进行数据列筛选;
模块M3:根据实际需求确定联邦学习的预设算法,并联合多方企业发起联合训练请求;
模块M4:根据联邦中心的调度,基于筛选的数据列,参与训练的各企业在本地启动联邦学习,直至训练完成,参与训练的各企业持有当前训练任务的半模型。
具体地,所述各企业的数据集情况包括:可用的数据列、各列的含义以及数据条目。
具体地,所述模块M4采用:根据联邦中心的调度,参与训练的各企业在本地启动预处理和联邦学习,其中,各个中间变量通过加密方式进行多方交互;
在各企业在本地运算过程中,将发送出企业私域的数据进行加密后,和原文一同进行哈希运算,本地存储原文和密文后,将两者的哈希进行上链存证;
联邦中心对任务本身的元数据,进行哈希存证。
训练完成后,相关的参数或模型,由参与各企业分别持有。
具体地,利用训练得到的模型进行联邦推导;
所述利用训练得到的模型进行联邦推导采用:由联邦中心发起,并下发运算任务,发至分布式持有半模型的各企业。
具体地,在联邦训练和推导过程中,基于各参与企业提供的数据量和运算资源,对参与各企业进行基于区块链的激励。
实施例2是实施例1的优选例
本发明结合了联盟链的建设思路,以及纵向联邦学习的技术路线,鼓励参与各方联合进行数据分析与维度的遴选,本地运算和运算中间结果共享,使用多种加密手段保护共享过程的数据隐私,最终实现多方在数据体量、数据维度和数据质量上互相补充,联合建模。
该方法包括如下角色或功能模块:
行业联邦中心:
1、收集和整理各行业企业数据,供后续协同运算使用;
2、维护和披露数据集属性,包括统计信息、数据来源说明等;
3、根据联邦运算的需求,发起预处理、学习、推导的联邦任务。
4、监控和调度联邦任务运行情况。
5、将任务的元数据(包括协作方、数据集、参与协作的数据量)在区块链上进行存证。
企业联邦工作站:
1、管理和维护自身数据集,披露数据集相关属性和结构
2、作为联邦学习发起方,选择协作方和数据集,并进行数据集维度的遴选。
3、作为联邦学习发起方或参与方:根据行业联邦数据中心的任务调度,进行联邦统计、联邦预处理和联邦学习的本地运算。
4、按需进行加密数据的多方协作,并将加密的中间结果进行上链存证。
根据本发明提供的一种基于区块链和联邦学习的跨行业数据联合建模方法,包括:
步骤1:企业A或企业B在联邦中心披露数据集的情况,包括可用的数据列,各列的含义,数据条目等。
步骤2:企业在联邦中心浏览其他企业已披露的数据集,进行数据列的筛选,并确定联邦学习的算法后,联合多方发起联合训练请求。
步骤3:参与训练的各方,根据联邦中心的调度,在本地启动联邦预处理和联邦学习过程,其中各个中间变量通过加密方式进行多方交互,最终训练完成后,各方持有针对此训练任务的部分模型。
步骤4:在各方本地运算过程中,将发送出企业私域的数据进行加密后,和原文一同进行哈希运算,本地存储原文和密文后,将两者的哈希进行上链存证。
同时,联邦中心对任务本身的元数据,进行同样的哈希存证。
训练完成后,相关的参数或模型,由参与各方分别持有。
步骤5:各个参与方完成训练后,利用训练得到的模型进行联邦推导,同样由联邦中心发起,并下发运算任务,发至分布式持有模型的各方。
步骤6:针对联邦训练和推导过程中,各参与方提供的数据量和运算资源,对参与各方进行基于区块链的激励。
实施例3是实施例1和/或实施例2的优选例
某商超持有其会员的消费明细数据,包括历史购买商品,购买频率,消费金额等。
某银行持有其客户的储蓄、借贷、收支等信息。
银行可以通过利用其自身的数据,训练机器学习模型,来评估客户的消费能力,但是没有利用到来自商超的精细化消费统计信息。
商超的消费,只是用户多种消费的一种,并不能充分的体现客户的消费能力。
因此,采用本发明中提到的纵向联邦学习技术,对银行而言可以纳入更多描述客户消费行为的维度,使统计更加准确。对商超而言,也可以针对某客户和银行联合推断其消费能力,从而给出更精细化的营销。
在联合训练的过程中,商超销售数据和银行统计数据都在其本地进行运算,不会出现隐私数据泄露的问题。
利用本发明中提到的区块链技术,一家银行可以和多家商超、其他消费经营场所的数据联合对用户的消费习惯进行建模,实现多方在保证数据安全的情况下,充分利用各方的数据,挖掘数据的价值。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
机译: 基于区块链网络的联合学习方法及联合学习设备
机译: 基于区块链标签类型数据管理的人工智能学习数据生产力提高系统及其方法
机译: 基于区块链的机器学习和数据隐私保护的分布式模型构建系统和方法