Skip to content

krishnamvs/FederatedLearning-ECE6254

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

FederatedLearning-ECE6254

Flexible Federated Average Learning Simulator with the following abilities:

  • 2 Common Datasets to run against.
  • Easily change number of Edge Devices in the System.
  • Ability to receive and update only a select number of Edge Devices.
  • Easily change the number of Iterations you want to run the System.
  • Ability to choose if we want to update the Edge Devices.
  • Ability to simulate Malicious/Faulty Edge Devices.
  • Malicious/Faulty Edge Device Detection using MCD.
  • Ability to correct or fix the Malicious/Faulty Edge Devices.

Usage:

python3 Final.py --dataset DATASET

DATASET can be 'digits' for MNIST and 'fashion' for Fashion-MNIST.

Optional Flags:

--numberOfEdgeDevices NUMBEROFEDGEDEVICES - Default is 200 Devices.

--percentageOfDevicesToCollectFrom PERCENTAGEOFDEVICESTOCOLLECTFROM - Default is 10%.

--maxIterations MAXITERATIONS - Default is 50.

--updateEdgeWeights | --no-updateEdgeWeights - Default is to always update Weights.

--numberOfFaultyEdgeDevices NUMBEROFFAULTYEDGEDEVICES - Default is 0 Faulty Edge Devices.

--detectOutlier | --no-detectOutlier - Default is to Not Detect Outliers.

--correctFault | --no-correctFault - Default is to Not Correct Outliers. Need "--detectOutlier" for option to have an effect.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages