ML-Leak

ML-Leaks
classification问题
背景
MLaaS
- 用户上传数据,服务商返回模型输出 → 调用API(黑盒 => 训练集未知)
过去的成员推理攻击
流程
- 攻击者使用合成数据训练多个shadow models,模仿target model的行为
- 使用shadow model的 输出+member标签 训练分类器 attack model(每个特征类一个attack model)
- 根据target model输出的预测结果选择attack model,然后将feature vector输入给attack model,判断是否是member
条件:严格
构建多个shadow models模拟target model(因为target model是黑盒,训练集未知)
架构相同:使用同一MLaaS构建shadow model
攻击评估:与训练集相同分布的数据集
合成数据,只能用于二维特征数据集
本文的成员推理攻击
条件放宽 → 3种敌手状态
提出两条防御机制
数据集:
8个
purchase没有预测类 → K-mean人工定义类
membership inference attack
model(本地)
- image:CNN = 两个卷积 + 两个pooling层 + FC
- shadow model:和target model一致
- attack model:一层隐藏层 + softmax
评价指标:
精确率
- attack model预测为member的样本中,有多少是真正的member
召回率
- 所有真实member中,有多少被attack model正确识别
敌手1
条件
一个shadow model
数据集的分布与训练集相同
relax
- model structure
- model num
流程
- shadow model training
- 使用data set中的training data训练唯一的shadow model - S
- attack model training
- 获取data set 的S的输出(后验概率),每一个vector选取最大的2/3个概率值作为feature vector,人工标上member标签
- 使用feature+label训练唯一的attack model - A
- membership inference
- shadow model training
attack性能影响因素
不同的数据集表现出不同的攻击性能
- 对于不同的数据集,model的过拟合程度不同
- model的过拟合程度越大,越容易被攻击
- 过拟合的量化:
- target model对于training data和testing data的预测准确率的不同
- training 过程中的epochs
- 过拟合的量化:
分类的类别数
- 越多越容易被攻击
feature vector的长度
- 影响不大,3最佳
shadow model数
- 影响不大
target 和 shadow 使用MLaaS
无法保证structure相同
超参数:略有影响 → 攻击的灵活性
algorithm
target model 和 shadow model 不同
- 不好
- combining attack
- 选择所有可能的分类algorithm做多个subshadow model
- 将对于某一个data point所有subshadow model生成的feature vector堆叠(应该只是数据量增加??)
- 有的基本没有影响,有的会变差,总的来说可以放宽这个assumption
敌手2:数据独立
- 条件
- 一个shadow model
- relax
- data set的分布
- model structure(由于data set不同,此时两个model的structure自然就不同了
- model num
data transferring attack
此时shadow model并不会模仿target model的行为。只是捕捉数据的member状态
流程
- (大差不差
- 训练shadow model
- 使用其他数据集
结果
- 和敌手1差不多
- 甚至更好
- target 和 shadow的数据集domain不同,攻击仍然有效
优势
不需要合成数据 → 效率高、成本低、不易察觉
高性能
跨数据集域
原理
- 有的数据集的member与non-member决策边缘差不多,因此可以实现跨数据domain
- 有的就混杂在一起,同一target model使用两种数据集 攻击性能就相差比较大 (fig.7+8
敌手3:
条件
- 不需要知道model structure
- 不需要知道data distribution
- 不需要shadow model
原理
- 非监督式,只依靠target data的后验(输出的概率向量)
- 使用 最大值、熵、标准差
- 阈值选择方案
- member最高的后验比non-member高很多
- random的最高后验分布接近non-member,因此比random的t最高后验还高就说明比non-member高,也就说明很有可能是member
流程
拿到target data的后验,取highest值
阈值选取
看需求:重视精确度,选高一点;重视召回率,选低一点
生成一组random data,我们将其看做non-member
- 图像:随机图像,像素值从均匀分布中选取
- 二元特征数据集:随机生成特征值01 vector
- 边界特征不明显(从互联网上搜集random data)
获取random point的最大后验
前t百分位数可作为阈值
和阈值比较
- data更大,则target data为member
- 反之亦然
评估
不设定阈值
- 评估标准:AUC(ROC曲线下的面积)
- 体现了多个阈值下,真阳性率(召回率)和假阴性率之间的关系
- 不需要确定阈值
- 评估标准:AUC(ROC曲线下的面积)
设定阈值
- 每个数据集生成大量random data
- 尝试不同t作为阈值,计算精确率和召回率
增加多个数据因素(同一样本的后验中)
- 最大后验
- 标准差
- 熵
结果
- 通过member、non-member、random最大后验的分布,有的数据集的random和non-member分布很接近,有的不,对这些数据集该攻击效果并不好
- 没有统一的 t 可以适用于所有的data set
三者对比
- 敌手2最佳(模型相关)
defense
两种方法适用于所有ML model减轻overfitting
攻击成功的原因之一
model会对training data产生过拟合现象
对真实类别返回相当高的概率
使用
- 神经网络 - model stacking
- 其他 - dropout足以
dropout
deep learning,只能用于神经网络
流程:减少过拟合
- 在输入层和隐藏层删除固定比例0.5的神经元
好处:
- model性能基本不变,甚至增强
结果
- 敌手12:抵抗攻击的效果显著(有个例news
- 敌手3:部分数据集效果不明显,对dropout有抵抗性,甚至攻击性能变强了
- dropout model的过拟合水平减少量 越大,攻击性能越差(fig16
- 改变删除比例
- 比例越大,攻击性能越差
- 0.5时model性能下降最少
model stacking
原理
- model不同部分使用不同的data set训练 → 减少过拟合
- 集成学习ensemble learning
- 层次化
流程
- 将多个model分层组织
- 两个model将training data作为输入进行训练,一个model将他们的output(后验概率)连接合并为输入进行训练
- 使用不相交的data set训练这3个model:使得同一个data只用于一个model的训练
- 将多个model分层组织
结果
- 敌手1:攻击性能显著变差,比dropout更有效
- 敌手3:部分数据集效果不明显,甚至攻击性能变强了
- 对model性能影响比dropout大
- Title: ML-Leak
- Author: dawn_r1sing
- Created at : 2025-09-05 11:06:35
- Updated at : 2025-09-05 11:07:00
- Link: https://dawnrisingdong.github.io/2025/09/05/ML-Leak/
- License: This work is licensed under CC BY-NC-SA 4.0.