On this page
The question
Federated learning allows several participants to train a shared model without collecting all of their raw data in one place. That sounds private by design, but decentralising the data does not remove every privacy risk—and uneven data can make training much harder.
For a university Machine Learning and Deep Learning project, my team tested both sides of that promise. We compared three approaches under balanced, unbalanced, IID, and non-IID data distributions, then reproduced a gradient attack to show how training updates can still reveal information.
What we delivered
We produced the experiments, source code, a written report, and a live presentation. The work gave us a more useful conclusion than “federated learning is private”: its behaviour depends on the data distribution, aggregation method, threat model, and safeguards around the updates.
Technical notes
We compared FedAvg, FedGKT, and FedDyn. The evaluation varied both how examples were distributed among clients and whether each client saw statistically similar data. We then reconstructed inputs from shared gradients to examine a concrete failure mode rather than treating privacy as an automatic consequence of distributed training.
The repository contains the experimental implementation and the report contains the full method, results, and references.