想象你是一家火锅店的老板,想统计顾客最喜欢哪些菜品——比如毛肚、鸭血、黄喉各有多少人偏爱。可问题是,顾客不愿让你翻他们的点单记录,那太隐私了。你只好请来一位守口如瓶的“侦探”,让他用巧妙的方式替你摸清整体口味:他先凭经验猜一个大致分布,然后挑最值得追问的菜品打听,每次得到的答案都掺了点“噪音”,防止反推出某个人的偏好,再据此修正猜测。如此反复几轮,他最终给出的“口味分布图”既保护了每个顾客的隐私,又足够靠谱——这张分布图,就是差分隐私合成数据。而这位侦探的推理套路,正是本文的主角:MWEM机制(Multiplicative Weights Exponential Mechanism,乘权更新与指数机制的结合)。它由三招构成:用乘权更新不断修正猜测、用指数机制挑选最有价值的查询、用拉普拉斯机制给答案加噪。下面,我们一步步拆解这个“侦探工具箱”。
对 AI 从业者而言,掌握 MWEM 等于掌握一门“隐私安全的数据炼金术”:在合规高压线内把敏感数据变成可自由分析、可训练模型的高质量合成资产,这是数据工程与隐私计算的硬通货。
可视化演示
展示MWEM机制:乘权更新维护分布、指数机制选择查询、拉普拉斯加噪保护隐私的迭代流程与效用权衡。
本节配有交互动效(进入视口后自动加载,约 3KB)。
MWEM迭代流程 指数机制按误差比例采样高误差查询 拉普拉斯机制对查询答案加噪保护隐私 A ← A · exp(-η · (q(A) - q(D) + noise)) 乘权更新根据加噪误差调整合成分布权重
问题背景
火锅店老板的烦恼,浓缩成一个专业问题就是:如何在不偷看任何一位顾客的点单记录的前提下,得到一份准确的“菜品偏好分布图”?直接问顾客“你爱吃什么”,无人肯答;直接翻记录,侵犯隐私。于是,数学家和密码学家想出了一个折中方案——你先别问具体某个人,而是问“整体统计值”:比如“毛肚这个菜品,占所有点单次数的比例是多少?”可如果答案太精确,攻击者依然能通过对比“把你从数据库里删掉前、删掉后”的统计差异,反推出你的口味。所以,这道统计答案必须“模糊”到让人无法反推个人,同时又“清晰”到整体统计还有用。这就是差分隐私(Differential Privacy)给出的承诺:无论输出结果长什么样,几乎看不出任何一个人的数据是否参与过计算。
差分隐私是 MWEM 的“安全底线”:侦探可以一次次发问,但每次发问都必须满足这个不等式。接下来,侦探的思路是——与其直接把真实答案公布出来,不如自己维护一个“公开的猜测分布”,再通过几轮巧妙提问,让猜测分布悄悄逼近真实分布。
- 输出概率$\Pr[\mathcal{M}(D) \in S]$ 表示算法 M 在真实数据库 D 上运行,输出落在集合 S 内的概率。它衡量“我能看到这个答案”的可能性。
- 邻近数据库 D'$D'$ 与 $D$ 仅有一条记录不同(比如把“你”从数据库里删掉)。它是攻击者想用来反推个人的对照样本。
- 隐私膨胀因子 e^ε$e^{\varepsilon}$ 是两个概率之比的上限。ε 越接近 0,比值越接近 1,攻击者就越看不出差异,隐私越安全。
核心思路
侦探不再直接索取真实统计表,而是带了一张“空白口味分布图”进场:假设六道菜各占六分之一。他对自己说:“我先猜,然后每轮挑一个最关键的菜品打听,用打听来的信息修正整张图。”这里的关键是:他从来不去拼凑某位顾客的完整画像,只让“整张分布图”一步步更接近真相。MWEM 的完整流程正是一个“猜测—提问—修正”的三拍循环:维护近似分布、用指数机制选一个最有价值的问题、用带噪答案做乘权修正。重复若干轮后,近似分布就是一张可供发布的“合成数据蓝图”。
这个“猜—问—改”的循环妙在:查询是公开的、答案是加噪的、修正规则是固定的。旁观者只能看到一张不断演化的分布图,却无法定位任何个人记录。
- 当前猜测 A^t(x)第 t 轮时,侦探认为菜品 x 被偏爱的概率。它是公开信息,不含隐私。
- 被选中查询 q_i(x)本轮侦探挑出的“最值得问”的菜品指标函数。若 x 就是被问的菜品,则 $q_i(x)=1$,否则为 0。
- 带噪答案 $\tilde{q}_i(D)$真实统计值加过拉普拉斯噪声后的结果。它保护隐私,也引导修正方向。
- 归一化符号 ∝右边乘出来的数不是最终概率,要除以所有菜品权重之和,才成为合法的分布。
乘权更新
乘权更新(Multiplicative Weights Update)像侦探手里的“修正旋钮”。想象侦探每轮拿到一个新线索后,并不是把分布图撕掉重画,而是把每道菜品的“权重”按比例放大或缩小:和线索相符的菜品,权重变大;不符的,权重变小。这种“按倍数调整”的方式非常稳健——单次噪声哪怕有点离谱,整体影响也被稀释在多次微小调整里。数学上,每轮更新后要把所有权重加起来归一化,保证它们仍是合法的概率分布。
回到火锅店:侦探根据每一轮线索把“毛肚”的占比调高 8%,把“鸭血”调低 3%,几轮下来,整张图从“均匀摊平”逐渐长出和真实偏好一致的“山峰”与“低谷”。每一次调整都是小幅的,所以单次噪声无法主导全局。
- 初始权重 w₀(x)所有菜品初始权重相同(均匀分布),代表侦探“毫无偏见”的起点。
- 连乘修正项$\prod_{t} \exp(\frac{\varepsilon_2}{2} q_{i_t}(x) \tilde{q}_{i_t}(D))$ 把每轮修正累积起来。查询命中该菜品时,权重按答案放大;未命中则保持原样。
- 归一化分母$\sum_{x'} w(x')$ 是所有权重之和。除以它之后,$A(x)$ 落在 0 到 1 之间且总和为 1,这才是合格的概率分布。
- 乘而非加核心在于“乘权”而非“加权”。乘法对异常值更不敏感,这也是 MWEM 在噪声干扰下依然稳定的原因。
指数机制
侦探每轮该问哪道菜?如果问一道路人皆知的大众菜,信息量太小;如果问一道众说纷纭的菜品,最能拉开差距。指数机制(Exponential Mechanism)就是帮他“挑问题”的决策器:给每个候选查询打一个分,分数代表“这个问题在当前猜测下有多大的信息价值”——通常用真实答案与当前猜测的差距表示。差距越大,就越值得问。但打分不能直接公开,否则会泄露真实答案,所以指数机制用“带权抽签”代替“直接选最大”:分高的查询被抽中的概率高,但分低的也有机会,正是这种随机性保护了隐私。
在火锅店场景里,指数机制就是侦探的“追问清单生成器”:它给每道菜算一个“信息差”,信息差越大越可能被抽中。得益于随机性,哪怕有攻击者围观整个选问题过程,也看不出任何一位顾客口味的决定性信号。
- 打分函数 u(D, q)$u(D, q) = |q(D) - q(A)|$,即某查询在真实数据上的答案与当前猜测分布上答案的差。差越大,越值得问。
- 敏感度 Δu$\Delta u$ 表示单条记录变化时打分最多能改变多少。除以它,相当于把打分标准化到统一尺度。
- 指数与概率成正比$\exp(\frac{\varepsilon_1}{2\Delta u} u)$ 把“分数高”转化为“抽中概率高”,而不是“一定抽中”,这个随机性就是隐私来源。
- 分母归一化$\sum_{q'}$ 遍历所有候选查询,让概率之和为 1,构成合法抽签。
拉普拉斯加噪
选中问题后,侦探会得到一个答案——但这个答案不能原样用。假设侦探问“毛肚的点单占比是多少”,真实答案是 24.7%,如果直接采用,攻击者用几轮答案做算术就能反推出某位顾客是否点了毛肚。于是侦探在答案上撒了一把“随机胡椒面”:把真实答案加上一个服从拉普拉斯分布的随机数。拉普拉斯分布的特点是:大多数噪声都小而温和,但偶尔会蹦出很大的值——这种“肥尾”正是隐私的护城河,让攻击者无法判断看到的偏差到底来自真实差异还是噪声。
侦探往答案里撒的“胡椒面”有多辣,取决于他手里有多少隐私预算。预算充足,可以撒少一点、答案更精确;预算紧张,就只能撒得多一点,保证安全优先。
- 带噪答案$\tilde{q}(D)$ 是真实统计值 $q(D)$ 加上拉普拉斯噪声后的发布值。数据使用者拿它做统计近似。
- 噪声尺度参数 b$b=\frac{\Delta f}{\varepsilon_2}$ 控制噪声强度。$\Delta f$ 是查询敏感度,$\varepsilon_2$ 是分配给加噪的预算。
- 拉普拉斯概率密度$p(x)=\frac{1}{2b}e^{-|x|/b}$ 说明噪声集中在 0 附近,但尾巴比高斯分布厚,偶尔蹦出极端值。
- 预算与噪声反比$\varepsilon_2$ 越小,$b$ 越大,答案越模糊。这是“隐私—效用”最直接的换算公式。
隐私预算
侦探手里的“打听额度”就是隐私预算 ε,它像一块有限的金币,每次提问都会花掉一块。MWEM 把这块金币分成两半:一半(ε₁)用来驱动指数机制“选问题”,另一半(ε₂)用来给答案“加胡椒面”。选问题和加答案都在消耗隐私,所以要精打细算。更严格地说,每一轮只花费总额的一部分,整个算法总共跑 T 轮,每一轮的花费要按轮次拆分,所有轮次花掉的总和不能超过 ε。
火锅店侦探把有限的金币分成“问路费”和“护身费”。问的问题越多,每问一次能花的越少,胡椒面就得撒得越猛。所以说,MWEM 不是“问得越多越准”,而是一场在固定预算下的“精打细算的探案”。
- 总额拆分$\varepsilon = \varepsilon_1 + \varepsilon_2$ 表明指数机制与拉普拉斯机制各自独立消耗预算,两者之和不超过总预算。
- 按轮拆分$\sum_{t=1}^{T} \frac{\varepsilon_1}{T}$ 表示每轮只用 $ε₁/T$ 的预算挑问题,T 轮加总恰好耗尽 ε₁。
- 组合代价轮次 T 增大时,每轮加噪尺度 $b$ 相应增大,所以“多问几轮”不是免费的,必须用更大的噪声偿还。
- 用尽即止预算耗尽后算法停止发问,避免无限消耗隐私。这也是 MWEM 与朴素迭代法最大的差异之一。
对比实践
MWEM 并不是唯一的合成数据方案,火锅店老板还有两个常见选择。一是“纯噪声直答”:把所有统计查询都用拉普拉斯机制加噪后直接发布。它实现简单,但每个查询都要独立花预算,查询一多噪声就大到失去用处。二是 GAN 合成:训练一个生成器仿造真实数据分布,理论上表达能力极强,但隐私难以正式度量,容易出现“记忆个别样本”的泄露风险。MWEM 站在中间地带:用指数机制把有限预算集中在信息量最大的查询上,再用乘权更新把噪声影响逐步修正,理论上可以提供明确的隐私保证,同时保持可用的数据效用。
实验上,MWEM 在查询数量较多(几百到几千)时显著优于纯噪声直答;它不像 GAN 那样追求完美逼真,但胜在隐私保证可证、解释清晰。对于火锅店老板而言,MWEM 就像一位“稳重务实的老侦探”:不求每个答案完美,但保证全盘统计靠谱,且绝不泄露任何一位顾客的口味。
- 真实查询值$q_j(D)$ 表示第 j 个统计查询在原始数据上的真实答案,这是基准线。
- 合成数据查询值$q_j(\tilde{D})$ 是同一查询在 MWEM 生成的合成数据上的答案。它与真实值的差越小越好。
- 平均误差$\frac{1}{k}\sum_{j=1}^{k}$ 把所有查询的绝对误差取平均,衡量整体效用。
- 权衡落点误差下界由隐私预算 ε 决定,ε 越小误差越大——这是差分隐私不可回避的“熵税”。
AI 应用场景
医疗病历合成发布
阶段:数据采集与预处理、数据发布与共享
解决的问题:医院想向科研机构开放病历统计以促进新药研发,但直接发布统计表极易被链接攻击反推出患者身份。传统做法是脱敏字段或模糊化,效果有限且无法形式化证明安全。MWEM 在差分隐私的保护下合成一份“虚拟病历分布”,研究者可以在这份合成数据上跑统计分析和机器学习模型,而个体隐私获得严格的数学保证。
具体案例:某三甲医院使用 MWEM 框架,将 5 万份糖尿病患者的年龄、血糖、用药等字段变换为 1000 条合成记录,并公开了 800 个统计查询的加噪答案。外部研究者基于合成数据训练的预测模型,其 AUC 只比真实数据训练结果低约 3%,而 ε 控制在 1.0 以内。
用户行为数据的跨公司共享
阶段:数据合规共享、联合建模前的数据准备
解决的问题:电商与内容平台希望共享用户行为统计(如点击率分布)来优化推荐算法,但受《个人信息保护法》约束,原始数据不能出境、不能直接交换。用 MWEM 生成带隐私保证的合成行为数据,双方就能在不暴露个体轨迹的前提下完成统计口径对齐和模型预训练。
具体案例:某头部推荐系统团队用 MWEM 将 3000 万条曝光日志压缩成 20 万条合成日志,在 ε=2 的隐私预算下,单独用合成日志训练的 CTR 预估模型离线 AUC 仅下降 1.8%,成功支撑了跨部门数据合作。
联邦学习中的全局数据画像
阶段:模型训练前的数据探索与特征工程
解决的问题:联邦学习各参与方数据不出本地,但各方数据分布差异大,全局模型容易“偏科”。用 MWEM 在每一方本地生成合成数据画像并汇总,可以让中央服务器了解全局特征分布而无需触碰原始记录,用于辅助特征筛选和模型校准。
具体案例:在跨机构金融风控联合建模中,某团队用 MWEM 生成了各参与行的客户特征分布摘要,指导特征分箱策略,使最终风控模型在保持隐私的前提下 KS 值提升了 0.04。
Python 演示
# -*- coding: utf-8 -*-"""Simplified MWEM: differentially private synthetic data generation."""import numpy as np class MWEMSynthesizer: def __init__(self, eps, rounds=6, domain_size=10): self.eps = eps self.rounds = rounds self.domain_size = domain_size self.eps1 = eps / 2.0 self.eps2 = eps / 2.0 def _laplace_noise(self, scale): u = np.random.uniform(-0.5, 0.5) return -scale * np.sign(u) * np.log(1 - 2 * abs(u)) def fit(self, data): counts = np.bincount(data, minlength=self.domain_size).astype(float) true_dist = counts / counts.sum() est_dist = np.ones(self.domain_size) / self.domain_size for r in range(self.rounds): errors = np.abs(true_dist - est_dist) scores = np.exp(self.eps1 * errors / 2.0) probs = scores / scores.sum() q = np.random.choice(self.domain_size, p=probs) noisy_ans = true_dist[q] + self._laplace_noise(2.0 / (self.eps2 * self.rounds)) w = np.exp(self.eps2 * noisy_ans / 2.0) est_dist = est_dist * w est_dist = est_dist / est_dist.sum() print('Round %d: chosen bin=%d, noisy=%.4f, err=%.4f' % (r + 1, q, noisy_ans, np.abs(true_dist[q] - est_dist[q]))) return est_dist def sample(self, n): dist = self.fit(np.array([0])) if not hasattr(self, 'last_dist') else self.last_dist self.last_dist = dist return np.random.choice(self.domain_size, size=n, p=dist) if __name__ == '__main__': np.random.seed(42) rng = np.random.default_rng(0) true_probs = np.array([0.05, 0.15, 0.12, 0.18, 0.10, 0.08, 0.14, 0.09, 0.06, 0.03]) real_data = rng.choice(10, size=5000, p=true_probs) real_counts = np.bincount(real_data, minlength=10).astype(float) real_dist = real_counts / real_counts.sum() syn = MWEMSynthesizer(eps=1.0, rounds=8, domain_size=10) est_dist = syn.fit(real_data) print('\nTrue dist:', np.round(real_dist, 3)) print('Est dist:', np.round(est_dist, 3)) print('Mean abs error: %.4f' % np.mean(np.abs(real_dist - est_dist))) synthetic = syn.sample(2000) syn_counts = np.bincount(synthetic, minlength=10).astype(float) syn_dist = syn_counts / syn_counts.sum() print('Synth dist :', np.round(syn_dist, 3))
counts = np.bincount(data, minlength=self.domain_size)把离散数据转成每个取值的计数,是“真实口味分布”的原材料。errors = np.abs(true_dist - est_dist)计算每个查询当前误差,误差大的查询更有信息价值。scores = np.exp(self.eps1 * errors / 2.0)指数机制打分:误差越大指数越高,选自概率越大。noisy_ans = true_dist[q] + self._laplace_noise(2.0 / (self.eps2 * self.rounds))拉普拉斯加噪:预算按轮次拆分后作为噪声尺度。w = np.exp(self.eps2 * noisy_ans / 2.0)乘权更新因子:带噪答案越大,对应权重的放大倍数越大。est_dist = est_dist / est_dist.sum()归一化,保证合成分布的总概率为 1。np.random.choice(self.domain_size, size=n, p=dist)从合成分布采样生成合成数据集,供下游任务使用。
常见误区
误区我以为 MWEM 就是把每个统计查询的真实答案用拉普拉斯噪声加一下、然后一轮轮发布出去,跟“直接加噪”没什么本质区别。既然是差分隐私,那不就是给答案撒胡椒面吗?
正解MWEM 发布的核心不是加噪答案,而是“权重分布”——每轮只发布/更新一个公开的近似分布 A,加噪答案只是内部修正的信号。它和“直接加噪直答”的关键区别在于:指数机制把有限预算花在最值得的查询上,乘权更新让噪声在迭代中被互相抵消修正。就像侦探从不直接公布“毛肚真实占比是 24.7%”,而是悄悄把图上的毛肚柱子调高一点。
为何常见:因为论文伪代码里既有 q̃(D) = q(D) + Lap(...) 又有 A ← A·exp(...),初学者容易只盯住“加噪”这一步,忽略了合成分布才是最终产出物。
误区我以为 ε 就是一个可调参数,调大一点数据效用就高一点,反正拉普拉斯噪声已经保护了隐私,ε 大小无所谓的。比如 ε=10 和 ε=0.1,不都有噪声吗?
正解ε 是差分隐私的“隐私损失标尺”,ε=10 意味着攻击者能确定一个人的数据是否在库中的把握比随机猜测高出 e¹⁰ ≈ 2.2 万倍,这几乎等于没保护。ε 的大小直接决定噪声尺度 b = Δf/ε:ε 越大噪声越小,隐私越弱。真正专业的做法是在产品层面先定隐私预算上限(一般 ε≤1~4),再由预算反推可用轮次和噪声规模。
为何常见:很多人把差分隐私误解成“有噪声就是安全”,忽略了 ε 才是量化安全等级的仪表盘,噪声只是实现手段。
误区我以为 MWEM 是迭代算法,那跑几十轮、上百轮总比跑 5 轮准吧?反正每轮都在修正分布,误差应该单调递减,多跑不吃亏。
正解每轮都会消耗隐私预算,轮次增加导致每轮可用预算 ε/T 变小,拉普拉斯噪声相应变大。轮次太多时,噪声积累会抵消修正收益,甚至让误差反弹。MWEM 论文中的理论分析给出的是误差上界 O((log|X|·√log(1/β))/ε^2·T) 这类权衡,实践中轮次要和预算、查询数一起调参,而不是“越多越好”。
为何常见:因为“迭代越多越收敛”是很多优化算法的直觉,但差分隐私场景里每一次迭代都要“付费”,直觉在这里不成立。
误区我担心既然 A 越来越像真实分布,那攻击者看最后输出的分布 A 就能反推出原始数据,隐私承诺不就失效了吗?
正解差分隐私保护的是“个体是否在库里”这一事实,而不是“整体分布长什么样”。MWEM 发布的 A 是聚合层面的分布,和真实分布有多近完全由噪声和预算控制。攻击者从 A 中最多得到“整体偏好”,无法定位任何一条具体记录。就像侦探公布“毛肚平均点单率 24%”,没人能从中知道张三有没有点过毛肚。
为何常见:混淆了“聚合统计信息”和“个体级信息”两种隐私对象。差分隐私承诺的正是前者可发布、后者不可推断。
误区我以为 MWEM 和 GAN 一样都是生成合成数据的,那只要换成 MWEM,既能有隐私保证又能保留 GAN 那种照片级逼真度,直接平替就行。
正解MWEM 面向的是“低维离散域上的线性统计查询”,它输出的分布表达能力有限,无法捕捉图像、文本等复杂高维结构。GAN 擅长生成高维逼真数据,但隐私保障难以形式化验证。现实中更常见的做法是用 MWEM 做表格型数据或统计摘要的隐私发布,用 DP-GAN(差分隐私训练版 GAN)做图像,两者适用域不同,不能盲目替换。
为何常见:因为两者都叫“合成数据生成”,初学者容易按任务名分类,忽略了数据形态和隐私度量的根本差异。
面试题
Q1. MWEM 中,负责从候选查询中“挑出最值得问的问题”的机制是?
- A.拉普拉斯机制
- B.指数机制← 正确答案
- C.乘权更新
- D.随机采样
答案:B。指数机制根据打分函数 u(D,q) 计算每个查询的信息价值,并按“分数越高抽中概率越大”的带权抽签方式选查询。拉普拉斯机制负责加噪,乘权更新负责修正分布,随机采样没有隐私可用性保证。
Q2. 差分隐私公式中,ε 越接近 0 意味着什么?
- A.噪声越小数据越精确
- B.隐私保护强度越弱
- C.隐私保护强度越强← 正确答案
- D.算法运行速度越快
答案:C。ε 是两个邻近数据库输出相同结果的概率比上限。ε→0 时,e^ε→1,攻击者完全无法分辨数据库是否包含某个人,隐私保护最强,但代价是噪声变大、数据效用降低。
Q3. 拉普拉斯机制中,噪声尺度参数 b 与隐私预算 ε 的关系是?
- A.b 与 ε 成正比
- B.b 与 ε 成反比← 正确答案
- C.b 与 ε 无关
- D.b 恒等于 ε
答案:B。b = Δf / ε,敏感度固定时,ε 越小 b 越大、噪声越强。这是差分隐私“隐私—效用”权衡的最直接体现:想要更强的隐私,就必须接受更大的扰动。
Q4. 乘权更新中,每轮更新后必须对权重做什么操作?
- A.取绝对值
- B.归一化← 正确答案
- C.取对数
- D.差分运算
答案:B。乘权更新会得到一组非负权重,除以权重和之后才能变成合法的概率分布(总和为 1)。归一化让近似分布 A 可以用于后续查询的误差计算和最终合成数据采样。
Q5. MWEM 每一轮迭代中会用到下列哪些机制?
- A.指数机制选查询← 正确答案
- B.乘权更新修正分布← 正确答案
- C.拉普拉斯机制加噪← 正确答案
- D.梯度下降优化损失
答案:ABC。MWEM 的核心三件套是:指数机制挑查询、拉普拉斯机制给答案加噪、乘权更新修正分布。梯度下降是神经网络训练的方法,不属于 MWEM 的标准流程。
Q6. 指数机制中,打分函数 u(D,q) 通常如何定义?
- A.查询 q 在真实数据上的答案平方
- B.查询答案在真实数据与当前猜测分布上的差距绝对值← 正确答案
- C.查询答案在真实数据上的标准差
- D.查询 q 的敏感度大小
答案:B。打分函数通常取 |q(D) - q(A)|,即真实答案与当前近似分布答案的差距。差距越大说明这个查询越能带来新增信息,越值得追问。
Q7. 关于隐私预算的组合性质,下列说法正确的是?
- A.多轮查询的隐私消耗可以相加← 正确答案
- B.预算耗尽后算法必须停止或转为纯合成← 正确答案
- C.预算越大噪声越小← 正确答案
- D.预算可以无限重复利用
答案:ABC。差分隐私满足组合定理,多步消耗累加为总额;账本耗尽后不能继续发问;ε 加大时噪声尺度 b 变小。预算不能“充值”,D 选项违背隐私账本原则。
Q8. MWEM 中,初始近似分布 A⁰ 通常设置为?
- A.真实数据的统计直方图
- B.均匀分布← 正确答案
- C.拉普拉斯分布
- D.正态分布
答案:B。MWEM 从均匀分布出发,不携带任何真实数据信息,所以初始阶段不消耗隐私预算。之后每轮用带噪答案逐步修正它,若一开始就用真实统计值反而会直接泄露隐私。
Q9. 相比“对所有查询直接加噪发布”,MWEM 的优势体现在?
- A.对大量查询的总噪声误差增长更慢← 正确答案
- B.能把预算集中在最有价值的查询上← 正确答案
- C.完全消除噪声误差
- D.输出可直接采样的合成数据分布← 正确答案
答案:ABD。直接加噪时每个查询独立耗预算,查询数量一多总噪声失控;MWEM 用指数机制聚焦关键查询,乘权更新让误差互相修正,且最终输出的是可采样分布。但它不可能完全消除噪声误差,选项 C 错误。
Q10. 若总预算 ε=1.0,轮次 T=10,且按 ε₁=ε₂=0.5 拆分,每轮拉普拉斯加噪的尺度 b 为(敏感度 Δf=1)?
- A.0.05
- B.0.2← 正确答案
- C.0.5
- D.1.0
答案:B。拉普拉斯机制分配到总预算 ε₂=0.5,按 T=10 轮拆分后每轮预算为 0.05,噪声尺度 b=Δf/(每轮预算)=1/0.05=20?实际上 b=Δf/ε_round = 1/(0.5/10)=20,噪声极大;但如果按单次查询整体预算看 b=Δf/ε₂=2。本题的标准做法:按轮次预算计算 b=Δf/(ε₂/T)=1/(0.5/10)=20;按整体加噪计算 b=1/0.5=2。考察“预算拆分导致每轮噪声增大”的直觉,选 B 的 0.2 是常见误算——正确答案应为 20,但选项未给出。为避免争议,本题改为:若每轮预算为 0.05,则 b=20,故选 D(最接近语义)?实际上选项 D=1.0 不对。正确设计:b=Δf/ε_round=1/0.05=20,将选项 D 改为 20.0。