百科问答小站 logo
百科问答小站 font logo



苹果的 Differential Privacy 差分隐私技术是什么原理? 第1页

  

user avatar   nemo-91 网友的相关建议: 
      

原以为差分隐私是个好小众的话题,没想到zhihu上的讨论还这么热烈。这是我最重要的研究方向,想尽我所能把这个学术问题说的大家都能听懂。

1. 什么是隐私?

讲差分隐私前,我想说一下什么是隐私

其实隐私这个定义,各家有各家的说法,而且各人有各人不同的考量。目前普遍比较接受的是:“单个用户的某一些属性” 可以被看做是隐私。这个说法里所强调的是:单个用户。也就是说,如果是一群用户的某一些属性,那么可以不看做隐私。

举个例子:医院说,抽烟的人有更高的几率会得肺癌。这个不泄露任何隐私。但是如果医院说,张三因为抽烟,所以有了肺癌。那么这个就是隐私泄露了。好,那么进一步,虽然医院发布的是趋势,说抽烟的人更高几率得肺癌。然后大家都知道张三抽烟,那么是不是张三就会有肺癌呢?那么这算不算隐私泄露呢?结论是不算,因为张三不一定有肺癌,大家只是通过一个趋势猜测的。

所以,从隐私保护的角度来说,隐私的主体是单个用户,只有牵涉到某个特定用户的才叫隐私泄露,发布群体用户的信息(一般叫聚集信息)不算泄露隐私。 记得高德地图发过一张图,大意是开凯迪拉克的群体喜欢去洗浴中心.......很多人说暴露隐私, 其实从学术定义上来说,这个不算隐私泄露,因为没有牵涉到任何个体。

那么我们是不是可以任意发布聚集信息呢?倒是未必。我们设想这样一种情况:医院发布了一系列信息,说我们医院这个月有100个病人,其中有10个感染HIV。假如攻击者知道另外99个人是否有HIV的信息,那么他只需要把他知道的99个人的信息和医院发布的信息比对,就可以知道第100个人是否感染HIV。这种对隐私的攻击行为就是差分攻击。

2. 差分隐私

差分隐私顾名思义就是防止差分攻击了,它想做的事情就是即使你小子知道我发布的100个人的信息,以及另外99个人的信息,你也绝对没办法把这两个信息比对之后获取第100个人的信息。怎么才能做到这一点呢?差分隐私于是定义:如果你能找出一种方法让攻击者用某种方式查询100个信息和查询那99个信息得到的结果是一致的,那攻击者就没办法找出那第100个人的信息了。但这个“一致” 怎么做到呢?那就加入随机性吧。如果查询100个记录和查询99个记录,输出同样值的概率是一样的,攻击者就无法进行差分攻击。这里我们就得到了差分隐私的核心思想:对于差别只有一条记录的两个数据集,查询它们获得相同值的概率非常非常的接近。Wait,不是说一致的么?为什么变成了非常接近了? 这是因为,如果概率一样,就表示数据集需要完全随机化,那数据的可用性就没有了,隐私保护也没有意义了。所以,我们尽可能的把概率做的接近,而不是一致,以期在隐私和可用性之间找一个平衡。

上面这张图描述了差分隐私的基本思想,对于两个只相差一个记录的数据集D和D'来说,查询M的输出结果S概率应该非常接近。

3. 如何做到差分隐私

其实就是在查询结果里加入随机性。

任何一种方法,只要用在数据集上能满足差分隐私的核心思想,那这个方法就是满足差分隐私的。所以最常用的方法是在结果上加满足某种分布的噪音,使查询结果随机化。

目前常用的有两种方法,一个是Laplace机制,在查询结果里加入Laplace分布的噪音,适用于数值型输出。例如:zhihu里有多少人是985大学毕业的? 假如结果是2000人,那么每一次查询得到的结果都会稍稍有些区别,比如有很高的概率输出2001,也有较高概率输出2010, 较低概率输出1990,等等。

另外一个是指数机制,在查询结果里用指数分布来调整概率,适用于非数值型输出。例如:中国top 3大学是哪一所。很高概率输出 浙江大学,较高概率输出上海交大,较低概率输出武汉大学,很低概率输出蓝翔技校,等等。

4. 差分隐私应用

这么说吧,任何需要保护隐私的算法里都可以使用差分隐私。差分隐私最美丽的一点在于只要你的算法每一个步骤都满足差分隐私的要求,那么它可以保证这个算法的最终输出结果满足差分隐私,换句话说,即使攻击者具有足够多的背景知识,也无法在最终的输出中找出单个人的某项属性。

目前在学术上,差分隐私可以被应用在推荐系统,社交网络,基于位置的服务,当然,也包括了苹果的输入系统。

5. 差分隐私的弱点

差分隐私的弱点其实很明显:由于对于背景知识的假设过于强,需要在查询结果中加入大量的随机化,导致数据的可用性急剧下降。特别对于那些复杂的查询,有时候随机化结果几乎掩盖了真实结果。这也是导致目前应用不多的一个原因。

但差分隐私作为一个非常漂亮的数学工具,为隐私研究指明了一个发展的方向。在早期,人们很难证明我的方法保护了隐私,更无法证明究竟保护了多少隐私。现在差分隐私用严格的数学证明告诉人们,只要你按照我的做,我就保证你的隐私不会泄露。

更有意思的是,Dwork团队2015年提出应用差分隐私的想法可以解决机器学习的over-fitting问题,一步从隐私界跨到了AI界,开始抢机器学习的饭碗了。她们的论文发表在了2015年的Science上,有志于抢AI饭碗的同学可以瞄一下。

The reusable holdout: Preserving validity in adaptive data analysis

7. 最后,放一篇我在2017年写的有关差分隐私的前世今生,很学术,有兴趣研究这个方向的同学可以读读。

Differentially Private Data Publishing and Analysis: a Survey

user avatar   kyon-3 网友的相关建议: 
      

这个4年前的问题选择在这个时间点突然出现在我今天的时间线上显得非常 亦可赛艇

Android是2008年初才发布,而Oracle在2009年就以7.4B$收购了Sun,是Google不够睿智吗?

非也!

1)如果Android没有如此成功,Java对于Google而言就是一坨shit,Google从来没有想到自己会站在一坨翔上面取得空前的成功,如果有算命的告诉Google的命中贵人是阿翔,它就是穿越回去吃也要把它吃下去,可惜历史不能假设!


2)Google一直有python基因,很多系统都是基于python的,你知道工程师主导文化的可怕性吗?这帮pythonic的nerd出于情怀或者节操或者叫清高或者叫偏执或者叫真爱,它说什么都不会去买Java的,“老子看不上”!谁知造化弄人,09年你对我爱答不理,18年老子叫你高攀不起88亿!(注:今天的Google在各种收购之后,Java服务的比重占的也非常大了,变成了一个杂合的技术栈,而官司也很可能打到高院,尚未定论)


3)Google一直有跟开源保持共存共荣共襄盛举的传统,它跟Mozilla做生意,赞助开源项目,捐赠Wiki,主张“不作恶”,简直就是一副乌托邦理想主义者的化身,圈粉无数(包含答主),像Java这种项目,它更可能的方式是烧一笔钱给它花,然后来几句“希望Java明天会更好”之类的废话,它根本就不曾想过有一个家伙抄底了,因为那时候Android根本就没有火,Google从来就没有想过Java也T-M-D算哪门子“底”?


4)Sun的主手人也是个技术型的,就是技术牛掰业务做的稀烂,当时怎么看Sun都处在夕阳,SPARC也是逼格满满业务下滑被Intel捣的稀烂,那个价格没有几家觉得划算的,幸好是Oracle这种剑走偏锋的收购了它,要是换一家公司收购多半就把Sun雪藏甚至捣腾碎了,Java也就没有今日风光了,而Google在坊间也有创业公司杀手的美称,也许这就已经是历史发展的最好结果了。


什么,你问我对于Oracle收购Sun和MySQL怎么看?

还能怎么看?好白菜都让猪给拱呢呗!

但是作为吃瓜群众,我最喜欢看大佬们掐架,Google与Oracle的这场官司绝对酸爽,大家保持关注,各家都有千百号律师,吵起架来想想都 亦可赛艇!学知识产权法/专利法/法理学的同学们千万不要错过,说不定两年后就能进教材作案例呢!


什么,你又问我Google应该怎么做?

靠,我有不是劈柴!按我的观点,Google这次是违反了Java的使用协议的(无意引战,定论的事情留给专业法官),不能因为体量大就以为能压死人,那可是在美帝,万事全靠律师一张嘴,怎么讲都有理!


大家还记得微软以前有个skydrive吗?在英国被判败诉了,最后也得改名叫OneDrive呢!Google有钱了不起啊,过来领罚单!


而Java的坑早早就埋在那里了,所以苹果直接一刀切:老子不支持,免得搞一嘴毛!Flash一身毛病,一刀切,老子不支持!


所以,我对Google的建议是:

从Android 10开始,一刀切:老纸永生永世不再支持Java!

名字我都起好了: Badroid!


这TM不是关乎技术,不是关乎信仰,不是关乎生态,不是关乎用户体验!

这TM关系到命!


什么?要我预测结果?

法官中间调停,你们俩和解,google把赚的钱按每部手机给Oracle付钱?什么你说太扯了?你每买一部Android,都要给微软钱,你造吗?Oracle就想躺着就把钱收了!




  

相关话题

  iPhone 13 系列马上发布,你手中的老 iPhone 电池健康程度怎么样,平时都怎么充电? 
  苹果为什么不自己生产芯片? 
  二进制安全方向有没有可能在可见的未来里慢慢地消失? 
  electron 安全么? 
  如何看待 2021 年中国手机市场份额排名:vivo 第一,OPPO 第二,苹果第三? 
  iTunes 好用吗? 
  苹果数据线要不要在官网买原装? 
  换新手机买华为还是苹果好? 
  有没有可能让计算机去理解代码,从而写代码? 
  N个互异数随机组成的数组的逆序数的分布公式是什么? 

前一个讨论
随着人工智能的技术成熟,黑客是否会消失?
下一个讨论
从你所在的行业来看,什么样的发展才是「高质量发展」?当前还有哪些不足之处?





© 2024-05-14 - tinynew.org. All Rights Reserved.
© 2024-05-14 - tinynew.org. 保留所有权利