通过预测 API 窃取机器学习模型
Stealing Machine Learning Models via Prediction APIs
作者提出针对 MLaaS 预测 API 的模型窃取攻击:利用置信度输出用方程求解和决策树路径搜索,在 BigML 和 Amazon 上以数百至数千次查询提取出 100% 等价的模型。
攻击者对目标模型 f 仅有 black-box 查询访问(direct 或 indirect queries),不掌握模型参数或训练数据,可能知道也可能不知道模型类型与训练数据分布;目标是在关心的输入空间上提取与 f 达到(接近)100% 一致的等价模型 f̂,受害系统为 BigML、Amazon 等 MLaaS 平台。
- ML 模型因训练数据敏感、商业价值或安全用途而需保密,但 MLaaS 平台又开放按次付费的查询接口。作者研究攻击者能否仅凭 black-box 查询窃取模型功能。
- 利用 API 返回的置信度:对逻辑回归、softmax、MLP 等用随机查询建立方程组求解参数;对决策树提出路径搜索算法,把置信度当作路径的伪标识,并利用不完整查询做自顶向下提取。
- 在 BigML 和 Amazon 上用 650–4,013 次查询提取出 100% 等价的模型(Table 1);仅返回类别标签时重训练攻击仍可达 99% 以上一致,但查询量最高多 100 倍。
- 作者称未实验集成方法作为目标、未评估仅标签下的决策树提取;间接查询加仅标签的深入研究和 DP 防护参数留作未来工作;在线攻击只在作者自己账号训练的模型上验证。
- 被测模型
- Logistic RegressionSoftmaxOvRMLPKernel Logistic Regression (KLR)Decision TreeRBF Kernel SVM
- 基准
- DigitsAdultGerman CreditSteak SurveyCirclesMoonsBlobs5-ClassIrisGSS SurveyBreast CancerMushroomsDiabetesAT&T FacesBigML public gallery models (IRS Tax Patterns, Email Importance, Email Spam, Medical Cover, Bitcoin Price)
- 指标
- test error Rtest / extraction accuracy 1 − Rtestuniform error Runif / extraction accuracy 1 − Runiftotal variation distance (RTV)query countattack time
研究者提出模型提取攻击,显示仅凭黑盒查询预测 API、无需知道模型参数或训练数据,就能以接近完美的保真度复制目标机器学习模型。攻击利用 MLaaS 服务返回的高精度置信值和接受不完整输入的做法,对逻辑回归、神经网络、决策树等模型类别有效,并在 BigML 和 Amazon Machine Learning 的在线服务上验证:Amazon 上的 Digits 逻辑回归用 650 次查询即实现 100% 一致的提取,BigML 上的 German Credit 决策树用 1150 次查询完整还原。实验中的受害模型为作者在自己账户内训练,结果已于 2016 年 2 月披露给受影响服务。论文还显示,去掉置信值这一直观对策只是把攻击查询量推高最多约 100 倍,仍能提取出与目标在 99% 以上输入上一致的模型;提取出的模型还可泄露训练数据信息,或让后续模型反演所需的在线查询减少约 20 倍。
推荐理由论文展示仅凭预测 API 返回的置信值和少量查询就能近乎完整复制模型,去掉置信值也仍有提取办法。
相关热点
1 个事件 · 1 条新闻提到
- 报道引用了这篇论文
Mindgard 博客解析模型抽取与蒸馏攻击
提到这篇论文的新闻
Mindgard 博客解析模型抽取与蒸馏攻击
- Mindgard Blog引用了论文编号或链接什么是模型提取攻击?蒸馏攻击如何通过 API 窃取 AI 模型
The 2016 paper that named the problem, Stealing Machine Learning Models via Prediction APIs, showed near-perfect fidelity copies of logistic regression, neural network and decision tree models hosted
深度解读
这篇论文试图解决什么问题?
研究仅靠 black-box 查询 MLaaS 预测 API 能否窃取保密模型,作者给出肯定答案。
核心问题:攻击者仅通过公开预测 API 的 black-box 查询,能否提取出与保密 ML 模型功能等价的副本("偷走"模型)。
- 场景与动机:ML 模型因训练数据敏感、商业价值或用于安全检测而需保密,但 Amazon、Google、Microsoft、BigML 等 MLaaS 平台允许模型所有者按查询收费开放访问,形成保密与开放的张力。作者指出窃取模型可逃避查询费用、泄露训练数据隐私、并作为规避检测的跳板。
- 现有工作的不足:传统学习理论(membership query 设置)假设查询只返回类别标签;作者称实际 MLaaS API 返回高置信度分数并接受部分特征向量,这一设定对攻击者更有利,而学习理论算法在实践中研究有限。
- 核心观察:置信度输出可转化为关于模型参数的方程(如对逻辑回归做 logit 变换),决策树的置信度可作为路径的伪标识;部分特征查询能进一步降低查询量。
- 论文贡献:提出方程求解攻击(适用于带 logistic 输出层的模型)和决策树路径搜索算法,在 BigML 与 Amazon 在线服务上演示;并评估了仅返回类别标签这一反制措施下的重训练攻击。
- 威胁模型:
- 目标:提取与目标模型 f 在关心的输入空间上(接近)100% 一致的 f̂,且查询次数尽量少。
- 知识:black-box 访问;可能知道也可能不知道模型类型、训练算法、超参数或训练数据分布;不掌握训练数据本身(除 API 提供的汇总统计)。
- 能力:direct queries(任意特征向量)或 indirect queries(经特征提取 ex 的输入空间 M 上的查询);可利用不完整查询和批量预测。
- 受害系统:BigML、Amazon 等 MLaaS 平台;实验中作者在自己账号训练模型模拟受害者。
有哪些相关研究?
相关工作分四类:学习理论、对抗机器学习与规避、模型反演、模型解释与压缩。
学习理论(membership queries)
- Valiant 的 PAC learning [54] 及 Angluin [3]、Benedek 与 Itai [8] 等变体——研究用成员查询学习未知概念;作者指出本文设定与之不同:预测 API 泄露的信息比学习理论假设的更丰富。
- Kushilevitz 和 Mansour [33]——用 membership queries 提取布尔决策树,复杂度关于 d 和 2^δ 多项式;作者称其树模型(布尔特征与输出)实际用途有限,本文算法适用于 MLaaS 的实际树模型,且在唯一叶标识假设下有指数级加速(附录 C)。
- Lowd 和 Meek [36]——针对线性二分类器的黑盒提取攻击(动机是垃圾邮件规避);本文将其推广为模型无关的 line-search 重训练,并作为仅标签设置的基线。
对抗机器学习与规避
- Biggio 等 [9]、Šrndić 和 Laskov [56]、Nelson 等 [39]、Stevens 和 Lowd [51]——规避攻击与查询策略;作者转述理论与实践经验均认为提取比规避更难。
- Papernot 等 [42](并行工作)——用数据增强提取"替代"网络再构造对抗样本迁移;作者指出其目标是较低的提取精度(Rtest ≈ 80%)以支持对抗样本迁移,与本文追求高保真不同。
模型反演与隐私
- Fredrikson 等 [23, 24]、Ateniese 等 [4]——模型反演从模型访问中推断训练数据;本文将提取与白盒反演组合,减少远程查询。
非对抗的模型提取
- 规则提取与树提取 [2, 19, 53]、模型压缩与蒸馏 [16, 27]——非对抗场景下的 improper extraction,用于解释和压缩神经网络。
基线与基准:仅标签实验的基线是 Lowd-Meek 攻击 [36] 和 uniform 重训练;数据集为 Table 3 的合成与公开数据集及 BigML 公开模型库(Table 5)。作者将本文定位为面向实践的模型提取研究,利用真实 API 的丰富输出,区别于纯理论设定。
论文如何解决这个问题?
按 API 输出分两类攻击:有置信度用方程求解与路径搜索,仅标签用重训练策略。
整体思路:把预测 API 的丰富输出(置信度、部分查询响应)转化为关于模型参数或结构的方程与标识,分"有置信度"和"仅类别标签"两种设定设计攻击。
问题形式化
- 模型为函数 f : X → Y;攻击者 A 以最少查询求得 f̂,用 test error Rtest 和 uniform error Runif 衡量与 f 的一致度,提取精度为 1 − Rtest、1 − Runif;比较类别概率时用 total variation distance。
- 聚焦 proper extraction:f̂ 与 f 属同一模型类;improper extraction 留作开放问题(附录 D)。
方程求解攻击(有置信度)
- 二分类逻辑回归:f1(x) = σ(w · x + β),每个查询给出线性方程 w · x + β = σ−1(f1(x)),d + 1 个线性无关随机查询即可解出 w 和 β;查询非自适应,可一次批量提交。
- softmax / OvR 多分类回归与 MLP:每个查询产生 c 个非线性方程,用 logistic loss 最小化求解(MLR 用 BFGS,MLP 用 theano 跑 1,000 epoch 的 SGD);查询预算取参数数的 α 倍(α 从 0.5 到至多 5)。
- 核逻辑回归(KLR):方程组的解包含 representer(训练点子集),提取即泄露训练数据;实验用 RBF 核、20 个或全部 1,257 个训练点作 representer。
决策树路径搜索
- 把(预测标签, 置信度)作为节点/叶子的伪标识,定义 leaf-identity oracle 与 node-identity oracle(后者支持含 ⊥ 的不完整查询)。
- Algorithm 1(路径搜索):从随机输入出发,用 LINE SEARCH(连续特征,精度 ε = 10⁻³)和 CATEGORY SPLIT(类别特征)找出到达当前叶的谓词,并为未访问的叶生成新查询。
- 自顶向下变体:利用不完整查询从根逐层确定分裂特征与准则;对重复标识有一定鲁棒性,但可能漏掉某些分裂。
在线攻击与特征工程逆向(Section 5)
- BigML:从公开模型库获取特征信息后用上述树攻击提取。
- Amazon:先逆向特征提取 ex——one-hot-encoding 可本地复现,quantile binning 用 line search 找分箱边界(粒度 10⁻³);再利用"缺失特征在 X 中置 0"的特性构造单未知数方程;用 extract-and-test 策略确定模型类(作者称结果表明 Amazon 用 softmax 回归)。
仅类别标签的攻击(Section 6)
- Lowd-Meek 攻击 [36]:line search 找决策边界附近的点,适用于线性二分类器;本文给出多项式核 SVM 在变换空间中的扩展。
- 三种重训练策略:uniform 重训练(基线)、line-search 重训练(Lowd-Meek 的模型无关推广)、adaptive 重训练(主动学习,r 轮中沿当前 f̂ 的决策边界选点);预算为参数数的 α 倍,0.5 ≤ α ≤ 100。
论文做了哪些实验?
本地基准加 BigML、Amazon 在线案例:方程求解与路径搜索在多个模型类上达到 100% 等价。
实验设置
- 被测模型类:binary/multiclass logistic regression(softmax、OvR)、MLP(1 个隐藏层,h = 20)、kernel logistic regression、决策树(含回归树)、RBF 核 SVM。
- 数据集:Table 3 的 4 个合成集与 9 个公开集(如 Adult 48,842 条、Digits 1,797 条);Table 5 的 8 棵 BigML 公开决策树;反演实验用 AT&T Faces(40 人,92 × 112 像素)。
- 训练协议:70% 训练 / 30% 测试,类别特征 one-hot 编码,数值特征缩放到 [−1, 1];Runif 用 |U| = 10,000 估计。
- 指标:1 − Rtest、1 − Runif、RTV、查询数、耗时;实验在 2 核 Intel CPU @3.1GHz、16GB RAM 的笔记本上运行。
- 在线攻击:作者在自己账号训练模型模拟受害者,仅使用公开 API;2016 年 2 月已向受影响服务商披露。
- 基线:仅标签实验中的 Lowd-Meek 攻击与 uniform 重训练。
主结果
在线服务上提取到 100% 等价模型的开销(Table 1):
表格较宽,可左右滑动
服务 模型类型 数据集 查询数 耗时 (s) Amazon Logistic Regression Digits 650 70 Amazon Logistic Regression Adult 1,485 149 BigML Decision Tree German Credit 1,150 631 BigML Decision Tree Steak Survey 4,013 2,088 - 作者称耗时主要由服务延迟决定(Amazon 约 100ms/query,BigML 约 500ms/query)。
- 本地方程求解(Table 4,Adult 'Race',c = 5):softmax 与 OvR 用 530 次查询(等于参数数)达到 1 − Rtest = 1 − Runif = 100.00%;MLP(2,225 个参数)用 11,125 次查询达 99.96% / 99.99%。
- 决策树(Table 6):叶标识全部唯一的 4 棵树两种攻击均 100.00%;不完整查询的自顶向下变体多数情况查询更少(如 IRS Tax Patterns 从 101,057 降到 29,609),但 Steak Survey 上 Algorithm 1 因只访问部分叶子仅 92.45% / 86.40%。
训练数据泄露与模型反演
- KLR 泄露(Figure 2):解 50,000 方程 / 1,490 未知数的系统提取 20 个 representer;作者称提取出的 representer 泄露了单个训练点的信息,低估 representer 数(10 个)时似乎泄露各类的"平均 representer"。
- 提取 + 白盒反演(Section 4.1.4):AT&T Faces 上黑盒反演每张脸约需 20,600 次查询;先以 41,216 次查询提取 softmax 模型(RTV 约 10⁻³),再本地白盒反演全部 40 张脸,作者称远程查询减少约 20 倍、总耗时更短,且结果与用真实 f 视觉上不可区分。
仅类别标签的攻击
- 线性模型(Figure 4):Lowd-Meek 在预算足够时最有效(平均约 2,050 次、最多 5,650 次查询);adaptive 重训练平均 827 次查询达 99% 以上一致——约为方程求解查询量的 50 倍。
- softmax 与 RBF 核 SVM(Figure 5、6):adaptive 重训练最佳;100 · c · (d + 1) 次查询(平均 26,000、最多 65,000)使 softmax 提取精度超 99.9%;SVM 在最大预算(平均 2,050 次)下达 99% 以上。
- 神经网络(Section 6.3):100 · k 预算(平均每模型 108,200 次查询)仅达 Rtest 方向 99.16%、Runif 方向 98.24%;作者称更高预算是否仍有货币收益不明确。
其他消融与分析
- 置信度舍入(Figure 7):softmax 概率舍入到 4–5 位小数对方程求解无影响,舍入到 2–3 位削弱攻击但仍优于仅标签的 adaptive 重训练。
- 决策树置信度舍入:IRS Tax Patterns 与 Email Importance 舍入到 2 位小数才受影响,其余树在 3–4 位时攻击被严重削弱(作者措辞)。
- Amazon 特征提取逆向(Table 7):Circles 278 次、Iris 644 次、Adult 1,485 次查询,提取模型在测试输入上 100% 匹配,费用 $0.03–$0.15。
- improper extraction(附录 D):用 1,000 隐藏节点的 MLP(111,005 参数)加 5,300 次查询提取 530 参数的 softmax,仅达 99.5% 标签一致、TV 距离 10⁻²,弱于 proper extraction。
有什么可以进一步探索的点?
作者列出集成方法、DP 防护、间接查询等开放问题;实验仅覆盖自训模型与若干模型类。
作者指出的局限与后续方向
- 未用集成方法(如随机森林)作目标做实验,作者怀疑其可能更难精确提取(Section 7)。
- 未评估仅类别标签下的决策树提取,作者称因学习算法的贪心特性不预期重训练对树有效(Section 6 脚注)。
- 间接查询加仅类别标签的深入研究留作未来工作(Section 6.1)。
- 对模型参数施加差分隐私如何操作、需要何种隐私预算,作者留作开放问题(Section 7)。
- improper extraction(未知模型类时提取更简单的表示)留作开放问题(Section 3、附录 D)。
- 在生产级 ML 服务上评估仅标签攻击与更精细的反制措施是未来方向(Section 9)。
实验覆盖范围
- 在线攻击仅在 BigML 与 Amazon 两家服务、作者自己账号训练的模型上验证(Section 5);Google、Microsoft、PredictionIO 只在 Table 2 的特性调研中出现。
- 被测模型类为 LR、softmax/OvR、MLP(单隐藏层、h = 20)、KLR、决策树、RBF 核 SVM;KLR 当时无 MLaaS 提供商支持(Section 4.1.3)。
- 数据集为 Table 3 的合成与公开数据集及 BigML 公开模型库(Table 5),作者说明这些是专有数据的替代品。
- 文本分析、Cartesian 积等更多特征提取器未分析,作者认为可能也容易逆向(Section 5.3)。
- 论文未报告仅标签实验的重复次数与方差;Figure 4–6 为各数据集上的平均误差。
总结一下论文的主要内容
作者系统研究 MLaaS 模型窃取:置信度输出使多类模型可被少量查询精确提取,仅标签防护仍有余地。
一篇关于 ML 模型提取(窃取)攻击的论文,面向开放查询接口却需保密的 MLaaS 场景。
- 问题:攻击者仅凭 black-box 查询(可能含置信度、支持不完整特征向量),目标是以最少查询获得与目标模型(接近)100% 一致的副本,动机包括逃避查询费、泄露训练数据、辅助规避检测。
- 方法:对带 logistic 输出层的模型用随机查询建立方程组解参数;对决策树提出路径搜索算法,把置信度当路径伪标识,并用不完整查询自顶向下提取;对 Amazon 还逆向其特征提取(one-hot 编码与 quantile binning)。
- 在线结果:在 BigML 和 Amazon 上以 650–4,013 次查询提取出 100% 等价的逻辑回归与决策树模型(Table 1),单次攻击成本最低约 $0.03(Table 7)。
- 隐私后果:提取核逻辑回归会泄露训练点信息(Figure 2);先提取再白盒反演人脸,比 40 次黑盒反演少约 20 倍远程查询(Section 4.1.4)。
- 仅标签设定:adaptive 重训练对线性模型平均 827 次查询达 99% 以上一致,对 softmax 平均 26,000 次查询超 99.9%,但比方程求解多至 100 倍查询;神经网络在 100 · k 预算下约 99%,作者称货币收益存疑。
- 作者结论:置信度舍入等简单反制效果有限,需要新的模型提取防护;集成方法、DP 防护参数、仅标签下的树提取等留作未来工作。