论文学习记录20200508:隐私保护机器学习[ccs2019]

论文学习记录20200508:隐私保护机器学习[ccs2019]
QUOTIENT: Two-Party Secure Neural Network Training and Prediction

最近,有大量的工作致力于为机器学习任务设计安全协议。其中大部分是为了实现高精度深层神经网络(DNNs)的安全预测。
然而,由于dnn是基于数据进行训练的,一个关键问题是如何安全地训练这些模型。以前关于安全DNN训练的工作很少,主要集中在为现有训练算法设计自定义协议,或者开发定制的训练算法,然后应用通用的安全协议。
在这项工作中,作者研究了在设计新的安全协议的同时设计训练算法的优点,同时在两个方面进行了优化。
提出了一种DNNs离散化训练的新方法商,并为其定制了一个安全的二方协议。最新DNN训练中的商组成部分,如层规范化和自适应梯度方法,改进了DNN训练中两方计算的最新技术。与以往工作相比,广域网时间提高了50倍,绝对精度提高了6%。论文学习记录20200508:隐私保护机器学习[ccs2019]本文介绍了一种利用不经意传递(OT)安全地训练深层神经网络模型的新方法——商。
通过同时设计新的机器学习技术和为机器学习训练量身定制的新协议,商在精度和速度上都提高了最新水平。
作者的工作是作者意识到的第一个能够对卷积层和剩余层进行安全培训的工作,卷积层和剩余层是现代深度学习的关键组成部分。
然而,在卷积网络上的训练仍然是缓慢的,并且用作者的方法带来了很大的通信负载。为卷积层的快速评估寻找专用的MPC协议是一个有趣的进一步工作的场所

与前人的优势:
作者所知的2PCsecure神经网络安全训练的唯一先前工作是SecureML[41]。他们只报告了MNIST数据集上全连接神经网络训练的结果。2PC商能够在LAN上不到16小时和WAN上不到90小时内达到最佳精度水平。这相当于局域网速度提高5倍,广域网速度提高50倍。特别是商可以在广域网上进行2PC神经网络训练。此外,作者的2PC商训练能够在MNIST数据集上达到99.38%的ART精度,在收敛时比SecureML的错误率绝对提高6%,对于单次预测,2PC商的速度要快13倍,对于局域网上与SecureML不兼容的成批预测,2PC商的速度要快7倍。此外,与WAN上的SecureML相比,2PC商为单个预测提供了3倍的速度,为成批预测提供了50倍的速度。

Contribution:

本文提出了一种新的DNNs安全双方训练和评估方法商,并提出了一种半诚实安全的安全计算方法2PC商。作者的主要见解是,最近在嵌入式设备定点培训深层网络方面的工作[57]可以用于安全培训。具体来说,它包含有用的基元,例如重复量化到低定点精度以稳定优化。然而,开箱即用的这项工作并没有导致一个有效的MPC协议。为此,作者从ML和MPC两个角度做出了以下贡献:

1在前向和后向传递过程中,作者对网络权值进行三元化:W∈{-1,0,1}。因此,三值矩阵矢量乘成为训练的关键原语。然后,作者提出了一个基于相关不经意传输的三值矩阵向量多重复制的专用协议,该协议结合了布尔共享和加法共享以提高效率

2作者通过MPC感知的方式进一步修改了后向通行证,通过在安全计算中使用非常有效的实现方式替换了诸如量化和归一化等操作,作者在第6节中凭经验观察到这种变化对准确性没有影响。 伴随着这些变化,作者将技术扩展到了残余层[21],这是DNN的关键组成部分。

论文学习记录20200508:隐私保护机器学习[ccs2019]
威胁模型

两方模型中,训练过程外包给两个服务器。
它通过在服务器上共享训练数据集D来工作。
这如图2(左)所示:用户秘密在两个非共谋服务器上共享其值(a0,y),这两个服务器运行训练过程并获得生成的秘密共享模型:[[W]]1,[[W]]2。作者从图2(左)中展示了实现TrainModel(D)的快速MPC协议。因此,作者的所有协议通过输入和输出加法共享在双方P1和P2之间呈现为两方协议。作者的协议在安全计算的半诚实模型中是安全的,
如图2(右)所示。客户机C有私有数据a0,他希望通过服务器S的私有模型W对其进行私有预测。MPC中用于双方训练的快速协议立即产生用于私有预测的快速协议,因为预测对应于前向传入训练(即算法1)。

论文学习记录20200508:隐私保护机器学习[ccs2019]
下面是一个优化dnn的方法。这项工作最初是为嵌入式设备设计的,但是它可以重复量化到较低的定点精度,以稳定优化。然而这个不能完全地直接使用,所以他们做了一点改变。
左边是原来的方法,右边是改过的
第一个,网络权重三值化,通过令精度为1,也就是凡小于0都为-1,大于0都为1,等于0还是0,让这个w中的元素为{-1、0、1},它的好处就是这将允许与W的矩阵乘法被描述为重复的1/2不经意的传输,这个后面还会说的

第二个,作者将npow替换cpow。 npow操作比cpow(x)要快,因为cpow还需要计算先前的2次方,并将它们进行比较,以找到最接近的2次方。npow具有更高效的电路实现,作者将在下一部分中利用作者的安全协议。

第三个是,作者为后向传递的权重梯度构造了MPC友好的量化函数,用无饱和量化代替了偏向的硬币翻转和截断步骤,而不会降低精度;
论文学习记录20200508:隐私保护机器学习[ccs2019]
这是深度神经网络的几个层,全连接层、卷积层什么的,下面是输入,上面是输出,可以看到在每一层中都有一个必不可少的运算是W乘a,w是权值,a呢不能给他赋予意义,在第一层,他作为a0是输入,也可能是最后一层,作为al是输出,预测值,作为中间的,al是全连接层的**值。但是不管怎么说,w和a都是矩阵,这里都有矩阵乘法
论文学习记录20200508:隐私保护机器学习[ccs2019]
下面就是矩阵乘了,这权值w,前面或定点量化的时候就把它编成三值了,所以他是一个-1、0、1组成的nxm的矩阵,a也编码成一个定点整数向量,是mx1的向量,计算z就是wa。
因为在多方计算中乘法的开销是比较大的,所以在这里用矩阵的三值化就能够替换掉这个乘法的过程,算法5,还需要判断wij与0的大小比较就可以计算z了,不需要乘法过程了。在布尔电路中,和0比较这个步骤是free免费的,所以说这样的乘法会很快。
这里就要把这个三值的转换成布尔电路中那种01二进制的形式。就是下面这个转换,用w+和w-,所以原来的wa就成了这个w+a - w-a,w+和w-都是布尔型
论文学习记录20200508:隐私保护机器学习[ccs2019]
因为是两方计算,所以这个协议就是去计算w的布尔共享和a的算术加法共享的结果wa的加法共享。这里主要使用了mxCOT,COT是关联不经意传输,如右上这个图所示。

看PPT,看图,这个图我觉得我画的还是蛮清晰的哈哈哈,希望未来返回来复习这篇论文的我不要来打我~
论文学习记录20200508:隐私保护机器学习[ccs2019]
论文学习记录20200508:隐私保护机器学习[ccs2019]
看图就好了……

论文学习记录20200508:隐私保护机器学习[ccs2019]
表1比较了基于cot的方法的运行时间,协议7
QUOTIENT显然会胜过所有其他方法。erqie大多数DNN层都涉及大于10^4的乘法运算,这使作者的方法更适合那些应用。

表2比较了三元128 x n矩阵和n维向量的协议8的实现性能。与表1类似,作者用三元值(2位值)填充矩阵,并向矢量中填充最多128位值。 作者的方法比WAN for n≥500上的OT协议快大约10倍。 通常,随着作者增加计算数量,提速也随之增加.
论文学习记录20200508:隐私保护机器学习[ccs2019]
在本节中,作者评估在实际数据集上测试的QUOTIENT。
表3中的浮点训练对应项进行了比较。(i)商 仅对浮点数的训练造成很小的精度损失,培训达到了MNIST的最新精确水平,而对于德国学分、运动感和甲状腺数据集,作者的差异最多为2%

并且(ii)它比定点数神经NN训练的最新技术WAGE [ 57]。 (i)和(ii)都适用于几种最先进的体系结构,包括全连接层,卷积层和残差层,以及不同类型的数据(有关残差层的结果,请参见附录B)。

对于作者的2PC协议,作者显示(iii)2PC-QUOTIENT在准确性和运行时间方面以及LAN和WAN设置方面均优于DNN SecureML [41]的现有安全培训方法。 作者首先报告各种数据集的准确性,以显示上面的(i)和(ii)。 然后分别进行2PC-QUOTIENT训练和预测的端口运行时间来论证(iii