一种联邦学习投毒模型检测方法、系统、设备及存储介质

文档序号:37597871发布日期:2024-04-18 12:37阅读:9来源:国知局
一种联邦学习投毒模型检测方法、系统、设备及存储介质

本技术涉及区块链,尤其涉及一种。


背景技术:

1、大数据的发展促进了机器学习技术的应用,给人们的生活带来了极大的便利。然而,数据采集、存储、传输、计算等过程的安全关系到数据能否有效合法使用,且由于数据类别混杂和数据孤岛问题,导致大量数据分散且不稳定,无法访问。google提出联邦学习(fl)的概念来解决上述问题。fl是一个分布式机器学习框架,参与者联盟合作开发了一个全局模型来保护敏感的用户信息。服务器随后将模型更新传播给每个参与者,为下一轮迭代改进做好准备。在fl的背景下,模型会进行迭代本地更新,这与依赖共享本地数据的传统机器学习模型不同。这种转变保证了数据的合法利用,从而减轻了隐私信息泄露造成的数据孤岛的影响。

2、fl的集中式架构很容易受到单点故障的影响,因此很容易受到直接攻击,从而导致整个fl系统瘫痪。区块链联邦学习(bfl)的出现有效缓解了上述问题。然而,bfl的一个巨大威胁是在模型更新期间容易受到拜占庭攻击。恶意用户可以将中毒数据注入到局部迭代过程中,以降低模型的预测精度,或者在模型传输过程中裁剪模型并添加中毒模型参数,甚至向模型植入后门以协助后续攻击。仅仅依靠安全聚合算法来确保fl的性能已不再现实。恶意用户攻击仍然是提高安全聚合性能的一个难题,因为很难通过聚合特定规模的模型来准确消除扭曲模型的影响。因此,提高bfl中恶意用户和恶意行为的检测能力对于确保安全聚合和高性能模型更新的输入安全至关重要。

3、为了保证用户数据的合法利用,越来越多的机器学习技术被用来开发数据资源。然而,鉴于攻击方法的多样化演变,单一的联邦学习(fl)框架已不再足以适应当前环境。在学术界,众多研究引起了广泛关注。这些解决方案主要围绕以下方法论:区块链技术、模型安全保护方法。

4、为了消除初始fl中的单点故障问题,ramanan等人提出了一种无聚合器、区块链驱动的fl框架baffle,它利用智能合约(sc)来协调fl中的回合划分、模型聚合和更新任务。ma等人设计了一个区块链辅助的去中心化fl框架,可以防止恶意用户试图通过投毒来干扰fl进程。此外,he等人提出了一个结合区块链的完全去中心化的机器学习系统,该系统构建了分布式文件存储和访问模块,通过集成星际文件系统(ipfs)和区块链。

5、为了解决拜占庭用户中毒攻击导致的模型失真和无效的挑战,一些研究提出了可行的解决方案。mcmahan等人提供了一种基于迭代模型平均的深度网络fl方法,该方法展示了对不平衡和非iid数据分布的鲁棒性。yin等人提出了一种分布式优化算法,该算法对基于截尾均值运算的鲁棒分布式梯度下降算法进行了敏锐的分析,该算法被证明对分布式计算系统中的拜占庭故障具有弹性。blanchard等人开发了krum和multi-krum算法,以增强分布式随机梯度下降(sgd)针对拜占庭工人发送有毒梯度的鲁棒性。krum和multi-krum分别选择用户上传的一个或多个梯度作为全局模型的计算基础。lu等人提出了一种用于学习联邦cnn的高效且鲁棒的聚合算法,该算法根据距中心的l2距离计算权重,并上传梯度的加权平均值作为聚合结果。fung等人提出了保护算法foolsgold,通过计算历史聚合更新与其他参与者之间的最大余弦相似度来调整参与者的权重。最终以加权平均作为聚合结果,从而防御跨女巫进行的智能投毒攻击。zhao等人提出了一种新颖的防御方案,可以检测iid和非iid设置中的异常更新,同时保护用户隐私。

6、综合来说,现有技术存在着:传统联邦学习通过中央服务器聚合模型,存在单点故障,对针对服务器的攻击不具备弹性;现有的安全聚合算法对恶意模型的筛选力度不足,随着恶意用户的增加,模型的质量急剧下降的技术问题。


技术实现思路

1、本技术提供了一种联邦学习投毒模型检测方法、系统、设备及存储介质,解决了传统联邦学习通过中央服务器聚合模型,存在单点故障,对针对服务器的攻击不具备弹性;现有的安全聚合算法对恶意模型的筛选力度不足,随着恶意用户的增加,模型的质量急剧下降的技术问题。

2、有鉴于此,本技术第一方面提供了一种联邦学习投毒模型检测方法,所述方法包括:

3、s1、用户wij和验证者vx分别获取公私钥对{pkij,skij}和{pkx,skx},并将公私钥对中的公钥发布至区块链存储单元ipfschain;

4、s2、聚合服务器将最后一轮的全局模型gk-1发布至区块链存储单元ipfschain;

5、s3、用户wij在本地训练,并加密上传用户模型

6、s4、验证者vx获得密文并解密签密,通过用户模型和用户贡献构建信任权重weight,并生成最小代价树txi;

7、s5、聚合服务器ask获取到各个验证者vx生成的最小代价树txi后,聚合得到最优最小成本树ti,并将最优最小成本树ti发布至区块链存储单元ipfschain;

8、s6、用户wij下载最优最小成本树ti,并根据最优最小成本树ti作为验证路径进行评估和投票;

9、s7、用户通过第一mpcv算法计算相邻用户wij的用户贡献度和并决定是否投票,同时将本地模型更新发送给相邻用户wij进行评估和投票;

10、s8、验证者vx通过第二mpcv算法对用户wij进行评估和投票;

11、s9、聚合服务器ask聚合投票结果并基于第三mpcv算法检测恶意用户,聚合非恶意用户的本地模型更新得到k轮的全局模型参数gk。

12、可选地,所述步骤s4中通过用户模型和用户贡献构建信任权重weight具体为:

13、验证者vx下载组内l个用户的所有本地模型更新并计算组内所有用户的总贡献

14、验证者vx根据用户贡献以及用户模型之间的相似度构造用户与用户之间的信任权重

15、若信任权重小于预设信任阈值,则参与构造最小代价树,否则不作为最小代价树节点参与聚合。

16、可选地,所述步骤s4中生成最小代价树txi具体为:

17、tree[x][1]={(n1a,n1b,weight1ab),…,(n1d,n1e,weight1de),vx}

18、……

19、

20、其中,txi=tree[x][i],i=1,2,…,g,

21、

22、……

23、。

24、可选地,所述步骤s5中聚合得到最优最小成本树ti具体为:

25、tree[1]←tree[1][1]∩…∩tree[j][1]∩…∩tree[m][1]

26、……

27、tree[g]←tree[1][g]∩…∩tree[j][g]∩…∩tree[m][g]

28、其中,ti=tree[i],i=1,2,…,g。

29、可选地,所述步骤s7具体包括:

30、用户提取最小代价树的结点和边,其中结点是交叉验证的对象,边是用户交叉验证的可信验证路径;

31、用户基于最小代价树的节点和边,将本地模型更新加密发送到邻接结点用户wij;

32、用户接收邻接结点用户wij的用户模型并计算的模型精度并联合其他用户计算该组内所有用户的平均精度

33、若用户wij的用户模型的大于则用户计算用户wij的贡献并上传至区块链存储单元ipfschain,否则用户给用户wij投反对票,其中,为第k轮本地迭代的数据集大小,为第k轮本地迭代的时间开销。

34、可选地,所述步骤s8具体包括:

35、验证者vx获取用户本地模型更新以及用户组的最优最小代价树ti;

36、若用户wij属于ti的结点,则验证者vx计算用户wij的贡献值否则,验证者vx给用户wij投反对票,其中,为用户wij的模型精度。

37、可选地,所述步骤s9中聚合服务器ask聚合投票结果并基于第三mpcv算法检测恶意用户具体为:

38、聚合服务器ask聚合用户贡献值,并计算用户在本次迭代内的贡献斜率其中,表示用户在第k轮的总贡献值,表示用户的初始贡献值,表示用户在第k轮的贡献斜率;

39、计算第i组内用户的平均贡献斜率

40、计算第i组内对用户wij的投票结果

41、聚合服务器ask根据用户wij的贡献斜率以及投票结果筛选恶意用户,如果用户贡献斜率小于平均斜率并且用户被投反对票高于本组内用户数量的一半,即则认为该用户恶意,并添加至恶意用户列表。

42、本技术第二方面提供一种联邦学习投毒模型检测系统,所述系统包括:若干个用户端以及聚合服务器ask,其中,用户端对应用户wij和验证者vx,所述系统应用如上述第一方面所述的联邦学习投毒模型检测方法。

43、本技术第三方面提供一种联邦学习投毒模型检测设备,所述设备包括处理器以及存储器:

44、所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;

45、所述处理器用于根据所述程序代码中的指令,执行如上述第一方面所述的联邦学习投毒模型检测的方法的步骤。

46、本技术第四方面提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行上述第一方面所述的方法。

47、从以上技术方案可以看出,本技术实施例具有以下优点:

48、本技术中,提供了一种联邦学习投毒模型检测方法、系统、设备及存储介质,针对用户间互不可信的问题,基于构造的信任权重生成最小代价树,以此为各个用户、验证者以及服务器交叉验证提供可信的传输通道,针对联邦学习中拜占庭用户实施投毒攻击以及搭便车攻击,降低全局模型性能的问题,提出多方交叉验证的联邦学习安全聚合算法,筛选恶意用户并剔除,提高联邦学习的性能,解决了传统联邦学习通过中央服务器聚合模型,存在单点故障,对针对服务器的攻击不具备弹性;现有的安全聚合算法对恶意模型的筛选力度不足,随着恶意用户的增加,模型的质量急剧下降的技术问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1