2.3.3 差分隐私在联邦学习中的应用
在联邦学习的实现过程中,要尽可能全面地考虑威胁模型和隐私攻击方式,使用相应的技术,达到隐私泄露的最小值。如上文所述,按照攻击者的目标,联邦学习的威胁模型可以分为模型窃取攻击和模型推理攻击。在联邦学习中,模型一般在参与协同训练的参与方中进行部署,不会向未参与训练的机构或者非客户端的实体开放模型使用接口,这就大大地提高了模型窃取攻击的难度。因此,联邦学习主要考虑模型推理攻击造成的隐私泄露。
模型推理攻击包括两种:旨在恢复数据集某些属性的属性推理攻击(又称为重构攻击),以及旨在判断某条数据(或某个用户)是否包含在训练数据集中的成员推理攻击(又称为追溯攻击)。受限于篇幅,本书不再对模型推理攻击的具体细节做进一步展开介绍,如感兴趣可参考文献[56]。
在横向联邦学习场景中,多个客户端在本地进行模型的训练,并将训练结果当作全局模型的中间结果上传到服务器。服务器再对各个客户端的结果进行聚合,作为全局训练结果发送至各个客户端。客户端和服务器多次交互,直至全局训练结果达到预期阈值,便可将模型在所有客户端进行部署。这是横向联邦学习的简单框架,具体的实现方法将在后续章节中进行详细介绍。在横向联邦学习中,模型推理攻击的威胁模型可以按照场景中的角色分为两种,即恶意的(不可信的)服务器和可信的服务器。
1.恶意的服务器
如果横向联邦学习的中心服务器不是完全可信的,那么客户端在上传数据之前,便会使用差分隐私机制对原始数据或者上传数据添加扰动,这便使得服务器无法从客户端的模型更新结果中推理出客户端的额外信息,这防止了模型推理攻击的发生。
比如,在Shokri等人的工作中,由于服务器对全局模型参数的每轮更新迭代都需要每个客户端上传梯度,用于聚合得到新的全局模型参数,而这些客户端的梯度计算是在自己的私有数据上完成的,如果将梯度直接上传给服务器,那么可能会产生隐私泄露的问题[57]。因此,Shokri等人提出了使用两个技巧保护用户隐私的方法。第一个技巧是上传部分梯度,而非全部梯度,因此,每个客户端可以自行判断某些梯度是否敏感以及自行决定是否将这些梯度上传;第二个技巧便是使用差分隐私,将服从拉普拉斯分布的噪声加入梯度之后,再上传至服务器,从而避免泄露任意一条数据的隐私。
2.可信的服务器
如果假设服务器是可信的,而在参与训练的客户端中存在恶意敌手,那么在服务器收到客户端的模型更新结果并进行聚合之后,便会使用中心差分隐私机制向聚合结果增加噪声,再发送回各个客户端。每个客户端收到的都是增加了扰动之后的结果,这便大大地增加了进行模型推理攻击的难度。如文献[56]所说,理论上,可以使用样本级的差分隐私防止成员推理攻击,也可以使用参与方级的差分隐私防止属性推理攻击。
尽管差分隐私有着强大的隐私保护功能,但是也存在各种亟待解决的问题,比如使用本地差分隐私时数据的可用性问题、分布式差分隐私对服务器的可信度要求等问题。文献[56]介绍的差分隐私,在防止成员推理攻击的实现过程中,出现了模型无法收敛的情况,其原因便是参与方数量较少导致添加噪声后的数据可用性无法保证。本节仅介绍差分隐私在联邦学习中应用的简单思想,在实际应用中则需要考虑如何解决上述问题。根据业务场景的具体需求,隐私保护的手段更加复杂,比如通常会使用安全多方计算与本地差分隐私进行结合,扩大本地差分隐私的隐私保护水平,共同保证用户隐私。
另外,值得一提的是,在文献[58]中,作者列举了近些年已发表的42个联邦学习方向的工作,其中纵向联邦学习的工作仅有4个,且均使用密码学方法作为隐私保护手段。也就是说,差分隐私主要应用在横向联邦学习中,以抵抗多个客户端和服务器之间的推理攻击;在纵向联邦学习中,则更多地使用密码学的方法保护数据隐私。