BSc Computer Science and Mathematics / Course details

Year of entry: 2024

Course unit details:
Machine Learning

Course unit fact file
Unit code COMP24112
Credit rating 10
Unit level Level 2
Teaching period(s) Semester 2
Available as a free choice unit? Yes


The world is filling up with data - billions of images online, billions of supermarket transactions, billions of events pouring out of our everyday lives.   Machine Learning is about designing algorithms capable of automatically learning patterns from this supplied data. Examples of this are in online shopping like - which learns what products you like to buy, or in spam detection systems, which learn what spam looks like as you tag it in your spam folder.
In this course unit we will introduce you to the basics of these algorithms, implementing a basic spam filter and a handwriting recognition engine.


Unit title Unit code Requirement type Description
Mathematical Techniques for Computer Science COMP11120 Pre-Requisite Compulsory
Data Science COMP13212 Pre-Requisite Compulsory
Introduction to AI COMP24011 Co-Requisite Compulsory
Mathematical Foundation & Analysis MATH11121 Pre-Requisite Compulsory
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.


The unit aims to introduce 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.

Learning outcomes

  • 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.


  • 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 and learning methods

Weekly lectures with structured input and exploratory activities. These will be organised as a blend of brief presentations, tutorial question and practice activities, discussions of materials and tasks that are available online, and question-answer sessions.


Bi-weekly laboratories will be drop-in help desks where GTAs provide support for problems provided in lab scripts. These will also be used as surgeries to provide feedback on assessments and as an opportunity to ask questions about the set tasks, and learning materials. Lab scripts contain assessments on mathematical programming for supporting basic machine learning model implementation, also design, implementation and analysis of machine learning techniques for real-world applications.

Employability skills

Analytical skills
Project management
Problem solving
Written communication

Assessment methods

Method Weight
Written exam 70%
Practical skills assessment 30%

Feedback methods

Cohort-level feedback after marking and individual feedback provided by GTA upon request.

Recommended reading

1.  Pattern Recognition and Machine Learning.  Bishop, Christopher M.  ISBN: 978-0387-31073-2.  PUblished by springer.  2006.  Core material.
2.  Introduction to machine learning.  Alpaydin, E.  ISBN: 978-0-262-02818-9.  Published by The MIT Press.  2014.
3.  Machine learning: A probabilistic perspective.  Murphy, Kevin P.  ISBN: 978-0-262-01802-9.  Published by The MIT Press.  2012.
COMP24112 reading lists can be found on the Department of Computer Science internal pages

Study hours

Scheduled activity hours
Assessment written exam 2
Lectures 22
Practical classes & workshops 12
Independent study hours
Independent study 64

Teaching staff

Staff member Role
Tingting Mu Unit coordinator

Return to course details