├── .gitattributes ├── .gitignore ├── .idea ├── .gitignore ├── .name ├── SCAFFOLD-master.iml ├── inspectionProfiles │ ├── Project_Default.xml │ └── profiles_settings.xml ├── misc.xml ├── modules.xml └── vcs.xml ├── LICENSE ├── README.md ├── data ├── CIFAR_10 │ └── data_generator.py ├── Femnist │ └── data_generator.py ├── Logistic │ └── data_generator.py └── Mnist │ └── data_generator.py ├── flearn ├── differential_privacy │ └── differential_privacy.py ├── optimizers │ └── fedoptimizer.py ├── servers │ ├── optimum.py │ ├── server_avg.py │ ├── server_base.py │ └── server_scaffold.py ├── trainmodel │ └── models.py └── users │ ├── user_avg.py │ ├── user_base.py │ └── user_scaffold.py ├── get_epsilon_bound.py ├── main.py ├── models └── .gitkeep ├── pictures ├── _parameters.txt ├── femnist_accuracy_k_10-1.png ├── femnist_accuracy_k_20-1.png ├── logistic_loss_k_10-1.png └── logistic_loss_k_20-1.png ├── requirements.txt ├── results └── .gitkeep ├── results_tuning └── .gitkeep ├── simulate.py └── utils ├── README.md ├── autograd_hacks.py ├── autograd_hacks_test.py ├── model_utils.py └── plot_utils.py /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.json -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/.name: -------------------------------------------------------------------------------- 1 | README.md -------------------------------------------------------------------------------- /.idea/SCAFFOLD-master.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/.idea/SCAFFOLD-master.iml -------------------------------------------------------------------------------- /.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/.idea/inspectionProfiles/Project_Default.xml -------------------------------------------------------------------------------- /.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/.idea/inspectionProfiles/profiles_settings.xml -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/.idea/misc.xml -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/.idea/modules.xml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/README.md -------------------------------------------------------------------------------- /data/CIFAR_10/data_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/data/CIFAR_10/data_generator.py -------------------------------------------------------------------------------- /data/Femnist/data_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/data/Femnist/data_generator.py -------------------------------------------------------------------------------- /data/Logistic/data_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/data/Logistic/data_generator.py -------------------------------------------------------------------------------- /data/Mnist/data_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/data/Mnist/data_generator.py -------------------------------------------------------------------------------- /flearn/differential_privacy/differential_privacy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/differential_privacy/differential_privacy.py -------------------------------------------------------------------------------- /flearn/optimizers/fedoptimizer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/optimizers/fedoptimizer.py -------------------------------------------------------------------------------- /flearn/servers/optimum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/servers/optimum.py -------------------------------------------------------------------------------- /flearn/servers/server_avg.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/servers/server_avg.py -------------------------------------------------------------------------------- /flearn/servers/server_base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/servers/server_base.py -------------------------------------------------------------------------------- /flearn/servers/server_scaffold.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/servers/server_scaffold.py -------------------------------------------------------------------------------- /flearn/trainmodel/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/trainmodel/models.py -------------------------------------------------------------------------------- /flearn/users/user_avg.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/users/user_avg.py -------------------------------------------------------------------------------- /flearn/users/user_base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/users/user_base.py -------------------------------------------------------------------------------- /flearn/users/user_scaffold.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/flearn/users/user_scaffold.py -------------------------------------------------------------------------------- /get_epsilon_bound.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/get_epsilon_bound.py -------------------------------------------------------------------------------- /main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/main.py -------------------------------------------------------------------------------- /models/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pictures/_parameters.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/pictures/_parameters.txt -------------------------------------------------------------------------------- /pictures/femnist_accuracy_k_10-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/pictures/femnist_accuracy_k_10-1.png -------------------------------------------------------------------------------- /pictures/femnist_accuracy_k_20-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/pictures/femnist_accuracy_k_20-1.png -------------------------------------------------------------------------------- /pictures/logistic_loss_k_10-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/pictures/logistic_loss_k_10-1.png -------------------------------------------------------------------------------- /pictures/logistic_loss_k_20-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/pictures/logistic_loss_k_20-1.png -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/requirements.txt -------------------------------------------------------------------------------- /results/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /results_tuning/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /simulate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/simulate.py -------------------------------------------------------------------------------- /utils/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/utils/README.md -------------------------------------------------------------------------------- /utils/autograd_hacks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/utils/autograd_hacks.py -------------------------------------------------------------------------------- /utils/autograd_hacks_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/utils/autograd_hacks_test.py -------------------------------------------------------------------------------- /utils/model_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/utils/model_utils.py -------------------------------------------------------------------------------- /utils/plot_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/maxencenoble/Differential-Privacy-for-Heterogeneous-Federated-Learning/HEAD/utils/plot_utils.py --------------------------------------------------------------------------------