This is our implementation for dencentralized matrix factorization with heterogeneous differential privacy.
- Download datasets
- Preprocess datasets and put them in the folder
/Data
- For default setting or changing hyperparmeters experiments
python dataprocess_for_default.py
- For changing dataset sparsity experiments
python dataprocess_for_sparsity.py
- Run model
- Run Our model HDPMF :
python mf_hdp.py --data Data/ml-1m --lr 0.01 --embedding_dim 10 --regularization 0.01 --stddev 0.1
- Run baseline method PDPMF:
python mf_sampling.py --data Data/ml-1m --lr 0.01 --embedding_dim 10 --regularization 0.01 --stddev 0.1
- Run original MF without any noise:
python mf_nonprivate.py --data Data/ml-1m --lr 0.01 --embedding_dim 10 --regularization 0.01 --stddev 0.1
python: 3.8
sklearn: 1.0.2