期刊:IEEE Transactions on Computers
作者: Rui Jin; Jia Hu; Geyong Min; Jed Mills
时间:2023.7.10
本文提出的 BEFL 将模型聚合工作从 FL 服务器转移到区块链节点(即边缘服务器),从而消除了传统 FL 中的单点故障。 BEFL还利用IPFS来存储全局模型,其地址记录在链上,而不是整个模型,以减少块传播的通信成本和不断增长的区块链的存储成本。
提出了一种使用 VRF 的基于节能委员会的共识协议,而不是传统的计算密集型工作证明(PoW)机制来在区块链中达成共识。 这个新协议以与其股份成比例的概率选择委员会成员,以防止恶意区块链节点的攻击,并验证包含全局模型的 IPFS 地址的候选块。
- ①发布联邦学习任务
- ②获取全局模型的IPFS地址
- ③使用私有数据集进行本地训练
- ④将压缩的本地模型更新发送到最近的矿工(区块链节点)
- ⑤通过安全聚合规则聚合本地模型更新以生成候选块
- ⑥委员会成员验证候选区块以产生确认的验证区块
- ⑦矿工将新验证的区块添加到本地链
任务发布者首先将带有未标记数据的FL任务以及存储在IPFS中的初始全局模型发布到区块链网络(步骤①)。
区块链节点从网络检索任务信息并保留未标记数据集的副本。 然后客户端可以通过查询最近的活动节点来获取全局模型的 IPFS 地址(步骤②)。
利用内容寻址的 IPFS,可以轻松下载全局模型。 从这个全局模型开始,客户使用他们的私有数据集运行本地训练步骤。 本地训练完成后,客户端压缩模型更新并将压缩梯度 (Comp(Δw)) 及其签名作为交易发送到最近的活动节点(步骤 ③ 和 ④)。
区块链节点收到客户端发送的模型更新后,首先通过检查签名并恢复压缩更新来验证其是否是客户端发布的,查看其形状是否与全局模型一致。 如果满足两个要求,节点就会将此交易传播到网络。 一旦收到足够的待处理交易(本地模型更新),节点将按照我们设计的安全聚合协议竞争性地计算下一轮的全局模型,生成候选块并将其发送给分配了 VRF 的委员会(步骤 ⑤)。
然后,委员会成员通过“是”或“否”票来验证全局模型是否正确聚合。 如果候选区块从委员会收到超过 2/3个协议,则被视为经过验证的区块并传播到网络。 节点收到新验证的区块后,检查委员会成员的签名并将其添加到本地链中(步骤⑥)。