FedRep

Implementation of the [FedRep21] algorithm.

References

[FedRep21]

Liam Collins, Hamed Hassani, Aryan Mokhtari, and Sanjay Shakkottai. Exploiting shared representations for personalized federated learning. In ICML (2021). URL: https://arxiv.org/abs/2102.07078

Classes included in fluke.algorithms.fedrep

Classes

class fluke.algorithms.fedrep.FedRepClient(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, tau: int = 3, **kwargs: dict[str, Any])[source]

Bases: PFLClient

class fluke.algorithms.fedrep.FedRepServer(model: Module, test_set: FastDataLoader, clients: Iterable[PFLClient], weighted: bool = False)[source]

Bases: Server

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

Bases: PersonalizedFL