Home

Awesome

auditing_mi

Code for our paper Do Parameters Reveal More than Loss for Membership Inference? at TMLR.

Instructions

First install python dependencies

pip install -r requirements.txt

Then, install the package

pip install -e .

Setting environment variables

You can either provide the following environment variables, or pass them via your config/CLI:

MIB_DATA_SOURCE: Path to data directory
MIB_CACHE_SOURCE: Path to save models, signals, and paths.

Training models

Use mib/train.py to train models. Arguments related to training are specified in the file itself. For example, to train models on Purchase-100 for MLP2 architecture, run:

python mib/train.py --dataset purchase100 --model_arch mlp2

Running attacks

Use mib/attack.py to run attacks. Arguments related to attacks are specified in the file itself. For example, to generate attack signals for Purchase-100 for MLP2 for IHA, run:

python mib/attack.py --dataset purchase100 --model_arch mlp2 --attack ProperTheoryRef --num_points -1

Citation

@article{suri2024do,
  title     = {Do Parameters Reveal More than Loss for Membership Inference?},
  author    = {Anshuman Suri and Xiao Zhang and David Evans},
  journal   = {Transactions on Machine Learning Research (TMLR)},
  year      = {2024},
  url       = {https://arxiv.org/abs/2406.11544}
}