1.一种基于区块链的联邦学习防御方法,其特征在于,包括以下步骤:
在区块链中为参与者建立对应的区块节点,同时建立一个权威机构节点,参与者与权威机构建立智能合约;
智能合约建立后,在册参与者从区块链中获得模型并本地训练,并将训练的本地模型和对应的训练时间上传至对应的区块节点,并广播到区块链中;
为每个在册参与者构建包含至少2个其他在册参与者作为噪声委员的噪声委员会,噪声委员会为对应的在册参与者的本地模型增加噪声,以更新本地模型,获得更新模型;
为所有在册参与者构建一个包含至少2个在册参与者作为验证委员的验证委员会,验证委员会依据数据集和训练时间验证每个更新模型的预测可靠性和真实性,并将验证通过的更新模型记录在新区块节点;
权威机构从区块节点获得所有验证通过的更新模型并聚合,得到聚合模型并广播到区块链中以供下轮在册参与者下载本地训练;
为每个在册参与者构建噪声委员会的过程为:每个在册参与者将自己的私钥和对应的区块节点的初始哈希值作为参数传递给一个可核查的随机函数,经随机函数计算得到新哈希值,该新哈希值与信用相乘后按照比例分配映射到哈希环上,采用一致性哈希算法为每个在册参与者选择多个其他在册参与者作为噪声委员,组成噪声委员会;
为所有在册参与者构建一个验证委员会的过程为:每个在册参与者将自己的私钥和对应的区块节点的初始哈希值作为参数传递给一个可核查的随机函数,经随机函数计算得到新哈希值,该新哈希值与信用相乘后按照比例分配映射到哈希环上,采用一致性哈希算法为选择多个其他在册参与者作为验证委员,组成验证委员会。
2.如权利要求1所述的基于区块链的联邦学习防御方法,其特征在于,噪声委员会为对应的在册参与者的本地模型增加噪声的过程为:在册参与者对应的噪声委员会包含的每个噪声委员会随机生成一个高斯噪声分布,通过去除较大噪声点和较小噪声点来优化每个高斯噪声分布,获得优化高斯噪声分布,将所有优化高斯噪声分布的平均数添加到本地模型的模型参数上,以更新本地模型获得更新模型,更新模型被记录入新区块节点,其中较大噪声点和较小噪声点通过设定阈值来筛选。
3.如权利要求1所述的基于区块链的联邦学习防御方法,其特征在于,验证委员会依据数据集和训练时间验证每个更新模型的预测可靠性和真实性包括:验证委员会中的每个验证委员从区块节点中下载更新模型,并利用本地样本集对更新模型进行测试,比较测试结果与本地标签以判断更新模型的预测可靠性,同时比较测试时间与上传的训练时间以判断更新模型的真实性,验证通过的更新模型被记录在新区块节点中。
4.如权利要求1所述的基于区块链的联邦学习防御方法,其特征在于,参与者能与权威机构建立智合约时,参与者注册申请时向权威机构缴纳保障费用,该保障费用额度与参与者的本地样本数据量相关,本地样本数据量越大,保障费用额度越小;权威机构为每个注册参与者分配初始信用分数。
5.如权利要求1所述的基于区块链的联邦学习防御方法,其特征在于,权威机构为噪声委员会和验证委员会分配奖励池,噪声委员和验证委员从奖励池中均分获得分配奖励值。
6.如权利要求4所述的基于区块链的联邦学习防御方法,其特征在于,权威机构为每个通过验证的更新模型对应的在册参与者分配奖励。
7.如权利要求5所述的基于区块链的联邦学习防御方法,其特征在于,权威机构为每个在册参与者调整信用分数,针对通过验证的更新模型对应的在册参与者增加信用分数,对未通过验证的更新模型对应的在册参与者减少信用分数。
8.如权利要求4所述的基于区块链的联邦学习防御方法,其特征在于,还包括:针对所有验证通过的更新模型,验证委员还采用Multi‑KRUM算法筛选一些验证通过的更新模型上传区块链被记录在新区块节点。