Skip to navigation | Skip to main content | Skip to footer

This is an archived syllabus from 2021-2022

COMP24112 Machine Learning syllabus 2021-2022

COMP24112 materials

COMP24112 Machine Learning

Level 2
Credits: 10
Enrolled students: 320

Course leader: Tingting Mu

Additional staff: view all staff


  • Pre-Requisite (Compulsory): MATH10111
  • Pre-Requisite (Compulsory): COMP11120
  • Pre-Requisite (Compulsory): COMP13212
  • Co-Requisite (Compulsory): COMP24011

Additional requirements

  • Pre-requisites
    To enrol students are required to have taken  COMP11120 and COMP13212.  Or, if you are on a Computer Science and Maths programme you must have taken MATH10111. 24011 is a co-requisite.

Assessment methods

  • 30% Written exam
  • 70% Practical skills assessment
Sem 2 w20-27,31-33 Lecture Engineering Building A 2A.040 Lecture Theatre A Fri 14:00 - 16:00 -
Sem 2 w21,23,25,27,32,34 Lab 2.25 (A+B) Thu 14:00 - 16:00 F
Sem 2 w21,23,25,27,32,34 Lab 2.25 (A+B) Thu 16:00 - 18:00 H
Sem 2 w21,23,25,27,34 Lab 1.10 Mon 14:00 - 16:00 G
Sem 2 w22 DROP-IN 2.25 (A+B) Thu 14:00 - 15:00 -
Sem 2 w32 Lab 1.10 Thu 14:00 - 16:00 G
Sem 2 w33 DROP-IN G23 Mon 16:00 - 18:00 -


Machine learning is concerned with creating learning models that allow a computer to exhibit behaviour that would normally require a human. Typical applications include computer vision, speech synthesis and recognition, natural language processing, medical diagnostics, intelligent robots, vehicle autonomy, material sciences, etc. The learning models come in various forms, e.g., parametric and non-parametric, deterministic and probabilistic. The emphasis is on constructing these models automatically from data; for example, making a face recogniser from data files of facial images. This course will provide an introduction to the necessary mathematical background and foundational principles and mechanisms to key techniques in machine learning, as well as their implementation, application and evaluation. At the end of this course, students will be expected to have a theoretical understanding of key machine learning topics and be equipped with practical skills on their usage. The course has a fairly mathematical and algorithmic content and is intended to be self-contained. The lab work is based on Python


Our aims include the introduction of the essential concepts behind key machine learning techniques, the methodologies for building machine learning systems, the approaches for learning from data, and the experimental methods on how to evaluate the performance of a learning system and get the best performance from it. Also, we aim to provide the necessary mathematical background required to understand how the methods work. This course covers basics on both supervised and unsupervised learning paradigms and is pitched towards students with scientific/mathematical background interested in adaptive techniques for learning from data as well as data analysis and modelling.
Specifically, the course will cover the following. A general introduction to key concepts in machine learning and the development of the field. Essential knowledge on how to build a supervised machine learning system, including classification and regression, with respect to model architecture (e.g., instance-based model, linear model, linear basis function model, kernel methods, single- and multi-layer perceptrons, etc.), loss functions (e.g., sum of squares error, regularisation, cross-entropy, etc.), and optimisation approaches for training (e.g., basic optimality conditions, (stochastic) gradient descent, etc.). Basic knowledge on parametric, non-parametric, deterministic and probabilistic models. Essential knowledge on clustering analysis. Essentials on how to measure performance of a machine learning system for classification, regression and clustering. Basics on bias and variance issues, over-fitting and under-fitting. Essential knowledge and practical skills on how to perform machine learning experiments, data usage for model training, model selection and model testing.


  • Machine Learning Basics
  • k-Nearest Neighbours
  • Machine Learning Experiments
  • Machine Learning Models
  • Loss Functions
  • Training and Optimisation
  • Artificial Neural Networks
  • Support Vector Machines
  • Clustering Analysis
  • Deep Learning Models

Teaching methods

Lectures & Revision Classes:
22 hours in total, 2-hour session per week
10 hours in total, 5 x 2-hour sessions, partly credited to COMP20910/COMP20920
Feedback methods:
Face to face marking of all project work in the lab

Feedback methods

Face to face marking of all project work in lab

Study hours

  • Assessment written exam (2 hours)
  • Lectures (22 hours)
  • Practical classes & workshops (12 hours)

Employability skills

  • Analytical skills
  • Project management
  • Problem solving
  • Written communication

Learning outcomes

On successful completion of this unit, a student will be able to:

  • Describe fundamental concepts in machine learning (including supervised and unsupervised learning, classification, regression and clustering), and essential elements for building a machine learning system.
  • Explain key supervised learning techniques, compare their differences (including limitations and advantages, quality and trade-offs, commercial/industrial concerns). Apply the knowledge to select suitable techniques for a particular application.
  • Explain key clustering algorithms and their applications.
  • Describe fundamental concepts in model evaluation and selection, explain the training, validation and testing processes, hyperparameter selection approaches. Apply the knowledge to use data, design machine learning experiments, and make observations from results.
  • Design and implement machine learning solutions to real-world problems, evaluate the solution, analyse results and implication.
  • Recognise and describe issues in machine learning.

Reading list

No reading list found for COMP24112.