p2pfl.learning.aggregators.fedopt.base moduleΒΆ
Base class for FedOpt family of aggregators.
- class p2pfl.learning.aggregators.fedopt.base.FedOptBase(eta=0.1, beta_1=0.9, tau=1e-09, disable_partial_aggregation=False)[source]ΒΆ
Bases:
FedAvg
Base class for Federated Optimization (FedOpt) family [Reddi et al., 2020].
This class extends FedAvg to provide common functionality for adaptive federated optimization algorithms like FedAdagrad, FedAdam, and FedYogi.
Paper: https://arxiv.org/abs/2003.00295
- Parameters:
eta (
float
)beta_1 (
float
)tau (
float
)disable_partial_aggregation (
bool
)
-
SUPPORTS_PARTIAL_AGGREGATION:
bool
= FalseΒΆ
-
addr:
str
ΒΆ
- aggregate(models)[source]ΒΆ
Aggregate models using FedOpt algorithm.
- Parameters:
models (
list
[P2PFLModel
]) β List of P2PFLModel objects to aggregate.- Return type:
- Returns:
A P2PFLModel with the optimized parameters.
-
current_weights:
list
[ndarray
]ΒΆ
-
m_t:
list
[ndarray
]ΒΆ
-
partial_aggregation:
bool
ΒΆ