Per-FedAVG

Implementation of the [Per-FedAVG20] algorithm.

References

[Per-FedAVG20]

Alireza Fallah, Aryan Mokhtari, Asuman Ozdaglar. Personalized Federated Learning with Theoretical Guarantees: A Model-Agnostic Meta-Learning Approach. In NeurIPS (2020). URL: https://arxiv.org/abs/2002.07948

Classes included in fluke.algorithms.per_fedavg

Classes

class fluke.algorithms.per_fedavg.PerFedAVGOptimizer(params, lr)[source]

Bases: Optimizer

class fluke.algorithms.per_fedavg.PerFedAVGClient(index: int, train_set: FastDataLoader, test_set: FastDataLoader, optimizer_cfg: OptimizerConfigurator, loss_fn: Module, local_epochs: int, mode: str, beta: float, fine_tuning_epochs: int = 0, **kwargs: dict[str, Any])[source]

Bases: Client

class fluke.algorithms.per_fedavg.PerFedAVG(n_clients: int, data_splitter: DataSplitter, hyper_params: DDict | dict[str, Any], **kwargs: dict[str, Any])[source]

Bases: CentralizedFL