5.1.1.8.1.11. FedEval.strategy.SecureAggregation
5.1.1.8.1.11.1. Module Contents
5.1.1.8.1.11.1.1. Classes
Generic enumeration. |
|
the basic class of federated strategies. |
- class FedEval.strategy.SecureAggregation.SAStatus
Bases:
enum.EnumGeneric enumeration.
Derive from this class to define new enumerations.
- Init = 'Init'
- DHKeyAgree = 'KeyAgree'
- ApplyMask = 'ApplyMask'
- RemoveMask = 'RemoveMask'
- UpdateWeights = 'UpdateWeights'
- class FedEval.strategy.SecureAggregation.SecureAggregation(**kwargs)
Bases:
FedEval.strategy.FederatedStrategy.FedStrategythe basic class of federated strategies.
- host_select_train_clients(ready_clients)
select clients from the given ones for training purpose.
- Parameters:
ready_clients (List[ClientId]) – the id list of clients that are ready for training.
- Raises:
NotImplementedError – raised when called but not overriden.
- Returns:
the id list of the selected clients.
- Return type:
List[ClientId]
- retrieve_host_download_info()
- get the host download information,
e.g., model params/weights from its machine/deep learning model.
- Raises:
NotImplementedError – raised when called but not overriden.
- Returns:
the weights/params of its inner machine/deep learning model. TODO(fgh): the meaning of the str in the return type/
- Return type:
ModelWeights
- update_host_params(client_params, aggregate_weights)
update central server’s model params/weights with the aggregated params received from clients.
- Parameters:
client_params (Iterable[ModelWeights]) – the weights form different clients, ordered like [params1, params2, …]
aggregate_weights (Iterable[Union[float, int]]) – aggregate weights of different clients, usually set according to the clients’ training sample size. E.g., A, B, and C have 10, 20, and 30 images, then the aggregate_weights can be [1/6, 1/3, 1/2] or [10, 20, 30].
- Raises:
NotImplementedError – raised when called but not overriden.
- set_host_params_to_local(host_params, current_round: int)
update the current local ML/DL model’s params with params received from the central server.
- Parameters:
host_params (ModelWeights) – params received from the central server.
current_round (int) – the current round number
- Raises:
NotImplementedError – raised when called but not overriden.
- fit_on_local_data()
fit model with local data at client side.
Called by the selected clients.
- Raises:
NotImplementedError – raised when called but not overriden.
- Returns:
TODO(fgh)
- retrieve_local_upload_info()
return the information aggregated from local model for uploading to the central server.
Called by the selected clients.
- Raises:
NotImplementedError – raised when called but not overriden.
- Returns:
the local model weights/params.
- Return type:
ModelWeights