本文向大家介绍一下一篇CCS 2016的工作,文章的名字叫Deep Learning with Differential Privacy,在网上应该很容易就能找到,如果有朋友找不到还有兴趣的话可以私信我把文章发过去。

这篇文章提出了一种叫Moments Accountant的隐私预算(privacy budget)计算方法,直到今天依然差分隐私机器学习领域是最常用(也是最优越)的隐私预算计算方法之一。

虽然本文为了验证其所提出的Moments Accountant方法做了很多实验,但是我们重点关注其理论部分,对于实验部分我们不做大篇幅的解读,有兴趣的朋友们可以参考原论文,也欢迎大家一起讨论。

【一】背景

从文章标题就能看出来:深度学习已经火了这么多年,但是其训练使用的数据可能是众包的,所以很有可能是具有个人敏感信息的,为了保证这种敏感信息在训练过程和模型发布的过程中不被泄露,本文提出一种具有差分隐私保证的深度学习算法。
文章所提到的背景其实很容易理解,所以我们在这里就不用过多的篇幅去展开,有兴趣的朋友可以参考论文原文。

【二】准备活动

在介绍文章提到的方法之前,首先我们要知道差分隐私(Differential Privacy)究竟是什么。
用一个公式来说明,就是这么个东西:
E[M(d)∈S]≤eϵE[M(d′)∈S]+δ.\mathbb{E}\left[\mathcal{M}(d)\in S\right]\leq e^{\epsilon}\mathbb{E}\left[\mathcal{M}(d')\in S\right]+\delta. E[M(d)∈S]≤eϵE[M(d′)∈S]+δ.

如果对于相邻数据集 d,d′d,d'd,d′,算法 M\mathcal{M}M(在各种文章中通常被称为mechanism)的输出满足上面的不等式的话,那么我们说 M\mathcal{M}M 是满足 (ϵ,δ)(\epsilon,\delta)(ϵ,δ)-差分隐私的。
相邻数据集的概念就是两个数据集只有一条数据样本不同,公式中的SSS是算法输出的值域,其最初的定义可以参考文章 差分隐私相关论文(1) —— Differential Privacy, Dwork 2006。

我们可以看到,差分隐私保证了在只更改一条数据的情况下,算法M\mathcal{M}M的输出是基本一致的(一致性的强弱由隐私预算(ϵ,δ)(\epsilon,\delta)(ϵ,δ)所控制,隐私预算越小,一致性越强)。

这样说可能还是有点绕,我们用一幅图来直观地对比一下,图中蓝黄线分别表示在相邻数据集上训练得到的模型。

看了这张图,相信大家都可以理解,在差分隐私定义下,攻击者很难通过观察训练得到的模型反推出个人信息,因为这些模型是相似的。

最后,再多啰嗦一句,两个隐私预算 ϵ,δ\epsilon,\deltaϵ,δ 中,ϵ\epsilonϵ 控制我们上文所说的“一致性”,δ\deltaδ 表示 ϵ\epsilonϵ-差分隐私失败的可能性(概率)
因此,两个值都是越小越好。
在通常情况下,我们会将 δ\deltaδ 设置为小于 1/n1/n1/n,ϵ\epsilonϵ设置为小于111,以得到有意义的差分隐私保证。

除此之外,文中还介绍了深度学习的一些基础表示,像梯度下降这样的“常识”,我们默认大家都有这方面的基础,在这里就不详细介绍了,有兴趣的朋友可以参考论文原文,本博客中也有一些相关知识,如果能帮到大家我也是很开心的~

【三】算法

基于随机梯度下降(SGD),本文提出了这样的差分隐私算法:

算法并不复杂,相较于传统的SGD而言,只是多了梯度裁剪(Clip gradient)和添加噪声(Add Noise)这两个操作。
其中梯度裁剪是为了界定住梯度的ℓ2\ell_2ℓ2​-敏感度(sensitivity)(敏感度是一个差分隐私领域中极其重要的概念,有兴趣的朋友可以参考文章 差分隐私相关论文(1) —— Differential Privacy, Dwork 2006),而添加噪声是利用随机的方式保证差分隐私(在文章 差分隐私相关论文(1) —— Differential Privacy, Dwork 2006 中也有详细说明)。

【四】Moments Accountant方法

介绍完算法,本文的重头戏来了,先上定理:

这个定理说明了,如果添加的高斯噪声方差满足上面这个式子,那么在第三部分中的那个算法就满足 (ϵ,δ)(\epsilon,\delta)(ϵ,δ)-差分隐私,其中 qqq 是mini-batch的采样概率,TTT 是算法的迭代次数。

这个公式乍一看平平无奇,但是在那个年代,大家还在用基础的高斯机制的strong composition性质添加噪声,这个理论的出现直接就把噪声界往下面压了 log⁡(T/δ)\bm{\log(T/\delta)}log(T/δ) 这样一个数量级
虽然做理论的这些文章在讨论误差界的时候都会把 log⁡(⋅)\log(\cdot)log(⋅) 这样量级的东西忽略掉,但是这样的提升其实已经很大了,特别是在实验或者应用方面。

【题外话】
后来,Di Wang 在NIPS2017的工作:Differentially Private Empirical Risk Minimization Revisited: Faster and More General证明了,对于全梯度下降算法(GD),如果 σ=O(cTlog⁡(1/δ)nϵ)\sigma=\mathcal{O}(c\frac{\sqrt{T\log(1/\delta)}}{n\epsilon})σ=O(cnϵTlog(1/δ)​​),那么差分隐私就是可以保证的。
【题外话结束】

现在我们再回来这篇文章,这种优化是怎样来的呢?
是因为本文使用了一种新的理论分析方法。

首先,本文定义了一个隐私损失(privacy loss)的概念:

公式中的 ccc 就是定义在输出 ooo 上的privacy loss,它的本质(等号右边)是算法 M\mathcal{M}M 在相邻数据集 d,d′d,d'd,d′ 上输出均为 ooo 的概率的差异

看看等号右边的这个形式,是不是有点眼熟,非常像某种熵的形式对吧。

我们接着往下看。
借由privacy loss的定义,本文接下来定义了这样一个moment,并对其在所有的相邻数据集 d,d′d,d'd,d′ 上取上界。
这个取上界的操作很容易理解,因为对于隐私泄露而言,满足上界就满足所有数据点

来,看上图中式(2),是不是更熟悉了。

【题外话】
其实把式(1)带入到式(2)里面,能写出来一个瑞丽(Renyi)熵的形式,所以各种瑞丽熵的性质也可以用到这个里面(这也是后来很多基于Moments Accountant方法做差分隐私的论文很常使用的技巧)。
但是Abadi这篇论文并没有在这里浪费过多笔墨,就只是把一切证明平推过去。
【题外话结束】

为了证明上面的定理1,本文先证明了这两个定理:
第一个部分(Composability)很容易证,就是把这个左边的moment:α\alphaα 写出来然后用privacy loss(ccc)的定义和 log⁡(⋅)\log(\cdot)log(⋅) 的性质推一下就可以了。

第二个部分是把M(d)\mathcal{M}(d)M(d)全集拆分成了privacy loss(ccc)大于ϵ\epsilonϵ和小于ϵ\epsilonϵ两个子集,然后证明 c(o)≥ϵc(o)\geq\epsilonc(o)≥ϵ 那个部分的概率不大于 exp⁡(α−λϵ)\exp(\alpha-\lambda\epsilon)exp(α−λϵ),那么根据我们上面所说的: δ\deltaδ 表示 ϵ\epsilonϵ-差分隐私失败的概率,就很容易推出第二个Tail bound部分。
值得一提的是,把全集拆分成 c(o)≥ϵc(o)\geq\epsilonc(o)≥ϵ 和 c(o)≤ϵc(o)\leq\epsilonc(o)≤ϵ 两个部分的操作方式(或者相似的思路)在分析差分隐私的文章中非常常见,大家有兴趣的话可以留意一下。

然后,本文最复杂的一个lemma来了:

这个lemma界定了高斯机制(Gaussian mechanism)的moments bound,通过这个bound(以及刚刚Theorem2中的Composability),我们可以得到算法1的 α(λ)≤Tq2λ2/σ2\alpha(\lambda)\leq Tq^2\lambda^2/\sigma^2α(λ)≤Tq2λ2/σ2。

它的证明中用了高斯噪声的性质、二项式定理等工具,还用了很神奇的一些‘observations’。
由于lemma3的证明确实比较复杂,所以在这里就不过多展开,有兴趣的朋友可以参考原论文,也欢迎大家一同讨论。

最后,将上面的Theorem2和Lemma3组合就可以得到本文最重要的那个结论Theorem1。

【五】其他

本文还给出了一些实验结果,但是如开篇所说,在这里我们不过多对其进行介绍和解释,有兴趣的朋友可以参考原文进行学习。

此外,这篇论文只给出了差分隐私的保证,但是对于模型的性能只进行了实验方面的验证,而对优化误差、泛化误差并没有进行理论层面讨论,原因之一是对于深度学习而言,损失函数往往是非凸的,而非凸条件下的优化、泛化问题是至今仍困扰广大研究者(特别是搞理论的那帮人)最大的问题之一。

今后我也会分享一些差分隐私领域做优化、泛化相关的一些工作,希望能够帮助到大家。

如果本文中某些表述或理解有误,欢迎各位大神批评指正。
谢谢!

差分隐私相关论文(2) —— Deep Learning with Differential Privacy, Abadi 2016相关推荐

  1. 论文阅读:Deep Learning with Differential Privacy

    论文名字 Deep Learning with Differential Privacy 来源 会议 23rd ACM (CCS2016) 年份 2016.10 作者 Martín Abadi, An ...

  2. Deep Learning with Differential Privacy翻译

    正在读CCS上的"Deep Learning with Differential Privacy",人工翻译了一下: Abstract 基于神经网络的机器学习技术已经在多个领域取得 ...

  3. 差分隐私相关论文集合

    放一个论文合集 1.基于梯度的联邦学习方法,往往通过在每次迭代中随机地扰动中间输出来应用差分隐私(也就 是说在联邦学习的过程不会暴露是否使用某个特定的样本信息) ① DWORK C, ROTH A. ...

  4. Repo:Deep Learning with Differential Privacy

    翻译参考:https://blog.csdn.net/qq_42803125/article/details/81232037 >>>Introduction: 当前的神经网络存在的 ...

  5. [论文翻译] Deep Learning

    [论文翻译] Deep Learning 论文题目:Deep Learning 论文来源:Deep learning Nature 2015 翻译人:BDML@CQUT实验室 Deep learnin ...

  6. AI医药论文笔记--Deep learning improves prediction of drug–drug and drug–food interactions

    深度学习用于提高对药物-药物相互作用和药物-食物相互作用的预测 论文题目 Deep learning improves prediction of drug–drug and drug–food in ...

  7. [paper reading] Federated Learning With Differential Privacy:Algorithms and Performance Analysis

    Federated Learning With Differential Privacy:Algorithms and Performance Analysis 1.整篇论文的总结: (1)提出了一种 ...

  8. [论文翻译]Deep Learning 翻译及阅读笔记

    论文题目:Deep Learning 论文来源:Deep Learning_2015_Nature 翻译人:BDML@CQUT实验室 Deep Learning Yann LeCun∗ Yoshua ...

  9. 【读点论文】Deep Learning Face Representation from Predicting 10,000 Classes。deepID

    Deep Learning Face Representation from Predicting 10,000 Classes 此文发表于2014年CVPR上,以人脸识别的子领域人脸验证(Face ...

最新文章

  1. c++ 导入caffe
  2. mpstat 命令查看所有CPU核信息
  3. css常用单位px、em、 rem 区别与各自的用法解析
  4. C#跨窗体传值的几种方法分析第三版
  5. 李彦宏、王海峰等成为工程院院士候选人选
  6. 攻克前端开发的难点,码农不惧!!
  7. 定时器开始时延时了十几秒_第六章--系统滴答定时器
  8. 全球1/10女性受到盆腔脏器脱垂困扰
  9. pdffactory 打印字体_PDFFactory
  10. qt中glMultiTexCoord2fARB报错
  11. 2021年安全员-B证最新解析及安全员-B证考试平台
  12. 西门子服务器装系统,wincc 7.0安装操作系统
  13. 【pycharm】WiFi密码破解【简单易学】
  14. 【编译原理】Python实现对一个英文文本的词频统计
  15. 嵌入式裸机课程之C语言程序调用和重定位学习笔记
  16. Swift UIImageView 相框
  17. 【RVM预测】基于粒子群算法优化相关向量机RVM实现数据回归预测附matlab代码
  18. ibm3650m4服务器找不到硬盘,ibmx3650m4服务器报错:不识别内存
  19. ios开发收藏按钮_iOS使用CoreData实现收藏功能
  20. Qt Linguist翻译 介绍

热门文章

  1. 人民币成功“入篮”SDR,这意味着什么?
  2. 网站被篡改怎么办?如何防护网站被黑
  3. android获取手机摄像头
  4. 基于OneNet平台设计的多节点温度采集系统-有人云4G模块+STM32
  5. PCA和SVD傻傻分不清楚?
  6. 报告显示:风险环境和外挂类型关系密切 加速器外挂在模拟器环境里最多
  7. 微信小程序与后台交互案例
  8. 新代plc编程代码及解释_新代系统 PLC 与CNC 接口列表说明
  9. 【JavaSE】面向对象编程
  10. 菜鸟程序员的第一次写作经历