文献笔记-《Privacy-utility trades in crowdsourced signal map obfuscation》

摘要

蜂窝电话供应商和数据聚合公司从用户设备中收集蜂窝信号强度测量数据,生成信号地图,用于改善网络性能。我们认识到,这种数据收集可能与人们日益增长的隐私意识相冲突,因此我们考虑在数据离开移动设备之前对这些数据进行混淆处理。我们的目标是提高隐私性,使人们难以从混淆数据中恢复敏感特征(如用户 ID 和用户行踪),同时仍允许网络提供商使用这些数据来改进网络服务(如创建精确的信号地图)。为了研究这种隐私与效用的权衡,我们确定了适合信号强度测量的隐私和效用指标以及威胁模型。然后,我们使用几种卓越的技术对测量结果进行混淆,包括差分隐私、生成对抗隐私和信息论隐私技术,以便对各种有前景的混淆方法进行基准测试,并为现实世界中负责构建信号图的工程师提供指导,使其在保护隐私的同时不损害效用。我们的评估结果基于多个不同的真实世界信号图数据集,证明了同时实现充分的隐私性和实用性的可行性,混淆策略在设计中使用了数据集的结构和预期用途,并以平均情况而非最坏情况为目标。

Introduction

在这项工作中,我们研究了蜂窝信号强度测量中的隐私-效用权衡,重点是设备级混淆,即在测量结果离开用户手机之前对其进行混淆或私有化。目的是提高隐私性,使用户 ID 和行踪等敏感特征难以从混淆测量中恢复,同时仍允许网络提供商利用测量结果改进网络服务,即创建精确的信号地图。为了研究这种隐私与效用的权衡,我们确定了适合当前信号图应用的隐私和效用指标以及威胁模型。然后,我们使用隐私研究前沿的一些有前途的方法对测量结果进行混淆,以便对其进行基准测试,并为现实世界中负责构建信号图的工程师提供指导,这些信号图既能提供(一定的)隐私,又能保持(足够的)实用性。

我们实施了四种混淆信号强度测量的策略,以评估和比较它们在特定应用中的性能,并从文献中选择了具有不同复杂性和隐私保证的优秀方法。具体来说,第一种是添加噪声的隐私化器,它在数据特征中添加独立、同分布的高斯噪声。这种方案虽然简单,但通过选择添加多少噪声,为隐私效用权衡提供了直观的方法。第二种方案基于差分隐私(DP)[12],这是一种领先的数据混淆方法,可提供针对任何任意对手的概率最坏情况保证,包括拥有无限资源和访问侧信息的对手。在这项工作中,我们应用了流行的局部高斯机制 [12],以及最近的截断拉普拉斯机制 [13]。

第三种方法利用生成式对抗网络的理念,采用数据驱动的方法学习混淆方案。这种方法被称为生成式对抗隐私(GAP)[14],它将以神经网络为模型的保密者和对抗者对立起来。保密者学会混淆数据,使对手无法推断敏感特征,而对手同时学会推断敏感特征。虽然这种方法无法提供不同私有化方法的正式最坏情况保证,但这种学习方法提供了利用数据集结构和网络特定效用目标的潜力。第四种策略的动机是对问题进行信息论处理。考虑到互信息是隐私性能的一个凸度量,我们将一个正式的优化问题定义为在效用约束条件下找到隐私最大化的混淆策略。我们将这种方法称为(IT),它在平均意义上最大化了用户隐私,但牺牲了递延隐私方法提供的最坏情况保证。第 5 节将详细讨论这些私有化方法。

3 系统模型

图 1 展示了我们所考虑的系统模型,其中涉及移动用户、服务提供商或第三方以及对手。用户设备记录网络测量数据并将其传输到服务提供商或第三方服务器。由于所报告的数据包含用户可能认为是隐私的信息(如用户位置,见第 3.1 节),因此用户在将数据上传到服务器之前,会使用设备级私有化器在本地对数据进行混淆(见第 3.3 节)。服务提供商的目标是根据汇总的混淆用户测量数据训练 RSS 模型,该模型可用于生成信号图,从而指导网络规划和运行 (见第 3.6 节)。最后,可以访问混淆数据的对手通过估计与接收到的测量数据相对应的用户 ID 和位置来估计用户的行踪(见第 3.5 节)。请注意,我们假设服务提供商对用户行踪也很好奇,因此也可能是对手。我们进一步假设,敌方可以访问到达服务器的混淆数据,但不能访问直接暴露用户身份的侧边信息(关于威胁模型的详细描述,请参见第 3.2 节)

3.1. 用户数据

表 1 列出了与本文最相关的特征及其敏感性指标。用户 ID 和位置被认为是敏感特征(私密),而 RSS/RSRP 和其他特征则不敏感(公开)。
为直观起见,我们在图 2 中绘制了第一个数据集在地理区域上的数据。图中的颜色表示用户 ID,很明显,我们不能仅凭地理位置就轻易推断出用户 ID。

3.2.威胁模型

敌方将设法获取尽可能多的用户特征报告,包括 (𝑢, 𝑥1 , 𝑥2 , 𝑥3 ,...) 。由于敌方寻求的主要信息可能不会明确地出现在报告中,例如,如果报告被故意混淆,敌方就会执行推理攻击来估计他们想要的用户隐私信息。威胁的性质可能因具体的移动数据应用和对手的能力而有所不同。有鉴于此,我们将以下属性视为威胁模型定义的一部分:

  • 对手是否可以直接访问单个用户的报告,或者其访问权限是否仅限于所有用户的汇总报告;
  • 是否应假定对手拥有有限制的计算资源;
  • 对手是否可以访问相关的侧边信息;以及 - 用户主要关心的是平均情况下还是最坏情况下他们的报告中可能暴露的私人信息。

侧边信息是指敌方可能获得的任何额外信息,可用于补充从用户报告中收集的信息,从而提高推理攻击的效率。这可能包括美国人口普查局或交通部等机构的公共数据库,这些数据库允许对手将数据特征(如地址和姓名)联系起来。典型的移动网络数据威胁模型: 对于大多数移动网络数据应用和用户,我们采用以下威胁模型:

  • 敌方可以直接访问单个用户的报告,
  • 敌方的计算资源是有限制的。
  • 敌方获取侧边信息的途径有限,
  • 用户主要关注的是平均隐私暴露。

3.3. Data obfuscation and privatizers

为了防范对手的威胁,可以在向服务提供商发布个人用户提供的特征数据之前对其进行混淆处理,从而保护隐私。特征集至少要去掉用户 ID。然后根据所选的私有化方案(简称 "私有化方案")对剩余的特征数据进行混淆处理。之所以需要这样做,是因为对手可能会从数据中学到将公共特征和私人特征联系起来的模式,因此只对私人特征进行混淆是不够的。

私有化器将生成一份混淆的测量特征报告(𝑢, 𝑥1 , 𝑥2 , 𝑥3 , ...)→(𝑦1 , 𝑦2 , 𝑦3 , ...),其中𝑦𝑖 表示𝑥𝑖 的混淆版本,其中的映射取决于私有化器的设计。我们将考虑几种私有化器,详见第 5 节。有些私有化程序在设计时会利用实际的用户数据。我们假定这些数据是通过选择性调查和服务提供商激励机制收集的,或者是由提供商通过其他方式收集的,例如通过巡查。

3.4 上下文

表 2 比较了不同隐私保护器使用的上下文数量以及它们能保护哪些威胁模型属性。LDP 提供的隐私保护比其他隐私保护器更强,因为它能在最坏情况下提供隐私保证,以应对任何可能拥有无限资源和侧面信息访问权的对手。不过,它没有正式的机制来保证最低水平的效用。相比之下,GAP 和 IT 能够感知特定应用的效用指标,并将其纳入优化设置中,从而提供效用保证。特别是 GAP 私有化器,它优化的是一个同时考虑隐私和效用的多目标函数。尽管如此,它经过优化后,只能针对其训练循环中的特定对手提供形式上的保证。第 5 节将详细讨论不同混淆方法之间的这些基本区别,第 6 节将详细介绍和讨论它们对隐私与效用权衡的影响。

3.6. Signal map model

服务提供商根据汇总的用户数据训练 RSS 预测器,使其能够生成准确的信号图。具体来说,模型输入特征包括(混淆的)纬度、经度和其他特征(即 (𝑥1 , 𝑥2 , 𝑥𝑗 , 𝑗 > 3)),模型输出为以 dBm 为单位的 RSS 值𝑥3。关于 RSS 预测模型的研究由来已久,参见文献 [51-53]。我们首先考虑了一个简单的路径损耗模型 [54],但发现其准确性不高。我们还考虑了一个线性模型和一个神经网络模型,发现两者的准确度相当,但前者更容易操作。值得注意的是,前者的参数可以通过一个步骤估算,这使我们可以更高效地计算特定应用的效用指标(见第 4.2 节)。因此,我们选择了一个线性 RSS 预测模型。具体来说,我们使用以下模型:

其中,𝑘 是测量中的特征总数, <math xmlns="http://www.w3.org/1998/Math/MathML"> 𝛼 = [ 𝑎 0 , . . . , 𝑎 𝑚 − 1 ] 𝛼 = [𝑎_0 , ..., 𝑎_{𝑚-1}] </math>𝛼=[a0,...,am−1] 𝑇 是参数向量。给定一组 𝑛 测量值 <math xmlns="http://www.w3.org/1998/Math/MathML"> 𝑋 = [ 𝑥 𝑗 𝑖 ] 𝑋 = [𝑥_{𝑗𝑖}] </math>X=[xji] 其中 𝑗 = 1, ..., 𝑚 和 𝑖 = 1, ... , 𝑛𝑚 ("𝑛 "是特征的数量),RSS 预测模型的参数向量可通过线性回归估算如下:

4. 指标定义

4.1. 隐私

让 𝑛 表示每批测量的次数。𝑢 = [𝑢𝑖 ], 𝑖 = 1 ...𝑛表示每次收集测量的用户 ID , <math xmlns="http://www.w3.org/1998/Math/MathML"> u ^ = [ u ^ i ] \hat{u}=[\hat{u}_{i}] </math>u^=[u^i] 是对手对𝑢的估计值。对手计算可能用户 ID 空间的概率分布,并为每次测量选择可能性最大的用户 ID 估计值。我们将对手估计的准确度定义为用户 ID 估计正确率,即

其中,如果估计正确,指标函数 <math xmlns="http://www.w3.org/1998/Math/MathML"> 1 u ^ i = u i 1_{\hat{u}_i=u_i} </math>1u^i=ui 等于 1,否则为 0。由于高准确度值对应低隐私值,我们将第一个隐私度量定义为

我们的第二个隐私度量指标是真实位置与敌方估计位置之间的欧氏距离,该距离是批次的平均值,定义为

由于在我们的应用中,用户 ID 和位置都被视为隐私和敏感信息,因此我们进一步定义了以下综合隐私度量:

4.2. 效用

第一个指标通过输入和混淆数据之间的 L2 范数距离(对所有 𝑛 批量测量进行平均)来量化数据集的整体失真,考虑所有 𝑚 特征:

第二个效用指标与 3.6 节中描述的 RSS 预测模型相关。回想一下,服务提供商的目标是根据聚合的用户数据估计准确的 RSS 预测模型。然而,对于混淆的用户数据,RSS预测模型的估计参数与未混淆的用户数据估计的参数不同(即估计参数向量从𝛼𝑋变为𝛼𝑌,见方程(2))。为了最小化它们之间的差异,我们将第二个效用函数定义为 𝛼𝑋 和 𝛼𝑌 之间的 L1 范数距离的相反函数,如下所示:

设想服务提供商在实践中可能关心多个特定于应用程序的效用指标(如 𝑈2),我们进一步定义复合效用指标 𝑈(𝑥, 𝑦) 为

5. Privatizers

在本节中,我们将详细介绍代表不同类型混淆方案的四种私有化器。具体来说,我们首先选择高斯噪声添加型私有化器作为基准,因为它简单易用。然后,我们根据众所周知的差分保密优势,选择了局部差分保密器(LDP)。然后,我们选择了基于 GAN 的私有化器(简称为 GAP 私有化器),因为最近人们对如何利用对抗性学习来训练私有化器,并将其定位为对抗性学习很感兴趣。最后,我们选择了所谓的 IT 私有化器,因为它很好地代表了使用互信息作为隐私度量和优化来优化混淆设计的混淆方案。

生成式对抗隐私

生成式对抗隐私(Generative Adversarial Privacy)是一种数据驱动的混淆方法,它通过在最小博弈(minimax game)中将私有化者和对抗者相互定位来学习私有化策略[14,21]。我们的私有化器是一个全连接的前馈神经网络,其结构与对手类似。它有两层隐藏层,每层有 256 个单元。在层与层之间,我们采用了整流线性单元(ReLU)激活,而优化则依赖于学习率为 0.001 的自适应矩估计(Adam)随机梯度下降法。我们的私有化器接收大小为 𝑛 × 𝑚 的输入批次,输出 𝑛 × 𝑚 的混淆数据批次,其中每个测量值都是独立混淆的。(我们将在第 6.2 节中讨论将测量数据分组,然后共同进行混淆处理的情况)。我们的私有化者希望最小化以下损失函数

其中,𝑈 是式 (12) 中定义的综合效用指标,𝐿𝑎 是式 (7) 中定义的对手损失函数,它是综合隐私指标的可微分版本,取决于对手对用户 ID 和位置的估计误差。请注意,随着对手损失的减少(意味着隐私减少),私有化者的损失也会增加。与隐私损失相比,𝜌 量化了对效用损失的惩罚。当 𝜌 ⟶ 1 时,效用损失对私有者的影响较大;当 𝜌 ⟶ 0 时,隐私损失对私有者的影响较大。我们采用迭代方法来训练这两个神经网络。我们首先训练对抗者,具体来说,我们固定私有化者的神经网络(NN)权重,并沿着 𝐿𝑎 的负梯度扰动对抗者的 NN 权重,持续 𝑘 个历元。然后,我们训练私有化器,即沿着𝑝𝐿 的负梯度扰动私有化器的 NN 权重𝑘 个历元,如此反复。当两者都收敛后,我们就找到了最小博弈的均衡点。然后,我们在测试过程中固定两个 NN 的权重。GAP 私有化器在其损失函数𝐿𝑝中纳入了隐私和效用指标,并使用与评估私有化器相同的损失函数𝐿𝑎对对手进行训练。

5.4. 信息论隐私

对于这种方法,我们在正式的优化框架下,以可分析的方式考虑隐私与效用的权衡。考虑到 𝑋∈  和 𝑌∈  分别是描述输入数据和混淆数据的随机变量,我们的 IT 私有化器试图最小化互信息𝐼(𝑋; 𝑌 ),见公式 (8),并受到效用约束。私有化者由条件概率分布 𝑝𝑌 指定。

我们通过将其重写为一个拉格朗日函数来处理这个受限最小化问题,该函数的最优点是选择变量域上的全局最小值和卡氏-库恩-塔克(KKT)乘数上的全局最大值[60]。下面我们将分析 KKT 条件,从而得出最优解的关键观察结果:
求解最优条件概率分布,我们可以看到

我们取两边之和、

然后,我们将其代入公式 (20),得到𝜆 ∗ 的表达式:

相关推荐
马剑威(威哥爱编程)1 小时前
除了递归算法,要如何优化实现文件搜索功能
java·开发语言·算法·递归算法·威哥爱编程·memoization
算法萌新——12 小时前
洛谷P2240——贪心算法
算法·贪心算法
湖北二师的咸鱼2 小时前
专题:二叉树递归遍历
算法·深度优先
重生之我要进大厂2 小时前
LeetCode 876
java·开发语言·数据结构·算法·leetcode
KBDYD10103 小时前
C语言--结构体变量和数组的定义、初始化、赋值
c语言·开发语言·数据结构·算法
Crossoads3 小时前
【数据结构】排序算法---桶排序
c语言·开发语言·数据结构·算法·排序算法
自身就是太阳3 小时前
2024蓝桥杯省B好题分析
算法·职场和发展·蓝桥杯
孙小二写代码4 小时前
[leetcode刷题]面试经典150题之1合并两个有序数组(简单)
算法·leetcode·面试
little redcap4 小时前
第十九次CCF计算机软件能力认证-1246(过64%的代码-个人题解)
算法
David猪大卫4 小时前
数据结构修炼——顺序表和链表的区别与联系
c语言·数据结构·学习·算法·leetcode·链表·蓝桥杯