CS-E4740: Federated Learning

Aalto University · Alexander Jung

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. All lectures are recorded and public on YouTube (course playlist); slides are in the course repository. The list below is the plan for spring 2027 and may still change.

  1. From one device to many: what averaging buys
  2. The empirical graph: who talks to whom
  3. Coupling personal models via GTVMin
  4. Statistical properties of GTVMin
  5. FL as fixed-point iterations
  6. Gradient descent: the bridge to any model
  7. Asynchronous fixed-point iterations
  8. Computational and statistical trade-offs
  9. Federated clustering: who shares a climate
  10. Legal frameworks: when a parameter is personal data
  11. Robustness: how many liars can a protocol survive
  12. Privacy: what an average gives away

Live sessions (tentative)

Alongside the recordings, the spring 2027 edition runs live clinics on YouTube: 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 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 module 1.

Requirements and grading (tentative)

5 ECTS, with a 10 ECTS extended version. The course is assessed on

  • Assignments. Python notebooks on simulated weather-station data; see below.
  • A project. A report and a recorded talk, with anonymous peer review.

The weighting is not fixed yet; it will be announced here and 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.

RoundLecturesOpensDue
A1L1–L3: ERM and the sample mean, the empirical graph, GTVMinMonday 1 March 2027Sunday 21 March 2027
A2L4–L6: bias/variance and α, fixed points, the gradient-descent bridgeWednesday 10 March 2027Sunday 4 April 2027
A3L7–L9: protocols, rounds and the model ladder, federated clusteringMonday 22 March 2027Sunday 18 April 2027
A4L10–L12: legal, robustness, privacy and the localization attackWednesday 7 April 2027Sunday 25 April 2027

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.