A Verifiable and Privacy-Preserving Federated Learning Training Framework 笔记-2024年5月7日
标题:A Verifiable and Privacy-Preserving Federated Learning Training Framework
摘要 :
联邦学习允许多个客户端协作训练一个全局模型,而无需泄露他们的隐数据。尽管在许多应用中取得巨大成功,但如何防止恶意客户端通过上传错误模型更新来破坏全局模型仍然是一个挑战 。因此,如何验证训练过程确实在合法的神经网络上进行成为一个关键问题。为解决这个问题,我们提出了VPNNT,一个用于神经网络反向传播的零知识证明方案。VPNNT使每个客户端能够向其他人证明模型更新(梯度)确实是在上一轮的全局模型上计算出来的,而不会泄露任何关于客户端私有训练数据的信息 。我们的证明方案适用于任何类型的神经网络。不同于通过门级电路(gate-level circuits)构建神经网络操作的传统验证方案,我们通过使用自定义门—矩阵操作,并应用优化的线性时间零知识协议来提高验证效率。得益于神经网络反向传播的递归结构,常见的自定义门在验证中被组合使用,从而减少了证明者和验证者的成本。实验结果表明,VPNNT是一个轻量级的神经网络反向传播验证方案,具有改进的证明时间、验证时间和证明大小。
引言 :
联邦学习已成为一种趋势,通过在分布式的、由不同客户端在持有的数据集上训练,构建一个全局模型。通常,每个客户端在本地训练其模型,并将更新发送到服务器进行聚合。然而,这种计算范式面临着一个隐私和安全的困境:一方面,客户端担心向任何其他方泄露其私有数据;另一方面,学习框架容易受到恶意客户端更新的影响,这可能会损害全局模型的性能。然而,出于GDPR的要求或出于所有权原因,服务器被限制直接检查私有数据。因此,我们提出了一个关键问题:服务器如何在不侵犯客户端数据隐私的情况下验证客户端更新的合法性?
尽管已有方法被提出用以检查模型更新的有效范围或确保全局模型的收敛,但这些方法不能保证本地训练的正确性,因此无法阻止懒惰的客户端上传没有经过实际训练努力的虚假更新。现有的用于验证神经网络的零知识协议主要用于推理阶段,用于验证预测结果是从合法的模型得出的。训练过程比推理更为复杂,而且目前还没有更有效的协议用于验证训练过程。
我们提出了一个可验证和保护隐私的神经网络训练框架(VPNNT),基于零知识证明(ZKP),如图1所示。基于ZKP,我们设计了一个协议,使每个客户端(证明者)能够说服服务器(验证者),其上传的梯度 ▽wi\bigtriangledown w_i是基于其私有数据正确计算的,并通过一个简短的证明 πi\pi_i来实现,而不泄露任何有用信息。任何不诚实客户端说服服务器其错误结果▽w∗\bigtriangledown w^* 是正确的概率是微不足道的。据我们所知,目前没有通用的ZKP用于模型训练;以算术电路的形式表达训练过程非常复杂,会产生巨大的开销。高效的ZKP协议已被设计,但它们仅限于只涉及加法和乘法的程序,或仅限于输入为二的层叠算术电路。因此,它们无法处理非算术操作如ReLU激活层,或复杂的跨层结构在反向传播中。

当前研究的核心在于将问题陈述转化为可操作的形式,并通过创新性的中间表示形式实现这一目标。这些中间表示形式直接支持交互式证明系统的构建与运作,并且在算术电路设计中具有重要的应用价值。其中一项关键创新是引入了一种独特的中间表示形式(即自定义门),这种门由矩阵操作构成,并且在特定优化协议下能够显著提升计算效率。具体而言,在文献[10]中所定义的自定义门是一种函数 G:F^l→F(对于某个 l),这种结构能够在算术电路中反复使用以减少计算复杂度,并使验证者的工作效率得到显著提升。另一方面,在反向传播过程中涉及大量重复出现的张量/矩阵操作可以被统一转换为自定义门的形式,并利用优化协议中的哈达玛积、矩阵重塑等技术进一步提升效率。从另一个角度来说,在无法直接映射到矩阵运算的操作(如ReLU、Sigmoid和Max Pooling)中引入了另一种中间表示形式——Rank-1 Constraint System (R1CS)实例来处理这些问题。与逐位表达方式相比,在某些情况下R1CS实例展现出更好的性能优势;这是因为R1CS实例中的非零条目数量呈线性增长趋势
