论文学习笔记 POSEIDON: Privacy-Preserving Federated Neural Network Learning
目录
一、机器学习
1. 机器学习(ML)中的挑战
-
为了实现健壮的机器学习模型,需要在多个数据提供者之间共享数据。
-
问题1: 数据分享是困难的。
1.敏感数据
2.隐私条例(HIPAA,GDPR)
3.商业竞争 -
ML模型的合作训练。
-
问题2: ML模型泄露了训练数据的信息。
-
提供机器学习作为一种服务(machine learning-as-a-service)。
-
问题3: 用于预测的个人数据是敏感的。
2. 隐私保护机器学习(PPML)
基于多个数据提供者的数据,建立分布式机器学习模型,进行隐私保护训练和推理。模型保护了数据和模型机密性。
- 中心化——集中训练
1.将原始数据传输给可信第三方,可信第三方汇总数据到中央数据库
2.数据保护: 中央数据库的安全
3.需要信任中央服务器 - 去中心化——联邦学习
1.将模型带到数据中进行本地模型更新,而不是将数据带到模型中。模型是敏感的。
2.共享中间模型更新(梯度)会导致各种隐私攻击,比如提取各方的输入。 - 隐私保护去中心化——差分隐私
1.在数据所有者之间交换差分隐私的中间值。
2.效用降低。
3.高隐私预算
4.隐私的实际实现水平仍不清楚。 - 隐私保护去中心化——安全多方计算
1.基于秘密共享技术的服务器模型,数量为2、3或4。
2.在分割信任的服务器数量方面具有限制。
3.假设在计算服务器中有诚实的大多数。
4.高的通信开销
二、POSEIDON方案
该论文扩展了SPINDLE(针对通用线性模型的隐私保护训练和评估),通过多方同态加密建立了一个新的系统,在分布式设置中使更复杂的模型(即神经网络(NNs))的隐私保护训练和评估成为可能,提供端到端保护:
- 各方的训练数据
- 结果模型
- 查询者的评估数据
1. 系统和威胁模型
-
系统模型
1. N N N个数据提供者,每个本地持有自己的数据来训练神经网络模型。
2.查询者对模型进行查询,得到模型评估数据的预测结果。
3.为了提高通信效率,通信各方以树状网络结构相互连接。 -
威胁模型
一个多达N-1方串通的被动敌手模型。 -
目标
1.数据保密: 在训练和预测过程中,除了从自己的输入数据中推断出的信息外,任何一方都不应了解其他诚实方的输入数据的更多信息。
2.模型机密性: 在训练和预测过程中,除了可以从自己的输入数据中推断出的信息外,任何一方都不应该获得关于模型的更多信息。
2. 方案总览
该方案提供了一个依赖于多方同态加密(MHE) 和联邦学习的解决方案。具体地,该方案依赖于一个MHE方案,它是针对基于RLWE的CKKS的变体,可抵抗后量子攻击。
- 本地数据总是保存在数据提供者的前提下。
- 在训练和评估过程中,神经网络模型的权重始终是加密的。
多方同态加密(MHE)
- 各方都知道公开的集体密钥。
- 相应的私钥被分发给各方。
- 解密需要各方之间的协作。
- 为更新密文提供有效的协作bootstrapping。
下面给出基于BVF的MHE的协作密钥生成协议。
注:可忽略,这里只是形象展示一下多方安全地协作计算
联邦学习
问题: 数据提供者必须在梯度下降过程中协作,否则他们会找到不同的最小值。
我们依赖于基于联邦学习的方法,其中
- 每个数据提供者执行若干局部迭代,并计算每一层的梯度。
- 这些梯度在各方之间聚集在一起,各方用梯度的平均值进行模型更新。
解决方案: 数据提供者(DPs)协作实现联合梯度下降,同时保护其隐私,并获得全局和准确的模型。
- 定义任务,例如训练神经网络模型。
- 每个DP对其数据执行若干次训练迭代。
- 在一个全局模型中,DPs共同并迭代地组合它们的梯度(更新)。
- 训练结束后,该模型被保密,用于不经意的预测。
主要挑战和解决方法
-
梯度下降挑战
1.非多项式激活函数,如Sigmoid, Softmax
2.昂贵的同态运算,即旋转,自举
3.特定于模型的函数,即卷积神经网络(CNNs)中的池化 -
对应措施:
1.激活函数的最小二乘近似
2.启用单指令多数据(SIMD)的特定问题打包方案
3.引入多个函数到分布式bootstrapping中 -
Bootstrapping挑战
该模型在多次迭代过程中是持久的→大的乘法深度→密文需要bootstrapping -
对应措施:
1.高效和写作的bootstrapping
2.通过参数最小化bootstrapping数量 -
参数化挑战
学习参数和密码参数之间的强相关性 -
对应措施:
选择密码参数的约束优化问题
3. 方案
CKKS简介
下面是CKKS的基本表述
下面是POSEIDON中使用的CKKS相关密码操作函数
协作训练
文中采用MapReduce架构来描述协作训练,下面是协作训练协议以及梯度下降算法,理解起来不难。
其他重要功能
下面是交替打包协议
下面是任意线性转换的分布式Bootstrapping协议
下面是旋转功能的应用,包括向左旋转求内积和以及向右旋转复制两个功能。
为了更直观地掌握其原理,下面是一个小demo
POSEIDON 实例
将POSEIDON运用到2层多层感知机网络中,得到以下实例
总结
这篇文章主要是扩展了SPINDLE方案,将线性模型扩展到神经网络模型,提出了一个新的系统POSEIDON。具体地,文章首先基于2017年提出的CKKS方案设计了多方同态加密,虽然并未给出具体的基于CKKS的多方同加密方案内容,但这很容易从2020年基于BFV的MHE进行推导。此外,文章的贡献还包括1)设计了一种交替打包方式,减少了矩阵向量乘法中的转置和旋转操作2)给出了神经网络模型中密码参数和机器学习参数的联系,构建了一个优化模型用来减少密码操作。
参考文献
[1] D. Froelicher, J. R. Troncoso-Pastoriza, A. Pyrgelis, S. Sav, J. S. Sousa, J.-P. Bossuat, and J.-P. Hubaux. Scalable privacy-preserving distributed learning. Privacy Enhancing Technologies Symposium (PETS), 2021.
[2] C. Mouchet, J. R. Troncoso-pastoriza, J.-P. Bossuat, and J. P. Hubaux. Multiparty homomorphic encryption: From theory to practice. In Technical Report https://eprint.iacr.org/2020/304, 2019.
[3] J. H. Cheon, A. Kim, M. Kim, and Y. Song. Homomorphic encryption for arithmetic of approximate numbers. In Springer International Conference on the Theory and Application of Cryptology and Information Security (ASIACRYPT), 2017.
[4] J. Fan, F. Vercauteren. Somewhat practical fully homomorphic encryption. IACR Cryptol. ePrint Arch., 2012.
[5] C. Jiang, C. Xu, Y. Zhang, PFLM: Privacy-preserving Federated Learning with
Membership Proof, Information Sciences (2021), doi: https://doi.org/10.1016/j.ins.2021.05.077.
[6] S. Sav, A. Pyrgelis, J. R. Troncoso-Pastoriza, et al. POSEIDON: Privacy-preserving federated neural network learning[J]. arXiv preprint arXiv:2009.00349, 2020.