引言

在过去的二十年中,随着数据挖掘技术的普遍应用,一些厂商,组织和政府所收集的数字信息形成了大量的数据集,并且这种数据收集的速度在最近几年中得到了极大的提高。 通常,数据收集者负责发布数据用以进行进一步分析。 然而,大部分收集的数据集都包含隐私或者敏感的信息。 即使数据收集者可以应用几种简单的匿名化技术,敏感的个人信息仍然很有可能被公开。 因此,隐私保护已成为迫切需要解决的问题。

研究人员提出了各种保护个人隐私的方法,并将这些方法及其隐私标准定义为一个隐私模型。如图1所示,隐私模型位于受信任的数据收集者(Curator)和不受信任的公众用户(User)之间。差分隐私就是这样一种新兴的、有前途的隐私模型。它可以保证对手(敌手)在数据集中对任何个体造成伤害的能力基本上是相同的,与任何个体选择进入或退出数据集无关。与以往的隐私模型相比,差分隐私模型能够成功抵御大多数隐私攻击,并提供了可证明的隐私保障。
图1

相关定义

我们假设一个大小为 ∣ x ∣ |x| x的有限数据空间 x x x。设 r r r表示具有 d d d个属性的记录;数据集 D D D是从有限数据空间 x x x中采样的 n n n条记录的无序集合。两个数据集 D D D D ′ D′ D如果有且仅有一条记录 r r r不同,则这两个数据集称为为相邻数据集。查询 f f f是一个将数据集 D D D映射到抽象范围 R R R: f : D → R f:D→R f:DR的函数。一组查询记作 F F F。我们用符号 m m m表示 F F F中的查询数量。

差分隐私的目的是掩盖相邻数据集之间查询 f f f的差异。将查询结果 f f f的最大差异定义为灵敏度(或者敏感度) Δ f Δf Δf。 通常通过机制 M M M实现差分隐私,机制 M M M是访问数据库并实现某些功能的随机算法。 随机输出由回旋符号表示,例如, f ˆ ( D ) fˆ(D) fˆ(D)表示在 D D D上查询 f f f的随机返回答案。图2总结了本文中可能使用到的符号。
图2

(ϵ,δ)-差分隐私

如果 M M M满足以下条件,在 D D D D ′ D^′ D的任何相邻数据集中,随机机制 M M M为每一组输出 Ω Ω Ω提供(ϵ,δ)-差分隐私

P r [ M ( D ) ∈ Ω ] ≤ e x p ( ϵ ) ⋅ P r [ M ( D ′ ) ∈ Ω ] + δ Pr[M(D)∈Ω]≤exp(ϵ)⋅Pr[M(D^′)∈Ω]+δ Pr[M(D)Ω]exp(ϵ)Pr[M(D)Ω]+δ

注:如果 δ = 0 δ= 0 δ0,则随机机制 M M M通过其最严格的定义给出ϵ-差分隐私。(ϵ,δ)-差分隐私为某些低概率事件提供了违反严格的差分隐私的自由。 ϵ-差分隐私通常称为纯差分隐私,而δ> 0的(ϵ,δ)-差分隐私称为近似差分隐私

ϵ:隐私预算

(ϵ,δ)-差分隐私定义中,参数 ϵ ϵ ϵ表示隐私预算,它控制机制 M M M实现的隐私保证级别。 ϵ ϵ ϵ越小表示隐私级别越强。 目前广泛使用两种隐私预算组成定理:顺序组成并行组成

1. 并行组成

假设我们有一组隐私机制 M = { M 1 , … , M m } M = \{M_1,…,M_m\} M={M1Mm}。 如果每个 M i M_i Mi对整个数据集的互不相交子集提供ϵi-差分隐私保证,则 M M M将提供max {ϵ_1,…,ϵ_m}-差分隐私

2. 顺序组成

假设在数据集上依次执行一组隐私机制 M = { M 1 , . . . , M m } M = \{M_1,...,M_m\} M={M1...Mm},并且每个 M i M_i Mi提供ϵ-差分隐私保证,则 M M M将提供(m⋅ϵ)差分隐私

Δf:敏感度

对于查询 f : D → R f:D→R f:DR,以及相邻数据集 D D D D ′ D^′ D f f f的敏感度 Δ f Δf Δf定义为
Δ f = m a x D , D ′ ∣ ∣ f ( D ) − f ( D ′ ) ∣ ∣ Δf=max_{D,D^′}||f(D)−f(D^′)|| Δf=maxD,Df(D)f(D)

敏感度 Δ f Δf Δf仅与查询 f f f的类型有关,它衡量了相邻数据集上查询结果之间的最大差异。

两种常用的差分隐私保护机制

任何满足差分隐私定义的机制都可以认为是差分隐私的。目前,广泛使用两种基本机制来保证差分隐私: 拉普拉斯机制(The Laplace Mechanism)和指数机制(The Exponential Mechanism)。

拉普拉斯机制(The Laplace Mechanism)

拉普拉斯机制为真实结果增加了独立的噪音,且使用 L a p ( b ) Lap(b) Lap(b)表示从比例为 b b bLaplace分布中采样的噪声。拉普拉斯机制适用于数值型查询

对于数据集 D D D上的函数 f : D → R f:D→R f:DR(可视为一次查询),以下公式中的机制 M M M提供了ϵ-差分隐私。
M ( D ) = f ( D ) + L a p ( Δ f ϵ ) . M(D)=f(D)+Lap(\frac{Δf}ϵ). M(D)=f(D)+Lap(ϵΔf).

指数机制(The Exponential Mechanism)

对于非数值查询,差分隐私使用指数机制对结果进行随机化处理,并与一个score(评价函数)函数 q ( D , ϕ ) q(D,ϕ) q(Dϕ)一一对应,该函数用于对输出 ϕ ϕ ϕ的质量进行评估。score函数取决于具体应用,并且不同的应用可能会有不同的score函数。

q ( D , ϕ ) q(D,ϕ) q(D,ϕ)是数据集 D D D的score函数,该函数衡量输出 ϕ ∈ Φ ϕ∈Φ ϕΦ的质量, Δ q Δq Δq表示 ϕ ϕ ϕ的灵敏度。满足以下条件时,指数机制 M M M满足ϵ-差分隐私

M ( D ) = ( r e t u r n ϕ ∝ e x p ( ϵ q ( D , ϕ ) 2 Δ q ) ) M(D)=(returnϕ∝exp(\frac{ϵq(D,ϕ)}{2Δq})) M(D)=(returnϕexp(2Δqϵq(D,ϕ)))

差分隐私效用衡量

当隐私级别(隐私预算)固定为 ϵ ϵ ϵ时,差分隐私一般使用以下两种效用衡量。

噪声大小测量:最简单的方法是衡量向查询结果添加了多少噪声。噪音越小,效用越高。这种效用度量在数据发布中得到了广泛的应用。

误差测量:效用也可以通过未经隐私保护机制处理输出和经隐私保护机制处理后输出之间的差值来评估。误差测量通常由精度参数的范围表示。

(α,β)可用性

如果满足以下条件,则机制 M M M ( α , β ) (α,β) (αβ)可用的
P r ( m a x f ∈ F ∣ F ( D ) − F ˆ ( D ) ∣ ≤ α ) > 1 − β Pr(max_{f∈F}|F(D)−Fˆ(D)|≤α)>1−β Pr(maxfFF(D)Fˆ(D)α)>1β

其中 α α α是限定误差的精度参数。

对于不同的发布场景,误差测量可以使用不同的方式进行解释。对于合成数据集发布,上述公式可以解释为
P r ( m a x f ∈ F ∣ F ( D ) − F ( D ˆ ) ∣ ≤ α ) > 1 − β Pr(max_{f∈F}|F(D)−F(Dˆ)|≤α)>1−β Pr(maxfFF(D)F(Dˆ)α)>1β

在数据分析中,效用衡量通常取决于具体分析算法。假设算法用 M M M表示,隐私算法用 M ˆ Mˆ Mˆ表示,上述公式可以解释为
P r ( ∣ M ( D ) − M ˆ ( D ) ∣ ≤ α ) > 1 − β Pr(|M(D)−Mˆ(D)|≤α)>1−β Pr(M(D)Mˆ(D)α)>1β

差分隐私在数据发布中的应用

差分隐私数据发布的目的是在不披露任何个人记录(或者说具体个人信息)的情况下向公众输出聚合信息。这个问题可以表述为:如果一个数据收集者有一个数据集 D D D,并且收到一个查询集合 F = { f 1 , … , f m } F=\{f_1,…,f_m\} F={f1fm},那么他们需要在满足差分隐私约束的前提下回答每个查询 f i ∈ F f_i∈F fiF

此发布方案涉及交互式和非交互式两个场景(interactive and non-interactive)。 在交互式场景中,只有收到了前一个查询 f i − 1 f_{i-1} fi1的响应后才能申请下一个查询 f i f_i fi。 在非交互式场景中,所有查询都一次提供给数据收集者,数据收集者可以在充分了解查询集合 F F F的情况下响应请求。

下面给出了交互式和非交互式两个场景之间差异的示例。对数据收集者的查询可能如下所示:
在这里插入图片描述

  • 查询1( f 1 f_1 f1): 40至79岁之间有多少患者患有糖尿病?

  • 查询2( f 2 f_2 f2): 40至59岁之间有多少患者患有糖尿病?

假设每次查询的隐私预算 ϵ ϵ ϵ是固定的。在交互式场景中,数据收集者将首先收到查询 f 1 f_1 f1,然后计算40至79岁之间患有糖尿病的患者人数, f 1 f_1 f1的灵敏度为1,并将独立的拉普拉斯噪声 L a p ( 1 / ϵ ) Lap(1 / ϵ) Lap(1/ϵ)加上。 然后将 f 2 f_2 f2提交给数据收集者时,此时 f 2 f_2 f2的灵敏度将等于2,因为更改表中的任意一个人可能会更改两个查询的结果。 添加到查询集的总噪声为 L a p ( 1 / ϵ ) + L a p ( 2 / ϵ ) Lap(1 / ϵ)+ Lap(2 / ϵ) Lap(1/ϵ)+Lap(2/ϵ)

在非交互式场景中,两个查询都同时提交给数据收集者。两个查询的敏感度均为2,添加到查询集中的总噪声为 2 ∗ L a p ( 2 / ϵ ) 2 * Lap(2 / ϵ) 2Lap(2/ϵ),大于交互式场景的总噪声 L a p ( 1 / ϵ ) + L a p ( 2 / ϵ ) Lap(1 / ϵ)+ Lap(2 / ϵ) Lap(1/ϵ)+Lap(2/ϵ)。 查询之间的相关性也会导致更高的敏感性。 因此,非交互式场景通常会比交互式场景产生更多的噪音。

上面的示例显示了交互式和非交互式两个场景之间的差异,并说明当查询彼此相关时,噪声量会急剧增加。 此外,对于大小为n的数据集,拉普拉斯机制最多只能在n个查询中以一定程度的准确性回答次线性问题。这些缺点使得拉普拉斯机制在需要回答大量查询的场景中效果不理想。

差分隐私在数据分析中的应用

差分隐私数据分析的基本任务是将现有的非隐私算法扩展到差分隐私算法。这种扩展可以通过几个框架来实现,大致分为拉普拉斯/指数框架和隐私学习框架。 其中拉普拉斯/指数框架直接将拉普拉斯或指数机制整合到非隐私分析算法中。 例如,在算法的计数步骤中加入拉普拉斯噪声,或者在进行选择时执行指数机制。

参考和推荐

本文主要主要翻译并整理了论文的一部分内容Differentially Private Data Publishing and Analysis: A Survey
同时推荐一下几篇关于差分隐私的入门资料:

Logo

为武汉地区的开发者提供学习、交流和合作的平台。社区聚集了众多技术爱好者和专业人士,涵盖了多个领域,包括人工智能、大数据、云计算、区块链等。社区定期举办技术分享、培训和活动,为开发者提供更多的学习和交流机会。

更多推荐