本发明涉及联邦学习领域,具体涉及一种联邦学习激励方法及系统。
背景技术:
1、联邦学习是一种能让数据持有者在不公开其数据的情况下,共享数据用于分布式机器学习的新范式。该技术能消除了数据持有者对数据共享导致信息泄露的忧虑,使数据持有者能更放心地分享数据价值,成为了解决数据孤岛问题的重要工具。然而,在涉及更多经济利益问题的跨孤岛联邦学习领域,来自同一行业的参与者在互相合作的同时也可能是商业竞争对手。参与者可能会担心将自己的数据贡献到联邦学习模型训练中会使竞争对手受益,尽管对手的贡献并不显著,但仍会获得相同的最终模型,这种情况会导致一些数据持有者缺乏足够的动力去分享数据。
技术实现思路
1、本发明提供一种联邦学习激励方法及系统,为联邦学习参与方提供准确有效的激励机制,提升数据持有者参与联邦学习的动力,进而提升联邦学习模型的准确性。
2、为此,本发明提供如下技术方案:
3、一种联邦学习激励方法,所述方法包括:
4、联邦学习平台发布任务发起方发起的联邦学习任务;
5、接收用户提交的参与任务申请;
6、对所述用户进行身份认证;
7、对通过身份认证的用户,通过区块链上存储的数字身份信息以及信誉评分确定是否允许所述用户参与所述联邦学习任务;
8、如果允许,则将所述用户作为任务参与方添加至私有通道,以使任务参与方进行联邦学习建模训练;
9、在联邦学习结束后,根据区块链上的智能合约向所述任务参与方发放任务奖励。
10、可选地,所述方法还包括:
11、用户从所述联邦学习平台上选择需要参与的联邦学习任务;
12、向所述联邦学习平台提交参与任务申请。
13、可选地,所述对所述用户进行身份认证包括:
14、如果所述用户为已注册用户,则向所述用户发送身份认证请求;
15、接收所述用户发送的利用私钥签署的数字签名信息;
16、对所述签名信息进行验证,如果所述签名信息有效,则所述用户通过身份认证;否则,所述用户未通过身份认证;
17、如果所述用户为未注册用户,则向所述用户发送注册请求,与所述用户交互完成注册及身份认证过程。
18、可选地,所述与所述用户交互完成注册及身份认证过程包括:
19、与所述用户进行密钥协商,生成对称密钥;
20、接收所述用户发送的注册请求,所述注册请求中包括用户身份信息;
21、根据用户身份信息生成用户密钥,所述密钥包括用户的私钥和公钥,利用所述对称密钥对所述密钥进行加密,得到密文;
22、将所述密文发送给所述用户,以使所述用户利用所述对称密钥解密所述密文,得到私钥和公钥。
23、可选地,所述方法还包括:所述联邦学习平台接收所述任务发起方提交的用于所述联邦学习任务的元数据和用于检测参与方数据质量的零知识证明模型。
24、可选地,所述参与任务申请包括所述用户对应所述联邦学习任务的零知识证明;
25、所述对通过身份认证的用户通过区块链确定是否允许所述用户参与所述联邦学习任务包括:
26、通过区块链查询所述用户的历史评分;
27、如果所述历史评分小于评分阈值,则拒绝所述用户参与所述联邦学习任务;
28、否则,通过所述任务发起方与所述用户交互,获取所述用户基于所述零知识证明模型得到的数据质量证明,对所述数据质量证明进行合法性验证;
29、如果合法性验证未通过,则拒绝所述用户参与所述联邦学习任务;
30、否则,允许所述用户参与所述联邦学习任务。
31、可选地,所述通过任务发起方与所述用户交互获取所述用户基于所述零知识证明模型得到的数据质量证明包括:
32、所述任务发起方在自身数据集上进行模型训练,得到第一模型;
33、所述任务发起方输入安全参数λ和第一模型m,生成所述零知识证明模型以及公共参数;
34、将所述公共参数和所述第一模型发送给联邦学习平台,平台通过转发的方式将公共参数和零知识证明模型发送给满足评分的用户;
35、接收所述用户提交的数据质量证明。
36、可选地,所述方法还包括:
37、所述用户利用所述零知识证明模型生成自己所持有数据集能满足所述第一模型对应的数据质量证明;
38、将所述数据质量证明发送给所述任务发起方。
39、可选地,所述方法还包括:
40、所述联邦学习平台接收任务发起方预先提交的激励合约及激励,将所述激励合约及所述激励提交至区块链;
41、所述在联邦学习结束后,根据区块链上的智能合约向所述任务参与方发放任务奖励包括:
42、在联邦学习结束后,按照所述激励合约将所述激励分配给各任务参与方。
43、一种联邦学习激励系统,所述系统包括:任务发起方、联邦学习平台、用户、区块链;
44、所述任务发起方,用于通过所述联邦学习平台发起联邦学习任务;
45、所述用户,用于从所述联邦学习平台上选择需要参与的联邦学习任务,向所述联邦学习平台提交参与任务申请;
46、所述联邦学习平台,用于接收用户提交的参与任务申请,对所述用户进行身份认证;对通过身份认证的用户通过所述区块链上存储的数字身份信息以及信誉评分确定是否允许所述用户参与所述联邦学习任务;如果允许,则将所述用户作为任务参与方添加至私有通道,以使任务参与方进行联邦学习建模训练;在联邦学习结束后,根据区块链上的智能合约向所述任务参与方发放任务奖励。
47、可选地,所述任务发起方,还用于在发起联邦学习任务前,将联邦学习任务的元数据和用于检测参与者数据质量的零知识证明模型上传至所述联邦学习平台上。
48、可选地,所述任务发起方,还用于向所述联邦学习平台提交激励合约及激励;
49、所述联邦学习平台在联邦学习结束后,按照所述激励合约将所述激励分配给各任务参与方。
50、一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行所述联邦学习激励方法的步骤。
51、本发明提供的联邦学习激励方法及系统,综合考虑了任务参与方的身份及能力,参与方之间的信任度,合作的公开性等,设计安全的联邦学习激励机制。该方案可在不泄露明文数据的前提下,评估用户作为任务参与方是否合格,从而保证了任务参与方的质量。在联邦学习结束后,通过区块链向任务参与方发放任务奖励,从而保证了任务奖励的安全性,为联邦学习参与方提供准确有效的激励机制,提升数据持有者参与联邦学习的动力,进而提升联邦学习模型的准确性。
52、进一步地,任务发起方向联邦学习平台提交用于所述联邦学习任务的元数据和用于检测参与方数据质量的零知识证明模型,相应地,根据用户的历史评分及基于零知识证明模型的数据质量证明来筛选合格的任务参与方,阻拦不合格的用户参与建模,有效避免这类用户通过搭便车获得最终模型,从而保证了联邦学习的公开性。
53、进一步地,由任务发起方预先提交相应的激励合约及激励,联邦学习平台将该激励合约及激励提交至区块链,保证了激励发放的可靠性。