Skip to content

Decentralized Aggregation Strategies (No Central Server) #22

@seetadev

Description

@seetadev

Description
This issue focuses on implementing fully decentralized aggregation mechanisms for federated learning in py-libp2p. Instead of a fixed coordinator or server, aggregation of model updates should be distributed among peers using simple consensus strategies.

Motivation
Most federated learning still assumes a central server or trusted aggregator. To move toward true decentralization, we need protocols where peers can collectively decide how to merge updates. For example:

  • Round-robin aggregation: each round, a different peer takes responsibility for averaging received updates.
  • Gossip averaging: peers periodically exchange partial averages until convergence.
  • Weighted updates: peers include metadata (e.g., dataset size) so aggregation weights reflect data contributions.

This ensures no single point of failure or control in the training process.

Tasks
🔁 Implement round-robin aggregator rotation across peers
📊 Add weighted averaging based on peer metadata
🌐 Explore gossip-style aggregation (pairwise averaging)
🧪 Build test harness for multiple peers simulating update rounds
📜 Document trade-offs of each aggregation method in README

Success Criteria

  • At least two decentralized aggregation strategies are implemented.
  • Multiple peers can train, share updates, and aggregate without any central coordinator.
  • Logs/README show example runs and aggregation traces.

Metadata

Metadata

Assignees

Labels

onlydust-waveContribute to awesome OSS repos during OnlyDust's open source week

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions