FedAMP

Implementation of the FedAMP [FedAMP21] algorithm.

References

[FedAMP21]

Yutao Huang, Lingyang Chu, Zirui Zhou, Lanjun Wang, Jiangchuan Liu, Jian Pei, Yong Zhang. Personalized Cross-Silo Federated Learning on Non-IID Data. In AAAI (2021). URL: https://arxiv.org/abs/2007.03797

Classes included in fluke.algorithms.fedamp

Classes

class fluke.algorithms.fedamp.FedAMPClient(index: int, model: Module, train_set: FastDataLoader, test_set: FastDataLoader, optimizer_cfg: OptimizerConfigurator, loss_fn: Module, local_epochs: int, fine_tuning_epochs: int = 0, clipping: float = 0, lam: float = 0.2, **kwargs: dict[str, Any])[source]

Bases: PFLClient

class fluke.algorithms.fedamp.FedAMPServer(model: Module, test_set: FastDataLoader, clients: Iterable[PFLClient], sigma: float = 0.1, alpha: float = 0.1)[source]

Bases: Server

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

Bases: PersonalizedFL