CS-E4740: Federated Learning
Spring 2027. Lectures run 1 March – 14 April 2027. Aalto students enrol through Sisu. Everyone else can follow along for free — assignments, deadlines and announcements, no enrolment needed.
Catalog description
Federated learning trains machine learning models across many devices that never share their raw data. The course builds it from a single design principle: a federated system is a graph whose nodes hold local datasets, and the algorithms — FedGD, FedAvg, FedProx, clustered federated learning — follow from applying different optimization methods to generalized total variation minimization over that graph.
The course then takes the parts that actually stop practitioners: how many training rounds buy how much accuracy, how to find which devices should learn together when you cannot see their data, how many malicious participants a protocol survives, what differential privacy costs in utility, and when an exchanged model parameter is still personal data under the GDPR and the EU AI Act.
Objectives
On completion, students can
- model federated learning applications using graphs;
- use total variation minimization as a design principle for federated learning;
- design federated learning algorithms by applying optimization methods to total variation minimization;
- analyze the computational and statistical properties of federated learning algorithms.
Lectures (tentative)
Twelve recordings of about 25 minutes — one idea each, free on the release date. None of them is out yet; in the meantime there are the recordings of the 2025 edition, which was organized differently. Slides are in the course repository. The list below is the plan for spring 2027 and may still change.
- From one device to many: what averaging buys
- The empirical graph: who talks to whom
- Coupling personal models via GTVMin
- Statistical properties of GTVMin
- FL as fixed-point iterations
- Gradient descent: the bridge to any model
- Asynchronous fixed-point iterations
- Computational and statistical trade-offs
- Federated clustering: who shares a climate
- Legal frameworks: when a parameter is personal data
- Robustness: how many liars can a protocol survive
- Privacy: what an average gives away
Live sessions (tentative)
Alongside the recordings, the course runs live clinics on YouTube, starting with an Ask Me Anything in November 2026. The recordings stay canonical; the live sessions handle what a recording cannot — questions mid-derivation, live debugging, and Q&A. They are open to everyone and are themselves recorded. Dates may still change until each event is scheduled on YouTube.
- Ask Me Anything about Federated Learning — Wednesday 18 November 2026, 16:15 Helsinki time
- Course Kickoff: What Federated Learning Averages — Monday 1 March 2027, 16:15 Helsinki time
- GTVMin from Scratch: The FL Design Principle — Wednesday 10 March 2027, 16:15 Helsinki time
- Fixed Points and Why FedGD Converges — Monday 22 March 2027, 16:15 Helsinki time
- FL Student Project: Weather Forecasting Kickoff — Monday 5 April 2027, 16:15 Helsinki time
- Federated Clustering, Live in a Notebook — Wednesday 7 April 2027, 16:15 Helsinki time
- GDPR and the AI Act for Federated Learning — Monday 12 April 2027, 16:15 Helsinki time
- Poisoning a Federated Model, Live — Wednesday 14 April 2027, 16:15 Helsinki time
- The Localization Attack, and What Epsilon Costs the App — Monday 26 April 2027, 16:15 Helsinki time
Textbook
A. Jung, Federated Learning: From Theory to Practice. Singapore: Springer Nature Singapore, 2026 (doi:10.1007/978-981-95-1009-2), with the preprint free on arXiv:2505.19183. The course also draws on Machine Learning: The Basics (Springer, 2022) for the recap in the first lecture.
Requirements and grading (tentative)
5 ECTS, with a 10 ECTS extended version. The course is assessed on
- Assignments, 40 points. Four Python notebooks on simulated weather-station data, 10 points each; see below.
- A project, 60 points. A report and a recorded talk, with anonymous peer review; see below.
Grade 1 starts at 50 of those 100 points, and the next bands at 60, 70, 80 and 90. The split is the plan for spring 2027 and is confirmed in MyCourses before the course starts. The free follow-along track carries no credits, graded project or peer review — those require Aalto enrolment.
Assignments (tentative)
Tentative. Four assignments, each covering three lectures and opening with the first of them. Python with numpy and scikit-learn, on a simulated user population derived from Finnish Meteorological Institute weather-station data. Dates and content may still change before the course starts.
| Round | Lectures | Opens | Due |
|---|---|---|---|
| A1 | L1–L3: ERM and the sample mean, the empirical graph, GTVMin | Monday 1 March 2027 | Sunday 21 March 2027 |
| A2 | L4–L6: bias/variance and α, fixed points, the gradient-descent bridge | Wednesday 10 March 2027 | Sunday 4 April 2027 |
| A3 | L7–L9: protocols, rounds and the model ladder, federated clustering | Monday 22 March 2027 | Sunday 18 April 2027 |
| A4 | L10–L12: legal, robustness, privacy and the localization attack | Wednesday 7 April 2027 | Sunday 25 April 2027 |
Project (tentative)
Tentative. A report and a recorded talk on a federated learning problem of the student's choosing, with two rounds of anonymous peer review. The milestones below are for students enrolled at Aalto; all dates are in 2027 and may still change.
| Milestone | Date |
|---|---|
| Kickoff (live, public) | Monday 5 April |
| Topic registration | opens Monday 5 April, closes Sunday 18 April |
| Project Garage 1 and 2 | Monday 12 April, Wednesday 14 April |
| First submission | Sunday 2 May |
| Peer review 1 | Monday 3 May – Sunday 9 May |
| Second submission incl. recorded talk | Sunday 23 May |
| Peer review 2 | Monday 24 May – Wednesday 2 June |
| Review meetings | Monday 31 May, Wednesday 2 June |
Prerequisites
Empirical risk minimization and the basics of supervised learning; gradient descent; linear algebra; Python with numpy and scikit-learn. Graph theory is developed from scratch, and no prior knowledge of distributed systems is assumed.
Intended audience
Master's and doctoral students in computer science, data science and electrical engineering, and practitioners who need to train models on data that cannot be centralized — health, industrial, mobile and public-sector data.