Probabilistic Artificial Intelligence (2022)

How can we build systems that perform well in uncertain environments and unforeseen situations? How can we develop systems that exhibit “intelligent” behavior, without prescribing explicit rules? How can we build systems that learn from experience in order to improve their performance? We will study core modeling techniques and algorithms from statistics, optimization, planning, and control and study applications in areas such as sensor networks, robotics, and the Internet. The course is designed for upper-level undergraduate and graduate students. VVZ information is available here.
    • [Jan 30, 2022] We have sent emails to all students that are registered for the exam regarding their exam room assignment.
    • [Nov 18, 2022] In the Q&A sessions after Projects 2, 3, and 4, we will give a brief overview of the project and a sketch of a possible solution. These sessions will happen on Nov 21, Nov 28, and Dec 19, respectively.
    • [Oct 02, 2022] Change of lecture hall for tutorial: From now on, the tutorials on Thursdays 16:00 – 18:00 will take place in HG F7 instead of CHN C14.
Access to lecture materials
The lecture materials and the Q&A zoom meetings are password protected. To obtain the password you need to be inside the ETH network or use the ETH VPN and click here. Check here to learn how to establish a VPN connection.
The lecture script is available here. The script is new and, thus, may contain typos and small mistakes. If you find mistakes or have tips on how to improve the script, we encourage you to send an email to . We aim to continually improve the script based on your feedback. Since the script is updated whenever we notice and fix a mistake, we encourage you to re-download the script from time to time. Errors noticed since the beginning of the semester are listed in the errata at the end of the pdf.
Lectures will be held on Friday, 10:00 to 12:00 and 13:00 to 14:00, in ETA F5 with a simultaneous video screening in ETF E1. A link to a live-stream will also be made available and allow following the lectures from home on your personal device. If you follow the live-stream, you will be able to ask questions via the course channel on the EduApp. The lecture will be recorded and the recording will be made available after the lecture here. The first lecture will take place on Friday, 23rd September 2022, and the last lecture will take place on Friday, 16th December 2022. It is not mandatory to attend the lectures. Links below will become active when the resource becomes available.
Date Topic Slides Annotated Slides Recording
Fri 23.09. Introduction 01-introduction.pdf 01-introduction-annotated.pdf part1 part2
Fri 30.09. Bayesian Linear Regression 02-blr.pdf 02-blr-annotated.pdf part1 part2
Fri 07.10. Gaussian Processes 03-gps.pdf 03-gps-annotated.pdf part1 part2
Fri 14.10. Gaussian Processes II 04-gps2.pdf 04-gps2-annotated.pdf part1 part2
Fri 21.10. Variational Inference 05-variational.pdf 05-variational-annotated.pdf part1 part2
Fri 28.10. Markov Chain Monte Carlo 06-mcmc.pdf 06-mcmc-annotated.pdf part1 part2
Fri 04.11. Bayesian Deep Learning 07-bdl.pdf 07-bdl-annotated.pdf part1 part2
Fri 11.11. Active Learning 08-active-learning.pdf 08-active-learning-annotated.pdf part1 part2
Fri 18.11. Markov Decision Processes 09-mdps.pdf 09-mdps-annotated.pdf part1 part2
Fri 25.11. Reinforcement Learning 10-rl.pdf 10-rl-annotated.pdf part1 part2
Fri 02.12. Reinforcement Learning II 11-rl2.pdf 11-rl2-annotated.pdf part1 part2
Fri 09.12. Reinforcement Learning III 12-rl-actor-critic.pdf 12-rl-actor-critic-annotated.pdf part1 part2
Fri 16.12. Model-based Deep RL 13-rl-model-based.pdf 13-rl-model-based-annotated.pdf part1 part2

Tutorials will be held on Thursday, 16:00 to 18:00 in HG F7. The tutorials are not live-streamed but recorded and also available afterwards here. The first tutorial will take place on Thursday, 29th September 2022, and the last tutorial will take place on Thursday, 15th December 2022. It is not mandatory to attend the tutorials. The links below will become active when the resource becomes available.
Date Topic Slides Recording Homework/ Solution Moodle
Thu 29.09. Math/ Probability Tutorial 1 Recording 1 Homework 1/Solution 1 Quiz 1
Thu 06.10. Homework 1 Tutorial 2 Recording 2
Thu 13.10. Gaussian Process Tutorial 3 Recording 3 Homework 2/Solution 2 Quiz 2
Thu 20.10. Homework 2 Tutorial 4 Recording 4
Thu 27.10. Variational Inference Tutorial 5 Recording 5 Homework 3/Solution 3 Quiz 3
Thu 03.11. Homework 3 Tutorial 6 Recording 6
Thu 10.11. Bayesian Deep Learning Tutorial 7 Recording 7 Homework 4/Solution 4 Quiz 4
Thu 17.11. Homework 4 Tutorial 8 Recording 8
Thu 24.11. Markov Decision Processes Tutorial 9 Recording 9 Homework 5/Solution 5 Quiz 5
Thu 01.12. Homework 5 Tutorial 10 Recording 10
Thu 09.12. Model-free RL Tutorial 11 Recording 11 Homework 6/Solution 6 Quiz 6
Thu 15.12. Model-based RL None Recording 12

Q&A sessions
Q&A sessions (virtual office hours) will be held on Monday, 17:00 to 18:00 virtually on Zoom. Like the lectures and tutorials, the Q&As start 15 min past the full hour. To join the Zoom call, you have to be logged into your ETH zoom account (i.e., <nethz-login> and your email password). The session will be recorded and the recording will be made available afterwards. The Q&A sessions are an informal opportunity to ask questions about the course. You will be able to ask questions via the native Zoom chat or by speaking out. In the Q&A sessions after the deadlines of Projects 2, 3, and 4, we will give a brief overview of the project and a sketch of a possible solution for students that are interested. We will also be there to answer any questions related to the project. These three project Q&A’s will be hosted on Nov 21, Nov 28, and Dec 19, respectively. The first Q&A session will take place on Monday, 26th September 2022, and the last Q&A session will take place on Monday, 19th December 2022. It is not mandatory to attend the Q&A sessions.
Date Topic Recording
Mon 26.09. Session 1 Recording
Mon 03.10. Session 2 (No one attended)
Mon 10.10. Session 3 (No one attended)
Mon 17.10. Session 4 Recording
Mon 24.10. Session 5 Recording
Mon 31.10. Session 6 Recording
Mon 07.11. Session 7 Recording
Mon 14.11. Session 8 Recording
Mon 21.11. Session 9 Recording
Mon 28.11. Session 10 Recording
Mon 05.12. Session 11 Recording
Mon 12.12. Session 12 Recording
Mon 19.12. Session 13 Recording

Instructor Prof. Andreas Krause
Head TA Jonas Rothfuss
Assistants Jialin Li, Zhiyuan Hu, Streli Paul, Arad Mohammadi, Ya-Ping Hsieh, Pragniya Alatur, Viacheslav Borovitskiy, Hugo Yeche, Marco Maninetti, Zijun Hui, Hongruyu Chen, Jonas Hübotter, Huang Daoji, Gizem Yüce, Aayush Grover, Matteo Turchetta, Lenart Treven, Charlotte Bunne, Parnian Kassraie, Lars Lorch, Bhavya Sukhija, Vukasin Bozic, Yarden As, Qi Ma, Scott Sussex, Vignesh Ram Somnath
Mailing List Please use Moodle for any questions regarding the course or ask your question in the lectures, tutorials or Q&A sessions. If you need to contact the Head TA or the lecturer directly, please send an email to Please think twice before you send an email though and make sure you read all information here carefully.
Fri 10-12 ETA F5 [ETF E1] Stream
Fri 13-14 ETA F5 [ETF E1] Stream
Thu 16-18 HG F7 Recordings
Questions & Answers
Mon 17-18 Virtual Zoom

We do not maintain a mailing list, but instead kindly request you to use Moodle to ask questions with regard to the course. Please ask your questions in the Moodle forum whose topic best fits your question. If you need to contact the Head TA directly, please send an email to instead of contacting me at my personal email address. I will not respond to requests sent to my personal email address. Please think twice before you send an email though and make sure you read all information here carefully. Based on previous experience, we received a lot of questions or requests that are resolvable with the information provided here.
The course includes a total of five projects. Projects are code assignments that require solving machine learning problems with methods taught in the course. For each project, you are allowed to work in a group of one to three students. It is your own responsibility to form a group and you can find teammates in the lectures or on Moodle. The first project (Task 0) will be ungraded; its purpose is to help you familiarize yourself with the code submission workflow. The remaining projects are graded and are accounted for in determining your final grade for the course. More information including a tentative schedule is available in the project information sheet and on the project server . Both are accessible from within the ETH network or via VPN.
We will publish a total of six (optional) homework assignments during the lecture series. The homework assignments will be published on this website and some questions from the homework assignment will additionally be made available as a Moodle quiz . These assignments are intended for you to apply and reinforce the material presented in the lecture and to get accustomed to the Moodle platform. You are encouraged, but not required to do the homework. Doing the homework assignments is not mandatory. Your performance in the homework will have no influence on your final grade. Homework assignments are expected to be published bi-weekly, with solutions following one week after or being directly visible in Moodle. The exact day and time a homework is being published may deviate slightly over the course of the semester.
Demos will be shown during the lecture and are made available to you here. They are hosted in a GitLab repository to which you need to be given access. Everyone who enrolled (on mystudies) to the course before Wednesday, 28th September 2022, will be automatically granted access to this Gitlab repository by Friday, 30th September 2022. If you enrolled at a later date, please individually request access by sending an email to, only after 30.09.2022. Use the subject line “Access Request: PAI 2022 Demos” and include your nethz in this email. The demos are Jupyter Notebooks.
Examination Info: The exam is scheduled for Friday 03.02.2023, starting at 9:30 am. The exam will last for 120 minutes and will be computer-based (Moodle). The language of the examination is English. Students are allowed to bring a summary of no more than two A4 pages and a simple, non-programmable calculator to the exam. If you are registered for the exam, you should have received an email with your room assignment. The exam rooms are assigned by last name:
Exam Room Lastname
ONA E7 Ack – Kub
ONA E25 Kuh – Rup
HG G1 Rus – Zun
HG E26.1 (students with special arangement)

Special Arrangement: If you are disadvantaged and have therefore been granted a special arrangement with extra time by the study administration, please email and attach a pdf attached that proves the special arrangement and the eligibility for extra time during the exam. You must do so by the exam de-registration deadline.
Study resources for the exam: You can download the exams from the previous two years with provisional solutions: [Exam-2021-A] [Solution-2021-A] [Exam-2021-B] [Solution-2021-B] [Exam-2022-A] [Solution-2022-A] [Exam-2022-B] [Solution-2022-B] to better prepare yourself for the final exam. Please note that we do not guarantee 100% correctness of the provided solutions. You are encouraged to think for yourself and discuss exam-related content on the Moodle forum or share any questions. Any exams that are older are not fully representative of the course content, because the course changed substantially two years ago. In case, you still do want to take a look at them, please refer to the course webpage of PAI 2020, where you can access exam sheets from 2012 to 2019.
Performance Assessment
In order to pass this course and be allowed to sit the session examination, you need to pass the projects. This is, you need to achieve a project grade of 4 or higher. If you don’t pass the projects, you are required to de-register from the exam and will otherwise be treated as a no-show. The final grade is computed as a weighted average of the session exam grade (70%) and the project grade (30%). There are no special arrangements for PhD students who are taking this course. In order to obtain a “Testat”, you need a passing grade for the course. This is you need to pass the projects as described above, take the exam and achieve an overall passing grade (4 or higher) for the course. If you passed the projects last year, you still need to do the projects again this year. The project grade cannot be carried over from the previous year.
Text Books
      • S. Russell, P. Norvig. Artificial Intelligence: A Modern Approach (4th edition).
      • C. E. Rasmussen, C. K. I. Williams Gaussian Processes for Machine Learning.
      • Christopher M. Bishop. Pattern Recognition and Machine Learning. [optional]
      • Richard S. Sutton and Andrew G. Barto. Reinforcement Learning: An Introduction.