This repo contains my reproduction and experiment code for the FPDGD algorithm. This is my final project for COMPSCI 660 Advanced Information Assurance (Fall '22) at UMass Amherst.
Please make sure to install all of the following dependencies:
- numpy, scipy (For all the math)
- pandas (For the data)
- sklearn (For attack experiment)
- tqdm (Nice progress bar)
- Matplotlib (For plotting)
- Optional: mypy (For type checking)
To train a model:
- Download the LETOR 4.0 dataset and/or the MSLR dataset.
- Unzip them in the
data
folder. - Run
python train.py
(please modify the parameters in this script) - The model parameters are saved to the
models
folder, and the plots are saved to theplots
folder.
To run the privacy attack experiment:
- Download data and unzip (like above)
- Run
python mia.py
(please modify the parameters in this script)