桂花里小区最近搬来一位姓王的统计员,他每周挨家挨户敲门,想收集大家的生活小癖好——比如“您上周熬夜了吗”“您养了几只猫”。王统计员承诺出一本《桂花里生活白皮书》,但街坊们心里直打鼓:我把真实作息告诉你,万一你转头卖给健身广告商怎么办?于是聪明的小鹿阿姨想出一个主意:每家都准备一个“撒谎转盘”,转盘指针经过特殊调配,你照着转盘转动后作答——有时说真话,有时故意说反话。王统计员收到一堆“半真半假”的答案,却能用一套“纠偏公式”算出全小区真实的比例。这就是本地差分隐私(LDP)的核心思想:真数据永远不出家门,出门的都是“转过的答案”;而统计者靠数学补偿,依然能还原群体的真实规律。整篇文章我们就围绕这个“撒谎转盘”展开:它怎么设计、怎么保证隐私、统计员怎么纠偏、实际系统怎么落地。

岗位关联

本地差分隐私是隐私计算的重要组成部分。掌握它,你就能在真实业务中设计“不收集原始数据也能统计”的数据管道,在合规压力下依然支撑 AI 数据闭环,是数据工程师与算法工程师构建可信数据体系的必备技能。

目录
  1. 可视化演示
  2. LDP起源与定义
  3. LDP核心定义
  4. 随机响应机制
  5. 数值扰动机制
  6. 统计聚合推断
  7. 工程实践应用
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

展示LDP数据收集流程(用户端加噪后上报)、随机响应机制的概率分布,以及LDP与中心化差分隐私CDP的架构对比。

本节配有交互动效(进入视口后自动加载,约 3KB)。

LDP数据收集流程:用户端加噪后上报 USR=用户设备持有原始数据 NOI=本地施加LDP随机扰动 SRV=服务器聚合估计,无法看到原始值 e越小隐私越强,噪声越大

LDP起源与定义

王统计员最早提出的方案是“中心化”的:大家把真实答案写进信封,投进他楼下的保密信箱,由他在保险柜里统一加噪再公布白皮书。小鹿阿姨当场反对:“信箱钥匙在老王手里,他加班时偷偷看怎么办?”这个质疑,正好戳中了传统差分隐私的信任软肋——中心化差分隐私要求存在一个可信的聚合者,所有原始数据先汇聚到他那里,再由他在结果上注入噪声。一旦聚合者被攻破或监守自盗,整个隐私承诺就崩塌了。

于是研究者换了个思路:既然大家信不过“中间人”,那就让每个人在数据出门之前,自己先完成“伪装”。这就是本地差分隐私(Local Differential Privacy, LDP)的出发点——把扰动动作从服务器端搬到用户端,服务器从头到尾只接触经过扰动的数据。在这个模型里,威胁假设非常明确:服务器是不可信的,它可能偷看、可能被攻击、也可能勾结外部广告商;我们能信任的只有用户自己的设备。

中心化差分隐私的经典定义可以写成下面的形式:对只相差一条记录的相邻数据集 D 和 D′,加噪算法 M 在任意输出集合 S 上的概率不能超过 e 的 ε 次方倍:

本地差分隐私把这种“相邻数据集”的思维进一步压缩到单条记录内部:不再比较两个数据库,而是比较同一个用户两种可能的真实答案。小鹿阿姨说:“老王,我不管你怎么统计几百户人家,我只关心——你看到我转过的答案后,猜不出我原本到底熬没熬夜。”信任边界从此从“相信服务器”转移到了“只信自己手里的转盘”。

Pr⁡[M(D)∈S]≤eε⋅Pr⁡[M(D′)∈S]\Pr[\mathcal{M}(D)\in S] \le e^\varepsilon \cdot \Pr[\mathcal{M}(D')\in S]
这个式子的含义是:不管有没有你的那条数据,统计结果看起来都“差不多”,差多少由 ε 控制。
  1. 概率符号整个式子在比较两种情况下输出落在同一集合的概率
    Pr⁡[⋅]\Pr[\cdot]
  2. 查询算法M 是中心服务器上运行的加噪统计算法,它吃进整个数据库,吐出统计结果
    M(D)\mathcal{M}(D)
  3. 相邻数据集D 和 D′ 只差一条记录,代表“有你还是没你”
    D, D′D,\ D'
  4. 隐私预算e^ε 是两种情形概率比值的上限,ε 越小,别人越难分辨你的记录是否在场
    eεe^\varepsilon

LDP核心定义

小鹿阿姨对转盘提出了一个硬性要求:它必须做到“不可反推”。什么叫不可反推?她说:“假设我真实答案是'熬夜',我转盘后说出'没熬夜'的概率;和真实答案是'没熬夜',我转盘后说出'没熬夜'的概率——这两个概率不能差太多。否则你说不准哪句话是假的。”这个朴素要求,就是 ε-本地差分隐私的形式化定义。

设随机化机制为 R,它接收用户的真实值 x,输出扰动后的值 y。ε-本地差分隐私要求:对任意两条可能的真实记录 x 和 x′,以及任意可能的输出 y,它们的输出概率之比都不超过 e^ε:

这个定义和中心化 DP 的最大区别在于:中心化 DP 保护的是“你的记录是否在数据库里”,而 LDP 保护的是“你的真实值究竟是哪个”。正因如此,LDP 不需要可信第三方——小鹿阿姨的转盘就在她自己口袋里,老王唯一的任务,是收集满楼的“半真话”并做统计复原。

Pr⁡[R(x)=y]≤eε⋅Pr⁡[R(x′)=y],∀x,x′,y\Pr[\mathcal{R}(x)=y] \le e^\varepsilon \cdot \Pr[\mathcal{R}(x')=y],\quad \forall x,x',y
通俗地说:无论你的真实情况是 A 还是 B,转盘吐出“答案 C”的可能性几乎一样,ε 就是“几乎”的程度。
  1. 随机化机制R 就是那只“撒谎转盘”,给定真实输入,按概率输出一个(可能掺假的)答案
    R(x)\mathcal{R}(x)
  2. 单条记录比较x 和 x′ 是同一个用户两种可能的真实状态,比如“熬夜”和“没熬夜”
    ∀x,x′∈X\forall x,x' \in \mathcal{X}
  3. 输出概率之比任意一个输出 y 在两个真实状态下被说出来的概率,比值被夹在 e^ε 的范围内
    Pr⁡[R(x)=y]Pr⁡[R(x′)=y]≤eε\frac{\Pr[\mathcal{R}(x)=y]}{\Pr[\mathcal{R}(x')=y]} \le e^\varepsilon
  4. 全称量化∀ 表示对“所有”可能的 x、x′、y 都成立,确保最坏情况下也不泄露
    ∀x,x′,y\forall x,x',y
  5. 隐私参数ε 是隐私预算,也叫隐私损失;ε 越小,两条概率曲线越接近,隐私保护越强,但数据里掺的“谎”也越多
    ε↓  ⟹  Pr⁡[R(x)=y]≈Pr⁡[R(x′)=y]\varepsilon \downarrow \implies \Pr[\mathcal{R}(x)=y] \approx \Pr[\mathcal{R}(x')=y]

随机响应机制

全世界最简单的一只“撒谎转盘”,是统计学家沃纳在 1965 年提出的随机响应(Randomized Response)。规则只有一条:转动转盘,以概率 p 说真话,以概率 1−p 说反话。如果问题是“您上周熬夜了吗”,而你实际上熬夜了,那么你有 p 的概率回答“是”,也有 1−p 的概率故意回答“否”。

为了让这个转盘满足前面说的 ε-本地差分隐私,p 必须经过精心标定。代入定义不等式可以解出,当 p 取下面这个值时,机制恰好达到隐私预算 ε:

当 ε 取 0 时,p 等于 1/2——转盘完全随机,答案和真实值毫无关系;当 ε 取很大值时,p 趋近 1——转盘几乎总说真话。有了扰动概率,老王还面临另一个问题:他收到的“是”里面,有的是真话,有的是反话,怎么还原真实比例?这需要一个纠偏公式。假设观测到回答“是”的比例为 p̂_obs,那么真实比例 π 的估计值为:

随机响应机制的价值在于:它对每个用户只做一次本地随机扰动,计算开销极小,却提供了严格的 ε 保证。代价是单个回答的噪声很大——老王必须收集足够多的样本,才能让群体规律从噪声中浮现出来。这就好比小鹿阿姨家的转盘特别“爱撒谎”时,王统计员只能多敲几家门,靠人数来凑准头。

p=eε1+eεp = \frac{e^\varepsilon}{1+e^\varepsilon}
公式的本质:先把反话造成的“水分”减掉,再按说真话的比例放大回去。
  1. 观测比例p̂_obs 是老王直接统计的“是”的比例,它等于真实比例被 p 稀释后再平移的结果
    p^obs=p⋅π^+(1−p)(1−π^)\hat{p}_{\text{obs}} = p \cdot \hat{\pi} + (1-p)(1-\hat{\pi})
  2. 减去偏移减掉 (1−p) 是为了消除“反话阵营”带来的固定偏移
    p^obs−(1−p)\hat{p}_{\text{obs}} - (1-p)
  3. 放大回真除以 (2p−1) 是把被转盘“压缩”过的信号放大回原始尺度,2p−1 正是“真话比例超过反话比例”的余量
    p^obs−(1−p)2p−1\frac{\hat{p}_{\text{obs}} - (1-p)}{2p-1}

数值扰动机制

“熬夜没有”是二选一的问题,可王统计员的下一个问题是:“您家狗平均每天遛多久?”这就麻烦了——答案不是一个“是/否”,而是一个连续数值。小鹿阿姨的转盘没法直接处理“37.5 分钟”这种答案。处理数值型数据,LDP 常用的手段是拉普拉斯机制:在真实数值上加一个服从拉普拉斯分布的随机噪声。拉普拉斯分布像一座尖顶帐篷——中间尖、两边拖长尾巴,所以它生成的噪声大多很小,偶尔很大,恰好能在“保效用”和“藏真值”之间取得平衡。

数值型 LDP 扰动通常分两步:先确定值域 [a, b],把超出范围的极端值裁剪到边界内,再叠加尺度为 Δ/ε 的拉普拉斯噪声,其中 Δ = b−a 是值域宽度:

除了拉普拉斯机制,工程上更常用“离散化 + 随机响应”的组合:把连续值域切成一格格“桶”,每个桶编号当成一个离散选项,再做随机响应。这就像把“遛狗多少分钟”先换算成“1 到 10 号桶”,然后转动撒谎转盘报一个桶号。桶编码方案(如 one-hot 编码)再配合 Hadamard 变换,还能把多维属性压缩成一条消息上报。数值扰动机制的共同逻辑是:要么给数字盖毛玻璃,要么把连续刻度变成离散桶,总之让攻击者拿到的永远是一个“打了折扣”的数值。

x~=clip⁡(x+Lap(Δ/ε), a, b)\tilde{x} = \operatorname{clip}\bigl(x + \mathrm{Lap}(\Delta/\varepsilon),\, a,\, b\bigr)
这个公式是说:先在真实数字上盖一层“毛玻璃”,再把结果硬塞回合法刻度盘里。
  1. 求值域宽度Δ 是全局敏感度的替身,表示“换一个人回答,统计结果最多改变多少”,在本地场景下就是值域长度
    Δ=b−a\Delta = b - a
  2. 拉普拉斯噪声Lap(Δ/ε) 生成一个随机扰动项,尺度越大噪声越猛
    Lap(Δε)\mathrm{Lap}\left(\frac{\Delta}{\varepsilon}\right)
  3. 叠加噪声把噪声加到真实值 x 上,得到扰动后的数值
    x+Lap(Δ/ε)x + \mathrm{Lap}(\Delta/\varepsilon)
  4. 裁剪回值域clip 把结果限制在 [a, b] 内,防止噪声把答案推到荒谬的范围
    clip⁡(⋅,a,b)\operatorname{clip}(\cdot, a, b)

统计聚合推断

王统计员手里攥着三百份“半真半假”的答案,怎么算出全小区真实的熬夜比例和平均遛狗时长?答案是:在聚合端做与扰动相反的解卷积操作。对于随机响应,我们在前文已经推导过频率纠偏公式——老王需要做的,就是数一数“是”的回答占多少,然后套公式。这里更一般地考察均值估计:假设每个用户上报的扰动值 Y 与真实值 X 之间满足“以 p 保持、以 1−p 翻转”的关系,则总体均值 μ_X 的无偏估计为:

为什么老王敢这么算?因为“撒谎转盘”是公平的——每个人翻转的概率相同且独立,虽然单个答案可能骗人,但大量答案叠加后,说谎的部分会按概率相互抵消,剩下的就是被缩小的真实信号。误差分析告诉我们,估计量的方差与 n 成反比,且与 (2p−1)² 相关:ε 越小,2p−1 越接近 0,放大倍数越大,要达到同样精度就需要更多用户。这解释了 LDP 系统的一个共性规律:隐私越强,所需的样本量越大。王统计员若想既把 ε 调小、又把白皮书印准,就必须敲开更多邻居的门。

μ^X=yˉ−(1−p)2p−1\hat{\mu}_X = \frac{\bar{y} - (1-p)}{2p-1}
聚合端公式和频率纠偏公式长得像亲兄弟:观测均值减去偏移,再除以放大系数。
  1. 观测均值ȳ 是所有用户上报的扰动值的算术平均,它混入了翻转带来的偏移
    yˉ=1n∑i=1nYi\bar{y} = \frac{1}{n}\sum_{i=1}^{n} Y_i
  2. 翻转偏移由于一部分人说了反话,观测均值整体被平移了 (1−p)
    yˉ−(1−p)\bar{y} - (1-p)
  3. 恢复尺度真实信号在传输中被压缩成原来的 (2p−1) 倍,除以它就把信号放大回来
    μ^X=yˉ−(1−p)2p−1\hat{\mu}_X = \frac{\bar{y} - (1-p)}{2p-1}

工程实践应用

王统计员若每周都来收集一次数据,小鹿阿姨就要反复转动转盘。她很快发现:每次转动都消耗一点“信任额度”。在 LDP 中,这个额度就是隐私预算 ε。如果同一个用户为了 m 个问题各上报了一次,每次都满足 ε_k-本地差分隐私,那么从整体看,该用户总共泄露的隐私大约是各次预算之和。这就是串行组合定理:

现实中,苹果公司在 iOS 的输入法联想、QuickType 和 Safari 统计中使用了本地差分隐私:设备端先对用户的词频和表情符号做随机响应,服务器只用聚合后的数据改进模型,从而“学习流行词但不学你是谁”。谷歌的 RAPPOR 系统则把 LDP 用于 Chrome 浏览器收集恶意网址和主页设置分布,它用布隆过滤器加随机响应,实现了高维字符串的隐私统计。在联邦学习中,客户端也常对梯度做裁剪和加噪再上传,服务端聚合全局模型,这种“本地扰动 + 聚合更新”的模式与 LDP 一脉相承。LDP 的典型应用还包括广告人群画像——广告平台想知道“18–25 岁熬夜人群占比”,但无需知道具体是谁。

LDP 并非万能药。它的主要挑战是维度灾难:属性一多,预算就要摊薄到每个维度上,噪声随之放大;并且海量样本需求带来高昂采集成本。未来方向包括更高效的编码方案、自适应隐私预算分配,以及与可信执行环境的结合。但无论如何,小鹿阿姨的转盘已经证明了它的价值——在数据价值与个人隐私之间,我们不必二选一,而是可以靠聪明的数学,两头都占。

εtotal=∑k=1mεk\varepsilon_{\text{total}} = \sum_{k=1}^{m} \varepsilon_k
预算和钱一样,花一次少一笔;连续上报 m 次,总隐私损失近似累加。
  1. 单次预算ε_k 是第 k 次上报使用的隐私预算,代表那一次“允许泄露的程度”
    εk\varepsilon_k
  2. 累加求和同一用户的多次上报,总预算等于各次预算之和,所以采集方会严格控制提问次数
    ∑k=1mεk\sum_{k=1}^{m} \varepsilon_k
  3. 总量约束ε_total 不能超过产品可接受的上限,这倒逼系统设计者要么减少问题、要么加大噪声
    εtotal\varepsilon_{\text{total}}

AI 应用场景

移动端输入法热词统计

阶段:数据采集与预处理

解决的问题:输入法应用需要统计用户输入的高频新词来优化联想词库,但直接把用户输入的文本上传服务器,会泄露聊天内容、通讯录等敏感信息。传统做法要么放弃个性化、要么承担隐私合规风险。LDP 让每个用户在设备端把“是否输入过某个候选词”用随机响应扰动后再上报,服务器只拿到含噪的频次分布。

具体案例:苹果在 iOS 键盘的 QuickType 功能中部署了本地差分隐私:当某个词被用户使用达到一定次数,设备在本地对词的频次直方图加噪,通过秘密共享和计数草图协议上报,苹果服务器据此优化自动纠正和联想模型,却无法还原任何一位用户的输入原文。

联邦学习中的梯度隐私保护

阶段:模型训练与聚合

解决的问题:联邦学习虽然不直接上传原始数据,但研究证明攻击者可以从梯度反推训练样本。单纯依赖“数据不出本地”在对抗环境下并不安全。LDP 的思路被引入:客户端在本地对梯度做裁剪,并叠加满足 ε-LDP 的噪声,再上传到参数服务器。

具体案例:某银行联合多家分支机构训练反欺诈模型,每家机构在自己的数据上计算梯度后,先按 L2 范数裁剪梯度,再注入拉普拉斯噪声,中央服务器聚合这些扰动后的梯度更新全局模型。实验表明,在 ε=4 时模型准确率仅下降不到 2%,但恶意服务器已无法从梯度中还原任何单条交易记录。

广告人群兴趣分布统计

阶段:数据分析与画像

解决的问题:广告平台希望统计“对运动鞋感兴趣的用户比例”来指导投放策略,但不能收集用户具体浏览记录,否则违反隐私法规。采用 LDP 后,用户在 SDK 本地对兴趣标签做随机响应,只需上报一个“转过的标签”。

具体案例:某电商平台的用户画像系统把 50 个兴趣标签做 one-hot 编码,用户端以 p=0.75 的概率上报真实标签、否则随机上报另一个标签。平台每天收到千万级扰动标签后,用纠偏公式还原各标签的真实占比,据此调整广告竞价策略,全程不落一份原始兴趣数据。

Python 演示

python36 行
import mathimport random  def random_response(bit, eps):    # 对单个比特做随机响应: 以概率 p 保持原值, 以 1-p 翻转    p = math.exp(eps) / (1 + math.exp(eps))    if random.random() < p:        return bit    return 1 - bit  def estimate_frequency(reports, eps):    # 用纠偏公式从含噪回答中恢复真实频率    p = math.exp(eps) / (1 + math.exp(eps))    obs = sum(reports) / len(reports)    est = (obs - (1 - p)) / (2 * p - 1)    return max(0.0, min(1.0, est))  def run_experiment(n_users, true_rate, eps, seed=42):    # 模拟 n_users 个用户, 真实阳性率为 true_rate    random.seed(seed)    true_answers = [1 if random.random() < true_rate else 0                    for _ in range(n_users)]    reports = [random_response(bit, eps) for bit in true_answers]    observed = sum(reports) / n_users    estimate = estimate_frequency(reports, eps)    print("真实比例: {:.2f}".format(true_rate))    print("含噪观测比例: {:.2f}".format(observed))    print("纠偏估计比例: {:.2f}".format(estimate))    print("绝对误差: {:.4f}".format(abs(estimate - true_rate)))  if __name__ == "__main__":    run_experiment(n_users=10000, true_rate=0.3, eps=1.0)
目的:完整模拟“用户端随机响应 + 服务端纠偏估计”的 LDP 频率统计流程,真实比例 0.30、ε=1 时,纠偏后的估计值通常在 0.29~0.31 之间。
  1. p = math.exp(eps) / (1 + math.exp(eps))由隐私预算 ε 算出转盘的“说真话概率”,这是整个机制的地基。
  2. if random.random() < p: return bit模拟用户转动撒谎转盘:随机数小于 p 则照实说,否则说反话。
  3. reports = [random_response(bit, eps) for bit in true_answers]每个用户在本地单独扰动,服务器只能看到这一份份“半真半假”的回答。
  4. obs = sum(reports) / len(reports)服务器直接统计含噪比例,这个值明显偏离真实比例。
  5. est = (obs - (1 - p)) / (2 * p - 1)套用纠偏公式,把被转盘“稀释”的比例放大回真实尺度。
  6. return max(0.0, min(1.0, est))把越界的估计值压回 [0,1] 区间,防止小样本时算出负比例或超过 100%。

常见误区

误区很多初学者认为,本地差分隐私就是在数据上随便加个随机数,比如给数值加个 0~1 之间的抖动,就算“本地扰动”了。

正解LDP 是一个严格的概率定义,任何扰动机制都必须满足“任意两个真实值产生同一输出的概率之比不超过 e^ε”。随便加噪声很可能不满足这个约束,攻击者仍能通过多次采样反推真实值。就好比小鹿阿姨的转盘不是“想转就转”,而是必须按精确刻度调配,否则老王一推演就穿帮。

为何常见:因为“加噪声”这个动作看起来简单直观,而 ε-LDP 的形式化不等式需要一定数学门槛,初学者容易跳过定义直接模仿操作。

误区有人看到 ε 称为“隐私预算”,就直觉认为预算越多越安全,于是把 ε 调得很大。

正解正好相反,ε 越小,两个真实值的输出分布越接近,隐私保护越强;ε 越大,噪声越小、数据效用越高,但隐私泄露风险越大。ε=0 时输出与真实值完全无关(最安全也最无用),ε=∞ 时等于直接上报原始数据(零保护)。调 ε 就像调转盘的“撒谎强度”:转盘越爱撒谎,老王越猜不中你,但他也越难统计准确。

为何常见:“预算”在财务语境中代表“可用的钱”,多即是好;这种语义迁移让初学者产生方向性误解。

误区有初学者以为 LDP 只是中心化 DP 的工程变体,两者都先把数据收集起来再统一处理。

正解中心化 DP 要求所有原始数据先汇聚到可信服务器,再由服务器加噪;LDP 则假设服务器不可信,真实数据永远不离开用户设备,出门前就已经被扰动。两者共享 ε 的语言,但信任边界完全不同——LDP 是“人人自备转盘”,中心化 DP 是“保险柜统一加工”。

为何常见:两者都叫差分隐私、都用 ε 控制隐私损失,形式上的相似性掩盖了架构上的本质差异。

误区初学者常把 LDP 理解为“攻击者完全无法知道任何信息”,认为满足 ε-LDP 后单条数据就等于被加密。

正解LDP 提供的是“概率不可区分”而非“绝对不可知”。攻击者依然可以根据先验知识、多次输出和辅助信息来推断某人的大致情况,只是推断的置信度被 ε 限制住了。隐私保护不是“零泄露”,而是“把泄露控制在可接受的倍数内”。

为何常见:“隐私”这个词容易让人联想到“完全保密”,而差分隐私的数学本质是“有界泄露”,这种概念张力造成了误解。

误区产品经理常问:“既然每次回答都加了扰动,那同一用户天天上报是不是也没关系?”

正解串行组合定理指出,同一用户多次上报的隐私预算近似线性累加。问 m 次,总预算约为各次 ε 之和。今天 ε=0.5、明天 ε=0.5,两天加起来就是 1.0,长期积累会让保护形同虚设。所以真实系统会严格控制单设备的上报频率和问题数量,用小鹿阿姨的话说:“转盘不能一天转到晚,转多了总会被听出弦外之音。”

为何常见:每次扰动都是独立随机事件,直觉上“独立”=“不相关”;但隐私损失是累积的信息量,和随机事件的独立性是两回事。

面试题

Q1. 本地差分隐私与中心化差分隐私最本质的区别是什么?

单选题 · easy

  • A.用户端扰动数据再上报← 正确答案
  • B.聚合端扰动后再分发
  • C.用拉普拉斯而非随机响应
  • D.需可信第三方帮助脱敏

答案:A。LDP 的扰动发生在用户设备端,真实值不出本地;中心化 DP 则要求原始数据先汇聚到可信服务器。B、D 描述的是中心化 DP 的信任假设,C 混淆了机制选择与架构本质。

Q2. 当隐私预算 ε=0 时,随机响应机制的行为是?

单选题 · easy

  • A.总是输出用户的真实答案
  • B.总是输出与真实相反答案
  • C.输出任何答案概率完全相等← 正确答案
  • D.完全拒绝回答当前问题

答案:C。ε=0 时 p=e^0/(1+e^0)=1/2,说真话和说反话概率各半,输出与真实值独立,攻击者得不到任何信息。A 是 ε 趋近无穷时的行为,B 是 p=0 的极端假设,D 与机制定义无关。

Q3. 随机响应机制中“保持真话概率” p 的表达式是?

单选题 · mid

  • A.e的ε次方除以1加e的ε次方← 正确答案
  • B.e的ε次方除以1减e的ε次方
  • C.e的负ε次方除以1加e的负ε次方
  • D.e的ε次方减1除以e的ε次方加1

答案:A。由 ε-LDP 定义可解出 p=e^ε/(1+e^ε)。C 等于 1/(1+e^ε),是翻转概率 1−p;B 分母为减号会得到无意义的大于 1 的值;D 是双曲正切的形式,不是随机响应的保持概率。

Q4. 当 ε=ln 2 时,随机响应机制的说真话概率约为?

单选题 · easy

  • A.约等于 0.500
  • B.约等于 0.667← 正确答案
  • C.约等于 0.750
  • D.约等于 0.333

答案:B。p=e^{ln2}/(1+e^{ln2})=2/3≈0.667。此时翻转概率 1/3,机制仍有较强的统计可用性。其余选项对应其他 ε 值,A 是 ε=0,C 是 ε=ln3,D 是 ε=ln0.5。

Q5. 纠偏公式分母 (2p−1) 的直观含义是什么?

单选题 · mid

  • A.保持真话超过翻转的概率← 正确答案
  • B.观测比例与真实比例之差
  • C.翻转概率与保持概率之和
  • D.隐私预算的指数放大倍数

答案:A。真实信号在传输中被“真话比例 p 减去反话比例 (1−p)”压缩,即 2p−1。分母用它把信号放大回来。B 是观测比例与真实比例的关系而非分母含义,C 恒等于 1,D 混淆了 e^ε 与纠偏系数。

Q6. LDP 中“本地”一词最准确的含义是?

单选题 · easy

  • A.数据在本地服务器备份
  • B.扰动发生在用户设备上← 正确答案
  • C.模型在本地设备上训练
  • D.数据只在本机永久删除

答案:B。“本地”强调扰动动作发生在数据产生的地方(用户终端),服务器只接触扰动结果。A 是备份策略,C 是端侧推理/训练,D 是数据删除,都不是差分隐私语境下的“本地”含义。

Q7. 以下哪些属于本地差分隐私的真实落地场景?

多选题 · mid

  • A.苹果收集输入法流行词汇← 正确答案
  • B.谷歌统计恶意网址分布← 正确答案
  • C.央行中心库汇总全国存款
  • D.医院中心库统计患者病历

答案:AB。苹果输入法热词统计和谷歌 RAPPOR 都在用户设备端先做随机响应再上报,是典型 LDP 场景。C 和 D 依赖可信中心服务器汇总原始数据后再加噪,属于中心化差分隐私。

Q8. 对取值在 [0,1] 的连续数据做 LDP 扰动,最常用的做法是?

单选题 · hard

  • A.先离散化再做随机响应← 正确答案
  • B.直接四舍五入取为整数
  • C.将值压缩成短哈希摘要
  • D.用对称加密后传输上报

答案:A。连续值先按区间切分成离散桶,再对桶编号做随机响应,既能满足 ε-LDP 又便于聚合恢复分布。B 的确定性取整不提供概率不可区分,C 是哈希去重思路,D 是传输安全而非统计隐私。

Q9. 关于隐私预算 ε 与数据效用的关系,正确的说法有?

多选题 · mid

  • A.ε 越大扰动越小效用越高← 正确答案
  • B.ε 为零时数据效用最高
  • C.同一用户连续上报预算叠加← 正确答案
  • D.ε 越小表示隐私需求越低

答案:AC。ε 越大,允许的概率差异越大,噪声越小、效用越高;串行组合定理说明同一用户多次上报预算累加。ε=0 时输出与真实值无关、效用最低,ε 越小代表隐私需求越高,故 B、D 错误。

Q10. 真实阳性率 0.2,ε=ln 3,上报观测到的“是”比例为 0.25,纠偏后估计值为?

单选题 · extreme

  • A.估计值为约 0.000← 正确答案
  • B.估计值为约 0.100
  • C.估计值为约 0.250
  • D.估计值为约 0.500

答案:A。ε=ln3 时 p=3/4,2p−1=0.5。代入纠偏公式 (0.25−0.25)/0.5=0。观测比例恰好等于翻转偏移 (1−p),说明信号被完全抵消,估计值为 0,这是纠偏公式处理极端输入的一个典型边界案例。