Differentially Private Federated Learning: A Client Level Perspective

介绍

咱们的目标并非只保护数据。相反,咱们但愿确保一个学习模型不会显示客户是否参与了分散的培训。这意味着客户机的整个数据集受到保护,不受来自其余客户机的差别攻击。
咱们的主要贡献:首先,咱们展现了在联合学习中保持较高的模型性能时,客户机的参与是能够隐藏的。咱们证实了咱们提出的算法能够在模型性能损失很小的状况下实现客户级差别隐私。与此同时发表的一项独立研究[6]提出了一个相似的客户级dp程序。然而,实验设置不一样,[6]还包括元素级隐私措施。其次,咱们提出在分散训练中动态调整保留dp的机制。实证研究代表,模型性能是经过这种方式提升的。与集中式学习相比,联合学习中的梯度对整个训练过程当中的噪音和批量大小表现出不一样的敏感性。git

背景

联邦学习

在联合学习[5]中,管理者和客户之间的通讯多是有限的(例如移动电话)和/或容易被拦截。联邦优化的挑战是学习一个客户端和管理员之间的信息开销最小的模型。此外,客户的数据多是非iid的、不平衡的和大规模分布的。[5]最近提出的“联邦平均”算法解决了这些挑战。在策展人与客户的多轮沟通中,对中心模型进行培训。在每一轮交流中,管理者将当前的中心模型分发给一小部分客户。而后客户端执行局部优化。为了最小化通讯,客户端可能在单个通讯轮中采起几个小批量梯度降低步骤。而后,将优化的模型返回给管理员,管理员将它们聚合(例如平均)以分配一个新的中心模型。根据新中心模型的表现,要么中止培训,要么开始新一轮的沟通。在联合学习中,客户机从不共享数据,只共享模型参数。github

DP

在模型集中学习的状况下,数据层的数据保护问题已经作了大量的研究。这能够经过将保留dp的随机机制(如高斯机制)合并到学习过程当中来实现。web

https://blog.csdn.net/Ano_onA/article/details/100550926
https://blog.csdn.net/houzhizhen/article/details/78327217
https://www.zhihu.com/question/47492648/answer/194047182
https://ieeexplore.ieee.org/document/7911185/metrics#metrics
差分隐私的核心思想:对于差异只有一条记录的两个数据集,查询它们得到相同值的几率很是很是的接近。
如何作到差分隐私:在查询结果里加入随机性。最经常使用的方法是在结果上加知足某种分布的噪音,使查询结果随机化。
1.Laplace机制 :在查询结果里加入Laplace分布的噪音,适用于数值型输出。例如:zhihu里有多少人是985大学毕业的? 假如结果是2000人,那么每一次查询获得的结果都会稍稍有些区别,好比有很高的几率输出2001,也有较高几率输出2010, 较低几率输出1990,等等。
2.指数机制:在查询结果里用指数分布来调整几率,适用于非数值型输出。例如:中国top 3大学是哪一所。很高几率输出 浙江大学,较高几率输出上海交大,较低几率输出武汉大学,很低几率输出蓝翔技校,等等。
例子:早上查询了流感病人500人。我朋友A早上去医院看病。下午我一查,流感病人501人,那么我推测A很大可能患病。另要真正保护病人隐私,医院不能每次都公布准确数字,而应该在准确数字上加个噪声。要让这个查询知足DP,只要:医院公布的流感人数=精确人数+Laplace噪声。算法

直观地说,这意味着一旦学习模型显示某个数据点是否属于训练集的一部分的几率超过某个阈值,训练就会中止。框架

方法

在联邦优化[5]框架中,中心策展人在每一轮通讯以后对客户端模型(即权重矩阵)进行平均。在咱们提出的算法中,咱们将使用随机机制来改变和近似这个平均值。这样作是为了将单个客户机的贡献隐藏在聚合中,从而隐藏在整个分散学习过程当中。
咱们用来近似平均值的随机机制包括两个步骤:svg

  • 随机子抽样:设K为客户总数。在每一轮通讯中采样一个大小为mt≤K的随机子集Zt。而后策展人将中心模型wt分发给这些客户。中心模型由客户对其数据进行优化。Zt中的客户端如今拥有不一样的本地模型{wk}mt
    优化后的局部模型与中心模型之间的差别称为客户端k的更新∆wk = wk−wt。在每一轮交流结束时,更新信息会被发送回中心策展人。
  • 扭曲:高斯机制用于扭曲全部更新的总和。这须要了解集合对求和操做的敏感性。咱们能够增强必定的敏感性,使用缩放版本,而不是真正的更新:
    在这里插入图片描述在这里插入图片描述
    缩放确保第二个规范是有限的在这里插入图片描述
    所以,相对于求和操做,缩放更新的灵敏度上限为s。GM如今将噪声(按灵敏度S调整)添加到全部按比例调整的更新的总和中。s将GM的输出除以mt,获得全部客户更新的真实平均值的近似值,同时防止泄露关于我的的重要信息。

在现有的中心模型wt的基础上,加入该近似,分配新的中心模型wt+1。
在这里插入图片描述
当将1 / mt分解为高斯机制时,咱们注意到平均值的失真由噪声方差S2σ2/ m控制。可是,这种扭曲不该超过必定的限度。不然,过多的次采样平均信息会被添加的噪声破坏,不会对学习有进步。GM和随机子抽样都是随机的机制。(事实上,[1]正是在dp-SGD中使用了这种平均近似。可是,在这里它被用来进行梯度平均,在每次迭代中隐藏单个数据点的梯度)。也所以,σ和m定义隐私损失时随机机制提供了一个平均近似。性能

(我太难了。。。后面算法看不懂省略。。。)学习

实验

为了测试咱们提出的算法,咱们模拟了一个联邦设置。为了便于比较,咱们选择了与[5]类似的实验设置。咱们将排序后的MNIST集合分红碎片。所以,每一个客户端得到两个切分。这样,大多数客户将只有来自两位数的样本。所以,单个客户没法对其数据进行训练,使其对全部10位数字都能达到较高的分类精度。
咱们正在研究K∈{100,1000,10000}的场景的联邦设置中的差别隐私。在每一个设置中,客户端将得到600个数据点。对于K∈{1000,10000},数据点是重复的。
对于全部三个场景K∈{100,1000,10000},咱们对如下参数进行了交叉验证网格搜索:测试

  • 每一个客户的批次数量B
  • 每一个客户端上运行的时间段E
  • 参与每轮m的客户端数m
  • 通用参数σ
    咱们把ǫ的值定为8。在培训期间,咱们使用隐私会计师跟踪隐私损失。当δ分别达到100、1000和10000个客户的e-三、e-五、e-6时,训练中止。此外,咱们还分析了训练过程当中客户之间的差别。上述实验的代码可从如下网址得到:
    https://github.com/cyrusgeyer/DiffPrivate_FedLearning.

在这里插入图片描述

算法1客户端dp联邦优化。
k是参与客户端的数量;b是本地小批量大小,e是本地时间段(参与?)的数量,η是学习率,{σ}t t=0是GM的方差集。{mt}t=0决定参与每一客户端的数量.
ǫ定义了咱们的目标dp。Q是δ的阈值,即ǫ-dp被破坏的几率。T是δ超过q的通讯次数。B是保存客户数据的集合,该数据被切成大小为B的批次。
(T is the number of communication rounds after which δ surpasses Q. )优化

在这里插入图片描述

表1:差别性私人联合学习(DP)的实验结果和与非差别性私人联合学习(non-DP)的比较。100、1000和10000个客户的场景,隐私预算ǫ=8。δ′是ǫ-差别隐私被破坏的最高可接受几率。一旦达到δ′,训练就中止。准确度表示为“acc”,通讯次数表示为“cr”,通讯成本表示为“cc”。

实验结果

在交叉验证网格搜索中,咱们寻找那些保持在δ的相应界限如下且达到最高精度的模型。此外,当多个模型达到相同的精度时,首选须要较少通讯回合的模型。
在这里插入图片描述

图1:分散培训过程当中客户持有的非IID MNIST数据的数字分类精度。对于dp联邦优化,精度曲线末端的点表示达到了δ-阈值,所以训练中止。

表1保存了K∈{100,1000,10000}找到的最佳模型。咱们列出了准确性(ACC),所需的沟通轮数(CR)和产生的沟通成本(CC)。
通讯成本定义为客户在培训过程当中发送模型的次数,例如

在这里插入图片描述

图2:100个客户机的场景,非DP:在联邦优化过程当中,客户机之间的差别和更新规模的准确性

在图2中,再次描述了k=100的非dp联邦优化的准确性,以及训练过程当中的客户间方差和更新规模。

实验结果讨论

参与客户的数量对实现的模型性能有很大的影响。对于100和1000个客户机,模型精度不收敛,而且显著低于非dp状况。然而,对于K∈{100,1000},78%和92%的准确率仍然比客户仅根据本身的数据进行训练所能达到的任何结果都要好得多。在K所处的这个数量级的领域中,dp是最重要的,这样的模型仍然会极大地使参与的客户受益。这种领域的一个例子是医院。几百人能够联合学习一个模型,而关于特定医院的信息则被隐藏起来。此外,联合学习模型能够做为进一步客户端培训的初始化。
对于k=10000,dp模型几乎达到了非dp模型的精度。这代表,对于涉及多方的场景(移动电话和其余消费设备),dp几乎不影响模型性能
在交叉验证网格搜索中,咱们还发现,在训练过程当中提升Mt能够提升模型性能。观察一个早期的沟通回合,σ2保持不变,下降Mt和σt,几乎不会影响该回合的增益精度。几乎不会影响这一轮的精度。然而,当两个参数都下降时,隐私损失就减小了。这意味着,在隐私预算耗尽以前,能够在训练中进行更多的沟通。在随后的通讯回合中,得到较大的Mt才能得到准确性,而且必须考虑更高的隐私成本才能改善模型。
这一发现能够与信息论在学习算法方面的最新进展联系起来。
从图2中能够看出,Shwartz-Ziv和Tishby[8]提出,咱们能够将训练分为两个不一样的阶段:label fitting(标签拟合)和data fitting (数据拟合)阶段。
在标签拟合阶段,客户端更新类似,所以Vc较低,如图2所示。然而,在这个初始阶段,Uc是高的,由于对随机初始化的权重执行了大的更新。在数据拟合阶段,Vc的值上升。单个更新△wk看起来不类似,由于每一个客户都对本身的数据集进行了优化。
然而,当接近全局模型的局部最优值时,Uc却急剧缩小,精度收敛,贡献在必定程度上相互抵消。图2显示了Vc和Uc的依赖关系。
咱们能够得出这样的结论:

  1. 通讯回合的早期阶段,小的客户子集多是表明真实数据分布的平均更新△wt的缘由之一。
  2. 通讯回合的后期阶段,须要一个平衡的(更大的)客户端比例,来达到必定表明性的更新。At later stages a balanced (and therefore bigger) fraction of clients is needed to reach a certain representativity for an update.
  3. Uc为高值时,使得早期更新不易受到噪声的影响。

结论

研究代表,在客户级别上实行dp是可行的,当涉及足够多的参与者时,能够达到较高的模型精度。 此外,仔细调查数据和更新分布能够优化隐私预算。 对于将来的工做,咱们计划根据通讯回合,数据表明性和客户端之间的方差来得出信噪比方面的最佳界限,并进一步研究与信息论的联系。