ABSTRACT:
联邦学习(FL)实现了机器学习模型的协作训练,而无需共享训练数据。传统的FL严重依赖于一个可信的中心化服务器。尽管去中心化的FL消除了对中心的依赖,但可能会加剧FL面临的其他问题,如中毒攻击和数据表示泄露,这是由于对参与者行为的不足限制以及沉重的通信成本,特别是在完全去中心化的情况下,即点对点(P2P)设置中。在本文中,我们提出了一种基于区块链的完全去中心化P2P框架,用于FL,称为BlockDFL。它以区块链作为基础,利用了提出的基于PBFT的投票机制和双层评分机制来在对等参与者之间协调FL,而无需相互信任,同时有效地防御中毒攻击。引入了梯度压缩以降低通信成本,并防止数据被重构出来自传输的模型更新。对两个真实数据集进行的大量实验表明,BlockDFL在准确性上与集中式FL相比具有竞争力,并且可以在实现效率和可扩展性的同时防御中毒攻击。特别是当恶意参与者的比例高达40%时,BlockDFL仍然可以保持FL的准确性,胜过基于区块链的现有完全去中心化P2P FL框架。
KEYWORDS:分散式联邦学习、点对点、区块链、可信联邦学习。(Decentralized Federated Learning, Peer-to-Peer, Blockchain, Trustworthy Federated Learning.)
1 INTRODUCTION
联邦学习(FL)使多个移动设备和物联网设备能够在保留数据的同时联合训练机器学习模型。它可以为一系列基于FL的Web应用程序做出贡献。然而,传统的FL严重依赖于一个可信的集中式服务器,在这种情况下,由于远距离传输导致的带宽限制了FL在大规模和高度复杂问题中的应用。中心依赖性可以通过去中心化的FL来解决。然而,在企业组织之间的协作中,去中心化FL所面临的主要挑战是参与者之间的信任问题。在没有相互信任的情况下,全局模型可能不可信,不同参与者的贡献难以被权威地量化。
区块链是源于去中心化货币系统的分布式账本,它提供了分布式信任,通过强制参与者诚实行事,实现了缺乏相互信任的参与者之间的合作。它还可以记录股权以获得货币奖励来激励诚实行为,因为去中心化系统解除了运营商维护集中式服务器的负担。这些特点使得区块链成为设计去中心化可信FL框架的一个有前景的基础。
不幸的是,去中心化也加剧了FL的固有问题,例如:1)易受毒化攻击的脆弱性;2)相对不足的隐私保护,因为私有训练数据可以通过模型反演攻击从中间模型更新中重建;3)由于传输模型更新的沉重通信成本而导致的低效率。现有基于区块链的FL框架通常整合了额外的保护机制来部分解决隐私和安全问题。例如,通过差分隐私(DP)、同态加密和安全聚合等方式保护隐私,并通过Krum、基于阈值的测试和审计等方式确保安全。然而,现有框架在技术选择上仍然存在一些局限性。对于隐私,尽管差分隐私提供了可证明的保护,但会降低模型的准确性。同态加密和安全聚合带来了巨大的计算和通信成本,降低了效率。对于安全性,现有方法主要将Krum应用于本地更新,忽略了全局更新可能受到污染的情况。此外,当面临非独立同分布(non-IID)数据时,Krum的表现并不理想。基于阈值的测试依赖于手动设置的阈值,不容易确定。审计只提供了可追溯性,但没有提供防御措施。此外,现有解决方案经常忽视了效率优化。其中一些依赖于挖矿来达成共识,这进一步降低了效率,因为需要进行大量的哈希计算。此外,一些现有框架并非完全去中心化,即依赖全球信任机构或受信任的服务器。因此,需要一个完全去中心化的点对点(P2P)解决方案,具有高效性,可以保护FL系统免受污染,并防止训练数据被重建。
为了解决这些问题,我们提出了基于区块链的全面去中心化P2P FL框架BlockDFL,该框架在数据表示方面保护隐私,在防止毒化攻击方面确保安全性,同时实现了高效率。为了在非独立同分布设置中有效地过滤掉毒化更新,我们提出了一个两层评分机制,其中本地更新根据权重进行过滤,并通过中值检测进行评分,全局更新则通过Krum进行评分。为了在每一轮中唯一选择一个全局更新而不产生分叉,我们设计了一个基于Practical Byzantine Fault Tolerance(PBFT)算法的高效投票机制。这两种机制共同作用来防御毒化攻击。我们引入了梯度压缩来保护训练数据不被重建,并进一步降低通信成本。本文的主要贡献有三个方面:
• 我们提出了BlockDFL,一种高效的基于区块链的分散式P2P联邦学习框架,为联邦学习提供安全和隐私保护,并实现高效性。
• 为了在每一轮联邦学习中达成对一个合适的全局更新的共识,我们提出了一种基于PBFT的投票机制,该机制不会发生分叉。它与我们提出的两层评分机制一起工作,以实现抵御毒化攻击。
• 我们实现了BlockDFL的原型,并在两个真实数据集上进行了广泛的实验,结果显示BlockDFL实现了良好的效率和可扩展性,并且在IID和非IID数据的情况下,能够抵御多达40%的恶意参与者的毒化攻击。我们还通过实验证明,存在适当的稀疏性可以保护数据表示的隐私,而不会损害BlockDFL的准确性和安全性。
2 PRELIMINARIES
2.1 Poisoning Attack
联邦学习面临着毒化攻击的风险。恶意参与者可以上传毒化的模型,以负面影响联邦学习的收敛性[22],例如在某个类别中错误标记训练数据并在篡改后的数据集上训练本地模型,导致全局模型无法区分该类别的数据。
有许多适用于集中式系统的防御方法[3, 22, 38]。例如,Krum[3]认为与其他模型更新明显不同的模型更新是毒化的。然而,在一个没有参与者之间相互信任的P2P系统中,很难确定哪个参与者应该负责检测毒化的模型更新,参与者可能不信任其他参与者的判断。BlockDFL通过一种两层评分机制解决了这些问题,即在每一轮中,通过其他几个参与者(第3节中的聚合器)进行本地推断对本地更新进行评分,形成几个全局更新,然后通过另一组参与者(第3节中的验证者)通过Krum对这些全局更新进行评分,最终选择一个全局更新。
2.2 Data Representation Leakage
现有研究表明,在联邦学习中,参与者共享的模型更新仍然包含一些对通过模型反演攻击进行数据重构有用的训练数据信息[12, 28, 43, 48]。如果模型更新泄露,攻击者可以重构私有的训练数据集[26, 34]。因此,联邦学习需要进一步的隐私保护,因为在传统的联邦学习中没有对模型更新进行保护[24],特别是在分散式系统中,模型更新在普通参与者之间传输,这些参与者可能是恶意的。
这种风险可以通过梯度压缩来进行防御,即只传输模型更新中绝对值较大的元素[48]。攻击者无法从充分稀疏的更新中重构数据[27, 28]。直观地说,过度压缩可能对Krum产生负面影响,因为它会过滤掉与大多数更新方向明显不同的模型更新。但我们通过实验证明&#x