Machine Learning · 2026/27

Timetable

Lectures, practical labs, optional workshops, and assessment milestones from the course CSV.

Download CSV
Learning journey

From tools to learned representations

The path shows how each part of the course expands what you can do—not simply how many weeks have passed.

Current position Reading the learning map… 30 Sept — 12 Dec
01 · Foundation · Week 01

Work with data

Use Python, Colab, data handling, plots, and AI-assisted debugging with confidence.

To learn
02 · Weeks 02–03

Predict and generalise

Fit and evaluate regression models, engineer features, and control overfitting.

To learn
03 · Weeks 04–06

Make decisions

Build, compare, and interpret probabilistic, discriminant, and tree classifiers.

To learn
04 · Weeks 08–09

Discover structure

Reduce dimensions and reveal meaningful groups in unlabelled data.

To learn
05 · Weeks 10–11

Learn representations

Train neural networks and understand how convolutional models learn from images.

To learn
Full schedule

Teaching and assessment

Lecture Lab Workshop Assessment
Week Week 1
Lecture
Introduction of machine learning and tools Basic
Learning outcomes

Core · all students

  • Set up Google Colab and run basic Python code
  • Save and load data
  • Create simple plots using matplotlib
  • Simple data exploration and cleaning
  • Use AI tools (ChatGPT/Copilot) to debug code

Advanced · MPS439

  • Explore advanced IDE (VS Code/Cursor)
Assessment
Week Week 1
Lab
Tool usage: iPython notebook, Google Colab Programming: Python basics and visualization
Assessment
Week Week 2
Lecture
linear regression (with a machine learning framework, input, output, loss, training) regression
Learning outcomes

Core · all students

  • Apply sklearn's LinearRegression to predict continuous outcomes
  • Explain why minimizing squared error makes sense
  • Understand metrics like R2, MSE, MAE, etc
  • Describe what the normal equation solution tells us
  • Compare training vs testing performance

Advanced · MPS439

  • Reproduce full least squares derivation
  • Implement gradient descent from scratch
Assessment Assessment 1 Release
Week Week 2
Lab
linear regression
Assessment
Week Week 3
Lecture
linear regression Plus
Learning outcomes

Core · all students

  • Apply simple feature engineering
  • Use Ridge and Lasso regression in sklearn
  • Explain why Ridge regression shrinks coefficients toward zero
  • Describe when regularization prevents overfitting
  • Choose regularization strength using cross-validation

Advanced · MPS439

  • Derive Ridge/Lasso cost functions using Lagrange multipliers
  • Implement regularized regression from scratch
Assessment
Week Week 3
Lab
linear regression Plus
Assessment
Week Week 4
Lecture
linear classification (with metrics for classifications) classification
Learning outcomes

Core · all students

  • Apply LogisticRegression for binary classification
  • Explain why we use sigmoid function for probabilities
  • Describe when linear classification fails
  • Interpret confusion matrices and classification metrics, ROC curve, AUC

Advanced · MPS439

  • Derive cross-entropy loss function
  • Implement logistic regression using gradient descent
Assessment Exercise 1 (optional) Release
Week Week 4
Lab
linear classification
Assessment
Week Week 5
Lecture
Discriminative analysis
Learning outcomes

Core · all students

  • Use sklearn's LinearDiscriminantAnalysis and QuadraticDiscriminantAnalysis
  • Explain why LDA assumes equal covariances
  • Describe when LDA vs QDA is appropriate
  • Compare LDA vs logistic regression performance

Advanced · MPS439

  • Derive LDA decision boundaries mathematically
  • Implement LDA in python
Assessment
Week Week 5
Workshop (Optional)
Questions on assignments; General discussions; Demonstration of AI for study
Assessment
Week Week 5
Lab
Discriminative analysis
Assessment
Week Week 6
Lecture
Decision Tree
Learning outcomes

Core · all students

  • Build decision trees using sklearn's DecisionTreeClassifier
  • Explain how splitting criteria (Gini, entropy) work
  • Describe when trees overfit and how to prevent it
  • Interpret tree structure and feature importance

Advanced · MPS439

  • Calculate Gini impurity by hand
  • Explore using other classification method in sklearn (eg, SVM)
  • Explore advanced ensemble methods (XGBoost)
Assessment Assessment 1 submission deadline
Week Week 6
Lab
Decision Tree
Assessment
Week Week 7
Lecture
Reading week
Assessment Assessment 2 Release
Week Week 8
Lecture
Principal component analysis (PCA) Dimension reduction (non-supervise learning)
Learning outcomes

Core · all students

  • Use sklearn's PCA for dimensionality reduction
  • Explain why PCA finds directions of maximum variance
  • Describe what eigenvalues represent
  • Determine optimal number of components

Advanced · MPS439

  • Derive PCA from eigenvalue decomposition
  • Implement PCA using SVD from scratch
Assessment Exercise 1 (optional) submission deadline
Week Week 8
Lab
Principal component analysis (PCA)
Assessment
Week Week 9
Lecture
k-means and Hierarchical Clustering Clustering (non-supervise learning)
Learning outcomes

Core · all students

  • Apply K-means clustering using sklearn
  • Explain why K-means finds spherical clusters
  • Describe when hierarchical vs K-means is better
  • Choose optimal K using elbow method

Advanced · MPS439

  • Implement K-means algorithm from scratch
Assessment
Week Week 9
Lab
k-means and Hierarchical Clustering
Assessment
Week Week 10
Lecture
Deep learning Deep Learning
Learning outcomes

Core · all students

  • Implementing neural networks using Keras
  • Explain why we need multiple layers

Advanced · MPS439

  • Understand the backpropagation algorithm
  • Implement a simple neural network with different tricks: regularization, dropout, stochastic gradient descent, etc
Assessment Assessment 1 feedback to student
Week Week 10
Lab
Deep learning
Assessment
Week Week 11
Lecture
Deep learning Convolutional network
Learning outcomes

Core · all students

  • Understand how a convolutional layer works
  • Implementing a CNN using Keras

Advanced · MPS439

  • Build Convolutional neural networks using Keras
  • Describe what convolutions detect in images
  • Load pre-built CNN (eg, vgg-16) or other architecture to a classification problem
Assessment Exercise 1 (optional) feedback to student
Week Week 11
Workshop (Optional)
Questions on assignments; General discussions; Demonstration of AI for study; convolutional networks and applications
Assessment
Week Week 11
Lab
Deep learning Convolutional network
Assessment
Week Week 13
Assessment
Assessment 2 Submission deadline
Assessment
Week
Assessment
Assessment 2 feedback to student
Assessment