FedPer

Implementation of the [FedPer19] algorithm.

References

[FedPer19]

Manoj Ghuhan Arivazhagan, Vinay Aggarwal, Aaditya Kumar Singh, and Sunav Choudhary. Federated learning with personalization layers. In arXiv (2019). URL:https://arxiv.org/abs/1912.00818

Classes included in fluke.algorithms.fedper

Classes

class fluke.algorithms.fedper.FedPerClient(index: int, model: EncoderHeadNet, train_set: FastDataLoader, test_set: FastDataLoader, optimizer_cfg: OptimizerConfigurator, loss_fn: Module, local_epochs: int = 3, fine_tuning_epochs: int = 0, **kwargs: dict[str, Any])[source]

Bases: PFLClient

class fluke.algorithms.fedper.FedPerServer(model: Module, test_set: FastDataLoader, clients: Iterable[PFLClient], weighted: bool = False, **kwargs: dict[str, Any])[source]

Bases: Server

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

Bases: PersonalizedFL