DOMIAS, a density-based MIA model that aims to infer membership by targeting local overfitting of the generative model.
Project description
DOMIAS: Membership Inference Attacks against Synthetic Data through Overfitting Detection
:rocket: Installation
The library can be installed from PyPI using
$ pip install domias
or from source, using
$ pip install .
Experiments
- Experiments main paper
To reproduce results for DOMIAS, baselines, and ablated models, run
cd experiments
python3 domias_main.py --seed 0 --gan_method TVAE --dataset housing --training_size_list 30 50 100 300 500 1000 --held_out_size_list 10000 --gen_size_list 10000 --training_epoch_list 2000
changing arguments training_size_list, held_out_size_list, gen_size_list, and training_epoch_list for specific experiments over ranges (Experiments 5.1 and 5.2, see Appendix A for details) and gan_method for generative model of interest.
or equivalently, run
cd experiments && bash run_tabular.sh
- Experiments no prior knowledge (Appendix D)
If using prior knowledge (i.e., no reference dataset setting), add
--density_estimator prior
- Experiment images (Appendix B.3)
Note: The CelebA dataset must be available in the experiments/data
folder.
To run experiment with the CelebA dataset, first run
cd experiments && python3 celeba_gen.py --seed 0 --training_size 4000
and then
cd experiments && python3 celeba_eval.py --seed 0 --training_size 4000
:hammer: Tests
Install the testing dependencies using
pip install .[testing]
The tests can be executed using
pytest -vsx
Citing
TODO
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for domias-0.0.1-py3-none-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c280af3baaae19f2297d1f62e93b2518557f45be6c8fe6708f6d6f72ab343a0a |
|
MD5 | 5ced01d6a7401e007438683dbeee55d6 |
|
BLAKE2b-256 | 1a3f55da4898e8f2766e1fcca4278c59a7a404ae2aefbc1cc3020c462bfbbffe |