Bayesian Machine Learning and Information Processing (at TU Eindhoven)
Warning
This site is currently under construction. This is the class for 12 Nov 2025 - 29 Jan 2026 (2nd quarter).
This course provides an introduction to Bayesian machine learning and information processing systems. The Bayesian approach affords a unified and consistent treatment of many useful information processing systems.
This course covers the fundamentals of a Bayesian (i.e., probabilistic) approach to machine learning and information processing systems. The Bayesian approach allows for a unified and consistent treatment of many model-based machine learning techniques.
Initially, we focus on Linear Gaussian systems and will discuss many useful models and applications, including common regression and classification methods, Gaussian mixture models, hidden Markov models and Kalman filters. We will discuss important algorithms for parameter estimation in these models including the Variational Bayes method.
The Bayesian method also provides tools for comparing the performance of different information processing systems by means of estimating the Bayesian evidence for each model. We will discuss several methods for approximating Bayesian evidence.
Next, we will discuss intelligent agents that learn purposeful behavior from interactions with their environment. These agents are used for applications such as self-driving cars or interactive design of virtual and augmented realities.
Indeed, in this course we relate synthetic Bayesian intelligent agents to natural intelligent agents such as the brain. You will be challenged to code Bayesian machine learning algorithms yourself and apply them to practical information processing problems.
- See Piazza
- Prof.dr.ir. Bert de Vries (email: [email protected]) is the responsible instructor for this course and teaches the lectures with label B.
- Dr. Wouter Kouw ([email protected]) teaches the probabilistic programming lectures with label W.
- Fons van der Plas is our educational advisor who is responsible for all Pluto-related issues. If you have ideas on making the course more interactive, contact Fons.
- Wouter Nuijten and Thijs Jenneskens are the teaching assistants.
In principle, all the necessary materials can be downloaded from the links below. This course is based on Pluto.jl.
The lecture notes form the mandatory preparation material for the exam. They can be accessed through the Table below. Optionally, you may download PDF bundles of the lecture notes here. Please note, however, that the PDF files do not include interactive links and omit the answers to proofs and exercises. For this reason, we strongly recommend using the online materials via the links in the Table.
- Bert de Vries, PDF bundle of all lecture notes for lessons B0 through B12, version 30-Oct-2024.
- Wouter Kouw, PDF bundle of all probabilistic programming lecture notes for lessons W1 through W4 version 30-Oct-2024.
The following (freely downloadable) book is optional but very useful for additional reading:
Please follow the software installation instructions. If you encounter any problems, please contact us in class or on Piazza.
You can access all lecture materials online through the links below:
Date | lesson | materials | |||
---|---|---|---|---|---|
lecture notes | assignments | video recordings (2023/24) | |||
12-Nov-2025 (Wed) | ⚪️ B0: Course Syllabus ⚪️ B1: Machine Learning Overview |
B0, B1 | B0, B1 | ||
14-Nov-2025 (Fri) | ⚪️ B2: Probability Theory Review | B2 | B2.1, B2.2 | ||
19-Nov-2025 (Wed) | ⚪️ B3: Bayesian Machine Learning | B3 | B3.1, B3.2 | ||
21-Nov-2025 (Fri) | ⚪️ B4: Factor Graphs and the Sum-Product Algorithm | B4 | B4.1, B4.2 | ||
26-Nov-2025 (Wed) | 🟢 Introduction to Julia | W0 | |||
28-Nov-2025 (Fri) | 🔴 Pick-up Julia programming assignment A0 | A0 | |||
28-Nov-2025 (Fri) | ⚪️ B5: Continuous Data and the Gaussian Distribution | B5 | B5.1, B5.2 | ||
03-Dec-2025 (Wed) | ⚪️ B6: Discrete Data and the Multinomial Distribution | B6 | B6 | ||
05-Dec-2025 (Fri) | 🟢 Probabilistic Programming 1 - Bayesian inference with conjugate models | W1 | W1.1, W1.2 | ||
05-Dec-2025 | 🔴 Submission deadline assignment A0 | submit | |||
05-Dec-2025 | 🔴 Pick-up probabilistic programming assignment A1 | A1 | |||
10-Dec-2025 (Wed) | ⚪️ B7: Regression | B7 | B7.1, B7.2 | ||
12-Dec-2025 (Fri) | ⚪️ B8: Generative Classification ⚪️ B9: Discriminative Classification |
B8, B9 | B8, B9 | ||
17-Dec-2025 (Wed) | 🟢 Probabilistic Programming 2 - Bayesian regression & classification | W2 | W2.1, W2.2 | ||
19-Dec-2025 (Fri) | ⚪️ B10: Latent Variable Models and Variational Bayes | B10 | B10.1, B10.2 | ||
19-Dec-2025 | 🔴 Submission deadline assignment A1 | submit | |||
🔵 break | |||||
07-Jan-2026 (Wed) | 🟢 Probabilistic Programming 3 - Variational Bayesian inference | W3 | W3.1, W3.2 | ||
09-Jan-2026 (Fri) | ⚪️ B11: Dynamic Models | B11 | B11 | ||
09-Jan-2026 | 🔴 Pick-up probabilistic programming assignment A2 | A2 | |||
14-Jan-2026 (Wed) | ⚪️ B12: Intelligent Agents and Active Inference | B12, slides |
B12.1, B12.2 | ||
16-Jan-2026 (Fri) | 🟢 Probabilistic Programming 4 - Bayesian filters & smoothers | W4 | W4.1, W4.2 | ||
23-Jan-2026 (Fri) | 🔴 Submission deadline assignment A2 | submit | |||
29-Jan-2026 (Thu) | 🔵 written examination (13:30-16:30) | ||||
- | 🔴 Pick-up resit programming assignment | download | |||
- | 🔴 Submission deadline resit assignment | submit | |||
- | 🔵 resit written examination (18:00-21:00) |
- You can not bring a formula sheet, nor use a phone or calculator at the exam. This Formula Sheet will be provided in the preamble of the exam. You can use the formula sheet when making any exercises.
-
The written exam will be a multiple-choice exam, just like the examples below. This year, there will be no probabilistic programming question in the written exam.
-
In addition to the materials in the above table, we provide two representative practice written exams:
- 3-Feb-2022: exam ; answers ; calculations
- 2-Feb-2023: exam ; answers ; calculations
- Programming assignments can be downloaded and submitted through the links in the above table.
- The final grade is composed of the results of assignments A1 (10%), A2 (10%), and the final written exam (80%). The grade will be rounded to the nearest integer.
For instructors:
Important
The Pluto notebooks in this repository (.jl
files) are automatically rendered on our website. You can view them online at https://bmlip.github.io/course/, and copy URLs from this index to use in the course schedule.
Take a look at https://github.com/bmlip/course/tree/main/developer%20instructions for more information aimed at the course lecturers and website admins.