CS909 Machine Learning Algorithms and Practice
Welcome to CS909/CS429 MLAP in Term-2 2026! This webpage is the primary source of information for all updates, announcements and content for this module.
Announcements
We will be adding major announcements for the module below.
- Students who might need to change group (due to mitigating circumstances or a timetable clash) should email queries to the relevant resource email account (DCS.UG.Support@warwick.ac.uk / DCS.PGT.Support@warwick.ac.uk) and NOT to module organisers/TAs.
Module Teaching Team
Instructor: Fayyaz MinhasLink opens in a new window
Teaching Assistants
| Name | |
|---|---|
| George Wright | george.wright.1@warwick.ac.uk |
| Piotr Keller | piotr.keller@warwick.ac.uk |
| Kaiwen Zuo | kaiwen.zuo@warwick.ac.uk |
| Boyang Fu | Boyang.Fu@warwick.ac.uk |
| Xiaoqing Fan | Xiaoqing.Fan@warwick.ac.uk |
| Yijie Zhu | Yijie.Zhu@warwick.ac.uk |
Communication between students and teaching team
Please use moodle for non-urgent communication. It is very difficult to monitor and respond to emails from individual students due to the large size of the class.
For questions about Logistics or other issues, the first point of contact is George Wright.
Instructor Office HoursLink opens in a new window
(Instructor time table)Link opens in a new window
Moodle & Other Links
We shall be using this Moodle page for discussion and Q/A in the module.Link opens in a new window
Students can Post QuestionsLink opens in a new window to the Moodle forum.
A series of Self Assessment QuestionsLink opens in a new window that you can answer for self-assessment/feedback are also available. As the goal of these questions is to encourage students to explore and self study, answers to all of these questions will not be provided but students are welcome to discuss them with the instructors in lab sessions or as questions in lectures or via Moodle.
Timetable
- All Times are UK Times
DRAFT 2026
|
CS429
|
CS429/CS909L
|
LEC
|
Monday
|
11:00
|
12:00
|
R0.21
|
1
|
275
|
15-24
|
|
|
CS429
|
CS429/CS909L
|
LEC
|
Wednesday
|
12:00
|
13:00
|
L3
|
1
|
275
|
15-24
|
|
|
CS429
|
CS429/CS909L
|
LEC
|
Friday
|
13:00
|
14:00
|
OC1.05
|
1
|
275
|
15-24
|
|
|
CS429
|
CS429/CS909L revision {32}
|
LEC
|
Tuesday
|
10:00
|
12:00
|
R0.21
|
2
|
275
|
32
|
|
|
CS429
|
CS429/CS909P
|
PRA ALLOCATE IN TABULA
|
Data Mining
|
Thursday
|
10:00
|
11:00
|
CS_CS0.06
|
1
|
50
|
15-24
|
|
CS429
|
CS429/CS909P
|
PRA ALLOCATE IN TABULA
|
Data Mining
|
Thursday
|
10:00
|
11:00
|
CS_CS0.01
|
1
|
50
|
15-24
|
|
CS429
|
CS429/CS909P
|
PRA ALLOCATE IN TABULA
|
Data Mining
|
Thursday
|
11:00
|
12:00
|
CS_CS0.01
|
1
|
50
|
15-24
|
|
CS429
|
CS429/CS909P
|
PRA ALLOCATE IN TABULA
|
Data Mining
|
Thursday
|
11:00
|
12:00
|
CS_CS0.06
|
1
|
50
|
15-24
|
|
CS429
|
CS429/CS909P
|
PRA ALLOCATE IN TABULA
|
Data Mining
|
Friday
|
10:00
|
11:00
|
CS_CS0.01
|
1
|
50
|
15-24
|
|
CS429
|
CS429/CS909P
|
PRA ALLOCATE IN TABULA
|
Data Mining
|
Friday
|
10:00
|
11:00
|
CS_MB3.17
|
1
|
50
|
15-24
|
Lectures
|
Time |
Location |
|---|---|
| Monday 11:00 - 12:00 (Weeks 1–10) starting 12 Jan 2026 | R0.21 |
| Wednesday 12:00 - 13:00 (Weeks 1–10) | L3 |
| Friday 13:00 - 14:00 (Weeks 1–10) | OC1.05 |
| Revision Lecture 28 April 2026 10am | R0.21 |
Lab Sessions - Weeks 1–10
Each student has been allocated a lab session. Please check your scheduled lab session on Tabula and attend that. Please make sure that you attend the whole of an assigned lab session so that you do not miss attendance.
TA allocation to labs may change from week to week due to scheduling constraints. However, there should be at least one TA common between sessions.
Students who might need to change group (due to mitigating circumstances or a timetable clash) should email queries to the relevant resource email account (DCS.UG.Support@warwick.ac.uk / DCS.PGT.Support@warwick.ac.uk). The teaching staff wil only be able to sign-post to support teams.
|
Lab |
Time |
Location |
TA Allocation |
Teams Link |
|---|---|---|---|---|
| Lab 1 | Thursday 10:00 - 11:00 | George & Boyang | N/A | |
| Lab 2 | Thursday 10:00 - 11:00 | CS0.06 | Piotr & Yijie | N/A |
| Lab 3 | Thursday 11:00 - 12:00 | CS0.06 | George & Xiaoqing | N/A |
| Lab 4 | Friday 10:00 - 11:00 | CS0.01 | Yijie & Xiaoqing | N/A |
| Lab 5 | Friday 10:00-11:00 | MB3.17 | Boyang & Piotr | N/A |
Coursework Assignments
- 2026: Due dates: Assignment 1: Term 2, week 6 Week 20 2026-02-18 Wed; Assignment 2: Week 25 2026-03-23 Mon
- Assignment-1 (25% of final mark)
Assignment Announcement: w/c 19/01/2026 (week 2)
Assignment due: 12 noon Wed 18ᵗʰ February 2026
Feedback due: Wed 18ᵗʰ March 2026
Tabula Submission Links: https://tabula.warwick.ac.uk/coursework/submission/efa76db6-755f-4f9f-9b14-462948f4028eLink opens in a new window - Assignment-2 (MEng: 25% of final mark, MSc: 35% of final mark)
Assignment Announcement: w/c 16/02/2026 (week 6)
Assignment due: 12 noon Mon 23ʳᵈ March 2026
Feedback due: Wed 22ⁿᵈ April 2026
Tabula Submission Links: TBA - There will be a final exam in the module. Please check exam deadlines directly with Warwick Student Administrative ServicesLink opens in a new window
- All deadlines: https://warwick.ac.uk/fac/sci/dcs/teaching/deadlines/
Books and Other resources
[PML-1] Probabilistic Machine Learning: An Introduction by Kevin Patrick Murphy. MIT Press, 2021. link: https://probml.github.io/pml-book/book1.html
[PML-2] Probabilistic Machine Learning: Advanced Topics by Kevin Patrick Murphy. MIT Press, 2023. link: https://probml.github.io/pml-book/book2.html
[IML] Introduction to Machine Learning 3e by Ethem Alpaydin (selected chapters: ch. 1,2,6,7,9,10,11,12,13)
[DBB] Deep Learning by Ian Goodfellow, Yoshua Bengio, Aaron Courville, (Ch 1-5 if needed as basics), Ch. 6,7,8,9 link: https://www.deeplearningbook.org/Link opens in a new window
[FNN] Fundamentals of Neural Networks : Architectures, Algorithms And Applications by Laurene Fausett, (ch. 2,6)
[SODL] The Science of Deep Learning by Iddo Drori link: https://www.thescienceofdeeplearning.org/
Reading listLink opens in a new window
Casual Reading:
- The master algorithm
- The Alignment Problem
- The book of why
Course Materials
Slides and reading materials will be posted each week. The lab session will be available prior to the start of the lab session. Please see the Lab Access section below for guidance on running the lab materials and Python guides.
NOTE:
- It is strongly recommended that you attend all lectures in person as this year's lectures would be significantly different in content and delivery from previous ones and we cannot guarantee the sufficiency of archived content for effective learning in terms of success in coursework or examination. However, if you are unable to attend lectures due to a genuine issue, you can use the links to archived lecture recordings from previous years which are available at this Course Stream ChannelLink opens in a new window as well as on YoutubeLink opens in a new window (https://bit.ly/2RannLB )
Lab Access and Machine Requirements
Remote Machine Login: https://warwick.ac.uk/fac/sci/dcs/intranet/user_guide/remote-login/
Use "module load cs909-python". The following guide will show you how to run jupyter-notebook as well as loading using notebooks with the module loaded in Visual Studio Code:
Notebook and VSCode Setup GuideLink opens in a new window
If using your own machine, you will be needing the listed libraries.
- Anaconda Python (3.6+)
- Jupyter Notebook or Jupyter Lab
- Matplotlib
- Numpy
- Scipy
- Pandas
- Scikit-learn
- Keras, PyTorch and TensorFlow (with GPU configuration if GPUs available)
Learning Python
The following resources may be useful when familiarising yourself with Python.
Python Documentation: https://docs.python.org/3/tutorial/index.html
NumPy Website: https://numpy.org
Matplotlib Website: https://matplotlib.org
Video Tutorials
Courtesy of Dr. Greg WatsonLink opens in a new window