摘要
基于云的深度学习的日益普及引发了关于准确预测和数据隐私的问题。以前的研究已经实现了简单神经网络的隐私预测。由于更复杂的神经网络需要更多的计算开销,现有的隐私预测方案效率低下。为了解决上述问题,本文介绍了一种可应用于加密数据的轻量级卷积神经网络(CNN)的隐私预测方法。首先,在不影响原有精度的情况下,将复杂的 CNN 剪裁成轻量级网络,可以高效地实现安全预测。其次,采用FV同态加密方案对用户的敏感数据进行加密,CNN中的每一层都是在密文上计算的,从而保护用户的数据隐私。最后,安全分析和实验结果证明了所提方案的隐私保护特性和实用性,在MNIST数据集上的复杂CNN可以达到98%以上的准确率。
1. 介绍
近年来,人们对机器学习和深度学习越来越感兴趣。由于数据量的激增、计算能力和算法的突破,深度学习在各个领域取得了巨大成功,如医疗诊断[6,11]、人脸识别[5,22]和信用风险评估[1,4]。自1996年美国国会通过《健康保险可携带性与责任法案》(HIPAA)以来,用户隐私问题越来越受到关注。随后,各国通过了1974年《支持多重隐私法》、《通用数据保护条例》和其他法案来保护用户的数据隐私。在大数据环境下,用户担心他们的私人信息会被收集,服务提供商也会担心模型的泄露。因此,在保证双方数据隐私的同时,实现基于深度学习的数据分析是一个重要的问题。
对于神经网络,基于同态加密、安全多方计算和差分隐私等密码学工具已经广泛研究了几种隐私保护方案。其中,同态加密允许对密文进行计算生成加密结果,其结果与解密后以明文形式执行的结果相同。然而,目前的同态加密方案有很多局限性。例如,它们只支持整数数据,需要固定的乘法深度或者不能无限期地执行加法和乘法运算。由于同态加密算法的局限性,它们不能直接用于机器学习或深度学习,以支持比较和最大值的操作。安全多方计算是另一种将功能分发给多方的隐私保护工具,每一方都无法获取其他方的数据。最早的安全多方计算是 1986 年由 Andrew Yao [27] 提出的百万富翁问题。
卷积神经网络是一种常用的有监督机器学习算法,通常分为两个阶段:训练阶段和推理阶段。在培训阶段,用户的敏感数据不应泄露给执行模型培训的服务器,而在推理阶段,用户想要预测的敏感数据不应泄露给服务器,服务器拥有的深度学习模型不应泄露给用户。同样,安全卷积神经网络在应用于敏感信息(如医疗数据)时也包括上述两个阶段。目前,卷积神经网络有各种隐私预测方案,以实现安全训练[17,26]和安全推理[9,21]。然而,更复杂的神经网络会带来更大的计算开销,现有的预测方案不适合实际应用。
1.1 主要贡献
为了实现安全高效的隐私预测,我们提出了一种新的带有轻量级卷积神经网络 (CNN) 的隐私预测方法。我们在患者希望使用医院服务器训练的复杂 CNN 对私人图像进行分类的情况下考虑这个问题 。主要贡献总结如下。
- 受Li等人方案[15]的启发,我们将复杂的CNN裁剪为轻量化CNN,对准确性的影响可以忽略不计,这可以有效地支持数据预测。
-
我们利用FV同态加密方案[7]对患者的私人图像进行加密,以保护敏感数据的隐私。除softmax层外,CNN中的每一层都是在密文上计算的。
-
最后,我们分析了所提出的隐私预测方案在 CNN 中的安全性并进行了实验,证明了复杂的 CNN 在 MNIST 数据集上可以达到 98% 准确率的实用性。
1.2 相关工作
近年来,人们提出了几种卷积神经网络隐私预测方案来实现安全训练。Hokri和Shmatikov[24]提出的方法允许双方在本地训练自己的神经网络模型,并有选择地与中央服务器共享某些参数的梯度。安全培训还允许每个数据所有者秘密地将培训数据共享到两个(或更多)无冲突的服务器,如SecureML[17]或SecureRenn[26]。这两种方案都基于同态加密、乱码电路[27]和秘密共享[2,23]。SecureML使用自定义激活函数,这对于使用安全计算协议训练神经网络更有效。
训练神经网络的安全推理也是主要的研究方向。微软提出的加密网[9]使用分级同态加密,可以实现一定数量的密文乘法。考虑到非多项式激活函数和池操作的支持,Rouhani等人[21]提出了DeepSecure框架,该框架使用ARBLED电路作为其主要加密算法。针对不同安全计算协议的特点,提出了许多基于混合协议的安全预测框架。例如,MiniONN框架[16]是基于乱码电路协议提出的,用于执行非线性化功能,并采用基于秘密共享的协议来执行线性操作。Chanelemon框架[20]将GMW协议[10]用于低阶非线性激活函数,并利用乱码电路协议计算更复杂的非线性激活函数。
2. 准备工作
2.1 同态加密
同态加密是一种重要的密码技术,其实现是基于数