本地 vs 中央差分隐私
人们谈论差分隐私时,想的未必是同一件事。定义上大家是一致的,但上下文很重要。差分隐私主要有三种部署场景:中央模型(也叫全局模型)、本地模型和分布式模型。
中央差分隐私
在中央模型中,中央聚合器可以直接访问原始数据。每个用户把自己的数据不加噪声地发给聚合器。聚合器拿到这些数据后,用差分隐私机制进行转换。
差分隐私机制只在最后一步应用一次。然后聚合器可以发布结果,也可以跟第三方分享。
这个模型有一个很大的优点:准确性。在中央模型中,你通常不需要加太多噪声就能得到低 \(\varepsilon\) 下有价值的结果。还记得之前解释怎么用差分隐私发布统计数据或直方图吗?那些例子用的就是中央模型。效果很好:只需一点噪声就能在计数中隐藏某个人。
问题在哪?中央聚合器需要知道真实数据。在上面的场景中,我们给真实计数加噪声。但这要求我们先知道真实数字……也就是说,每个用户必须足够信任聚合器才敢把数据交出去。这可能很难做到:聚合器也许是一个不受信任的公司或政府。而且,中央模型把所有数据集中到一个地方,增加了灾难性故障的风险——比如聚合器被黑客攻击,所有数据就全泄露了。
最著名的现实案例大概要数美国人口普查了。2020 年,美国人口普查使用差分隐私在发布前匿名化数据。非常令人兴奋!你可以在这里了解更多。
本地差分隐私
另一个主要方案是差分隐私的本地模型。这个模型里仍然有聚合器,但他们不再能接触原始数据。相反,每个用户自己对本地数据施加差分隐私机制,只有在数据已经匿名化之后才发给聚合器。
收集到这些噪声数据后,聚合器可以计算一些统计数据并发布。最后一步不需要差分隐私:数据从一开始就是匿名的。理论上,聚合器甚至可以发布收集到的整个数据集。
这个模型最大的优点就是不再需要信任。每个用户自己保护自己的数据,即使聚合器是恶意的,他们也是安全的。这使得本地模型非常适合难以建立信任的场景。之前已经见过一个例子!用随机响应来收集数据的药物使用调查,允许受访者诚实回答而不暴露违法行为——这就是本地模型的典型应用。
你能猜到缺点吗?每个用户都要给自己的数据加噪声,总噪声大得多。你通常需要比中央模型多得多的用户才能得到有用的结果。为了缓解这个问题,实际应用中往往使用较大的 \(\varepsilon\) 值。
除了随机响应,本地模型最著名的案例大概是 RAPPOR。这个巧妙的方案是为在 Google Chrome 中收集差分隐私数据而设计的。另一个稍新一点的例子是 Apple 用来收集 iOS 键盘数据的机制。
分布式差分隐私:介于两者之间
中央和本地之间的选择看起来很苛刻:要么忍受更大的噪声,要么收集原始数据。所以研究人员在寻找折中方案,提出了一些介于两者之间的模型,统称为分布式差分隐私,试图两全其美。
这些模型背后的共同思路是在数据收集过程中加入一个中间步骤。数据不直接从用户发给聚合器,而是先运行某种分布式协议,聚合器只看到协议的输出。
有几种不同的方式来实现这个思路:
- 一些系统架构,如 Encode-Shuffle-Analyze,引入了一个叫混洗器的新组件。它删除标识符,将相似的数据点分组,然后以随机顺序返回。
- 另一些用加密协议在服务器看到数据之前就完成聚合。聚合器只知道所有值的总和之类的信息,看不到单个值。这可以作为联邦学习管道的一部分来使用。
注意上面图表中的箭头是双向的。这是因为有些分布式 DP 机制是交互式的:协议需要用户和聚合器之间多轮双向通信。
不同分布式 DP 协议的信任假设也各不相同。聚合器被假设为诚实但好奇的,还是主动恶意的?有没有多个参与方,它们是否被假设不串通?保证是仅依赖标准加密假设,还是依赖硬件组件的安全性?不同实现对这些问题的答案各不相同。
分布式 DP 的研究探索了信任与准确性之间的权衡空间。它还揭示了更多取舍:协议还必须最小化计算资源和带宽消耗。众多的可能性和挑战催生了一个蓬勃发展的研究领域。在收集原始数据不可行的场景下,分布式 DP 具有巨大的潜力!

浙公网安备 33010602011771号