基于异构数据多隐私机制的局部差分隐私联邦学习-论文阅读
Local differential privacy federated learning based on heterogeneous data multi-privacy mechanism(基于异构数据多隐私机制的局部差分隐私联邦学习)
1.摘要
联邦学习使得无需直接访问用户数据即可开发健壮的模型。然而,近期研究表明联邦学习仍然容易发生隐私泄露。
为了解决这一问题,联邦学习中引入了本地差分隐私机制。
然而,LDP会降低数据的可用性。为了在联邦学习中平衡隐私预算与数据可用性,我们提出了FedAPCA,即一种基于多重隐私机制的自适应分段机制,用于分层聚类的联邦学习。
这种方法旨在在隐私保护和模型精度之间实现平衡。
首先,我们引入了一种自适应分段机制,根据模型不同层的数据范围动态调整扰动区间,从而在保证相同隐私水平的同时最小化扰动方差。
其次,我们提出了两种动态隐私预算分配方法,即基于全局精度和全局损失分配隐私预算,以及基于局部精度和损失分配隐私预算,以确保在相同隐私预算下实现更好的模型精度。
最后,在模型聚合阶段,我们提出了一种分层聚类聚合方法,通过根据每层方差对各簇中的扰动进行无偏估计来更新并聚合模型。
实验结果表明,与现有多隐私LDP联邦学习框架相比,FedAPCA在MNIST和CIFAR-10数据集上的模型精度提升了1%到2%。
2.介绍
联邦学习是一种分布式机器学习方法,通过在边缘设备或节点上本地处理数据并仅共享模型参数更新,保护用户隐私。这种方式确保原始数据始终留在本地设备,不传输至中央服务器,从而保障用户的隐私。
此外,由于联邦学习中的数据来自不同用户,通常是非独立同分布(non-IID)的。差分隐私是一种数据分析和挖掘方法,旨在最大化个人隐私保护。
然而,传统差分隐私机制需要一个可信的第三方,从而限制了其适用性。作为替代,本地差分隐私被引入。
Duchi等人提出了一种差分隐私扰动机制,与拉普拉斯和高斯噪声方法相比,该机制产生较小的噪声方差,从而增强隐私保护和数据可用性。Wang等人进一步开发了基于Duchi机制的分段机制,能够实现更小的噪声方差。
联邦学习仍易受模型推断攻击,可能通过用户上传的模型梯度或参数推断用户数据,从而导致隐私泄露。
因此,联邦学习面临数据异质性和隐私泄露的双重挑战。为了增强联邦学习的安全性,Truex等人提出在用户更新中应用LDP以保护本地梯度。
然而,LDP的使用会降低全局模型的精度,且随着隐私保护水平的增加,精度损失变得更为显著。联邦学习中的数据异质性导致本地模型更新之间存在显著差异,传统的联邦聚合方法不足以实现最优的全局模型。
异构数据联邦学习的优化主要发生在模型聚合阶段。然而,噪声的增加会减少模型梯度数据的可用性,无法准确表示客户端的本地模型,进而影响模型聚合并降低全局模型精度。
3.相关工作
研究表明,联邦学习在模型提取攻击和模型推理攻击等方面仍存在安全风险,这些攻击可能导致用户隐私泄露。赵等人引入了本地差分隐私来增强联邦学习中的隐私保护。
然而,这种方法未考虑个性化隐私需求,且依赖于服务器设定的固定隐私预算。如果恶意服务器设定较大的隐私预算,仍可能威胁用户隐私。
杨等人提出了个性化本地差分隐私,允许用户设定自己的隐私预算,但未深入探讨如何有效测量这些预算。王等人开发了一种分段机制,适用于特定数值范围的数据,但在扰动前需预处理数据,这对低功耗设备不太现实。
郑等人将分段机制应用于联邦学习,替代传统的拉普拉斯和高斯噪声方法。分段机制直接限制数据的数值范围,但对于小范围区间的数据仍按固定区间进行扰动,导致扰动区间较大,数据可用性降低。
在联邦学习中,同一层的模型更新相对相似,变化较小,而不同层间的更新差异显著。基于整个模型更新范围进行数据扰动可能导致数据过度离散,降低模型精度。
为了应对联邦学习中的数据异质性问题,学者们进行了大量研究。Chamath等人将K均值聚类算法应用于联邦学习中,在聚合全局模型之前根据模型相似性对其进行分组,此方法加速了模型收敛,提高了模型泛化能力。
李等人提出了一种新方法FedProx,通过调整本地迭代次数并根据本地与全局模型间的欧氏距离微调聚合方式。
该方法在局部模型的表现上优于联邦平均方法,但因需过多迭代,可能使计算能力有限的设备无法参与聚合过程,从而降低模型的泛化性,并可能导致本地模型偏离全局模型,影响收敛。
王等人提出FedNova算法,通过各客户端本地迭代次数对更新进行归一化和加权处理,以应对数据异质性。然而,当用户间数据量差异较大时,数据量较小的客户端迭代次数多,可能导致本地模型过拟合,且全球模型无法收敛。
Tan等人引入了一种个性化联邦学习方法,通过为每个用户设定个性化模型,再进行联邦平均聚合以应对数据异质性。然而,该方法对噪声极为敏感,当对数据进行差分隐私扰动时,添加的噪声显著影响了模型精度。
4.背景知识
4.1 联邦学习
联邦学习 (Federated Learning, FL) 是一种分布式机器学习方法,旨在解决数据隐私和安全问题。在传统的集中式机器学习方法中,所有数据都会被集中到一个地方进行训练,这可能导致隐私泄露和数据安全风险。
相比之下,联邦学习在每个本地设备或数据源上训练模型,然后再聚合更新后的模型参数。这种方法确保了原始数据不会离开本地设备,从而保护数据隐私并提高数据安全性。
联邦学习通常涉及一个中央服务器或协调者,负责管理整个训练过程。在本地训练之后,每个设备将更新的模型参数发送到中央服务器,服务器将聚合并更新这些参数,然后再将它们发送回本地设备。
这个过程会重复进行,直到训练收敛或达到预定的训练轮数。
在联邦学习中,共有$ ( N ) $个客户端,每个客户端$ ( k ) $使用本地数据训练本地模型参数而无需共享本地数据。
对于每个客户端的学习任务,定义在训练数据样本$ ((x_i, y_i)) $上的损失函数$ ( L(W_k; x_i, y_i) )$,即由模型参数$ ( W_k ) $预测的损失。
在每轮本地训练中,假设有 $( K ) $个客户端参与,客户端$ ( k ) $的数据样本集为 $( D_k )$。设 $( b_k = |D_k| )$,则客户端$ ( k )$ 在数据样本上的本地损失函数如公式 (1) 所示:
$$
[
f_k(W_k) = \frac{1}{b_k} \sum_{i \in D_k} L_k(W_k; x_i, y_i)
]
$$
其中,( W_k ) 表示客户端 ( k ) 的本地模型参数。在服务器端,包含所有参与训练的客户端本地数据集的全局损失函数如公式 (2) 所示:
$$
[
f(W) = \frac{1}{b} \sum_{k \in K} \sum_{i \in D_k} L(W_k; x_i, y_i)
]
$$
其中,( W ) 是服务器端的全局模型参数,( b ) 是所有参与训练客户端的数据集大小,即 ( \sum_{k \in K} b_k = b )。联邦学习的目标是通过最小化经验风险找到最优的全局模型参数 ( W^* ),如公式 (3) 所示:
$$
[
W^* = \arg \min_W f(W)
]
$$
在开始时,服务器初始化一个神经网络模型并与客户端共享。对于单次迭代,客户端接收到全局模型后,使用本地数据并行地训练本地模型。
然后,客户端将训练后的更新或梯度传输到服务器进行聚合,以更新全局模型。完整的 FedAvg 过程如算法 1 所示。
算法 1: FedAvg
输入:客户端数量 $( N )$,客户端数据集 $( D_k )$,本地训练次数$ ( E )$,全局训练轮数$ ( T )$,学习率$ ( \eta )$。
服务器初始化:初始化全局模型参数$ ( W_0 )$。
全局训练轮数循环:
- 对于每个全局轮次$ ( t = 1, 2, …, T )$:
- 从 ( N ) 个客户端中选择 $( K = \rho \times N )$ 个客户端,其中$ ( \rho )$ 是客户端参与的比例,取值在 (0, 1) 之间。
- 对于每个被选择的客户端 $( k )$,并行执行:
- 下载全局模型$ ( W_t ) $到客户端 ( k )。
- 客户端$ ( k ) $进行本地训练,并将更新的模型$ ( W_k ) $发送回服务器。
- 服务器端更新全局模型$ ( W_t )$,聚合所有客户端的更新:
$$
[
W_t \leftarrow \sum_{k=1}^K \frac{b_k}{b} W_k
]
$$
其中,$( b_k ) $是客户端 $( k ) $的数据集大小,$( b ) $是所有客户端数据集的总大小。
- 对于每个全局轮次$ ( t = 1, 2, …, T )$:
客户端本地更新:
- 对于每个客户端$ ( k )$,接收到全局模型 $( W_t )$ 后,将本地模型参数更新为$ ( W_k \leftarrow W_t )$。
- 在本地执行$ ( E )$ 次迭代,对于每个数据样本对$ ( (x_i, y_i) )$,根据学习率 $( \eta )$ 进行模型的本地更新。
4.2 本地差分隐私
差分隐私 (Differential Privacy, DP) 是一种通过向原始数据添加噪声来保护隐私的技术。其核心原理是在计算过程中引入受控噪声,以防止披露个人数据。
通过保护每个个体数据的贡献,DP确保攻击者无法从输出中推断出特定个体的信息,从而保障用户隐私。
然而,差分隐私的实现通常需要一个可信的第三方,在实际应用场景中这往往是不可行的。为了应对这一限制,提出了本地差分隐私(LDP)。
LDP是一种增强的隐私保护机制,它直接在每个数据所有者的信息中添加噪声,从而消除了将原始数据传输到可信中央服务器的需求。
5.FedAPCA
本文提出的 FedAPCA 方法包括动态隐私预算分配、自适应分段机制和基于最大似然估计的分层聚类聚合。
在训练开始时,每个客户端会初始化其总隐私预算。在每轮训练中,客户端根据所选的动态隐私预算分配方法确定适当的隐私预算,以控制更新的扰动。客户端上传扰动后的更新给服务器,服务器进行分组聚合并更新全局模型。
更新后的全局模型会分发给客户端,客户端继续本地训练,直到隐私预算耗尽为止。以下部分详细介绍了各方法及其实现。
本架构图如链接:百度网盘分享,提取码:7568
5.1 动态隐私预算分配方法
客户端设置一个总隐私预算,并在训练过程中根据本地数据的隐私需求和动态隐私预算分配方法为每轮计算个性化隐私预算。第一轮训练的隐私预算根据数据量和数据类型初始化。初始化方法允许每个客户端根据其数据的分布和敏感性来定义其本地隐私预算。我们提出一种隐私预算初始化方法,考虑了本地标签类型和本地数据量两个关键因素。初始隐私预算计算公式如下:
$$
[
\epsilon = \frac{1}{\lg(b_k) + 1} + \frac{1}{\lg(F_k) + 1}
]
$$
其中$ ( b_k ) $为客户端数据量,$( F_k )$ 为客户端数据类别数量。
定理1 给定数据集$ ( D )$ 和一组差分隐私算法$ ( A_1(D), A_2(D), \dots, A_m(D) )$,若算法$ ( A_i(D) ) $满足$ ( \epsilon_i)-DP $ 且任何两个算法的随机过程相互独立,则这些算法组合后满足$ ( \sum_{i=1}^m \epsilon_i)-DP $。
定理1表明在整个联邦学习过程中可以在每轮分配不同的隐私预算,并保持总隐私预算不变。由于联邦学习梯度下降在不同轮次的收敛速度不同,最终全局模型的准确性取决于训练轮次中的预算分配方式。因此,我们提出了两种动态隐私预算分配方法以替代传统的平均分配隐私预算的方法。为防止服务器访问客户端的隐私预算,所提的分配方法由用户本地决定。此外,为增强隐私保护,方法在每轮随机改变隐私预算大小,减少因使用固定预算带来的隐私泄露风险。
每个用户基于当前和之前轮次的训练结果动态调整隐私预算。我们提出两种方法来判断是否需要增加隐私预算:(i) 比较当前和之前轮次在本地精度和损失方面的差异;(ii) 比较当前和之前轮次在全局精度和全局损失方面的差异。在每轮训练中,若满足隐私预算调整的阈值,则使用增长因子调整隐私预算。若未达到阈值,则进行随机采样更新隐私预算。该方法确保了在不超出已建立阈值的情况下动态调整隐私预算。
隐私预算调整的数学公式如下:
$$
[
\epsilon_t =
\begin{cases}
\lambda \epsilon_{t-1}, & \text{if } v_1 \leq \tau_1 \text{ and } v_2 \leq \tau_2 \text{ and } \epsilon_{t-1} < \epsilon_{\text{max}} \
\epsilon_{t-1} + \sigma, & \text{if } v_1 > \tau_1 \text{ or } v_2 > \tau_2 \text{ and } \epsilon_{t-1} < \epsilon_{\text{max}} \
\epsilon_{t-1}, & \text{otherwise}
\end{cases}
]
$$
其中$ ( v_1 ) $表示当前轮和上一轮模型精度的差异绝对值,$( v_2 ) $表示当前轮和上一轮模型损失的差异绝对值,具体定义为$ ( v_1 = |ACC_{Lt} - ACC_{Lt-1}| )$、$( v_2 = |Loss_{Lt} - Loss_{Lt-1}| )$;$( ACC_{Lt} ) $为当前轮本地精度,$( ACC_{Lt-1} ) $为上一轮本地精度;$( \lambda (\lambda > 1) ) $为隐私预算增长率,$( \sigma \in (-q, q) ) $在区间内均匀分布,且$ ( q = \min(\epsilon_{t-1}$, $\epsilon_{\text{max}} - \epsilon_{t-1}) / T )$。
在模型训练的精度和损失差异均在阈值$ ( \tau_1 )、( \tau_2 ) $内时,隐私预算增加为原来的$ ( \lambda ) $倍。当精度差异或损失差异超出阈值时,隐私预算随机更新。当隐私预算超过$ ( \epsilon_{\text{max}} ) $时,隐私预算不再增加,直到训练结束。
在算法2中,情况1在联邦训练过程中基于本地模型的精度和损失动态调整隐私预算,而情况2则根据服务器的全局精度和损失调整预算。这种方法提高了数据的可用性。在这些方法中,Get_Local_Accuracy()
表示用户在模型训练中获得的本地模型精度,Get_Global_Accuracy()
表示服务器提供的全局模型精度。为了防止服务器追踪客户端的隐私预算,每轮训练都会随机调整隐私保护预算。
算法 2: 动态隐私预算分配
- 输入:$ ( b_k )$, $( F_k )$,$ ( \epsilon_{\text{max}} )$, $( \epsilon_{t-1} )$, $( t )$, $( T )$,$ ( \lambda )$, $( \tau_1 )$, $( \tau_2 )$, 方法
- 输出:$ ( \epsilon_t )$
- 如果$ ( t = 0 )$,则:
$$
[
\epsilon_0 = \frac{1}{\log(b_k) + 1} + \frac{1}{\log(F_k) + 1}
]
$$ - 否则:
- 根据所选的方法分配:
- Case 1:
- $( ACCL_t = \text{Get_Local_Accuracy}(t) )$
- $( ACCL_{t-1} = \text{Get_Local_Accuracy}(t - 1) )$
- $( LossL_t = \text{Get_Local_Loss}(t) )$
- $( LossL_{t-1} = \text{Get_Local_Loss}(t - 1) )$
- 计算差值:$( \nu_1 = |ACCL_t - ACCL_{t-1}| ),( \nu_2 = |LossL_t - LossL_{t-1}| )$
- 如果$ ( \nu_1 \leq \tau_1 ) 且 ( \nu_2 \leq \tau_2 ) 且 ( \epsilon_{t-1} < \epsilon_{\text{max}} )$,则:
$$
[
\epsilon_t = \lambda \epsilon_{t-1}
]
$$ - 否则,若$ ( \nu_1 > \tau_1 ) $或$ ( \nu_2 > \tau_2 )$,且$ ( \epsilon_{t-1} < \epsilon_{\text{max}} )$,则:
$$
[
q = \min(\epsilon_{t-1}, \epsilon_{\text{max}} - \epsilon_{t-1})
]
$$
- Case 1:
- 根据所选的方法分配:
5.2 自适应分段机制方法
本节提出了一种自适应分段机制(Adaptive Piecewise Mechanism, APM),用于在联邦学习中对本地模型更新添加细粒度噪声,从而减少噪声对全局模型精度的影响。
APM 方法根据模型更新的实际值范围自适应地进行扰动。该方法扩展了传统的分段机制,通过对模型的每一层分别施加细粒度噪声。在客户端训练模型参数后,APM 会根据每层参数的范围自适应地确定扰动区间,从而在保持相同隐私保护级别的前提下,减少最坏情况下的噪声方差,增强数据的可用性。APM 通过引入更小的噪声方差,在隐私和数据可用性之间实现更好的平衡。
在联邦学习中,假设本地模型有 $L$ 层,模型 $W_k$ 的第 $j$ 层为 $w_j$($1 \leq j \leq L$)。APM 机制的具体步骤如下。设 $c = \min(w_j)$, $d = \max(w_j)$,则对于任何 $w_{ji} \in w_j$,有 $w_{ji} \in [c, d]$。设中点 $mid = (c + d) / 2$, 半径 $r = (d - c) / 2$,则区间 $[c, d]$ 可以表示为 $[mid - r, mid + r]$。对于给定的模型更新 $W_k$,APM 会对 $W_k$ 的每一层进行扰动,从而得到扰动后的模型更新 $W_{(k,)}$。对于 $W_k$ 的每一层权重 $w_j$,将 $w_j$ 的每个值 $w_{ji} \in [mid - r, mid + r]$ 作为输入,其扰动输出 $w_{(j,)}i \in [mid - rC, mid + rC]$,其中 $C = \frac{e^{\epsilon/2} + 1}{e^{\epsilon/2} - 1}$,并设 $c^* = mid - rC$, $d^* = mid + rC$。扰动后的权重 $w_{(j,)}$ 的输出范围为 $[c^, d^*]$。客户端的本地更新过程见算法 3。
扰动后的 $w_{(j,*)}i$ 的概率密度函数为分段常数函数,表达如下:
其中
$$
p = \frac{e^\epsilon - e^{\epsilon/2}}{2 \cdot r \cdot (e^{\epsilon/2} + 1)}
$$
因此,在应用本地差分隐私时,我们建议根据模型更新按层自适应扰动,并基于每层的参数动态确定扰动范围。客户端的更新过程如算法 3 所示。
算法 3: 客户端更新
- 输入: $ W_t $, $ \epsilon_{kt} $
- 输出: $ W^{(k,*)} $, 权重
- $ W_k \leftarrow W_t $
- 使用本地数据集训练 $ W_k $
- 对于 $ W_k $ 中的每个 $ w_j $,执行:
- 计算中点:$ mid = \frac{\max(w_j) + \min(w_j)}{2} $
- 计算半径:$ r = \frac{\max(w_j) - \min(w_j)}{2} $
- 对于每个 $ w_{ji} $ 执行:
- 从 [0, 1] 随机均匀采样 $ x $
- 如果 $ x < \frac{e^{\epsilon_{kt}/2}}{e^{\epsilon_{kt}/2} + 1} $,则:
- 随机均匀地从 $ [L(w_{ji}), R(w_{ji})] $ 中采样 $ w^{(j,*)}_i $
- 否则:
- 从 $ [c^*, L(w_{ji})) \cup (R(w_{ji}), d^*)] $ 中均匀采样 $ w^{(j,*)}_i $
- 更新 $ W^{(k,*)} $,计算权重
5.3 异构数据下的分层聚类聚合方法
通过比较模型参数更新的相似性,可以确定客户端之间的关系和相似性,从而将相似度较高的客户端分组以便更有效地进行模型聚合。本文应用了 K 均值聚类算法来估计客户端之间的相似性。异构数据通常由不同数据源和类型组成,导致模型存在差异。通过模型的聚类分层聚合,可以平衡来自异构数据集的模型差异,从而提升模型的泛化能力和性能。在复杂问题和数据集上,聚类分层聚合通常比单一模型效果更好。我们将此方法称为聚类分层聚合(Clustering Hierarchical Aggregation, CA)。
假设有 $K$ 个客户端参与聚合,通过 K 均值聚类方法根据客户端的更新值进行分组。K 均值的基本原理是随机初始化 $S$ 个样本作为初始质心,创建 $S$ 个簇,每簇包含 $n_s$ 个客户端。对于每个样本,计算其到质心的欧式距离,并将其分配到离其最近的质心所代表的簇中。为减少分组计算量,我们使用主成分分析(PCA)方法对模型更新进行降维,然后应用 K 均值进行分组。在每个簇内执行 MLE-APM 方法,并根据每个簇的数据量为每组分配权重,计算每组模型的加权均值作为全局模型更新。
为了在多隐私机制下提高联邦学习(LDP-FL)的精度,我们在估算模型更新平均值时应用最大似然估计自适应分段机制(MLE-APM)。在本地更新扰动后,每个客户端会计算其本地模型的每一层的最坏噪声方差,并上传扰动后的更新和噪声方差给服务器。服务器基于每个簇中客户端的噪声方差计算权重矩阵,为噪声较大的客户端分配较小权重,并最终使用该权重矩阵聚合模型更新。
算法 4 提供了 FedAPCA 的详细实现过程。服务器接收客户端上传的本地模型更新及最坏噪声方差。然后服务器遍历聚类后的每组模型,设 $ W_s $ 表示簇 $ s $ 模型的第 $ i $ 层更新。接着,遍历簇内客户端上传的信息,获取该簇内客户端本地模型第 $ i $ 层更新和最坏噪声方差。此时,$ updata_i $ 表示所有客户端模型的第 $ i $ 层更新,$ weight_i $ 表示所有客户端模型第 $ i $ 层的最坏噪声方差。最终,将 $ updata_i $ 和 $ weight_i $ 中每个元素的乘积之和作为簇 $ s $ 模型第 $ i $ 层的更新,并将其累加至 $ W_s $ 完成簇 $ s $ 模型的更新。之后,服务器再次根据簇内客户端持有的数据量对簇 $ s $ 模型赋予权重,以获得最终的全局模型。算法 4 展示了该部分的实现细节和整个框架的完整流程。
算法 4: FedAPCA
- 输入: $ \bigcup_{k=1}^K {W^{(k,*)}, var_k} $, $ T $
- 输出: $ W $
- 初始化客户集 $ U_t $ 并使用算法 2 初始化 $ \epsilon_0 $
- 服务器初始化 $ W_0 $
- 对于每个训练轮次 $ t = 0, 1, \ldots, T-1 $:
- 服务器将 $ W_t $ 发送到所有客户端
- 对于每个客户端 $ k \in U_t $:
- 计算 $ \epsilon_{kt} $ 使用算法 2
- 客户端使用算法 3 进行更新,获得 $ W^{(k,*)} $ 和 $ var_k $
- 对所有客户端的更新结果应用 PCA 并聚类
- 对于每个簇 $ s $,执行层级聚合以更新模型
5.4 理论分析
本节将对自适应分段机制的效用和隐私保证进行分析。局部差分隐私是一种特殊的差分隐私,因此差分隐私的隐私保证同样适用于局部差分隐私。以下是对所提出方法的隐私和效用的详细证明。
定理 2 对于任意 $ \theta_i \in [mid - r, mid + r] $,其中 $ mid $ 为 $ \theta $ 的中心,$ r $ 为 $ \theta $ 的半径,所提出的自适应分段机制 $ \mathcal{M} $ 满足 $ \epsilon $-LDP。
证明:给定任意两个输入 $ \theta_1, \theta_2 \in [mid - r, mid + r] $ 和 $ \mathcal{M} $ 的任意输出 $ \theta^*_i \in [mid - rC, mid + rC] $,以下不等式恒成立:
$$
\frac{\Pr[\mathcal{M}(\theta_1) = \theta^*_i]}{\Pr[\mathcal{M}(\theta_2) = \theta^*_i]} \leq \max \left( \frac{p}{p e^\epsilon}, \frac{p e^\epsilon}{p} \right) = e^\epsilon
$$
接下来证明所提出的自适应分段机制是无偏的,并计算其方差的上限。
定理 3 对于任意 $ \theta_i \in [mid - r, mid + r] $,扰动后的值 $ \theta^*_i = \mathcal{M}(\theta_i) $ 是 $ \theta_i $ 的无偏估计。
证明:扰动后的 $ \theta^*_i $ 的期望值为:
$$
E(\theta^*i) = \int{L(\theta_i)}^{mid - rC} \frac{p}{e^\epsilon} x , dx + \int_{L(\theta_i)}^{R(\theta_i)} p x , dx + \int_{R(\theta_i)}^{mid + rC} \frac{p}{e^\epsilon} x , dx = \theta_i
$$
引理 1 对于任意 $ \theta_i \in [mid - r, mid + r] $,令 $ Var[\mathcal{M}(\theta_i)] $ 为 $ \mathcal{M} $ 的方差上限。
$$
Var[\mathcal{M}(\theta_i)] = \frac{4r^2 e^{\epsilon / 2}}{3 (e^{\epsilon / 2} - 1)^2}
$$
此证明计算了自适应分段机制的最大方差。引理表明,在联邦学习中,参与客户端数量越多(即 $ K $ 越大),方差越小,得到的平均更新越准确。对于相同的隐私预算,扰动数据的半径越小,方差越小,意味着估计的均值噪声干扰较小,从而得到更准确的均值估计。
隐私预算是数据隐私保护程度的度量,当隐私预算趋近于0时,隐私保护达到最大,此时最坏情况的噪声方差无穷大。反之,当隐私预算趋近于无穷大时,隐私保护最弱,最坏情况的噪声方差最小。
6.实验
本节通过仿真验证和评估了所提出框架的性能。首先,分别评估了自适应分段机制(APM)方法、MLE-APM方法、动态隐私预算分配方法和分层聚合方法。然后,模拟实际场景,以评估在多隐私机制和异构数据下所提出的FedAPCA的性能。
6.1 仿真设置
使用了两个开源数据集MNIST和CIFAR-10,以及一个随机分布的数据集来评估该方法。
- MNIST数据集:包含60,000个训练样本和10,000个测试样本,每个样本为1×28×28像素的灰度图像。
- CIFAR-10数据集:包含10个类别的彩色图像,每个类别有6,000张图像,共60,000张图像。图像尺寸为3×32×32像素。该数据集已被预先划分为训练集和测试集,其中训练集包含50,000张图像,测试集包含10,000张图像。
- 随机数据集:包含100,000个随机数,分布为正态分布或均匀分布。
本文采用的网络结构由三层卷积层和三层全连接层组成。损失函数采用交叉熵损失函数,联邦学习的批量大小设置为10,使用随机梯度下降进行训练。
6.2 APM 和 MLE-APM 方法的评估
6.2.1 APM 方法的评估
首先,使用随机数据集评估APM方法的数据扰动效果。为了提高评估的准确性,对数据集进行十次扰动,并使用平均误差(AE)来评估效果。AE衡量了扰动数据的均值与原始均值之间的差异。具体来说,AE计算公式为:
$$
[
\text{AE} = \frac{1}{Z} \sum_{z=1}^Z | \hat{m} - m |
]
$$
其中,$(\hat{m}) $是扰动数据的均值,$(m) $是原始均值,$(Z) $为重复次数。AE值越小,表示扰动数据与原始数据的差异越小,均值估计越准确。假设使用了APM和PM方法的四个数据集:[0, 0.5] 和 [0, 1] 为均匀分布,分别记为$ (U(0, 0.5)) $和$ (U(0, 1))$,以及均值为0、标准差为0.5和1的正态分布,分别记为$ (N(0, 0.5)) $和 $(N(0, 1))$。使用隐私预算$ (\epsilon = 1) $测试两种方法的均值估计误差。
APM在$ (U(0, 0.5)) $数据集上将均值估计误差减少到了PM的三分之一,在 $(U(0, 1)) $数据集上减少了一半。对于正态分布的数据集,APM将平均误差分别减少到了PM的45%和39%(标准差分别为0.5和1)。这些结果表明,对于区间范围较小的数据集,APM更具优势。
6.2.2 在多隐私机制下评估MLE-APM方法
本节使用均值为0、方差为1的正态分布数据集评估MLE-APM在均值估计中的效果。在不同数据比例和隐私预算下评估了所提出的方法,使用了三组实验,分别命名为group1、group2和group3。隐私预算被设定为模拟个性化隐私保护场景。
图4的仿真结果表明,在所有数据比例和隐私预算下,MLE-APM均比普通的均值估计方法实现了更低的AE值。这证实了该方法在不同场景中的有效性。
6.3 对比实验
本节在不同实验设置下比较了所提出的FedAPCA框架与现有方法的性能。
6.3.1 动态隐私预算分配方法的评估
使用动态隐私预算分配方法的联邦学习与固定隐私预算进行了对比。实验在MNIST和CIFAR-10数据集上进行。
结果表明,使用动态隐私预算分配方法可以显著减少训练轮数,同时保持或提高模型的准确性。
6.3.2 APM 和 PM 方法的评估
使用APM、PM和不添加噪声的联邦学习方法进行了评估。隐私预算设定为3,训练轮数为100,结果显示,APM在MNIST和CIFAR-10数据集上的准确率分别提高了2.58%和1.76%。APM引入了较少的噪声,从而提高了均值估计的准确性。
6.3.3 异构数据下分层聚合的评估
将所提出的分层聚合机制与FedAvg和FedProx进行了对比。结果表明,在不同的异构性水平下,所提出的方法提高了模型的准确性。
6.4 消融实验
6.4.1 自适应分段机制消融实验
本节考察了FedAPCA中自适应分段机制的影响。结果表明,该机制通过引入精细化的扰动范围来降低噪声方差,从而提高了FedAPCA的模型准确性。
6.4.2 动态隐私预算分配消融实验
评估了动态隐私预算分配方法对FedAPCA的影响。结果表明,动态方法在减少训练轮数的同时,实现了相同或更高的准确性,从而在不同的训练阶段优化了噪声水平。
7.结论
在本文中,我们针对局部差分隐私联邦学习 (LDP-FL) 中用户的多隐私保护需求提出了相应的解决方案,这对于涉及数据分布不均的场景至关重要。我们提出了一种针对异构数据的多隐私机制下的联邦学习方法,称为 FedAPCA。这种方法使用户能够根据其特定的保护需求设定初始隐私预算并动态分配额外的隐私资源。为了尽量减少局部差分隐私引入的噪声,我们提出了一种自适应扰动方法,该方法采用自适应分段机制对模型的每一层进行单独扰动。此外,我们提出了一种基于该自适应分段机制的聚类层次聚合方法,以在扰动后优化本地更新,从而实现更精确的全局更新。聚类是基于模型相似性进行的,以平衡各种模型在异构数据集中的贡献,从而增强全局模型的泛化能力。
使用 MNIST 和 CIFAR-10 数据集进行的模拟表明,我们的框架在平衡隐私和数据可用性方面优于现有的先进方法。
然而,本文提出的自适应分段机制在模型更新值范围较小的场景中最为有效。当模型更新值分布在较窄的区间内时,该方法表现出显著的优势。而对于在 -1 和 1 之间均匀分布的模型更新值,该方法则简化为标准的分段机制。此外,本文提出的隐私预算分配方法在应用于高维数据时存在一定的局限性。在高维空间中的联邦学习中,需要一种更合适的动态隐私预算分配方法。随着联邦学习的应用不断扩展,对隐私泄露的担忧也日益增加。我们通过采用局部差分隐私来保护数据,但加入的噪声会降低数据的可靠性。因此,在应用局部差分隐私时,考虑数据可用性和隐私保护之间的平衡至关重要。