【论文阅读】Model Inversion Attacks that Exploit Confifidence Informationand Basic Countermeasures

下载链接:https://link.zhihu.com/?target=https%3A//dl.acm.org/doi/pdf/10.1145/2810103.2813677

本文的标题为利用置信信息的模型逆向攻击和基本对策,可以看出本文的一个基本方向是研究模型逆向攻击,且此攻击是利用目标模型给出的置信度进行攻击的,同时作者应该还给出了对此类攻击进行防御的基本对策。

Abstract

文章介绍的是模型逆向攻击,模型逆向攻击(model inversion attack)可以利用黑盒模型输出中的 confidence 等信息将训练 集中的人脸恢复出来。他们针对常用的面部识别 模型,包括 softmax 回归、多层感知机和自编码器网络实施模型逆向攻击。他们认为模型输出的confidence 包含的输入数据信息,也可以作为 输入数据恢复攻击的衡量标准。他们将模型逆向攻击问题转变为一个优化问题,优化目标为使逆向数据的输出向量与目标数据的输出向量差异尽可能地小,即假如攻击者获得了属于某一类别的输出向量,那么他可以利用梯度下降的方法使逆向的数据经过目标模型的推断后,仍然能得到同样的输出向量。

introduction

许多公司建立了ML即服务云系统,其中客户可以上传数据集,训练分类器或回归模型,然后获得使用训练过的模型执行预测查询的访问权。这些模型使用一些特征后,调用API实现预测,而这些API含有很多隐私信息。

原文研究了API模式的攻击,作者首先表明,Fredrikson的攻击,即使它在计算上易于进行,在我们的新环境下中也不是特别有效。因此,我们引入了新的攻击,来推断作为决策树模型输入的敏感特征,以及从API访问面部识别服务中恢复图像的攻击。在这两种情况下关键是,我们可以构建利用api暴露的置信度值的攻击算法。我们的面部识别攻击的一个例子如图1所示:攻击者可以生成一个可识别的人的图像,左边为攻击提取的图像,右边是训练集的图像。

图1模型逆向攻击根据姓名和ML查询进行图像恢复:使用新的模型反转攻击恢复的图像(左)和受害者的训练集图像(右)。攻击者只知道被攻击者的名字,并可以进入一个面部识别系统,该系统会返回一个置信度

1.ML APIs and model inversion(ML API 模型逆向)

作者大致将客户端访问划分为黑盒或白盒。在黑盒设置中,对抗性的客户端可以对模型进行预测查询,但不能实际下载模型结构。在白框设置中,允许客户端下载该模型的结构。

对于ML 模型来说,我们可以把其比作成一个函数F,然后函数有一些输入[x1,x2,...,xn],这叫做模型的特征,然后模型输出的结果 Y = F(x1,x2,...xn)。

Fredrikson等人的模型反演攻击中,黑客使用黑盒访问 F 来推断一个敏感特征,比如x1,是一个敏感特征,通过一些其他相关特征和输出值y,模型的损失值,以及单个变量的边际先验[4]。他们的算法是一个最大后验(MAP)估计器,它选取的是的值,使观察到已知值的概率最大化。然而,要做到这一点,需要计算f(x1, ..., xd)的每一个可能的x1值。这限制了它适用于x1可能值有限的设置的范围。

作者的第一个贡献是在一个新的背景下应用了MAP。BigML模型库上的决策树模型中,弗雷德里克森等人的算法会错误地得出结论,但事实上,作者提出了可以显著提高模型逆向效能的新攻击。

2.White-box decision tree attacks (白盒决策树攻击)

调查通过BigML服务API提供的实际数据,我们可以看到模型描述所包含的信息比黑盒攻击所利用的在黑盒攻击中利用的更多信息。特别是,它们提供了训练集中符合决策树中每个决策树中的每个路径的实例数。除以实例总数实例的总数给出了分类的confidence。虽然先验地看,这个额外的信息似乎是无害的,但我们表明它实际上是可以被利用的。我们给出了一个新的MAP估计器,该估计器使用白盒设置中的confifidence信息来推断敏感信息。

confidence就是可信度,可信度就是我的分类器把这个结果预测出来了,这个结果的可信度是多少,有多少的概率认为这个模型是可信的。

Contribution:

①在决策树模型(BigML)和人脸识别的神经网络模型上实现了基于置信度信息的MI Attack

②采用Amazon's Mechanical-Turk对攻击效果进行量化评估。

③对提出的攻击,提出了对策。

Background

ML 基础

ML模型的本质: f:Rd→Y,即根据d维特征向量获得输出的标签的映射(函数),当Y是有限集时,该模型是一个分类器,特别地,当Y仅有两个类别标签时,该模型就是二分类器;当Y是无限集时,模型是线性回归模型。

分类器分类方式:计算一个类别特征向量的一个/多个回归,输出类别的可能性,也就是置信度,并最终选择最高的置信度类别作为标签进行输出。因此,依照此描述,可以将f分类器视为2个函数的复合:

①f˜: Rd→ [0, 1]m ,该中间函数通过对n维特征向量进行特征提取,获得对应的置信度向量,其中,m表示置信度数量,同时 |m=|Y| -1,比标签数少1个。

②t:[0,1]m→Y(m>1) ,该中间函数从置信度向量挑选最高的作为输出的标签。eg:若m=1,则对应两类别的分类器,得到两个类别的置信度,获得一个高于0.5的类别标签和一个低于0.5的类别标签,输出较大的类别标签,输出关联置信度最大的标签。

③ f(x)=t(f(x)) ,查询的结果同时返回和f(x)和f(x)。

通过一些(随机)训练算法训练生成模型f。它以(d+1)维向量(x, y)∈Rd×Y作为输入,其中x = x1,…, xd是特征的集合,y是标签。我们将这样的一对称为实例,通常我们假设实例是独立于某个联合于特征和响应的先验分布中绘制的。train的输出是model1 f和一些辅助信息aux。辅助信息的例子可能包括错误统计数据和/或训练数据的边缘先验。

ML API

如今,ML-as-a-Service(MLaaS)的应用越来越广泛,通过向用户提供ML API,使得用户也能够使用机器学习服务。相关服务包括Microsoft Machine Learning、Google's Prediction API,BigML,http://Wise.io以及一些脸部识别API。大多数API按照查询次数收费。

攻击模型

攻击模型的攻击背景环境包括两种:①黑盒环境②白盒环境,白盒环境指敌手用户可下载模型,以获得模型细节信息;黑盒环境表示用户只能通过选择特征向量输入至模型API进行预测查询。敌手通过训练获得辅助信息aux的输出,敌手无法获得训练数据和联合先验的样本,只能通过ML API间接获得对数据的标识。

本文提出的MI Attack着重关注返回置信度的模型引起的风险,这是一种尚未引起关注、潜在的风险攻击。

Fredrikson et al's MI Attack

我们先回顾一下Fredrikson等人发表的在华法林药剂线性回归的预测模型实施的MI Attack。

算法特点:Fredrikson的MI Attack主要是一种针对小域(逆向推理的属性值少)目标的模型逆向攻击,针对华法林试剂的线性回归(Linear Regression)预测模型对患者的基因组隐私信息进行逆向推理。对于华法林试剂的线性回归预测模型主要利用患者的人口统计信息、病史、基因标记等属性预测华法林的剂量,其中基因标记表示隐私属性,也是MI Attack的逆向目标。攻击者取得f的白盒权限+除了基因隐私的属性和预测结果{x1,...,xt,y} 逆向推理隐私属性x1 的数据。

算法细节:如图所示。

其中,err表示高斯误差模型,通过处罚使得预测值不准的 x1 使得预测值逐渐逼近实际值,最后得到的最接近的隐私属性就是恢复的属性;p={p1,...,pt} 表示边缘先验概率,pi 通过将real line划分为不相交的bucket(值域),使得每个 pi(v) 为xi 在数据库中所有的x落在v的次数初一训练向量 |db| (个数)。简言之,作者简单地使用x1 所有可能值来得到特征向量,然后计算正确值的权重概率估计。

作者认为,Fredrikson提出的MI Attack实际上是黑盒的,因为攻击并没有涉及到模型的内部细节,而是简单地采用模型的接口进行预测。

算法缺陷:无法对大属性集合进行还原(eg:脸部识别模型,特征空间巨大,每个特征值都是[0,1]的实数,而图片包含大约10304维的特征向量,因此数据量大,通过简单的穷举法并不可行)。

针对Fredrikson的算法缺陷,作者提出可利用ML API提供的置信度信息解决此类问题。

MAP INVERTERS FOR TREES

Decision Tree(决策树)

根据分类结果,决策树主要分为两种:分类与回归,区别在于:分类决策树的输出结果是离散的,回归决策树的输出结果是连续的,本文着重研究分类决策树。

决策树基本原理:递归地将特征空间划分为不重叠的空间R1,...,Rm ,通过找到包含x¯的区域来对实例(x,y) 进行预测,返回训练数据中观察到的最有可能的y值。决策树的数学表达式如下所示:

其中,ϕi(x) 表示区域Ri 的指标,是一个非0即1的数, ωi 表示Ri 内训练集中观察到的最常见的响应。决策树的一个例子如图2.1所示。通过改变ωi 的形式,可以拓展决策树返回的置信度。对于一个决策树返回的分类结果和置信度可表示为:

分类结果:

返回能够使得可能性最大的数值下标。

置信度:

其中i∗ 表示能够使得ϕi∗(x)=1 。

图2.1 决策树表示非x1且x2

决策树API:部分Web ML API向用户公开决策树的训练和查询路径。

模型逆向问题:模型逆向攻击的环境主要分为两种:黑盒条件和白盒条件。

首先固定一个树

,其中(x , y) 表示一个目标实例,可能在也可能不在训练集中。

对于黑盒条件,本文采用了Fredrikson提出的MI Attack算法,并针对决策树场景做出了微调,具体不同体现在:①目标模型只能产生离散输出 ②误差模型信息不同,采用混淆矩阵C表示,而非高斯分布的方差。混淆矩阵C,

对于白盒条件,攻击者知道每个 ϕi ,训练样本数 ni(与 ϕi 相对应),

表示训练样本总数。对已知特征向量 xk 引入一系列路径

, pi=ni/N 与用于构建训练集特征的联合分布有关。使用基函数 ϕi(x)\phi_{i}(x) 对特征空间进行划分,v表示第一个特征的特定值, vk表示d-1维非隐私特征的特定值。最终构建了一种带计数的白盒预测器(WBWC),如下所示,通过输出v使得该式最大,给定额外的辅助信息,返回MAP预测。此外,作者指出,不一定需要知道那么多的特征向量,可以只知道 xk={L+1,...,d−1} 的下标属性值。

Face Recognition Model(脸部识别模型)

越来越多的Web API提供人脸识别的服务,例如Lambda Labs,Kairos和SkyBiometry。此外许多本地库也公开了面部识别的API,如OpenCV,OpenBR。正因为此类API的增加,导致的相关风险也在增加。

脸部识别模型:主要分为2类:Ⅰ传统方法:通过复杂的手工编码提取、对齐和调整;Ⅱ神经网络算法:利用神经网络提取脸部特征,将高纬度信息降维至低维信息,再对低纬度信息进行分类,主要分为3类:①softmax回归、②多层感知机、③叠加去噪自编码网络

①对于softmax回归,是逻辑回归的推广,属性值超过2个,通常在神经网络的最后一层进行分类;

②多层感知机,本文采用一个具有3000个sigmoid单元隐藏层和一个softmax输出层的神经网络,其中sigmoid对特征向量进行非线性变化,再对结果进行softmax回归,实现分类。

③叠加去噪自编码网络,本文采用2个隐藏层(分别有1000个sigmoid单元和300个sigmoid单元)和1个softmax层,具体步骤是:将特征向量(图像)输入至自编码网络,自编码网络将高维度特征向量映射到低维度小空间向量,再基于此小空间向量进行重构获得原始的特征向量,自编码网络的目标就是最小化重构网络。

模型逆向问题:作者主要实现了两类模型逆向攻击:①重构攻击,假设敌手知道模型标签(人名/唯一标识符),利用标签重构图片,攻击者若能够从一系列图片中识别出受害者图片,则认为成功实现了攻击;②去模糊攻击,假设敌手可获取不包含隐私的用户的模糊图像(模糊到难以辨认),对其进行去模糊操作,若恢复的图像在训练集中,则认为成功实现了攻击。

脸部识别模型的模型逆向目标:重构包含图像的[0,1]之间像素强度的全向量。脸部识别模型利用n维图像特征向量,根据此n维特征向量分类得到m个人脸类别,使用数学表示脸部识别模型: f~:[0,1]n→[0,1]m\tilde{f}:[0,1]^{n}\rightarrow[0,1]^{m} ,而逆向攻击则是基于梯度下降算法来最小化 f~} 的损失函数来实现攻击。

模型逆向攻击具体攻击步骤如图2.2所示,其中包含:

①参数label、α、β、γ、λ ,其中,labellabel 易于理解,即模型API根据攻击图像给出的标签信息, α表示模型的总迭代次数(iteration), β 表示当前的迭代次数,γ表示要达到的重构精度,λ 表示学习率(梯度下降中的学习率);②函数c(x)、AuxTERM(x)、PROCESS、f~label(x) ,其中 c(x)表示模型攻击损失函数,f~label表示模型,AUXTERM(x)表示特例函数,基于有用的辅助信息来实现,PROCESS 函数对图像进行去噪和锐化,提供图像重构质量。首先定义了损失函数c(x) ,围绕此损失函数在 α 次iteration中迭代优化,若其中出现难以优化(line 6)或者重构质量够高(line 8,达到 γ ),则退出迭代。返回其中具有最小损失的图像及其对应的损失。(ps: f~只有可微才能实现梯度下降算法)

图2.2 对人脸识别模型的逆向攻击算法

对于softmax和MLP,本文采用的PROCESS函数设置为身份函数,而对于DAE采用的PROCESS函数,如图2.3所示。使用自动编码器第一层的潜在空间,生成重构图像,将其进行解码后得到原始像素空间,再通过去噪和锐化对图像进行处理和重新编码,得到了最终的恢复图像。通过去除大量噪声,增强了可识别特征。

图2.3 PROCESS-DAE

使用PROCESS-DAE的效果如图2.4(中)所示,相比未采用PROCESS-DAE(图2.4左),效果显著,图片噪点少。

图2.4 DAE对图像重构效果示意

实验
Descision Tree

实验条件

BigML的基本介绍

实验将BigML公开API作为攻击场景,因为其内部结构是决策树,结果会传递给API,且拥有最大的训练模型市场。BigML主要分为两种形式:黑盒与白盒,其中黑盒条件下,非使用用户的其它用户只能用REST API查询决策树的API,白盒条件下,用户可查询树结构且可下载模型的json格式并用于本地部署,此外用户还可获得树中路径 ϕi(x) 匹配的训练集实例数ni以及特定预测的置信度。对于这两种条件下,敌手均可获得每个特征的边缘先验分布,模型会给出混淆矩阵( Ci,j ,给定y=i,而实际标签为j的示例个数)和预测标签。

逆向攻击

假定有一个敏感特征,简单起见,作者设置为第一个,T(arget)={1}。此外还具有若干辅助信息, sidel(x¯,y)=(xl,...,xd,y) ,K={l,...,d}表示已知特征的索引。x¯k={xl,...,xd} 表示对应的辅助属性向量。

数据集

本文在两个数据集(FiveThirtyEight survey,subset of GSS)上分别实现了黑盒攻击和白盒攻击。

FiveThirtyEight survey:是一个根据人类牛排喜好预期冒险倾向之间的联系,除了对牛排的喜好,该数据集还包含年龄、性别、家庭收入、教育、地区以及对一些问题的回答(例如对婚姻是否不忠)等属性。这包含一些隐私属性信息。总共包含513个个体信息,作者逆向攻击的目的就是根据逆向攻击反向推理每个参与者是否对婚姻不忠的问题。

subset of GSS:Generational Social Survey,通过采集美国居民的人口统计信息、兴趣爱好、特点,作者使用过此数据集子集来研究色情产品的各种社会影响。此数据集包含51020个体,11个属性,经过处理去除部分无关信息,最后逆向实验的个体共有16127个。

评估指标

本文使用召回率、准确率以及精度用以评估逆向攻击的性能。

召回率(recall):敌手预测数据集中回答信息为“是”的占比。

准确率(precision):敌手预测回答信息为“是”且正确预测的占比。

精度(accuracy):正确响应(response)的占比

训练环境

使用有8个Xeon内核,2.5GHz以及16G内存的机器进行训练,使用50%随机抽样分层训练集构建100棵树,对树进行局部训练,下载了BigML在本地进行训练。

baseline

共3种预测策略:①随机敌手②baseline敌手③理想敌手

随机敌手:对模型一无所知,等价于掷硬币的随机猜测

baseline敌手:只知道敏感属性的边缘概率分布,无法访问树/有关数据集的任何信息,根据边缘分布猜测最可能的值。

理想敌手:可访问从原始数据集训练的决策树来预测敏感属性,给定已知特征的情况,使用树来进行预测。

实验结果

如图2.4所示,可以得出结论:

①白盒两种数据集上基本上实现了100%的准确率,而黑盒在FiveThirtyEight数据集上实现了85%的准确率,在GSS实现了40%的准确率。这说明在数路径上提供了有用数据信息后,攻击者能更好识别敏感数据。

②两者据没有获得更好的召回率,作者认为,这和敏感属性的先验分布存在偏差有关。

图2.4 对于BigML进行MI的结果

如图2.5所示,是采用条形图形式对MI性能的描述。

从(a)图可以看出:相比baseline,对于两种数据集、两种攻击,精确度、召回率都有一定量的提升,准确性也提高了。在GSS数据集上,精确度略低,但是准确率和召回率更高。

从(b)图可以看出,白盒在准确率上达到了理想敌手(baseline)的情况,同时精确度也接近理想情况。

从(c)图可以看出,相比测试集,对训练集的精确度和召回率都有提升,说明BigML的发布对隐私信息的泄露存在风险。

图2.5 相比baseline、ideal敌手的MI攻击分析

此外,作者根据MI的运行时间,分析了黑盒和白盒的性能,得到结论:黑盒耗时远远少于白盒。

Face Recognition Model

实验条件

数据集

采用AT&T实验室的Cambridge脸部数据集,包括40个人在不同照明条件、面部表情和细节(如有无眼镜)的各10张照片共400张人脸图片。对其进行划分,每个人的10张图片,7张用于训练,3张用于测试。

脸部识别系统算法

在本章的理论背景中提到了脸部识别模型的神经网络算法包括:softmax、MLP以及DAE,作者使用随机梯度下降算法作为优化算法对以上三种模型进行训练,训练结果如图2.5所示。可以看到模型性能表现上:DAE>MLP>Softmax

图2.5 各脸部识别模型的训练结果

评估指标

使用Mechanical Turk的工人将重构图像与AT&T数据集的5张人脸进行匹配(存在1张对应或1张都没有),每组实验进行3次。80%的实验,5幅图像中一副对应重构图像对应标签的个体,10%使用数据集的普通图像。从overall、identified、excluded三种条件下进行评判。

overall:工人判断准确,存在->存在,不存在->存在

identified:当中间存在匹配图片时,工人判断存在。即存在->存在

excluded:当中间不存在匹配图片时,工人判断为不存在,即不存在->不存在。

实验结果与结论

最终结果如图2.6所示。得到结论:对于softmax的重构结果最好,overall的准确率达到了75%,identified的准确率达到了87%。

这里一个比较新颖的地方就是采用人工方式进行攻击性能的判断,最后根据人工判断准确的比例来判断攻击的效果。将人为感官进行量化。

图2.6 在不同条件下针对不同模型的攻击效果

而重构图像如图2.7所示。对于重构结果可知:softmax模型的重构图像轮廓更清晰,有更多可识别特征;MLP模型的重构图像轮廓更为模糊;而DAE的轮廓最为模糊。

图2.7 针对不同模型进行重构攻击的结果

此外,作者提出使用近似梯度代替显示梯度的计算,通过scipy数值梯度计算有效,但是重构性能受到了很大影响,即需要使用很多时间来进行重构。

对策(COUNTERMEASURES)

作者针对MI攻击做出了一些启发式的初步研究。目的是使得此类攻击无效化。

决策树

分析:决策树对逆向攻击易感,敏感特征出现的级别会影响攻击的准确率。因此作者采用CART学习变体,采用了一个参数l,考虑敏感特征的优先级,在“后”拆分时考虑l-1其它功能已被选择,并在以后不再考虑。然后对FiveThirtyEight数据集中90%进行100次采样,使用该算法对每个样本的每个值徐连一棵决策树。

作者对树的分类精度以及白盒逆向攻击进行了评估。结果如图2.7所示(黑盒条件也有类似趋势)。在这种情况下,攻击有效性受到敏感特征的深度的影响。当特征出现在树的底部/顶部附近时,攻击失败概率更大;同时存在一个最佳敏感特征的放置位置能够使得树分类精度高的同时,也能保证一定的保护效果,当隐私信息至于树顶部时,攻击准确率较低,且树的分类性能较高。

结论:可以设计更为复杂的算法,将模型逆向度量至分割准则中,以使得不过度牺牲模型准确率的同时实现隐私的保护。

图2.7 树的分类精度、白盒攻击准确率与参数l的关系

面部识别模型

本文针对面部识别系统的攻击是基于梯度下降的,一种防御措施是降低从模型中检索到的梯度信息/质量,白盒条件下无法实现,但在黑盒条件下可以通过降低置信度的精确度来实现。作者通过舍入softmax模型生成的置信度来进行逆向攻击。结果如图2.8所示。当舍入精度为0.05时,基本无法识别重构图像的隐私特征了。

因此,对于黑盒条件下,可以通过调整给定置信度的精确度实现对攻击的防御。

图2.8 置信度的舍入精度与攻击效果对应示意图

未来工作

作者指出:针对提出的模型逆向攻击,虽然只是提出了初步的防御措施,但不能构成完整方法论,因此未来可以以此作为着力点,对模型逆向攻击展开一系列防御,使得模型能够防御逆向攻击带来的危害。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值