-
ANDREY Paul authored
* Rewrite the `declearn.main.utils.Checkpointer` util. - Implement Model, Optimizer and Metric-output results saving and loading methods. - Add a `max_history` parameter to garbage-collect past files. - Revise the labeling of output files to ease collection and re-use. * Revise the use of `Checkpointer` in `FederatedClient` and `FederatedServer`. - Have both entities checkpoint at the end of evaluation rounds. - For now, clients save the global model (not local one), local optimizer and metrics. - For now, server saves the global model (not local ones), server optimizer and all metrics: aggregated ones and client-wise ones (in separate files). - Move lowest-loss-yielding weights tracking and restoring to the private backend of `FederatedServer`, and ensure they are still saved and sent to clients at the end of the federated learning process. * Add unit tests for the `Checkpointer` class.
ANDREY Paul authored* Rewrite the `declearn.main.utils.Checkpointer` util. - Implement Model, Optimizer and Metric-output results saving and loading methods. - Add a `max_history` parameter to garbage-collect past files. - Revise the labeling of output files to ease collection and re-use. * Revise the use of `Checkpointer` in `FederatedClient` and `FederatedServer`. - Have both entities checkpoint at the end of evaluation rounds. - For now, clients save the global model (not local one), local optimizer and metrics. - For now, server saves the global model (not local ones), server optimizer and all metrics: aggregated ones and client-wise ones (in separate files). - Move lowest-loss-yielding weights tracking and restoring to the private backend of `FederatedServer`, and ensure they are still saved and sent to clients at the end of the federated learning process. * Add unit tests for the `Checkpointer` class.