System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及群学习领域,尤其涉及基于零知识证明的防投毒攻击群学习方法及系统。
技术介绍
1、群学习(swarm learning)是一种基于区块链和分布式学习的隐私保护框架,由多个学习节点在没有中央控制器的情况下相互合作与协调,共同完成机器学习训练。与联邦学习类似,群学习也是旨在让分散的各个参与方在不暴露各自敏感数据的前提下,共同协作进行模型的构建和训练,但其结合了分布式机器学习和区块链的技术优势,不需要中心服务器或协调方,各训练节点间直接沟通,权力对等,训练节点可以根据需要加入或离开,有较高的安全性和容错性。
2、与集中式学习相比,群学习和联邦学习都具有分布式存储,计算和私有数据保留的优势。参与者(训练节点)交换或上传的是本地训练的模型参数(密文),这保护了参与者的隐私,但由于不会将训练样本发送给可信机构并进行检查,使得汇总和更新全局模型的过程更容易受到投毒攻击。
3、基于区块链的群学习框架,可以通过使用私有链的方式增加信任基础,并采用智能合约限制模型聚合阈值,但这种方式高度特定于模型,必须为每个模型创建不同的私有链,并且需要本地模型权重矩阵明文上链,并指定矿工进行验证,存在隐私泄露风险,同时将所有的权重矩阵储存在区块链上会导致超高的空间复杂度。
技术实现思路
1、本专利技术主要目的在于提供一种可以在全局模型训练中提高安全性的基于零知识证明的防投毒攻击群学习方法及系统。
2、本专利技术所采用的技术方案是:
3、提供一种基于零知识证
4、被任务发起方写入全局模型训练任务的数据提供方获取训练任务信息,根据训练任务信息调取任务中数据标识对应的数据集,并使用初始化全局参数进行本地训练,生成当前节点本轮的本地局部模型;其中任务发起方和数据提供方共同参与组建一个联盟链;
5、数据提供方基于密钥交换协议,对本地局部模型参数添加盲化值进行加密,生成局部模型参数密文;
6、数据提供方利用验证集对本地局部模型进行精度验证,并根据零知识证明协议生成验证结果精度大于预设阈值的证据;
7、根据预设的聚合调度合约确定数据提供方作为模型聚合方;
8、模型聚合方调用预设的模型验证合约、公开数据及数据提供方当轮局部模型的证据,验证各数据提供方局部模型参数密文;
9、若证据验证通过,则将其局部模型参数加入全局模型;
10、若证据验证不通过,模型聚合方调用预设的模型恢复合约,计算不通过的数据提供方的盲化值,并在所有模型参数聚合完成后减去该盲化值,获取当轮全局模型;
11、模型聚合方将当轮全局模型通过隐私计算网络共享至所有证据验证通过的数据提供方,并在模型共享合约中同步当前模型状态和当轮合规参与方。
12、接上述技术方案,该方法还包括步骤:重复进行多轮模型全局模型训练指导模型状态达到收敛,得到目标模型。
13、接上述技术方案,数据提供方具体基于dh密钥交换协议,采用单编码加法聚合算法对本地局部模型参数添加盲化值进行加密。
14、接上述技术方案,全局模型训练任务具体由任务发起方通过预设的任务共享合约进行任务注册,写入全局模型训练任务的基本信息。
15、接上述技术方案,在任务发起之前,所有参与方均已在数据标识合约中上传己方数据元信息及其对应的数据标识。
16、接上述技术方案,任务发起方根据数据标识搜索、查询相关数据,确定训练任务的数据提供方及任务数据。
17、接上述技术方案,被写入全局模型训练任务的数据提供方通过合约查阅训练任务并获取任务信息,并通过隐私计算节点调取任务中数据标识对应的数据集,使用初始化全局参数进行本地训练,生成当前节点本轮局部模型。
18、接上述技术方案,通过随机抽取数据提供方的方式确定每一轮全局模型训练的模型聚合方。
19、接上述技术方案,确定模型聚合方后,将其聚合身份共享至所有任务参与节点;且模型聚合方启动聚合服务并与所有参与方进行通信和调度,参与方向模型聚合方共享局部模型参数密文。
20、本专利技术还提供一种基于零知识证明的防投毒攻击群学习系统,包括:
21、任务发起方,用于发起全局模型训练任务;
22、数据提供方,为被写入全局模型训练任务的数据提供方,用于获取训练任务信息,根据训练任务信息调取任务中数据标识对应的数据集,并使用初始化全局参数进行本地训练,生成当前节点本轮的本地局部模型;基于密钥交换协议,对本地局部模型参数添加盲化值进行加密,生成局部模型参数密文;利用验证集对本地局部模型进行精度验证,并根据零知识证明协议生成验证结果精度大于预设阈值的证据;其中任务发起方和数据提供方共同参与组建一个联盟链;
23、模型聚合方,为根据预设的聚合调度合约所确定的数据提供方;用于调用预设的模型验证合约、公开数据及数据提供方此轮模型的证据,验证各数据提供方局部模型参数密文;若证据验证通过,则将其局部模型参数加入全局模型;若证据验证不通过,模型聚合方调用预设的模型恢复合约,计算不通过的数据提供方的盲化值,并在所有模型参数聚合完成后减去该盲化值,获取当轮全局模型。
24、本专利技术产生的有益效果是:本专利技术基于零知识证明和区块链技术的防投毒攻击的群学习训练方法,可在群学习训练过程对各方的局部模型参数进行零知识验证,当且仅当局部模型满足预设阈值时将局部模型聚合入全局模型并更新;该方法能在保护各方隐私数据的前提下有效检查数据的可用性,防止数据投毒攻击,同时提高模型训练效率。
25、当然,实施本专利技术的任一产品并不一定需要同时达到以上所述的所有优点。
本文档来自技高网...【技术保护点】
1.一种基于零知识证明的防投毒攻击群学习方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,该方法还包括步骤:重复进行多轮模型全局模型训练指导模型状态达到收敛,得到目标模型。
3.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,数据提供方具体基于DH密钥交换协议,采用单编码加法聚合算法对本地局部模型参数添加盲化值进行加密。
4.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,全局模型训练任务具体由任务发起方通过预设的任务共享合约进行任务注册,写入全局模型训练任务的基本信息。
5.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,在任务发起之前,所有参与方均已在数据标识合约中上传己方数据元信息及其对应的数据标识。
6.根据权利要求5所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,任务发起方根据数据标识搜索、查询相关数据,确定训练任务的数据提供方及任务数据。
7.根据权利要求1所述的基于
8.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,通过随机抽取数据提供方的方式确定每一轮全局模型训练的模型聚合方。
9.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,确定模型聚合方后,将其聚合身份共享至所有任务参与节点;且模型聚合方启动聚合服务并与所有参与方进行通信和调度,参与方向模型聚合方共享局部模型参数密文。
10.一种基于零知识证明的防投毒攻击群学习系统,其特征在于,包括:
...【技术特征摘要】
1.一种基于零知识证明的防投毒攻击群学习方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,该方法还包括步骤:重复进行多轮模型全局模型训练指导模型状态达到收敛,得到目标模型。
3.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,数据提供方具体基于dh密钥交换协议,采用单编码加法聚合算法对本地局部模型参数添加盲化值进行加密。
4.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,全局模型训练任务具体由任务发起方通过预设的任务共享合约进行任务注册,写入全局模型训练任务的基本信息。
5.根据权利要求1所述的基于零知识证明的防投毒攻击群学习方法,其特征在于,在任务发起之前,所有参与方均已在数据标识合约中上传己方数据元信息及其对应的数据标识。
6.根据权利要求5所述的基于零知识证明的防投...
【专利技术属性】
技术研发人员:王丽,崔昌,孟庆树,董逢华,
申请(专利权)人:武汉天喻信息产业股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。