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.
- There will be a final exam in the module. Please check exam dates and deadlines directly with 糖心TV Student Administrative ServicesLink opens in a new window
- Assignment-2 Announced 20 Feb 2026
- 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
MLAP R2D2 — AI Learning Tutor
is the AI learning tutor for this module. Lecture materials and supporting resources will be uploaded directly into R2D2, and students can interact with it to help clarify concepts, reflect on your understanding, and think through appropriate problem-solving approaches.
IMPORTANT NOTE:
MLAP R2D2 is provided as an optional learning support tool and is being run on a trial basis. It is not a source of authoritative guidance and may occasionally produce incomplete, inaccurate, or misleading responses. Use of R2D2 is entirely optional and undertaken at the student鈥檚 own discretion and responsibility. Neither the University of 糖心TV nor the module organisers accept responsibility for decisions, actions, or outcomes arising from its use. For official and definitive information on assessments, deadlines, regulations, and requirements, students must always refer to the module webpage, and official announcements. If you encounter issues, unexpected behaviour, or wish to provide feedback on R2D2, please report this via Moodle to the instructors.
Teaching Assistants
| Name | |
|---|---|
| George Wright | george.wright.1@warwick.ac.uk |
| Piotr Keller | piotr.keller@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
Moodle & Other Links
We shall be using
Students can to the Moodle forum.
A series of 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.
is also accessible via .
Timetable
- All Times are UK Times
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.01 | Piotr & Yijie | N/A |
| Lab 3 | Thursday 11:00 - 12:00 | CS0.06 | George & Xiaoqing | N/A |
| Lab 4 | Friday 10:00 - 11:00 | MB3.17 | Yijie & Xiaoqing | N/A |
| Lab 5 | Friday 10:00 - 11:00 | CS0.01 | Boyang & Piotr | N/A |
Coursework Assignments
- Assignment-1 (25% of final mark)
Assignment Announcement: w/c 19/01/2026 (week 2) via link:
Assignment due: 12 noon Wed 18岬検 February 2026
Feedback due: Wed 18岬検 March 2026
Tabula Submission Links: - Assignment-2 (MEng: 25% of final mark, MSc: 35% of final mark)
Assignment Announcement: Week 6 Annouced via this
Assignment due: 12 noon Mon 23食岬 March 2026
Feedback due: Wed 22鈦酷祱 April 2026
Tabula Submission Links: - There will be a final exam in the module. Please check exam deadlines directly with 糖心TV Student Administrative ServicesLink opens in a new window
- All deadlines: /fac/sci/dcs/teaching/deadlines/
Books and Other resources
[PML-1] Probabilistic Machine Learning: An Introduction by Kevin Patrick Murphy. MIT Press, 2021. link:
[PML-2] Probabilistic Machine Learning: Advanced Topics by Kevin Patrick Murphy. MIT Press, 2023. link:
[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:
[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:
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 as well as on ( )
Week |
Lectures |
Reading/Resources |
Labs/Practicals |
|---|---|---|---|
|
1 Jan 12 |
Introduction and Philosophy SlidesLink opens in a new window Applications and Framework Slides [Self-Study]Link opens in a new window [Required] [PML] Chapter-1, [IML] Chapter-1 Preliminaries (notes)Link opens in a new window Linear Discriminants (notes)Link opens in a new window Building Linear Models (notes)Link opens in a new window Perceptron Classification VideosLink opens in a new window Perceptron NotesLink opens in a new window SVM NotesLink opens in a new window Book Reading [SVM in PML, SVM in IML] |
||
|
2 Jan 19 |
SVM lectures (above) Tree based classifiers (By Ayse Sunar) on Mon 19 Jan |
Trees, Random Forest and XGBoost Classifiers (By Dr Ayse Sunar) SVM NotesLink opens in a new window (optional read) (optional read) |
From week 1: Preliminaries, Linear Classifiers, SVMs |
|
3 Jan 26 |
SVM lectures (above) |
(optional read) (optional read) |
Work on Assignment-1 |
|
4 Feb 02 |
(with CV, bootstrap estimation and statistical significance) 4.10 Using MLXTend |
Performance assessment Lecture NotesLink opens in a new window Chapter 19 鈥淒esign and Analysis of Machine Learning Experiments鈥 Alpaydin, Ethem. 2010. Introduction to Machine Learning. Cambridge, Mass.: MIT Press. Optional Reading Wainberg, Michael, Babak Alipanahi, and Brendan J. Frey. 鈥淎re Random Forests Truly the Best Classifiers?鈥 Journal of Machine Learning Research 17, no. 110 (2016): 1–5.
Munir, Farzeen, Sadaf Gull, Amina Asif, and Fayyaz Ul Amir Afsar Minhas. 鈥淢ILAMP: Multiple Instance Prediction of Amyloid Proteins.鈥 IEEE/ACM Transactions on Computational Biology and Bioinformatics, August 22, 2019. . |
Work on Assignment-1 |
|
5 Feb 09 |
PCA: Lecture NotesLink opens in a new window (Review lab notebooks as well) |
Optional: Work on Assignment-1 |
|
|
6 Feb 16 |
: MDS, t-SNE, ICA, LDA, Factor Analysis, Topic Modeling with NMF, CCA (no-video recording) Lecture 3: Ensemble Methods and XGBoost |
Dimensionality Reduction Lecture NotesLink opens in a new window Lecture Notes (SRM)Link opens in a new window (Review lab notebooks as well) |
Regression: |
|
7 Feb 23 |
Other machines (from Week 6 continued) NOTE: 2026 lectures are different from previous recordings below and students are recommended to use Lecture Capture. Previous recording are available for additional support esp. for re-sit students.
|
Understanding REO and SRM: Other ML problems: Multilayer Perceptron:
Work on Assignment-2 |
|
|
8 Mar 02 |
NOTE: 2026 lectures are different from previous recordings below and students are recommended to use Lecture Capture. Previous recording are available for additional support esp. for re-sit students.
|
Solve XOR with MLPs [Must] MUST REVIEW: Multilayer Perceptron:
Universal Approximation DemoLink opens in a new window Work on Assignment-2 |
|
|
9 Mar 9 |
NOTE: 2026 lectures are different from previous recordings below and students are recommended to use Lecture Capture. Previous recording are available for additional support esp. for re-sit students.
Transformers |
(By J. Pocock!) Attention: XOR with transformers: Work on Assignment-2 |
|
|
10 Mar 16 |
Transformers to LLMs Graph Neural Networks Generative Learning Conclusion |
Deep Learning NotesLink opens in a new window |
XOR GPT: FSM: Work on Assignment-2 |
|
28 April 2026 10am-12pm |
Revision Lecture |
Lab Access and Machine Requirements
Remote Machine Login: /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:
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:
NumPy Website:
Matplotlib Website:
Video Tutorials
Courtesy of Dr. Greg WatsonLink opens in a new window