全局敏感度,局部敏感度和平滑敏感度到底有什么区别?差分隐私

Posted 粥粥粥少女的拧发条鸟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了全局敏感度,局部敏感度和平滑敏感度到底有什么区别?差分隐私相关的知识,希望对你有一定的参考价值。

全局敏感度,局部敏感度和平滑敏感度到底有什么区别?【差分隐私】

写在前面的话

关于敏感度相关的知识,我认为这是差分隐私的重中之重。这也是我个人的笔记,如果又不正确的地方欢迎指正,谢谢大家。大家不想看长篇大论可以直接点目录里面(自己的理解)。

噪声校准

全局敏感度:

全局敏感度度量在修改一个元组时查询结果的最大变化。它只与查询函数相关,并且独立于数据集本身。对于一些函数,如和、计数和最大值,全局灵敏度很容易计算。例如,计数的全局敏感性为1,因为对于任何两个相邻的数据集,只有一个元组被更改,而对于直方图查询的全局敏感性为2。对于其他一些函数,如计算kmeans簇的最大直径和计数子图,全局灵敏度可能难以计算或无界。例如,中值函数可以具有很高的全局灵敏度。以f(D)=中位数(x1、x2,……、xn)为例,其中xi是[0、M]中的一个实数。假设n是一个奇数,并且x1,x2,……,xn被排序。因此,f(D)=xm,其中m=(n+1)/2 。考虑以下极端情况,

我们有f(D)=0和f(D0)=M。因此,这个函数的全局灵敏度是M,它可以任意大。另一个例子,三角形计数查询的全局敏感性是无界的,因为三角形计数的变化取决于图的大小。注入以实现差异隐私的噪声可以根据查询函数的全局灵敏度进行校准,即的最大的量。当数据集中只修改了一条记录时,请更改为查询结果。对于全局灵敏度较小的函数,只需要添加少量的噪声,以掩盖在更改一条记录时对查询结果的影响。然而,当全局灵敏度较大时,需要向输出添加大量的噪声,以确保隐私保证,从而导致数据效用较差。针对不同的问题,提出了两种噪声机制,即拉普拉斯机制和指数机制。

局部敏感度

当全局灵敏度较大时,必须向输出中添加大量的噪声,以实现差分隐私,这可能会严重损害数据效用。为了解决这个问题,Nissim等人提出了局部灵敏度的思想。

局部敏感度不仅与查询函数f有关,而且还与给定的数据集d有关。根据定义3,GSf=maxD(LSf(D))。由于噪声的大小与灵敏度成正比,噪声的局部灵敏度要小得多。不幸的是,局部灵敏度不能满足差分隐私的要求,因为噪声大小本身可能会揭示数据库信息。例如,考虑一个数据库,其中的值在0和M>0之间,以及两个相邻的数据库D(0、0、0、0、0、M、M)和D0(0、0、0、0、M、M、M)。设f为中值函数。然后,f(D)=0和f(D0)=0,以及相应的局部灵敏度为LSf(D)=0和LSf(D0)=M。相应地,如果噪声分别根据0和M进行校准,以计算A(D)和A(D0),那么它们很容易被对手区分。如果采用局部灵敏度,算法A不是(ϵ,δ)差异私有的。为了弥合差距,提出了一个局部灵敏度的光滑上界来确定所添加的噪声的大小。

平滑敏感度


当β=0,S(D)成为常数GSf,以满足定义5中的要求。全局灵敏度是LSf上一个简单但可能松散的上界。当β>0时,全局灵敏度是LSf的一个保守上界。LSf可能有多个平滑边界,并且平滑灵敏度是符合定义5的最小边界。再次,以中位数函数为例。我们构造了一个函数a(k)(D),它计算当最多k个条目被修改时敏感度的变化。

为了计算A(k)(D),我们需要计算LSf(D0)的最大值,其中D0和D多相差多达k个元组。回想一下,D被排序了,f(D)=xm和LSf(D)=max{xm−xm−1、xm+1−xm}。因此,我们已经有了

然后,中值函数的光滑灵敏度可以通过

一般来说,计算图中三角形数等函数的光滑灵敏度是非平凡的,甚至是np难问题。因此,当光滑灵敏度难以计算时,就使用光滑上界来代替光滑灵敏度。接下来,我们将展示如何使用β平滑灵敏度(或上界)来校准ϵ-差异隐私的噪声。对数据集D上的查询f返回A(D)=f(D)+Z,其中Z是从一个分布中抽取的随机变量。如果Z∼Lap(GSf/ϵ),A(D)提供了ϵ-的差异隐私。在ϵ-的差异隐私中,添加的噪声的大小应该尽可能小,以保持数据效用,并且应该独立于数据库,以进行强大的隐私保护。根据全局灵敏度校准的噪声独立于数据库D,但其大小可能太大,无法使查询结果不可用。根据局部灵敏度校准的噪声依赖于D,使其失效,导致差异隐私。为了解决这个挑战,Nissim等人。建议使用根据局部灵敏度的平滑上界(更优选的是平滑灵敏度)进行校准的噪声。其基本思想是添加与Sf(D)α成正比的噪声,即A(D)=f(D)+Sf(D)α·Z,其中Sf是f局部灵敏度的β平滑上界,Z是一个具有概率密度函数h的随机变量。Nissim等人指出,h必须允许(α,β),以实现基于平滑灵敏度的差异隐私。

噪声分布范围


滑动和膨胀特性保证了在滑动和膨胀条件下噪声分布变化不大,α和β的值是基于h的∆(滑移偏移)和λ(膨胀偏移)的上界。如果hofZ(α,β)允许,数据库访问机制A(D)=f(D)+Sf(D)α·Z是(ϵ,δ)差异隐私。
可容许分布有三个族:柯西、拉普拉斯和高斯[68]。柯西可许分布产生了δ=0的“纯”ϵ-差异隐私。拉普拉斯和高斯可许分布可以产生不同α和β值的δ>0产生近似差分隐私。

自己的理解


中值查询:
全局敏感度:考虑最极端的情况,不管你的数据怎么分布,只看查询。当有一条记录改变对查询结果造成的最大影响就是10,因为数字的范围就是0到10,我先假设中值为0,然后改个10,不可能有比这更大的改变了。
局部敏感度:查询也看,数据也看。上面这个图的局部敏感度就是1,从形式化定义来看,局部敏感度是依赖于给定的数据集的,在给定的数据集中变一条记录找最大影响,这个影响大小就是局部敏感度。看上去好像完美无缺,实际已经都不能算差分隐私了。为什么?因为数据集不可能永远不变,每次改变,局部敏感度是不是要变,那么是不是体现出了数据分布的差异。关于中值查询关于局部敏感度的例子前面提到了,我这里就不赘述了。直接见图:
你看,这里的G作为数据集,在横坐标上变化,局部敏感度也在变化。说局部敏感度最大就是全局敏感度我不敢苟同,只能说全局敏感度是局部敏感度的上界(其实也一样),看你怎么理解了。并且不要认为局部敏感度就一定要在局部去找,从全局也可以出发。我在看社会网络中就加入这样的误区,认为局部视图才有局部敏感度,全局也是,只要图是给定的就可以算局部敏感度。
平滑敏感度:还是上面那个图,找到一个平滑上界函数,不同的函数会导致上界不同。全局敏感度作为局部敏感度较为松弛的上界,平滑敏感度是较为保守的上界。我的理解是预测未来,数据集的变化从当前来看是一条数据条目变化,但是在后面的变化中可能相对于第一个数据集有多条记录变化。所以平滑上界考虑的是改变多条记录的最大敏感度,再乘以一个平滑上界函数,这个函数的目的在于做一个惩罚,这个函数一定小于1。最终就得到了上面这个图。

以上是关于全局敏感度,局部敏感度和平滑敏感度到底有什么区别?差分隐私的主要内容,如果未能解决你的问题,请参考以下文章

局部敏感哈希算法

二进制特征和局部敏感哈希 (LSH)

Local Sensitivity 局部敏感度

什么是距离敏感数据,它与其他数据有何不同?任何示例都会有所帮助

局部敏感哈希(Locality-Sensitive Hashing, LSH)

天生对数字不敏感的人,如何提升对数据的敏感度?