ML-Leaks:Model and Data Independent Membership Inference Attacks and Defenses on ML Models

这篇文章是在《Membership Inference Attacks Against Machine Learning Models 》的基础上,对它提出的假设做了放松。这大大缩小了针对ML模型的成员推理攻击的范围,但更贴近于真实的攻击场景。这篇文章提出了进行成员推断攻击的三个对手和两种防御措施。

基于阴影模型的设计和训练数据,研究了三种不同类型的对手。
在这里插入图片描述
对手1。对于第一个对手,假设它有一个数据集,该数据集来自与目标模型的训练数据相同的分布。在这里,放松对阴影模型的假设。

首先使用一个而不是多个阴影模型来模拟目标模型的行为。在她的攻击中只使用了一个阴影模型和一个攻击模型,而肖克里等人的方法采用了多个阴影模型和多个攻击模型(每个类一个)。由于每个阴影模型都是通过MLaaS建立的,这种策略将大大降低她的成员推理攻击的成本。

在这里,进一步假设阴影模型使用与目标模型相同的ML算法,并且具有相同的超参数。对手的方法可以分为三个阶段,即阴影模型训练、攻击模型训练和成员推断。影子模型的训练和攻击模型的训练就不再赘述了,主要是把数据集分为两个不相交的集合去训练。而成员推断则是对目标样例Xtarget使用目标查询M以获得相应的后验概率。然后,选取3个最大后验概率,从高到低排序,并将它们输入到攻击模型A中以获得成员预测。

实验结果表明在训练中使用的周期数量越多,攻击性能越好。另一个影响攻击性能的因素是数据集中类别的数量。类别数越多,攻击性能越好。通过将阴影模型的数量从1个变化到10个,没有观察到精确度和召回率的显著性能差异。这意味着增加阴影模型的数量不会提高他们的攻击性能。

上述攻击的假设之一是对手知道目标模型的算法和超参数,并以同样的方式实现她的阴影模型。接下来,他们展示如何放松这个假设。首先关注目标模型的超参数,然后是它使用的分类器的类型。

超参数:假设对手知道目标模型是神经网络,但不知道模型的细节。用目标模型的一半训练参数训练阴影模型。更准确地说,将批量、隐藏单元和正则化参数减少到一半。同时改变设置来测试阴影模型的参数数量比目标模型多一倍的情况。结果表示非常接近最初的攻击。这个评估显示了成员推理攻击的灵活性:不知道模型的超参数的对手仍然可以获得良好的性能。

目标模型的算法:假设对手不知道目标模型采用什么分类算法。在这种情况下,第一个尝试是使用任何分类器,如随机森林,作为阴影模型,并攻击与阴影模型(很可能)不同的目标模型,如CNN。然而,实验结果并不是很理想。然后尝试构建了一组ML模型,每个模型具有不同的分类算法,并将它们组合在一起作为一个阴影模型。每个单独的ML模型被称为子阴影模型。这种攻击,也称为组合攻击(combining attack),可以学习不同分类器的行为,因此可以基于用与目标模型相同的分类器训练子阴影模型的假设来攻击未知目标模型。

对手2。对于这个对手,假设她没有来自与目标模型训练数据相同分布的数据。此外,对手不知道目标模型的结构。与前一个相比,这是一个更现实的攻击场景。但是,实验结果表明用不同的体系结构和参数训练阴影模型仍然产生可比较的攻击性能。

在这种情况下,他们提出了一种用于成员推断的数据传输攻击。具体来说,他们用不同的数据集训练单一阴影模型。这意味着这里的阴影模型不是用来模仿目标模型的行为,而是用来捕获机器学习训练集中数据点的成员状态。

数据传输攻击的主要优势是对手不需要查询合成数据生成的目标模型。相比之下,先前的方法平均需要156次查询来生成单个数据点。这意味着数据传输攻击效率更高、成本更低,并且更难被MLaaS提供商检测到。

实验结果表明,成员推理攻击仍然取得了很好的性能,与第一个对手相比仅下降了几个百分点。更有趣的是,**数据传输攻击甚至在属于完全不同领域的数据集之间有效。**例如,通过用20个新闻组文本数据集训练阴影模型,他们能够获得0.94精度和0.93召回率,用于攻击在CIFAR-100图像数据集上训练的目标模型。

对手3。该对手在没有任何阴影模型的情况下工作,即当用目标数据点查询时,攻击仅依赖于从目标模型获得的后验(结果)。根本不需要训练程序。他们表明,目标模型后验上的统计度量,如最大值和熵,可以很好地区分成员和非成员数据点。为了进行具体的成员推断,他们提出了一种阈值选择方法。实验表明,这种简单的攻击仍然可以在多个数据集上实现有效的推理。

方法:第三个对手的攻击模型由无监督的二分类实现。具体地说,对手首先获得M(Xtarget)。然后,她提取最高的后验概率,并比较该最大值是否高于某个阈值。如果是,那么她预测数据点在目标模型的训练集中,反之亦然。攻击者可以根据自己的要求选择成员推断的阈值,然而,他们提供了一种选择阈值的通用方法。具体地,在目标数据点的特征空间中生成随机点的样本。对于包括CIFAR-10、CIFAR-100、MNIST和人脸在内的图像数据集,生成随机图像,其中每个像素的值都是从均匀分布中提取的。对于包含位置和Purchase数据集的二元特征数据集,根据无偏硬币抛掷为每个要素生成0和1。对于成人数据和新闻,由于特征的界限不清楚,方法不能适用。解决这个问题的一种方法是从互联网上收集新闻文章或人们的记录(与成人数据集中的特征相同)作为“随机”点。接下来,在目标模型中查询这些随机点,以获得相应的最大后验概率。假设这些点作为非成员点。因此,这些随机点的最大后验概率的top t百分点可以作为一个好的阈值。下从经验上表明,存在一个t百分位的选择,它可以很好地工作并在所有数据集上推广,因此可以用来自动确定检测阈值。

所提出的防御机制:Dropout和模型堆叠。

Dropout:它是通过在每次训练迭代中随机删除全连接神经网络模型中固定比例(dropout比率)的边来执行的。然而,它只能在目标模型是神经网络时应用。

模型堆叠:它独立于所使用的ML分类器起作用。这种防御背后的直觉是,如果目标模型的不同部分是用不同的数据子集训练的,那么完整的模型就不太容易过度拟合。这可以通过使用集成学习来实现。集成学习是一种ML模型,它不是使用单一的ML模型,而是将多个ML模型结合起来构建最终模型。有不同的方法来组合这些ML模型,例如 bagging 或boosting。对于他们的防御,专注于以分层的方式堆叠模型。具体地说,把目标模型组织成两个层共三个ML模型。第一层由两个ML模型组成(第一和第二个模型)。第二层由一个单一的ML模型(第三个模型)组成。如图所示:
在这里插入图片描述

Dropout和模型堆叠的相关理论内容可以参考机器学习的书籍。

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值