Revisiting aggregation
To solidly contextualize aggregation within FL, first, we describe the components of a system that are necessary for FL to be applied:
- A set of computational agents that perform the local training portion of FL.
- Each agent possesses a local dataset (static or dynamic), of which no portion can be communicated to another agent under the strictest FL scenario.
- Each agent possesses a parameterized model that can be trained on the local dataset, a process that produces the local optima parameter set for the model.
- A parameter server, or aggregator, which receives the locally trained models at each iteration from the agents and sends back the resulting model produced by the aggregation method chosen to be used.
Every FL communication round can then be broken down into the following two phases:
- The local training phase, where agents train their local models on their local datasets for some number of iterations
- The aggregation phase...