SNAP:用投毒高效提取私有属性
SNAP: Efficient Extraction of Private Properties with Poisoning
作者提出投毒式属性推断攻击 SNAP,称在 Census 上比 Mahloujifar et al. 成功率高 34 个百分点、快 56.5 倍。
攻击者可向训练集注入少量投毒样本(如协同学习场景),并以 black-box 方式查询目标模型获得置信度(label-only 变体只获得预测标签);攻击者知道训练算法、模型架构、特征和训练样本数,但不知道模型参数和具体训练样本;受害系统为在被投毒数据上训练的分类模型。
- 属性推断攻击可从训练好的模型推出训练集的全局属性(如某人群占比),但已有方法要训练成百上千个影子模型来训元分类器,计算开销大。
- SNAP 对目标属性做子群体投毒,利用投毒对不同属性比例下模型 logit 分布的不同影响,用至多 4 个影子模型拟合高斯分布并计算分离阈值做判别,另有 label-only、属性存在性和属性比例估计三个扩展。
- 在 Adult、Census、Bank Marketing、CelebA 四个数据集、18 个属性上评测:中等属性 0.6% 投毒即超 90% 准确率,属性存在性用 8 个投毒样本超 95%;作者称在 Census 上比 [3] 成功率高 34 个百分点且快 56.5 倍。
- 作者将防御的系统评估、面向子属性的最优投毒策略留作未来工作;实验只覆盖四个表格与人脸数据集上的浅层神经网络、logistic regression 和 ResNet-18,DP 防御只在两个属性上测过。
- 被测模型
- logistic regression1NN2NN3NN4NN5NN6NNResNet-18
- 基准
- AdultCensusBank MarketingCelebA
- 指标
- attack accuracyestimation errorF1 score
研究者提出基于投毒的属性推断攻击 SNAP,攻击者污染部分训练数据并查询训练后的目标模型,即可提取训练数据集的全局属性。此前的属性推断攻击依赖训练大量影子模型,计算开销大;SNAP 基于对投毒下模型置信度的理论分析设计,比 Mahloujifar 等人的最优投毒式属性推断攻击成功率更高、所需投毒量更少,在 Census 数据集上成功率高 34%、速度快 56.5 倍。攻击还可扩展到判断某属性是否在训练中出现并高效估计其精确比例,研究者在四个数据集的多种属性上验证了方法的有效性,开源实现见 https://github.com/johnmath/snap-sp23。
深度解读
这篇论文试图解决什么问题?
作者提出投毒式属性推断攻击 SNAP,称比已有方法成功率更高、投毒更少、算力更省。
核心问题:如何设计比已有方法计算开销更小、投毒率更低且成功率更高的属性推断(property inference)攻击。
- 问题场景:属性推断攻击中,攻击者通过查询训练好的模型,推断训练集的全局属性(如某人口群体或罕见疾病的占比)。作者举例:公司可对竞争对手发布的模型发起攻击,了解其客户的人口构成以调整广告策略。
- 现有方法的不足:作者称已有方法 [1][2][5](含投毒式的 [3])都要攻击者训练成百上千个影子模型(shadow models)来学习元分类器,计算开销大,且不一定是最优攻击。
- 核心观察:针对目标属性的投毒对两个"世界"(训练集中属性占比为 t0 或 t1)影响不同:投毒率接近较小的 t0 时,World 0 中模型在属性样本上的预测大多被翻转,World 1 受影响小得多;且投毒率越大,两个世界的 logit 分布分离越明显、方差越小(Figure 1)。
- 论文提出的方法:SNAP(Subpopulation INference Attack with Poisoning),不训练元分类器,只用至多 4 个影子模型拟合 logit 的高斯分布并计算分离阈值;另扩展出属性存在性判定、label-only 版本和属性比例估计。
- 威胁模型:
- 目标:推断训练集中满足某布尔属性 f 的样本比例(区分 t0 与 t1、判定属性是否存在、或估计确切比例)。
- 知识:攻击者知道训练算法、模型架构、特征和训练样本数;不知道模型参数和具体训练样本。
- 能力:向训练集注入少量投毒样本(论文称协同学习场景下可行);以 black-box 方式查询目标模型获得置信度,label-only 变体只获得预测标签。
- 受害系统:在被投毒数据集上训练的分类模型(论文实验为神经网络、logistic regression、ResNet-18)。
有哪些相关研究?
相关工作分个体隐私攻击、投毒攻击、属性推断三类,本文直接对标 Mahloujifar et al. [3]。
个体隐私攻击
- 重建攻击:早期针对统计数据库 [9],近期针对生成式语言模型 [10][11] 和联邦学习 [12]–[14],可重建训练集中的用户数据。
- 成员推断(membership inference):判断某样本是否在训练集中 [6][15]–[21];论文称最好的成员推断攻击训练多个模型分析目标样本的 loss [22] 或 logit [23] 分布。
投毒攻击
- 三类经典投毒:可用性攻击降低整体测试准确率 [24]–[26];定向攻击让目标样本被误分类 [27]–[30];后门攻击让模型对特定触发模式反应 [31][32]。子群体投毒 [33] 针对数据分布中的特定子群体,是 SNAP 投毒步骤的直接基础。
- 投毒与隐私攻击的结合:Ma et al. [34] 称差分隐私可防御投毒;投毒被用于审计差分隐私下界 [35][36];Truth Serum [37] 用投毒提升成员推断成功率。
属性推断
- Ateniese et al. [4]:提出属性推断,最初针对 Hidden Markov Models 和 SVM。
- Suri and Evans [5]:将属性推断形式化为区分两个世界(属性占比 t0 与 t1)的博弈,本文沿用该形式化。
- Ganju et al. [1]、Zhang et al. [2]:分别为白盒(用神经元排序构造元分类器特征)和黑盒(用模型置信度)属性推断,均针对深度神经网络。
- Mahloujifar et al. [3]:论文称这是唯一使用投毒的属性推断攻击,label-only 威胁模型,用 500 个影子模型训练元分类器;本文唯一的对比基线,在 Census(Gender=Female、Race=Black)和 CelebA(Gender=Male,30% vs 70%)上对比。
定位:作者称已有方法依赖元分类器和大量影子模型,SNAP 用理论分析指导的判别测试取代元分类器,在成功率更高的同时影子模型数量减少几个数量级。
论文如何解决这个问题?
SNAP 用子群体投毒放大两个世界的 logit 分布差异,再用高斯拟合加阈值判别,无需元分类器。
整体思路:把目标属性当作子群体做子群体投毒(subpopulation poisoning),使属性占比不同的两个世界在投毒后产生可区分的 logit 分布偏移;攻击者用少量影子模型离线学习两个世界的 logit 高斯分布和分离阈值,再查询目标模型做多数投票判别。方法由投毒对 logit 分布影响的理论分析驱动。
问题设定
- 隐私博弈:沿用 [4][5] 的形式化和 [3] 的投毒版博弈:挑战者随机选比特 b,采样含 tb 比例属性的干净数据集 Dc(大小 (1−p)n),攻击者提交投毒集 Dp(大小 pn),挑战者在 Dc ∪ Dp 上训练模型 Mb,攻击者查询后输出猜测 b′。
- 三个任务:区分两个属性比例 t0 与 t1;属性存在性(t0 = 0 的特殊情形,作者称其为成员推断的推广);属性比例估计(不知 t0、t1,迭代搜索真实比例 t*)。
攻击流程(Algorithm 1)
- 数据投毒:取满足属性 f 且标签为受害类 v(该子群体中的多数类)的样本,把标签翻成攻击者选定的目标类 ṽ。作者称把 ṽ 设为子群体中的少数类所需投毒最少,与 [3][33][41] 的标签翻转策略类似。
- 模型置信度学习:构造含 t0、t1 比例属性的数据集 D0、D1,各自附加 Dp 后每世界训练 k 个影子模型(默认 k=4);用属性样本查询集 Ds 查询这 2k 个模型,对两个 logit 分布各拟合一个高斯,按 Claim 4.3 计算使两类错误概率之和最小的分离阈值 T。
- 判别测试:模型拥有者在被投毒数据上训练目标模型后,攻击者用 Dq ⊆ Ds(默认 1000 条)查询目标模型、换算 logit,若多数 logit 大于 T 则输出 World 0,否则 World 1。
理论分析
- Theorem 4.1:在模型学到训练分布类概率的假设下,投毒后目标类 logit 为 φ̃(x)ṽ = log[p/(πv(1−p)t) + eφ(x)ṽ(1 + p/(πv(1−p)t))];含义:属性占比 t 越小,固定投毒率 p 造成的 logit 偏移越大,这是判别测试的依据。
- Theorem 4.2:假设干净 logit 服从高斯分布,给出投毒后 logit 均值与方差的闭式表达;作者称投毒率增大时两个世界的均值以不同速率偏移、方差缩小,分离加大(Figure 2 中理论曲线与实验值走势一致)。论文报告按理论方差低于固定阈值(如 0.15)选投毒率,在所测属性上攻击成功率均超过 90%。
- Claim 4.3 / 4.4:分别给出最优分离阈值 T 的闭式解(两高斯标准差相近时用 T=(µ0+µ1)/2 近似)和保证判别成功概率大于 1−max(α,β)−ϵ 所需的查询数下界(Chernoff 界)。
三个扩展
- 属性存在性:t0=0 的特例,流程不变;作者称只需极少投毒样本(多个属性上至多 8 个)。
- Label-only 版本:利用"投毒后目标类置信度 >0.5 时预测标签翻转(对应 logit 由负转正)",用理论分析选投毒率 p* 使 t0 世界的 logit 均值转正而 t1 世界保持为负;作者称 p* 过大时 t1 世界也会翻转,准确率会先升后降(Figure 9)。
- 属性比例估计:利用"子群体越小 logit 偏移越大"对候选比例排序做二分搜索:初始化 t̂=0.5,训练 t̂ 比例的影子模型,检查其 logit 落入目标模型 logit 区间的比例,不足则折半搜索空间,直至收敛;影子模型数从 S 降到 log2(S),实验中最多 12 个影子模型达到 0.001 精度。
论文做了哪些实验?
四个数据集 18 个属性上评测,作者称中等属性 0.6% 投毒超 90%,比 [3] 成功率高且快 56.5 倍。
实验设置
- 数据集与模型:Adult(48,842 条)、Census(299,285 条)、Bank Marketing(45,211 条)用两层神经网络(32、16 个隐单元);CelebA(202,599 张人脸图)用 ResNet-18 做微笑检测;与 [3] 对比时用 logistic regression。
- 属性:共 18 个目标属性,分大(>10%)、中(1%–10%)、小(<1%)三类;Adult/Census 的 11 个见 Table 1,Bank Marketing/CelebA 的 7 个见附录 Table 7。
- 指标:攻击准确率(正确区分属性比例的概率);属性估计用估计误差;模型效用用 F1(数据集类别不均衡)。
- 重复与样本量:所有实验重复 5 次,每次试验每比例训练 10 个目标模型、用 10 个不同查询集,共 200 个观测,报告准确率为 1000 个观测的平均;默认查询集 1000 条、每比例 4 个影子模型。
- 基线:Mahloujifar et al. [3],作者按其作者确认的参数复现(r=100 集成、500 个影子模型、每个影子模型 1500 样本、logistic regression)。
主结果
与 [3] 的对比(Census,logistic regression,5 次试验平均;据 5.4 节正文):
表格较宽,可左右滑动
目标属性 投毒率 SNAP [3] Gender = Female 3% 91% 57% Race = Black 2% 93% 58% label-only 版本对比(Census,按理论选 p*,大属性用优化版;据 Table 3):
表格较宽,可左右滑动
目标属性 判别任务 p* SNAP [3] Race = Black 10% vs 25% 3.7% 100% 97% Gender = Female 30% vs 50% 4.5% 98% 70% Workclass = Private 20% vs 40% 1.1% 94% 56% Gender = Male; Race = White 15% vs 30% 5.7% 95% 65% - 作者称 SNAP 在各投毒率下一致优于 [3],运行时间 13.6 秒对 768.2 秒(M1 芯片 8 核 CPU),加速 56.5 倍。
- 影子模型换成 2NN 时,作者称两个属性在 2% 投毒下准确率超 96%,而 [3] 在 Gender=Female 上低于 60%(Figure 7)。
- 摘要与引言另给出总括数字:Census 上 SNAP 比 [3] 成功率高 34 个百分点、快 56.5 倍(作者称)。
投毒率与属性规模的影响
- 大属性:Figure 4a 显示 5% 投毒时准确率超 90%,接近 10% 时接近 100%;优化版(投毒大属性内的子属性,子属性见附录 Table 8)在 1.5% 投毒时接近 90%(Figure 4c)。
- 中等属性:Figure 4b 显示 0.6% 投毒时 4 个中等属性准确率均超 90%;区分 Adult 上 1% vs 3.5% 的 "Gender = Female; Occupation = Sales" 时 0.4% 投毒达 96%。
- 效用代价:作者报告大属性投毒最多使 F1 下降 8%,低投毒率下指标与原始模型相近。
属性存在性与比例估计
- 存在性:Figure 4d 显示三个小属性用 8 个投毒样本均达 95% 以上准确率;无投毒时成功率在 29%–62% 之间。
- 比例估计(2NN,2000 次查询、每 t̂ 2 个影子模型,5 次试验平均):中等属性在 1% 投毒下估计值落在真实值 t* 的 1%–10% 以内(Table 4,如 Education=Bachelors:t*=10.0%,估计 10.4%);大属性在 5% 投毒下误差 0%–5%(Table 5,如 Gender=Female:t*=52.1%,估计 50.0%)。
- 过投毒鲁棒性:作者报告投毒率取最优值十倍时估计仍接近 t*(如 Race=Black 最优 1%、用 10% 时估计在 t* 的 0.9% 以内)。
其他消融与分析
- 模型复杂度:1NN 升到 2NN 时准确率与 F1 分别升 10% 和 6%;6NN 过拟合后准确率比 2NN 低至少 17%(两个属性,2% 与 0.2% 投毒)。
- 影子模型数:单个影子模型每比例准确率已超 90%;Race=Black 在 5% 投毒下 2 个影子模型达 96%。
- 查询数:理论下界保守,如 Workclass=Private 在 p=5% 时理论建议约 260 条查询,Figure 6 显示 100 条即达 92%。
- 训练集规模:Figure 5 显示训练集越大准确率越高,高投毒率下较少样本即可达高准确率。
- 泛化性:Adult 上 15 个大属性组合(10% vs 25%,p=5%)准确率均超 93%;CelebA 上 Older Faces 在 0%/5%/10% 投毒下为 57%/99%/99%,Wearing Earrings 为 40%/73%/79%。
- 差分隐私:DP-Adam 训练的目标模型上(Table 9),Race=Black 在 ε=1 时仍有 98%,Race=White, Gender=Male 在 ε=1 时降到 75%,但此时私有模型在该子群体上的 F1 仅 0.07。
有什么可以进一步探索的点?
作者将防御评估和子属性投毒策略留作未来工作;实验限于四个数据集和几类中小规模模型。
作者指出的局限与后续方向
- 子属性投毒策略(Section 6, Selecting Target Properties):攻击者需在训练前确定目标属性和投毒点;作者将"形式化一个使子属性攻击准确率最大化的投毒策略"留作未来工作。
- 防御评估(Section 6, Defenses against Property Inference):作者将"对属性推断防御的彻底评估、或防御不可能性的证明"留作未来工作;文中只提出限制每用户查询数和应用投毒防御 [34][43][44] 作为潜在缓解方向。
- 公平性审计(Section 6, Property Inference as an Auditing Tool):作者认为把属性推断改造为 ML 公平性审计工具是一个有前景的未来方向。
- 差分隐私不构成防御(Section 6):作者指出差分隐私设计上就不是用来防御属性推断的,并用 DP-Adam 实验佐证;这是对防御覆盖面的说明而非本文方法的局限。
实验覆盖范围
- 被测模型为两层神经网络(Adult/Census/Bank Marketing)、ResNet-18(CelebA)、logistic regression(与 [3] 对比),消融含 1NN–6NN;DP 实验用 4NN(Census)和 3NN(Adult)。
- 数据集为 Adult、Census、Bank Marketing、CelebA 共 4 个,属性共 18 个(Table 1 与附录 Table 7)。
- 每个条件的攻击准确率由 5 次试验、共 1000 个观测平均得出;默认查询集 1000 条、每比例 4 个影子模型。
- 防御评测只包括 DP-Adam(ε 取 8/4/2/1,两个属性,Table 9);限制查询数和投毒防御只作为方向提出,未做实验。
- 与已有工作的对比只针对 Mahloujifar et al. [3](作者称 [3] 是唯一用投毒的属性推断攻击,[3] 已与无投毒的 [1] 对比过)。
总结一下论文的主要内容
SNAP 用理论指导的投毒加 logit 高斯判别做属性推断,作者称成功率更高且影子模型减少几个数量级。
一篇关于属性推断攻击的论文:攻击者向训练集投毒并查询训练好的模型,推断训练集中某属性的占比。
- 要解决的问题:已有属性推断攻击(含投毒式的 Mahloujifar et al. [3])需训练成百上千个影子模型来训元分类器,计算开销大;作者要同时做到更低投毒率、更高成功率和更小算力。
- 方法要点:SNAP 把目标属性当子群体做标签翻转投毒,利用投毒对不同占比世界的 logit 分布影响不同这一理论结果(Theorem 4.1/4.2),用至多 4 个影子模型拟合高斯分布并算分离阈值做多数投票判别;扩展出属性存在性、label-only 版本和基于二分搜索的属性比例估计。
- 主要结果:中等属性 0.6% 投毒准确率超 90%(Figure 4b);属性存在性用 8 个投毒样本超 95%(Figure 4d);Census 上 Gender=Female、3% 投毒、logistic regression 时 SNAP 91% 对 [3] 的 57%,运行时间 13.6 秒对 768.2 秒(56.5 倍);label-only 版本在四个属性上 94%–100% 对 [3] 的 56%–97%(Table 3);比例估计最多 12 个影子模型达 0.001 精度。
- 作者的结论:作者称 SNAP 在多个设定下优于 [1][3][5],影子模型数量减少几个数量级;DP-Adam 训练不能阻止攻击(ε=1 时 Race=Black 上仍有 98%);作者认为限制查询数和投毒防御是潜在缓解方向,并把防御的系统评估和公平性审计应用留作未来工作。