【阅读笔记】SecureML: A System for ScalablePrivacy-Preserving Machine Learning

1. Motivation 

针对机器学习中的出现的数据隐私泄露的风险,提出了线性回归、逻辑回归以及简单神经网络的隐私保护模型。

2. Contributions

2.1 为线性回归、逻辑回归以及神经网络设计安全计算协议

2.1.1.1 线性回归

线性回归损失函数为:

  ,

采用SGD算法处理损失函数,权重w的更新公式为:

式子只有加法、乘法运算,秘密分享的形式为:

\small \langle w_j\rangle:=\left\langle w_{j}\right\rangle-\alpha \operatorname{Mul}^{A}\left(\sum_{k=1}^{d} \operatorname{Mul}^{A}\left(\left\langle x_{i k}\right\rangle,\left\langle w_{k}\right\rangle\right)-\left\langle y_{i}\right\rangle,\left\langle x_{i j}\right\rangle\right)

写成向量的形式为:

\small \langle \mathbf{w}\rangle:=\langle \mathbf{w}\rangle-\frac{1}{|B|} \alpha \operatorname{Mul}^{A}\left(\left\langle\mathbf{X}_{B}^{T}\right\rangle, \operatorname{Mul}^{A}\left(\left\langle\mathbf{X}_{B}\right\rangle,\langle\mathbf{w}\rangle\right)-\left\langle\mathbf{Y}_{B}\right\rangle\right)

根据Beaver's triple 计算矩阵乘法:

这里需要注意的是文章中说明的是两个服务器,都以获得数据的一个份额,并不是各方持有一份完整的数据。【阅读笔记】SecureML: A System for ScalablePrivacy-Preserving Machine Learning_第1张图片

可得:,之后的乘法运算都依据这个式子。

完整过程如下:【阅读笔记】SecureML: A System for ScalablePrivacy-Preserving Machine Learning_第2张图片

【阅读笔记】SecureML: A System for ScalablePrivacy-Preserving Machine Learning_第3张图片

2.2 运算中小数的处理

计算小数乘法,x*y,假设x和y都最多有D为小数。

(1)将x和y进行扩大

x^{'}=2^{l_D}x,y^{'}=2^{l_D}y

(2)截断小数

        扩大后结果为z=x^{'}y^{'},小数位数最多D为,所以将最后D位截取,截断后的结果可写为z=z_1\cdot2^{l_D}+z_2,用[z]表示截断操作则最的相乘结果为z_1

【阅读笔记】SecureML: A System for ScalablePrivacy-Preserving Machine Learning_第4张图片

2.3 优化激活函数

        在逻辑回归算法中,有函数f()=\frac{1}{1+e^{-x}},其中在实数域中,该函数包含的除法和求幂运算很难支持2PC和布尔运算,比之前工作用多项式去逼近函数不同的是,作者提出一个Friendly activation function,函数为f(u),f(u)图像如下图所示。

f(u)=\left\{\begin{array}{ll} 0, & \text { if } u<-\frac{1}{2} \\ u+\frac{1}{2}, & \text { if }-\frac{1}{2} \leq u \leq \frac{1}{2} \\ 1, & \text { if } u>\frac{1}{2} \end{array}\right.\textup{}              【阅读笔记】SecureML: A System for ScalablePrivacy-Preserving Machine Learning_第5张图片

 构造的灵感来源于:

(1)函数值应该收敛在0和1之间;(2)RELU函数

2.4 引入了面向秘密共享的向量化计算

线性回归下模型权重更新公式为,仅涉及加法和乘法。秘密分享形式下的加法在本地即可计算,而乘法需要借助Beavers Triple。但是元素级别的运算效率太低,这里优化为矩阵乘法C=A\cdot B,由2.1节可知C的Share为:,这样可以大大加快计算效率。

【阅读笔记】SecureML: A System for ScalablePrivacy-Preserving Machine Learning_第6张图片

3. Q&R

3.1 为什么加法秘密共享是环上,shamir是在域上?

答:加法秘密分享只需要加减法就可以定义分享和恢复算法;shamir的恢复算法需要计算离散空间的除法,环中因为有些元素没有逆元,所以没法保证恢复算法能成功。域中元素都有逆元,可以计算除法。

3.2 隐私计算往往要求在有限域上运算,实际问题怎么去应用?

答:需要转化为将实际的运算转化到有限域的代数系统中。

4. Summary

        优化一个问题,可以从各个方面入手,有的对结果有直接影响,有的是间接影响;有的直接影响大,有的直接影响小。

Reference

1.论文阅读笔记:SecureML: A System for Scalable Privacy-Preserving Machine Learning - 知乎

2.为什么不可以直接在实数上进行秘密分享? - 知乎 (zhihu.com)

你可能感兴趣的:(论文阅读笔记,机器学习)