Synth-MIA
收藏Synth-MIA 数据集概述
数据集简介
Synth-MIA 是一个用于对合成表格数据生成器进行成员推理攻击(MIA)的综合开源框架。该库提供了一个统一的接口,用于实施和评估各种隐私攻击,使研究人员和从业者能够评估其合成数据生成模型的隐私风险。
主要功能
- 提供多种成员推理攻击方法的实现和评估。
- 支持对合成数据生成模型的隐私泄露进行审计。
可用攻击方法
- DCR:基于距离的最接近记录攻击。
- DCRDiff:DCR 的校准变体。
- GenLRA:生成模型似然比攻击。
- LOGAN:基于损失的生成对抗网络攻击。
- DOMIAS:DOMIAS 攻击。
- DPI:数据剽窃指数攻击。
- MC:基于蒙特卡洛的攻击。
- Classifier:基于机器学习分类器的攻击。
- LocalNeighborhood:基于局部邻域的攻击。
- DensityEstimate:基于密度估计的攻击。
系统要求
- Python 3.10 或更高版本。
- 依赖库包括 NumPy、Pandas、Scikit-learn、SciPy、torch 等。
安装方式
从源代码安装
bash git clone Anonymized cd Synth-MIA pip install -e .
快速开始示例
python import pandas as pd from synth_mia.attackers import DCR from synth_mia.utils import TabularPreprocessor, create_random_equal_dfs
加载数据集
train_data = pd.read_csv(path/to/training_data.csv)
test_data = pd.read_csv(path/to/test_data.csv)
synthetic_data = pd.read_csv(path/to/synthetic_data.csv)
创建成员/非成员分割
non_member_set, reference_set = create_random_equal_dfs(test_data, 250, num_dfs=2, seed=42)
数据预处理
preprocessor = TabularPreprocessor(fit_target=synth, categorical_encoding=one-hot, numeric_encoding=standard) preprocessor.fit(train_data, non_member_set, synthetic_data) mem, non_mem, synth, ref, _ = preprocessor.transform(train_data, non_member_set, synthetic_data)
运行攻击
attacker = DCR() true_labels, scores = attacker.attack(mem, non_mem, synth, ref)
评估结果
results = attacker.eval(true_labels, scores, metrics=[roc, classification, privacy]) print(results)
数据准备要求
- 成员集:用于生成合成数据集的训练数据。
- 非成员集:训练过程中未使用的保留数据。
- 合成集:待审计的生成合成数据。
- 参考集(可选):某些攻击所需的额外参考数据。
评估指标
- ROC 指标:AUC 和特定 FPR 阈值下的 TPR。
- 分类指标:准确率、精确率、召回率等。
- 隐私指标:MIA 优势和隐私增益。
- Epsilon-差分隐私边界。
项目结构
synth_mia/ ├── init.py # 主包初始化,包含动态攻击者发现 ├── base.py # BaseAttacker 抽象类 ├── evaluation.py # 用于综合指标评估的 AttackEvaluator ├── utils.py # 数据预处理和实用函数 └── attackers/ # 攻击实现 ├── dcr.py # 基于距离的最接近记录攻击 ├── gen_lra.py # 广义似然比攻击 ├── logan.py # 基于损失的 GAN 攻击 ├── domias.py # 基于距离的单类模型攻击 └── ... # 其他攻击方法
扩展框架
可通过继承 BaseAttacker 类实现自定义攻击。
许可证
本项目采用 MIT 许可证。
贡献
欢迎贡献代码,请通过提交 Pull Request 参与项目。
联系方式
- 代码库:Anonymized
- 问题反馈:Anonymized

- 1Synth-MIA: A Testbed for Auditing Privacy Leakage in Tabular Data Synthesis加州大学洛杉矶分校 · 2025年



