APP下载

面向深度学习的差分隐私保护方法∗

2020-10-30

舰船电子工程 2020年9期
关键词:差分梯度噪声

(海军装备部 北京 100076)

1 引言

2006年,深度学习概念及训练方法由Geoffery Hinton在科学杂志上提出,从此开启了深度学习模型和应用的研究[1]。深度学习模型通过模拟人脑处理信息的方式建立深度神经网络[2]。近年来,深度学习模型在语音处理[3]、自然语言处理[4],尤其是计算机视觉[5]等领域的应用取得了突破性的发展。然而,许多恶意用户在云平台上攻击深度学习模型,以获取训练样本数据的隐私[6]。因此,如何在训练过程中保护用户的敏感信息成为云计算研究中的一个重要课题。

文章开展面向深度学习模型的隐私保护技术研究,差分隐私保护方法通过添加噪声来干扰数据,以保护数据集中单个样本的不可分辨性。它的优点是易于实现,减少了额外的计算和通信开销,为隐私保护属性提供了严格的理论证明。文章将差分隐私理论引入到深度学习模型的训练过程中,提出了一种基于梯度的差分隐私优化器,从而保护训练数据集的敏感信息。近年来,基于GPU辅助的加速方案在许多领域已得到了广泛的应用。并且,由于计算机统一设备体系结构(CUDA)编程范式的引入,图形领域之外的大量计算问题都得益于GPU的优越性能[7]。这也是目前许多学者利用GPU辅助加速各种算法效率的原因。差分隐私技术满足协同数据集的并行理论,即单独在协作数据集上添加相同隐私保护级别的噪声不会导致总体隐私损失的累积。因此,文章基于CPU-GPU混合系统作为差分隐私优化器的协同训练模式,设计了一个基于梯度的差异隐私优化器,为数据的隐私保护提供强大支撑。该方法不仅保证了深度学习模型的训练效率,而且引入差分隐私优化器对模型进行了隐私保护。

2 相关工作

近年来许多学者开展了模型安全层面的研究。而如何保护深度学习模型的隐私,在国内外正处于萌芽和积极的发展状态。

差分隐私概念的形式化定义由Dwork等[8]首先提出,并对其基本原理和应用进行了较为详细的阐述。差分隐私自2006年发表以来,在机器学习和数据挖掘领域引起了广泛的关注。Abadi等[9]首次将差分隐私技术与深度学习相结合,设计了满足差分隐私的随机梯度下降优化算法,即在SGD算法的梯度更新值中加入适当的高斯噪声,以保证最终模型参数满足差分隐私属性,保护训练数据的隐私。然而,该方法存在差异隐私预算会随着迭代次数的增加而消耗的问题,因此隐私预算限制了模型的迭代次数,这就影响深度学习模型的准确性。此外,模型参数的增加会导致每个迭代过程中隐私预算的消耗增加,从而限制深度学习模型的规模。基于同样的想法,文献[10]将差分隐私引入到生成对抗性网络(GAN)中,不同于SGD算法原有的差分隐私,它在识别过程中只增加了梯度更新的噪声,但同时也存在迭代次数限制和模型容量限制的问题。文献[11]提出基于深度卷积生成对抗网络(DCGAN)反馈的差分隐私保护方法,通过在DC⁃GAN训练过程中加入噪声,达到保护模型隐私的目的。但是以上研究方法由于效率的原因,均无法使用规模较大的深度学习模型。文献[12]提出了一种基于协同训练的隐私保护方法,以试图在保护模型隐私的同时,提升模型训练效率。为了保护深度学习模型的隐私,文章提出了一种基于CPU-GPU混合系统协同训练模式的差异隐私优化器。

3 文章方案

3.1 基于梯度的差分隐私优化器

文章拟借鉴经典隐私保护方法中的差分隐私机制,增强模型的安全性。通过在模型参数中加入随机扰动,使深度学习模型具有不确定性。但是,噪声的尺度将对深度学习模型的精度产生重要影响。为了解决上述问题,文章提出了一系列的优化方法,包括随机抽样、基于预训练阈值的梯度裁剪、基于梯度的随机扰动和先进的隐私预算统计方法,以减少差分隐私带来的精度损失。以下步骤阐述面向深度学习模型差分隐私优化器。

1)构建模型:首先根据目标需求搭建相应的网络模型,每次迭代过程以一定比例q从训练集中随机采样一个batch的数据Bt,然后正常执行前向传播过程,根据模型的输出和样本的分类标签,以及任务相关的损失函数,计算得到模型在该batch数据上的损失值L。

2)梯度计算:在SGD优化器根据损失函数计算得到梯度信息时,将各个样本xi的梯度信息从总梯度信息中分离出来:gt(xi)=∇θtL(θt,xi)。

3)梯度裁剪:由于损失函数不同参数的梯度值可能差异巨大,会导致差分隐私机制中需要的敏感度值过大,引入过大的噪声,因此需要对梯度信息进行裁剪。通过预训练模型,统计梯度信息,预定义阈值参数C,然后基于C对梯度进行裁剪,保证所有参数的梯度值都不超过 C:

4)梯度干扰:为避免模型参数暴露出关于单个训练样本的信息,拟采用基于高斯机制的差分隐私算法,对梯度信息进行干扰。根据上一步定义的C,可以得到高斯分布的方差σ=CI2,因此干扰后的梯度值为。其中I表示单位矩阵,N(0,σ2C2I)表示均值为0,方差为σ2C2I的高斯分布。注意,在前面步骤中梯度裁剪是针对单个样本对参数的梯度进行,这里的噪声添加也是添加到单个样本对参数的梯度上,但是为了保证训练的稳定性,训练算法采用SGD方法进行,因此最终使用的梯度是所有batch中样本得到的干扰后梯度的平均值。

5)参数更新:最后,基于干扰后的梯度更新参数值:θt+1=θt-ηt*gˉi。其中ηt是本次迭代的学习率。

6)隐私预算统计:同时,我们需要累计本次迭代所带来的隐私消耗。根据差分隐私的定义,可以得到基于梯度值的差分隐私预算满足Pr[g(x)∈O]≤Pr[g(x∪d)∈O]+δ。

差分隐私在理论上有严格的数学基础,无论攻击者有多么强大的背景知识,都能从概率上保证个体的不可区分性。因此,通过上述基于差分隐私的的模型安全增强方法能够保证恶意攻击者无法通过查询最终得到的模型而推测出训练集中的样本信息,从而保证模型及其训练数据的隐私性,达到对模型安全增强的目的。

3.2 差分隐私优化器的协同训练模式

文章设计混合CPU-GPU系统,基于该系统实现基于梯度值的差异隐私优化并行方案,如图1所示。单个GPU上加入扰动后得到梯度值,随后每个GPU将计算出的带噪声的梯度值发送回主计算单元进行合并,并完成更新过程。此外,由于差分隐私并行理论的支持,最终模型能够满足差分隐私预算。

图1 差分隐私优化器的协同训练模式

差分隐私技术满足不相交数据集的并行理论,即在不相交数据集上分别加入相同隐私级别的噪声不会导致总隐私损失的累积。因此,充分利用异构计算资源,加快了基于梯度的模型差异隐私的计算速度。

4 实验分析

4.1 数据集

我们在MNIST和CIFAR10标准数据集上进行了实验。MNIST数据集包含10个类别的手写数字,每个类别对应一个阿拉伯数字。数据集共包含70000张灰度图像(深度1,彩色图像深度3),其中60000张训练图片,10000张测试图片。每张图片由28×28像素组成,每个像素由一个灰度值表示。用于测试MNIST数据的网络模型是LeNet5网络模型,该模型已成功应用于数字手写体识别领域。表1提供了两个附加数据集的说明。

表1 实验数据集

4.2 实验环境

实验基于TensorFlow,利用两个标准数据集对该文章提出的方法进行了性能评估。实验中的硬件平台配置如表2所示。实验中使用NVCC作为编译器来编译GPU相关代码,GCC被用作编译C++代码的编译器。

表2 实验环境

4.3 实验验证

为了评价该方法的有效性,我们从模型准确性和训练效率两个方面对其进行了评价。图3显示了基于差分隐私优化器后的训练结果的准确性。总地来说,该方法保证了深度学习模型的准确性。

图2 加入了差分隐私保护的模型准确度

图2中的横坐标表示迭代次数。文章中提出方法的准确性是可行且有效的。例如,MINIST上LeNet5的精度高达96.1%。两种模型的精度均在80%以上。因此,该方法在模型隐私保护方面具有实际应用价值。实验利用小批量的方式来训练两个深度学习模型,以加快收敛速度和训练效率。图3显示了与一般CPU系统相比,基于差分隐私优化器的模型训练也可以获得一定程度的加速。图3表明,两个模型的加速比都有所提高。因此,文章提出的协同训练方法应用于基于差分隐私的模型安全增强是有效的。具体来说,加速比可达29.2%。当批量值为128时,加速比明显大于其他值。因此,文章的方法不仅保护了模型的隐私,也可以提升训练效率。

图3 基于联合训练模式的加速比

5 结语

文章设计了一个利用CPU-GPUs混合系统,基于协同训练模式的差异隐私优化器。并且,通过对深度学习模型进行差分隐私保护,与一般的数据加密算法相比,降低了计算复杂度,同时保证了深度学习模型的隐私性,提高了训练效率。实验结果表明,文章方法的准确性是可行的和有效的。其加速比可达20%~30%。在未来,我们可以进一步量化参数对深度学习模型准确性的影响。

猜你喜欢

差分梯度噪声
一类分数阶q-差分方程正解的存在性与不存在性(英文)
基于应变梯度的微尺度金属塑性行为研究
基于声类比的仿生圆柱壳流噪声特性研究
一个求非线性差分方程所有多项式解的算法(英)
一个具梯度项的p-Laplace 方程弱解的存在性
内容、形式与表达——有梯度的语言教学策略研究
汽车制造企业噪声综合治理实践
航磁梯度数据实测与计算对比研究
一类caputo分数阶差分方程依赖于参数的正解存在和不存在性
基于差分隐私的数据匿名化隐私保护方法