pFedMe
¶
Implementation of the [pFedMe20] algorithm.
References
[pFedMe20]
Canh T. Dinh, Nguyen H. Tran, and Tuan Dung Nguyen. Personalized Federated Learning with Moreau Envelopes. In NeurIPS (2020). URL: https://arxiv.org/abs/2006.08848
Classes included in fluke.algorithms.pfedme
Classes¶
- class fluke.algorithms.pfedme.PFedMeOptimizer(params, lr=0.01, lamda=0.1, mu=0.001)[source]¶
Bases:
Optimizer
- class fluke.algorithms.pfedme.PFedMeClient(index: int, train_set: FastDataLoader, test_set: FastDataLoader, optimizer_cfg: OptimizerConfigurator, loss_fn: Module, local_epochs: int, k: int, fine_tuning_epochs: int = 0, clipping: float = 0, **kwargs)[source]¶
Bases:
Client
- class fluke.algorithms.pfedme.PFedMeServer(model: Module, test_set: FastDataLoader, clients: Collection[Client], weighted: bool = False, beta: float = 0.5, **kwargs)[source]¶
Bases:
Server
- class fluke.algorithms.pfedme.PFedMe(n_clients: int, data_splitter: DataSplitter, hyper_params: DDict | dict[str, Any], **kwargs)[source]¶
Bases:
CentralizedFL