Version 0.1.4ΒΆ

Release Date: December 08, 2024

🌟 Overview¢

Improves FedAvg implementation with proper weighting based on client dataset sizes, enhances model versioning, and fixes type-related issues.

πŸ“ Detailed NotesΒΆ

Improved FedAvg implementation to properly weight client contributions based on their dataset sizes and save the client weights. Additionally, several type-related issues have been fixed.

🎁 Features¢

  • Implemented proper dataset size-based weighting in FedAvg aggregator

  • Added client waits to training metrics

  • Enhanced model versioning with support for weighted metrics

πŸ› Bug FixesΒΆ

  • Fixed averaging in FedAvg to properly weight based on client dataset sizes

  • Fixed MNIST data loader type hints

  • Fixed model versioning integration with the server and coordinator

πŸ“š DocumentationΒΆ

  • Updated the release process.

  • Updated the ModelManager section in Concepts Guide.

♻️ Code RefactoringΒΆ

  • Updated ModelManager integration with server and coordinator components.

  • Improved aggregator interface with proper weight computation abstraction.

  • Simplified checkpointing by removing redundant storage.

πŸ§ͺ TestsΒΆ

  • Added tests for weighted FedAvg.

  • Updated test cases to verify proper client weight calculations.

  • Added test coverage for missing sample counts in metrics.

πŸ“¦ Build SystemΒΆ

  • Added an automated release script.

πŸ”§ MaintenanceΒΆ

  • Fixed type checking issues.

πŸ“œ ChangelogΒΆ

  • template date parsing 58d0742

  • mypy issue 284148c

  • mypy issue 55a7c08

  • add release command to Makefile and fix mypy error b78a29d

  • fix mypy issue in CI 7359568

  • update fedavg to properly weight clients ac2d50c

  • make model management less redundant 1920ffd

  • update model management concept 35378d6

  • add automated release back into changelog and prepare_relase f46fd19

  • add automated release f707247

  • prepare release v0.1.4 90a2f9d

  • Merge pull request #5 from camille-004/cd/fedavg-weights (6533fd1) ()

  • Merge pull request #4 from camille-004/model-management (a30e8e3) ()

  • Merge pull request #3 from camille-004/automate-release (1331db9) ()