差分隐私(Differential Privacy)定义及其理解

1 前置知识

本部分只对相关概念做服务于差分隐私介绍的简单介绍,并非细致全面的介绍。

1.1 随机化算法

随机化算法指,对于特定输入,该算法的输出不是固定值,而是服从某一分布。

单纯形(simplex):一个 k k k维单纯形是指包含 k + 1 k+1 k+1个顶点的凸多面体,一维单纯形是一条线段,二维单纯形是一个三角形,三维单纯形是一个四面体,以此类推推广到任意维。“单纯”意味着基本,是组成更复杂结构的基本构件。

概率单纯形(probability simplex):是一个数学空间,上面每个点代表有限个互斥事件之间的概率分布。该空间的每条坐标轴代表一个互斥事件, k − 1 k-1 k1维单纯形上的每个点在 k k k维空间中的坐标就是其 k k k个互斥事件上的概率分布。每一点的坐标(向量)包含 k k k个元素,各元素非负且和为1。

如下图所示,三个事件发生的概率分布形成一个二维的概率单纯形,上面每个点在三个事件上发生的概率之和为1。

在这里插入图片描述

形式化定义:给定一个离散集 B B B B B B上的概率单纯形 Δ ( B ) \Delta(B) Δ(B)被定义为
Δ ( B ) = { x ∈ R ∣ B ∣ ∣ x i ≥ 0 , i = 1 , 2 , ⋯   , ∣ B ∣ ; ∑ i = 1 ∣ B ∣ x i = 1 } \Delta(B)=\left\{x \in \mathbb{R}^{|B|}\left|x_{i} \geq 0, i=1,2, \cdots,\right| B \mid ; \sum_{i=1}^{|B|} x_{i}=1\right\} Δ(B)=xRBxi0,i=1,2,,B;i=1Bxi=1
Δ ( B ) \Delta(B) Δ(B)是一个集合,集合中每一个元素是一个 ∣ B ∣ |B| B维向量,该向量代表了一个离散型随机变量的概率分布。 Δ ( B ) \Delta(B) Δ(B)代表了一个有 ∣ B ∣ |B| B种取值的离散型随机变量的所有可能的概率分布。

随机化算法(randomized algorithm):一个随机化算法 M \mathcal{M} M有定义域 A A A、离散的值域 B B B。一个输入 a ∈ A a\in A aA,算法 M \mathcal{M} M的输出 M ( a ) \mathcal{M}(a) M(a)是一个随机变量,服从概率分布 p ( x ) = Pr ⁡ ( M ( a ) = x ) , x ∈ B p(x)=\operatorname{Pr}(\mathcal{M}(a)=x),x\in B p(x)=Pr(M(a)=x),xB,并且 p ( x ) ∈ Δ ( B ) p(x)\in \Delta(B) p(x)Δ(B)

例如, A = { 2 , 3 , 4 } A=\{2,3,4\} A={2,3,4} B = { 1 , 2 , 3 , 4 , 5 } B=\{1,2,3,4,5\} B={1,2,3,4,5},设 Δ ( B ) \Delta(B) Δ(B)中包含三个元素,分别为 ( 1 3 , 1 3 , 1 3 , 0 , 0 ) (\frac{1}{3},\frac{1}{3},\frac{1}{3},0,0) (31,31,31,0,0) ( 0 , 1 3 , 1 3 , 1 3 , 0 ) (0,\frac{1}{3},\frac{1}{3},\frac{1}{3},0) (0,31,31,31,0) ( 0 , 0 , 1 3 , 1 3 , 1 3 ) (0,0,\frac{1}{3},\frac{1}{3},\frac{1}{3}) (0,0,31,31,31),即
Δ ( B ) = { ( 1 3 , 1 3 , 1 3 , 0 , 0 ) , ( 0 , 1 3 , 1 3 , 1 3 , 0 ) , ( 0 , 0 , 1 3 , 1 3 , 1 3 ) } \Delta(B)=\left\{ (\frac{1}{3},\frac{1}{3},\frac{1}{3},0,0), (0,\frac{1}{3},\frac{1}{3},\frac{1}{3},0), (0,0,\frac{1}{3},\frac{1}{3},\frac{1}{3}) \right\} Δ(B)={(31,31,31,0,0),(0,31,31,31,0),(0,0,31,31,31)}
每个元素均代表算法输出的随机变量取值为1,2,3,4,5的概率分布,现可以规定映射 M \mathcal{M} M
M ( 2 ) ∼ ( 1 3 , 1 3 , 1 3 , 0 , 0 ) , M ( 3 ) ∼ ( 0 , 1 3 , 1 3 , 1 3 , 0 ) , M ( 4 ) ∼ ( 0 , 0 , 1 3 , 1 3 , 1 3 ) \mathcal{M}(2)\sim \left(\frac{1}{3}, \frac{1}{3}, \frac{1}{3}, 0,0\right), \mathcal{M}(3)\sim \left(0, \frac{1}{3}, \frac{1}{3}, \frac{1}{3}, 0\right), \mathcal{M}(4)\sim \left(0,0, \frac{1}{3}, \frac{1}{3}, \frac{1}{3}\right) M(2)(31,31,31,0,0),M(3)(0,31,31,31,0),M(4)(0,0,31,31,31)
也就是说,一个特定输入 a ∈ A a\in A aA经过随机化算法 M \mathcal{M} M得到的不是一个具体值 b ∈ B b\in B bB,而是一个随机变量 M ( a ) ∼ p ( x ) , p ( x ) ∈ Δ ( B ) \mathcal{M}(a) \sim p(x),p(x)\in \Delta(B) M(a)p(x),p(x)Δ(B),又或者说,算法将以一定概率输出某一个值。

上述情况是在离散概率空间中讨论的,有时,算法将从连续分布中的采样,但最后将以适当的精度进行离散化。

1.2 KL散度(KL-Divergence)

KL散度(Kullback Leible-Divergence)概念来源于概率论与信息论,又被称作相对熵、互熵。从统计学意义上来说,KL散度可以用来衡量两个分布之间的差异程度,差异越小,KL散度越小。

熵(entropy):信息论中熵定义首次被香农提出:无损编码事件信息的最小平均编码长度。通俗理解,如果熵比较大,即对该信息进行编码的最小平均编码长度较长,意味着该信息具有较多可能的状态,即有着较大的信息量/混乱程度/不确定性。从某种角度上看,熵描述了一个概率分布的不确定性。

一个离散的随机变量 X X X可能取值为 X = x 1 , x 2 , . . . , x n X=x_1,x_2,...,x_n X=x1,x2,...,xn,即取值空间为 X = { x 1 , x 2 , . . . , x n } \mathcal{X}=\{x_1,x_2,...,x_n\} X={x1,x2,...,xn},概率分布律为 p ( x ) = Pr ⁡ ( X = x ) , x ∈ X p(x)=\operatorname{Pr}(X=x),x\in \mathcal{X} p(x)=Pr(X=x),xX,则随机变量的熵定义为
H ( X ) = − ∑ x ∈ X p ( x ) log ⁡ p ( x ) = E x ∼ p [ − log ⁡ p ( x ) ] \begin{aligned} H(X)&=-\sum_{x\in \mathcal{X}} p \left(x\right) \log p \left(x\right) \\ &=\mathbb{E}_{x \sim p}\left[-\log p(x)\right] \end{aligned} H(X)=xXp(x)logp(x)=Exp[logp(x)]
规定当 p ( x ) = 0 p(x)=0 p(x)=0时, p ( x ) log ⁡ p ( x ) = 0 p(x)\log p(x)=0 p(x)logp(x)=0

其中, − log ⁡ p ( x ) -\log p(x) logp(x)表示状态 X = x X=x X=x的最小编码长度。

  • Pr ⁡ ( A ) \operatorname{Pr}(A) Pr(A)也即 P ⁡ ( A ) \operatorname{P}(A) P(A),表示事件 A A A发生的概率,只是书写习惯不同,避免与其他 P P P混淆。

  • 有时也将上面的量记为 H ( p ) H(p) H(p)

  • 公式中的 E x ∼ p \mathbb{E}_{x \sim p} Exp表示使用概率分布 p p p来计算期望;

  • 其中 log ⁡ \log log以2为底时,熵单位为bit,以e为底时,熵单位为nat;

  • 上述的对熵的讨论也只是针对离散随机变量进行讨论的, p ( x ) p(x) p(x)在离散型随机变量中为概率分布律,在连续型随机变量中为概率密度函数;

交叉熵(cross-entropy):熵的计算是已知各状态的概率分布求其理论上最小平均编码长度。如果不知道各状态真实的概率分布 p ( x ) p(x) p(x),只有预估的概率分布 q ( x ) q(x) q(x),我们只好根据预估的概率分布 q ( x ) q(x) q(x)给事件编码,得到事件各状态 x x x的预估最小编码长度 − log ⁡ q ( x ) -\log q(x) logq(x)。假如经过观测后我们得到了真实概率分布 p ( x ) p(x) p(x),那么在计算预估最小编码长度 − log ⁡ q ( x ) -\log q(x) logq(x)的期望时就可以采用真实概率分布 p ( x ) p(x) p(x),得到交叉熵。

对于同一取值空间 X = { x 1 , x 2 , . . . , x n } \mathcal{X}=\{x_1,x_2,...,x_n\} X={x1,x2,...,xn}下的离散随机变量 P , Q P,Q P,Q,概率分布分别为 p ( x ) = Pr ⁡ ( P = x ) , q ( x ) = Pr ⁡ ( Q = x ) , x ∈ X p(x)=\operatorname{Pr}(P=x),q(x)=\operatorname{Pr}(Q=x),x\in \mathcal{X} p(x)=Pr(P=x),q(x)=Pr(Q=x),xX,交叉熵定义为
H ( P , Q ) = ∑ x ∈ X p ( x ) log ⁡ 1 q ( x ) = − ∑ x ∈ X p ( x ) log ⁡ q ( x ) = E x ∼ p [ − log ⁡ q ( x ) ] \begin{aligned} H(P, Q)&=\sum_{x\in \mathcal{X}} p(x) \log \frac{1}{q(x)} \\ &=-\sum_{x\in \mathcal{X}} p(x) \log q(x) \\ &=\mathbb{E}_{x \sim p}\left[-\log q(x)\right] \end{aligned} H(P,Q)=xXp(x)logq(x)1=xXp(x)logq(x)=Exp[logq(x)]

即用预估概率分布 q ( x ) q(x) q(x)计算每个状态的最小编码长度,用真实概率分布 p ( x ) p(x) p(x)求期望。可见, H ( P , Q ) ≠ H ( Q , P ) , H ( P , Q ) ⩾ H ( P ) H(P,Q)\neq H(Q,P),H(P,Q)\geqslant H(P) H(P,Q)=H(Q,P),H(P,Q)H(P)

上述定义也可写作:对于取值空间 X \mathcal{X} X的离散随机变量 X X X,有两个分布 p ( x ) , q ( x ) , x ∈ X p(x),q(x),x\in \mathcal{X} p(x),q(x),xX,这也是《信息论基础(原书第二版)》的表达方式;但考虑到一个随机变量对应一个分布更严谨些,便分成了同一取值空间的两个随机变量进行解释,这是《The Algorithmic Foundations of Differential Privacy》的表达方式。二者意思是一样的。

相对熵(relative entropy)/KL散度(KL-divergence):用来衡量交叉熵与熵之间的差距的,也是两个随机分布之间距离的度量。

对于同一取值空间 X = { x 1 , x 2 , . . . , x n } \mathcal{X}=\{x_1,x_2,...,x_n\} X={x1,x2,...,xn}下的离散随机变量 P , Q P,Q P,Q,概率分布分别为 p ( x ) = Pr ⁡ ( P = x ) , q ( x ) = Pr ⁡ ( Q = x ) , x ∈ X p(x)=\operatorname{Pr}(P=x),q(x)=\operatorname{Pr}(Q=x),x\in \mathcal{X} p(x)=Pr(P=x),q(x)=Pr(Q=x),xX,则 P P P相对 Q Q Q的相对熵为 P , Q 的 交 叉 熵 − P 的 熵 P,Q的交叉熵-P的熵 P,QP
D K L ( P ∥ Q ) = H ( P , Q ) − H ( P ) = − ∑ x ∈ X p ( x ) log ⁡ q ( x ) − ∑ x ∈ X − p ( x ) log ⁡ p ( x ) = − ∑ x ∈ X p ( x ) ( log ⁡ q ( x ) − log ⁡ p ( x ) ) = − ∑ x ∈ X p ( x ) log ⁡ q ( x ) p ( x ) = ∑ x ∈ X p ( x ) log ⁡ p ( x ) q ( x ) = E x ∼ p [ − log ⁡ q ( x ) ] − E x ∼ p [ − log ⁡ p ( x ) ] = E x ∼ p [ log ⁡ p ( x ) q ( x ) ] \begin{aligned} D_{K L}(P \| Q) &=H(P, Q)-H(P) \\ &=-\sum_{x\in \mathcal{X}} p(x) \log q(x)-\sum_{x\in \mathcal{X}}-p(x) \log p(x) \\ &=-\sum_{x\in \mathcal{X}} p(x)(\log q(x)-\log p(x)) \\ &=-\sum_{x\in \mathcal{X}} p(x) \log \frac{q(x)}{p(x)} \\ &=\sum_{x\in \mathcal{X}} p(x) \log \frac{p(x)}{q(x)} \\ &=\mathbb{E}_{x \sim p}\left[-\log q(x)\right]-\mathbb{E}_{x \sim p}\left[-\log p(x)\right]\\ &=\mathbb{E}_{x \sim p}\left[\log \frac{p(x)}{q(x)}\right] \end{aligned} DKL(PQ)=H(P,Q)H(P)=xXp(x)logq(x)xXp(x)logp(x)=xXp(x)(logq(x)logp(x))=xXp(x)logp(x)q(x)=xXp(x)logq(x)p(x)=Exp[logq(x)]Exp[logp(x)]=Exp[logq(x)p(x)]

可见,KL散度也可以用来衡量两个分布 P , Q P,Q P,Q的差异程度,另外, D K L ( P ∥ Q ) ≠ D K L ( Q ∥ P ) ⩾ 0 D_{K L}(P \| Q) \neq D_{K L}(Q \| P)\geqslant 0 DKL(PQ)=DKL(QP)0

最大散度(Max Divergence):KL散度是从整体上衡量两个分布的距离,最大散度是两个分布比值的最大值,从两个分布比值的最大值角度衡量了两个分布的差异。

对于同一取值空间 X = { x 1 , x 2 , . . . , x n } \mathcal{X}=\{x_1,x_2,...,x_n\} X={x1,x2,...,xn}下的离散随机变量 P , Q P,Q P,Q,概率分布分别为 p ( x ) = Pr ⁡ ( P = x ) , q ( x ) = Pr ⁡ ( Q = x ) , x ∈ X p(x)=\operatorname{Pr}(P=x),q(x)=\operatorname{Pr}(Q=x),x\in \mathcal{X} p(x)=Pr(P=x),q(x)=Pr(Q=x),xX,最大散度为
D ∞ ( P ∥ Q ) = max ⁡ x ∈ X [ log ⁡ Pr ⁡ [ P = x ] Pr ⁡ [ Q = x ] ] = max ⁡ x ∈ X [ log ⁡ p ( x ) q ( x ) ] \begin{aligned} D_{\infty}(P \| Q)&=\max _{x\in \mathcal{X}}\left[\log \frac{\operatorname{Pr}[P=x]}{\operatorname{Pr}[Q=x]}\right] \\ &=\max _{x\in \mathcal{X}}\left[\log \frac{p(x)}{q(x)}\right] \end{aligned} D(PQ)=xXmax[logPr[Q=x]Pr[P=x]]=xXmax[logq(x)p(x)]

2 差分隐私定义

差分隐私是Dwork在2006年首次提出的一种隐私定义,函数的输出结果对数据集中任何特定记录都不敏感。

假设对于一个考试成绩数据集 D D D,通过查询操作得知有 x x x个同学不及格,现加入一条新纪录得到新数据集 D ′ D' D,通过查询得知有 x + 1 x+1 x+1个同学不及格,便可推理出新加入的同学成绩不及格,如此一来,攻击者便通过这样的手段推理出了一些知识。

应对上述攻击,差分隐私通过往查询结果 f ( D ) , f ( D ′ ) f(D),f(D') f(D),f(D)中加入随机噪声 r r r最终得到查询结果 M ( D ) = f ( D ) + r , M ( D ′ ) = f ( D ′ ) + r \mathcal{M}(D)=f(D)+r,\mathcal{M}(D')=f(D')+r M(D)=f(D)+r,M(D)=f(D)+r,使得 D D D D ′ D' D经过同一查询后的结果并非确定的具体值,而是服从两个很接近的概率分布,这样攻击者无法辨别查询结果来自哪一个数据集,保障了个体级别的隐私性。

2.1 形式化定义

邻接数据集(neighbor datasets):仅有一条记录不同的两个数据集 D D D D ′ D' D

随机化算法 M \mathcal{M} M:随机化算法指,对于特定输入,该算法的输出不是固定值,而是服从某一分布。

隐私预算 ϵ \epsilon ϵ(privacy budget) ϵ \epsilon ϵ用于控制算法的隐私保护程度, ϵ \epsilon ϵ越小,则算法保护效果越好。

隐私损失(privacy loss):对于任意的输出结果 S S S ln ⁡ Pr ⁡ [ M ( D ) ∈ S ] Pr ⁡ [ M ( D ′ ) ∈ S ] \ln \frac{\operatorname{Pr}[\mathcal{M}(\mathrm{D}) \in \mathrm{S}]}{\operatorname{Pr}\left[\mathcal{M}\left(\mathrm{D}^{\prime}\right) \in \mathrm{S}\right]} lnPr[M(D)S]Pr[M(D)S] ln ⁡ Pr ⁡ [ M ( D ) = ξ ] Pr ⁡ [ M ( D ′ ) = ξ ] \ln \frac{\operatorname{Pr}[\mathcal{M}(\mathrm{D}) = \mathrm{\xi}]}{\operatorname{Pr}\left[\mathcal{M}\left(\mathrm{D}^{\prime}\right) = \mathrm{\xi}\right]} lnPr[M(D)=ξ]Pr[M(D)=ξ],其描述了算法 M \mathcal{M} M在邻接数据集上输出同一个值的概率差别大小,差分隐私机制将算法的隐私损失控制在一个有限范围 ϵ \epsilon ϵ内。

隐私损失可正可负,越正和越负都表示隐私损失很大,因此严格来说隐私损失应加个绝对值,为
P r i v a c y l o s s = ∣ ln ⁡ Pr ⁡ [ M ( D ) ∈ S ] Pr ⁡ [ M ( D ′ ) ∈ S ] ∣ Privacyloss=\left |\ln \frac{\operatorname{Pr}[\mathcal{M}(\mathrm{D}) \in \mathrm{S}]}{\operatorname{Pr}\left[\mathcal{M}\left(\mathrm{D}^{\prime}\right) \in \mathrm{S}\right]}\right | Privacyloss=lnPr[M(D)S]Pr[M(D)S]
当然,如没有加绝对值的地方默认 Pr ⁡ [ M ( D ) ∈ S ] ⩾ Pr ⁡ [ M ( D ′ ) ∈ S ] \operatorname{Pr}[\mathcal{M}(\mathrm{D}) \in \mathrm{S}] \geqslant \operatorname{Pr}[\mathcal{M}(\mathrm{D'}) \in \mathrm{S}] Pr[M(D)S]Pr[M(D)S]

ϵ − \epsilon- ϵ差分隐私:对于只有一个记录不同的邻接数据集 D D D D ′ D' D,给这两个数据集施加一个随机化算法(机制) M \mathcal{M} M,对于所有的 S ⊆ Range ⁡ ( M ) S\subseteq \operatorname{Range}(\mathcal{M}) SRange(M),若有
Pr ⁡ [ M ( D ) ∈ S ] ⩽ Pr ⁡ [ M ( D ′ ) ∈ S ] × e ϵ \operatorname{Pr}[\mathcal{M}(D) \in S] \leqslant \operatorname{Pr}\left[\mathcal{M}\left(D' \right) \in S\right] \times \mathrm{e}^{\epsilon} Pr[M(D)S]Pr[M(D)S]×eϵ

max ⁡ S [ ln ⁡ Pr ⁡ [ M ( D ) ∈ S ] Pr ⁡ [ M ( D ′ ) ∈ S ] ] ⩽ ϵ \max _{S}\left[\ln \frac{\operatorname{Pr}[\mathcal{M} (D) \in S]}{\operatorname{Pr}\left[\mathcal{M}\left(D' \right) \in S\right]}\right] \leqslant \epsilon Smax[lnPr[M(D)S]Pr[M(D)S]]ϵ
成立,则称算法 M \mathcal{M} M满足 ϵ − \epsilon- ϵ差分隐私。

其中 Range ⁡ ( M ) \operatorname{Range}(\mathcal{M}) Range(M)是随机算法 M \mathcal{M} M映射结果随机变量的取值空间, S S S是其子集;对于所有的 S ⊆ Range ⁡ ( M ) S\subseteq \operatorname{Range}(\mathcal{M}) SRange(M)即对于 Range ⁡ ( M ) \operatorname{Range}(\mathcal{M}) Range(M)的所有子集。

另种写法:
Pr ⁡ [ M ( D ) = x ] ⩽ Pr ⁡ [ M ( D ′ ) = x ] × e ϵ , x ∈ S \operatorname{Pr}[\mathcal{M}(D) =x] \leqslant \operatorname{Pr}\left[\mathcal{M}\left(D' \right) =x\right] \times \mathrm{e}^{\epsilon},x\in S Pr[M(D)=x]Pr[M(D)=x]×eϵ,xS

max ⁡ x ∈ S [ log ⁡ Pr ⁡ [ M ( D ) = x ] Pr ⁡ [ M ( D ′ ) = x ] ] ⩽ ϵ \max _{x\in S}\left[\log \frac{\operatorname{Pr}[\mathcal{M}(D)=x]}{\operatorname{Pr}[\mathcal{M}(D')=x]}\right] \leqslant \epsilon xSmax[logPr[M(D)=x]Pr[M(D)=x]]ϵ

( ϵ , σ ) − (\epsilon,\sigma)- (ϵ,σ)差分隐私:上面描述的是严格的差分隐私的定义,为了算法的实用性,Dwork后面引入了松弛的差分隐私,加入一个小常数 δ \delta δ(称作失败概率):
Pr ⁡ [ M ( D ) ∈ S ] ⩽ Pr ⁡ [ M ( D ′ ) ∈ S ] × e ϵ + δ \operatorname{Pr}[\mathcal{M}(D) \in S] \leqslant \operatorname{Pr}\left[\mathcal{M}\left(D' \right) \in S\right] \times \mathrm{e}^{\epsilon}+\delta Pr[M(D)S]Pr[M(D)S]×eϵ+δ

2.2 该定义是如何得来的

差分隐私的目的是使 M ( D ) , M ( D ′ ) \mathcal{M}(D),\mathcal{M}(D') M(D),M(D)的分布尽可能接近,便可用Max Divergence衡量两个分布的差异:
D ∞ ( M ( D ) ∥ M ( D ′ ) ) = max ⁡ x ∈ S [ log ⁡ Pr ⁡ [ M ( D ) = x ] Pr ⁡ [ M ( D ′ ) = x ] ] = max ⁡ S [ log ⁡ Pr ⁡ [ M ( D ) ∈ S ] Pr ⁡ [ M ( D ′ ) ∈ S ] ] \begin{aligned} D_{\infty}(\mathcal{M}(D) \| \mathcal{M}(D')) &=\max _{x\in S}\left[\log \frac{\operatorname{Pr}[\mathcal{M}(D)=x]}{\operatorname{Pr}[\mathcal{M}(D')=x]}\right] \\ &=\max _{S}\left[\log \frac{\operatorname{Pr}[\mathcal{M}(D) \in S]}{\operatorname{Pr}[\mathcal{M}(D') \in S]}\right] \end{aligned} D(M(D)M(D))=xSmax[logPr[M(D)=x]Pr[M(D)=x]]=Smax[logPr[M(D)S]Pr[M(D)S]]
其中 S ⊆ Range ⁡ ( M ) S\subseteq \operatorname{Range}(\mathcal{M}) SRange(M) Range ⁡ ( M ) \operatorname{Range}(\mathcal{M}) Range(M)是随机算法 M \mathcal{M} M映射结果随机变量的取值空间, S S S是其子集。

对于 Range ⁡ ( M ) \operatorname{Range}(\mathcal{M}) Range(M)的所有子集,即对于任意的 S ⊆ Range ⁡ ( M ) S\subseteq \operatorname{Range}(\mathcal{M}) SRange(M),两个分布的差异都被限制在隐私预算 ϵ \epsilon ϵ以内:
max ⁡ x ∈ S [ log ⁡ Pr ⁡ [ M ( D ) = x ] Pr ⁡ [ M ( D ′ ) = x ] ] = max ⁡ S [ log ⁡ Pr ⁡ [ M ( D ) ∈ S ] Pr ⁡ [ M ( D ′ ) ∈ S ] ] ⩽ ϵ \max _{x\in S}\left[\log \frac{\operatorname{Pr}[\mathcal{M}(D)=x]}{\operatorname{Pr}[\mathcal{M}(D')=x]}\right] =\max _{S}\left[\log \frac{\operatorname{Pr}[\mathcal{M}(D) \in S]}{\operatorname{Pr}[\mathcal{M}(D') \in S]}\right] \leqslant \epsilon xSmax[logPr[M(D)=x]Pr[M(D)=x]]=Smax[logPr[M(D)S]Pr[M(D)S]]ϵ
可见,上述的Max Divergence就是隐私损失。

log ⁡ \log log的底为 e e e,并两边同时利用指数运算、乘以分母变形得:
Pr ⁡ [ M ( D ) = x ] ⩽ Pr ⁡ [ M ( D ′ ) = x ] × e ϵ , x ∈ S \operatorname{Pr}[\mathcal{M}(D) =x] \leqslant \operatorname{Pr}\left[\mathcal{M}\left(D' \right) =x\right] \times \mathrm{e}^{\epsilon},x\in S Pr[M(D)=x]Pr[M(D)=x]×eϵ,xS

Pr ⁡ [ M ( D ) ∈ S ] ⩽ Pr ⁡ [ M ( D ′ ) ∈ S ] × e ϵ \operatorname{Pr}[\mathcal{M}(D) \in S] \leqslant \operatorname{Pr}\left[\mathcal{M}\left(D' \right) \in S\right] \times \mathrm{e}^{\epsilon} Pr[M(D)S]Pr[M(D)S]×eϵ

3 差分隐私中常用的随机化算法(机制)

常用的随机化机制有:

  • 拉普拉斯机制(Laplace mechanism)
  • 指数机制(Exponential mechanism)
  • 高斯机制(Gaussian mechanism)

这些机制中,噪声发现取决于算法的敏感度。

敏感度(sensitivity):对于只有一个记录不同的两个数据集 D , D ′ D,D' D,D,对于一个函数 M : D → R d \mathcal{M}:\mathcal{D} \rightarrow \mathcal{R^d} M:DRd,则 M \mathcal{M} M的敏感度为接收所有可能的输入后,得到输出的最大变化值:
Δ M = max ⁡ D , D ′ ∥ M ( D ) − M ( D ′ ) ∥ \Delta \mathcal{M}=\max _{D, D^{\prime}}\left\|\mathcal{M}(D)-\mathcal{M}\left(D^{\prime}\right)\right\| ΔM=D,DmaxM(D)M(D)
其中, ∥ ⋅ ∥ \|\cdot\| 表示向量的范数。 l 1 − l_1- l1敏感度和 l 2 − l_2- l2敏感度分别适用于 l 1 l_1 l1范数和 l 2 l_2 l2范数。

参考资料:

  1. 概率单纯形 https://zhuanlan.zhihu.com/p/479892005
  2. 【数学知识】KL散度 https://zhuanlan.zhihu.com/p/365400000
  3. 一文搞懂熵(Entropy),交叉熵(Cross-Entropy) https://zhuanlan.zhihu.com/p/149186719
  4. 差分隐私Differential Privacy介绍 https://zhuanlan.zhihu.com/p/40760105
  5. 差分隐私(一) Differential Privacy 简介 https://zhuanlan.zhihu.com/p/139114240
  6. 差分隐私的算法基础 第二章 第三节 形式化差分隐私 https://zhuanlan.zhihu.com/p/502656652
  7. 《联邦学习》杨强.et al 电子工业出版社
  8. 机器学习的隐私保护研究综述. 刘俊旭 孟小峰 doi: 10.7544/issn1000-1239.2020.20190455
  9. 《The Algorithmic Foundations of Differential Privacy》Dwork.et al 3.5.1
  10. 《信息论基础(原书第2版)》Thomas.et al 机械工业出版社
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值