【论文阅读】改进的个性化和客户端模型的投毒纠正的隐私保护联邦学习

Privacy-Preserving Federated Learning with Improved Personalization and Poison Rectification of Client Models -- 改进的个性化和客户端模型的投毒纠正的隐私保护联邦学习

标题Privacy-Preserving Federated Learning With Improved Personalization and Poison Rectification of Client Models
作者Yihao Cao , Jianbiao Zhang , Yaru Zhao , Hong Shen , and Haoxiang Huang
链接TIFS
单位College of Computer Science, Beijing Key Laboratory of Trusted Computing, Beijing University of Technology, Beijing 100124, China

摘要

  • 联邦学习是一种安全且新兴的分布式学习模式,然而,它仍然易被可能危害隐私和完整性的攻击者所攻击。先前有关隐私保护联邦学习的研究在客户端 模型个性化 以及 抵抗投毒攻击 (包括拜占庭攻击和后门攻击)方面存在局限性。
  • 对此,本文提出了一种新颖的PPFL框架,即 FedRectify ,通过部署可信执行环境(TEE)和交互式训练策略,采用个性化的双层方法。该策略通过将模型分为私有和共享层来促进模型个性化的学习。
  • 此外,为提高模型对投毒攻击的鲁棒性,本文引入了一种新颖的聚合方法,该方法通过聚类过滤掉异常模型参数,并采用鲁棒回归来评估聚类成员的可信度,从而纠正被污染的参数。
  • 本文从理论上证明了FedRectify的收敛性,并通过大量实验实验证实了其性能。结果表明,在应对拜占庭攻击时,FedRectify的收敛速度比最先进的方法快1.47-2.63倍。此外,当面对突发性后门攻击时,它可以在随后的轮次中迅速将攻击成功率降低到10%到40%之间的低水平。

系统模型

本文的系统模型如图2:
fig2

实体与威胁模型

模型实体

本文考虑标准的联邦学习场景,其中客户端 C \mathcal{C} C 在私有数据集上训练模型,并将其上传到服务器 S \mathcal{S} S 进行聚合。具体而言,FedRectify中的主要实体如下:

  • 客户端: 每个客户端 C i \mathcal{C_i} Ci 都有一个被认为是可信的执行环境 (TEE)。在训练的第 r r r 轮中, C i \mathcal{C_i} Ci 在个人数据集 D i \mathcal{D_i} Di 上训练一个本地模型 g i g_i gi g i g_i gi 被分为一个共享模型 g i s g_i^s gis 和一个私有模型 g i p g_i^p gip C i \mathcal{C_i} Ci g i p g_i^p gip 存储在TEE中,而 g i s g_i^s gis 则存储在REE中。完成本地训练后, C i \mathcal{C_i} Ci g i s g_i^s gis上传到 S \mathcal{S} S 进行聚合。
  • 服务器:在聚合模型时, S \mathcal{S} S g i s g_i^s gis 上采用鲁棒聚合以防御拜占庭攻击和后门攻击。聚合后, S \mathcal{S} S 将全局共享模型 G s G^s Gs 分发给所有客户端 C \mathcal{C} C

威胁模型

  1. 服务器:服务器是半诚实模型,它诚实地聚合和分辨共享模型,但是对客户端的私有数据感兴趣,试图推断用户的数据。
  2. 良性客户端:良性客户端 C i \mathcal{C_i} Ci 会诚实地上传共享模型。
  3. 恶意客户端:恶意客户端 C i ∗ \mathcal{C_i^*} Ci 会通过投毒攻击上传了一个有毒的本地共享模型 g i s , ∗ g_i^{s,*} gis,
  • 投毒攻击:攻击类型 A 1 A_1 A1 A 2 A_2 A2 的对手发起的中毒攻击如下所示:
    • 敌手目标: A 1 A_1 A1 控制 C i ∗ C_i^* Ci 通过数据或模型投毒来破坏全局共享模型,降低全局模型的准确性或扰乱其功能。对手 A 2 A_2 A2 通过控制 C j ∗ C_j^* Cj 发动后门攻击,将数据或模型后门插入全局共享模型中,从而降低模型在子任务上的性能。
    • 对敌手知识和能力。 A 1 A_1 A1 A 2 A_2 A2 控制一个或多个恶意客户端 C i ∗ C_i^* Ci 。然而,它只能在REE中获取 g i s g_i^s gis D i \mathcal{D_i} Di 信息,不能对TEE执行任何系统级攻击,例如侧信道攻击或DDoS攻击等。

设计目标

  • 抵抗拜占庭攻击。
  • 抵抗后门攻击。
  • 保护客户端隐私数据。

方法展开

初始化阶段

  • 服务器初始化一个全局模型,定义分区策略。然后服务器将其发送给所有客户端。

本地训练

  • 在联邦学习开始时,客户端收到初始全局模型和分区策略,客户端根据上诉数据初始化私有模型和共享模型。
  • 客户端首先训练更新私有模型:在本次本地迭代 ( e p e_p ep) 中,客户端使用选定的损失函数 F ( ∗ ) \mathcal{F(*)} F(),使用上一轮( r − 1 r-1 r1)联邦学习的全局共享模型 h i s , r − 1 , E s h_i^{s,r-1,E_s} his,r1,Es和本地上一轮( e p − 1 e_p - 1 ep1)迭代的私有模型 g i p , r , e p − 1 g_i^{p,r,e_p-1} gip,r,ep1 组合成的整体模型作为损失函数的评估模型,与本地上一轮迭代( e p − 1 e_p-1 ep1)的私有模型 g i p , r , e p − 1 g_i^{p,r,e_p -1} gip,r,ep1进行后向传播,学习率为 α \alpha α
  • 客户端训练共享模型:训练完 E p E_p Ep次私有模型后,客户端开始训练共享模型,在本次本地迭代( e s e_s es)中,客户端使用选定的损失函数 F ( ∗ ) \mathcal{F(*)} F(),使用训练好的私有模型 g i p , r , E p g_i^{p,r,E_p} gip,r,Ep 和本地上一轮( e s − 1 e_s-1 es1)迭代的共享模型 g i s , r , e s − 1 g_i^{s,r,e_s-1} gis,r,es1 组合成的整体模型作为损失函数的评估模型,与本地上一轮迭代( e s − 1 e_s-1 es1)的共享模型 g i s , r , e s − 1 g_i^{s,r,e_s-1} gis,r,es1 进行后向传播,学习率为 α \alpha α
  • 客户端训练结束后,将共享模型 g i s , r , E s g_i^{s,r,E_s} gis,r,Es 发送给服务器。

算法如算法1所示:
algorithm1
请注意伪代码中的一些错误。。。

鲁棒聚合

聚类

  • 服务器 S S S 收到客户端 C i \mathcal{C_i} Ci 发来的共享模型 g i s g_i^s gis 后,首先将 g i s g_i^s gis 展平为 v i = F l a t t e n g i s = w 1 , w 2 , . . . , w n \mathrm{v}_i =Flatten{g_i^s}={w_1,w_2,...,w_n} vi=Flattengis=w1,w2,...,wn,然后对 v \mathrm{v} v 向量两两计算余弦距离 :
    eq3

  • 得到所有的余弦距离后,将其构成距离矩阵 M \mathrm{M} M :
    eq4

  • 得到距离矩阵后,采用HDBSCAN算法进行聚类,将 M \mathrm{M} M 分为两组:离群点和聚类成员,如图所示:
    clustering

  • 但是通过聚类只能去除偏差较大的值,一些偏差不大的值被错误地分类成了良性成员,所以还需进一步纠正。

鲁棒回归

  • 想一下,我们能不能用线性回归方法来作为鲁棒回归,然后用线性误差来计算置信度,对于置信度大的值(可能是恶意用户数据)我们采取某些策略去除或纠正。

  • 考虑一元二次方程 g = k X + b g=kX+b g=kX+b ,我们计算所有点的斜率,然后用所有斜率的中位数median作为估计值 S n ~ \tilde{S_n} Sn~,然后相应地求出所有点的截距,取中位数作为预测值 I n ~ \tilde{I_n} In~ ,这样就得出了预测值: g n s , r ~ = S n ~ X + I n ~ \tilde{g_n^{s,r}}=\tilde{S_n}X+\tilde{I_n} gns,r~=Sn~X+In~,其中 x i , n x_{i,n} xi,n g i s g_i^s gis g i , n s g_{i,n}^s gi,ns 的索引。

  • 设误差为 δ n r \mathrm{\delta_n^r} δnr,表示参数 g s , r g^{s,r} gs,r 到回归线预测值的距离,按公式7计算:
    eq7

  • 然后将误差标准化,如公式8所示:
    eq8
    其中 ∣ d n r ~ ∣ = m e d i a n ∣ d n r ∣ |\tilde{d_n^r} | = median {|d_n^r|} dnr~=mediandnr β \beta β 是一个常数,设定 为 1.48;

  • 置信度的计算公式如下:
    eq9
    其中 σ i , n r σ_{i,n}^r σi,nr是第 n n n g i s , r g_i^{s,r} gis,r参数的置信度, e i , n r = d i , n r δ n r ~ e_{i,n}^r = \frac{d_{i,n}^r}{\tilde{\delta_n^r}} ei,nr=δnr~di,nr Φ ( ∗ ) = − Y , m i n ( Y , ∗ ) \Phi(∗) = {−Y, min(Y, ∗)} Φ()=Y,min(Y,) Y = λ 2 M Y = \lambda \sqrt{\frac{2}{M}} Y=λM2 ,λ是一个超参数,设定为2。 Φ \Phi Φ指的是可以通过调整λ值来调整的置信区间。 H n r H_n^r Hnr是帽子矩阵:

eq10

其中, x n r = [ x 1 , n , x 2 , n , . . . , x M , n ] ⊤ x_n^r=[x_{1,n},x_{2,n},...,x_{M,n}]^\top xnr=[x1,n,x2,n,...,xM,n]

纠正

  • 有了置信度之后,我们设定一个置信度阈值 ξ \xi ξ,当置信度大于 ξ \xi ξ 是,我们认为共享模型是恶意的,应该将其纠正,本文认为可以使用中位数纠正,纠正方法与判断方法如公式11:

eq11

聚合

论文并没有提及如何聚合,只在伪代码中书写 G s , r ← A g g r e g a t i o n ( g i s , r ) G^{s,r} \gets Aggregation(g_i^{s,r}) Gs,rAggregation(gis,r) ,应该就是使用了FedAvg的聚合策略,对聚类后判断为良性成员的共享模型使用纠正,然后对共享模型进行聚合 G s , r ← ∑ i = 1 i = N g i s , r N G^{s,r} \gets \frac{\sum_{i=1}^{i=N}g_i^{s,r}}{N} Gs,rNi=1i=Ngis,r

总体算法如算法2所示:
algorithm2

请注意伪代码中的一些错误。。。

总结

  • 本文基于个性化双层架构,将模型参数分为私有层和共享层。私有层为最后几层全连接层,在本文中,全连接层有三层,可以按照设定取私有层为最后1层、2层或全部全连接层为私有层,而剩下的部分即为共享层。
  • 本文利用聚类、鲁棒回归和纠正机制,提高了系统抵抗投毒攻击的能力。

优点

  1. 个性化能力增强
    • 通过私有层和共享层的分离,FedRectify能针对客户端特定的异构数据分布进行建模。
    • 实现了全局泛化能力和本地个性化能力的平衡。
  2. 稳健性强
    • 利用中值聚合和鲁棒回归,有效过滤了恶意客户端上传的异常参数。
    • 抵抗拜占庭攻击和突发后门攻击的能力优于现有方法。
  3. 隐私保护
    • 私有层参数不共享,仅在本地优化(TEE),保护了客户端特定数据的敏感信息。
    • 无需使用加密技术(如同态加密或差分隐私),降低了计算和通信开销。
  4. 实现简单高效
    • 中值聚合和鲁棒回归方法相对计算简单,可直接部署在现有的联邦学习系统中。
    • 基于TEE(信任执行环境)的实现不需要额外的加密系统支持,硬件成本低。
  5. 适应异构数据
    • 通过个性化架构处理非IID数据(数据分布不独立同分布)的挑战。
    • 对客户端之间的数据异质性有更好的适应性。

缺点

  1. 依赖硬件 TEE
    • FedRectify依赖于客户端设备中的 TEE 实现(如 Intel SGX 或 ARM TrustZone)。如果 TEE 被攻破或不支持,系统的安全性将受影响。
  2. 缺乏形式化的隐私保护
    • 虽然论文通过私有层分离和中值聚合保护隐私,但未采用差分隐私或加密技术。
    • 在某些高敏感场景下,攻击者仍可能通过分析共享层参数进行推理攻击(如属性推断或成员推断)。
    • 服务器接收到的共享模型保持明文状态,可能泄露一些模型参数,并使服务器能够通过数据重建攻击重建用户数据。
  3. 通用性有限
    • 双层架构可能对某些类型的模型(如深度神经网络)适用性较好,但对简单模型(如线性回归)的效果不一定显著。
    • 中值聚合等稳健方法的有效性依赖于一定比例的正常客户端,若恶意客户端占比过高(超过50%),可能失效。
  4. 聚合效率问题
    • 虽然稳健聚合方法提升了安全性,但其计算复杂度高于简单平均法,可能增加聚合阶段的时间开销。
    • 特别是在客户端数量较多的情况下,计算效率可能成为瓶颈。
  5. 理论分析不足
    • 对于某些核心方法(如中值聚合的鲁棒性),论文缺乏详细的理论证明,仅通过实验验证效果。

思考

  1. 文章并没有使用加密技术,虽然文章分析了投毒攻击、持续攻击(Persistent attack)、周期攻击(周期性攻击),但是并没有进行推理攻击(Membership Inference Attack、Attribute Inference Attack)的实验,笔者认为FedRectify无法抵抗推理攻击,能否添加加密系统来抵抗推理攻击?

    应该是可以的,FedRectify本身并不复杂,完全可以添加加密系统来确保系统安全,如Paillier同态加密。

  2. 本文使用的重复中值作为鲁棒回归的依据,是否有其他方法?

    可以使用Theil-Sen估计、Trimmed Mean回归、Huber回归等

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值