差分隐私应用与展望
差分隐私应用与展望
-
如何设计一个满足差分隐私的算法?
一般做法:从一个不满足差分隐私的算法出发,往算法里适当地加入一定噪音,以使其输出满足差分隐私的要求。
拉普拉斯机制
假设我们有一个病患数据集D,考虑以下数据库查询:
如果我们要发布这个查询结果,如何才能满足\(\epsilon\)-差分隐私?
我们首先考虑这个查询结果有多依赖于某个特定病人的信息,如果我们修改D中任意一个病患的数据,上述查询结果最多会改变1,所以我们能用噪声来“掩盖”这种不大于1的改变,就能满足差分隐私。具体来说,我们可以往查询结果中加入一个服从拉普拉斯分布的噪声。
参数\(\lambda\)设为\(\frac{1}{\epsilon}\),即能满足\(\epsilon\)-差分隐私。
如果要发布的结果是下面这个查询结果呢?
首先,我们修改一个病患的数据,则上述查询结果最多改变3,我们可以对其加入拉普拉斯噪声,并把参数
\(\lambda\)设为\(\frac{3}{\epsilon}\),
一般而言,如果我们要发布一组数值型查询结果,我们可以对每个结果加入独立的拉普拉斯噪声来满足差分隐私。
噪声参数\(\lambda\)取决于当我们修改一个人的数据时,查询结果总会改变多少。一组查询总共的“最大改变”被称为他们的敏感度,取\(\lambda\)=敏感度/\(\epsilon\)即能满足\(\epsilon\)-差分隐私。
随机化回答
如果我们要发布的数据不是数值型的话,我们可以用其他方法引入噪声,下面介绍一种数据采集的简单机制:随机化回答。
假设我向一组人提问一个敏感的是非题,出于隐私,有的人可能不愿意给真实答案,解决方案是让每个人在他的答案中加入噪声。
随机化回答可以满足\(\epsilon\)-差分隐私,直观原因是:由于其随机性,攻击者不能中随机化的输出反推出输入到底是“yes”还是“no”,只要根据\(\epsilon\)来调整随机化的概率即可。但是我们依然可以通过随机化回答的输出来回答如下问题:
大概有多少人的真实回答是“yes”?
假设有10000人用随机化回答给了我回复
- 当中有5500个yes和4500个no
每个人以80%概率给我假回复
- 所以大致中共有8000个假回复
- 当中大致上有4000个假yes和4000个假no
据此,我可以判断剩下的真实回答里大概有1500个yes和500个no
- 所以大概75%的人的真实回答是yes
总结:
- 通过随机修改回复来满足差分隐私
- 由于修改时引入的噪声分布已知,因此我们扔可以反推出源数据的大致分布
- 但无法反推出个体回复
差分隐私数据库
- 只回答聚合查询的结果
- 通过往查询结果中加入噪声来满足差分隐私
- 例子:微软的PINQ,Uber的Chorus
技术难点:
- 如何用尽量少的噪声来达到\(\epsilon\)-差分隐私
- 尤其是在查询需要连接多张数据库表的时候
- 如何高效地计算查询的敏感度
- 如何将差分隐私模块整合到现有数据库中
展望:
现有算法尚未能在隐私保护、查询准确性及计算效率三者间取得很好的平衡,例如:Uber的Chrous在不少查询中误差可达100%以上
差分隐私机器学习
-
在机器学习算法中引入噪声,使得算法生成的模型能满足差分隐私
-
例子:谷歌的TensorFlow Privacy
https://github.com/tensorflow/privacy
可用于神经网络训练
TensorFlow Privacy的基本原理
神经网络通常是用随机梯度下降来进行训练的:
- 从一组随机的神经网络权重参数出发
- 拿一组随机选取的元组来计算权重的梯度
- 用梯度来更新权重参数
- 重复步骤2-3
TensorFlow Privacy对步骤2中的梯度加入噪声,以保证训练过程满足差分隐私。
关于差分隐私机器学习,现有算法的不足:
- 准确性还有待 提高
- 尚不能很好地处理复杂模型,如GAN
另有一些新方向,如:
- 联邦学习
- 与安全多方计算的结合
差分隐私数据采集
场景:从移动设备中采集用户数据,入应用程序的使用时长等
为满足差分隐私,让用户采用类似于随机化回答 的方法来提供数据
例子:谷歌Chrome、苹果iPhone、iPad和Mac、微软Windows10
技术难点:需要采集的数据可能比较复杂,无法用传统随机化回答问题
- 例子:用户输入的新词(字典里面没有的)
为此,谷歌,苹果和微软都因其采集需要提出了新的随机化算法
现有不足:
- 现有算法要求每个用户对其数据加入相当程度的噪声
- 这对后期估计统计数据带来了一些困难
近年来大家开始探索的新方向:
- 与安全计算相结合,以减少满足差分隐私所需的噪声
差分隐私数据合成
基本原理:
- 先对源数据进行建模,得到一个统计模型
- 用统计模型来合成出虚拟产品
例子:美国普查局的一些数据产品,如https://onthemap.ces.census.gov/
技术难点:
- 如何找到一个合适的统计模型?
- 如何在统计模型中加入噪声,以满足差分隐私?
现有不足:
- 目前的算法只能处理关系型数据
- 对非关系型数据的合成基本上还在摸索阶段,如图数据、文本数据等
展望:弥补差分隐私本身的不足
- 如何设计一个更加贴近实际的隐私模型
- 现有文献中已有不少改进差分隐私的尝试,但尚未得到广泛应用,原因:改进后的模型往往过于复杂,难以被大众所认同
- 差分隐私虽然有着优雅的数学表达,但并不直接对应任何法律条文
- 满足差分隐私不等于满足隐私保护法律
- 要解决这一问题,需要计算机界与法律界相互合作
- 近来已有学者尝试中法律条文出发来设计隐私保护模型,并借鉴差分隐私的思想