Accessibility statement

Intelligent Systems 2: Machine Learning & Optimisation - COM00024I

« Back to module search

  • Department: Computer Science
  • Module co-ordinator: Dr. Patrik Huber
  • Credit value: 20 credits
  • Credit level: I
  • Academic year of delivery: 2022-23

Module summary

Machine Learning and Optimisation

Module will run

Occurrence Teaching cycle
A Spring Term 2022-23 to Summer Term 2022-23

Module aims

This module advances the IS stream by introducing the basics of machine learning, purely from an optimisation perspective. The range of topics covers linear regression (picking up where Data 1 left off) to decision trees and a simple neural network (leading into advanced machine learning in the third year). Understanding ML requires knowledge of some mathematical concepts that build upon A-level standard mathematics, specifically: Linear Algebra and Continuous Optimisation. This will be taught in-place. Students will see motivating real world problems, the ML techniques required to solve them, the underlying mathematics needed for the technique and their practical implementation. Practicals will be taught using a python-based modern machine learning library such as TensorFlow or PyTorch and so students will gain experience with the declarative programming paradigm (building on the Software stream).

Module learning outcomes


Define the machine learning paradigm and distinguish it from the wider field of AI


Distinguish supervised from unsupervised learning, parametric from nonparametric learning and classification from regression. Be able to express a classification problem as a regression problem.


Compute partial derivatives and understand the concept of the gradient as a generalisation of the derivative


Express, manipulate and solve systems of linear equations using linear algebra


Apply linear regression and logistic regression with one variable or multiple variables


Optimise multivariate functions using gradient descent


Explain the concept of overfitting and how regularisation can be used to prevent it


Construct a basic neural network and learn its weights via optimisation using the backpropagation algorithm


Identify clusters in data by applying the unsupervised k-means algorithm


Use K-nearest neighbours and decision tree learning for nonparametric classification


Use a modern machine learning library to implement basic machine learning methods as a computational graph and apply them to real datasets


Appreciate the ethical and privacy implications of machine learning such as relying on black box systems without interpretable parameters, learning from biased or crawled publicly available data


Task Length % of module mark
INT2 Open Assessment
N/A 50
Online Exam -less than 24hrs (Centrally scheduled)
Intelligent Systems 2 (INT2) Exam
3 hours 50

Special assessment rules



Task Length % of module mark
INT2 Open Assessment
N/A 50
Online Exam -less than 24hrs (Centrally scheduled)
Intelligent Systems 2 (INT2) Exam
3 hours 50

Module feedback

Feedback is provided through work in practical sessions, and after the final assessment as per normal University guidelines

Indicative reading

Solomon, Justin. Numerical Algorithms. AK Peters/CRC Press, 2015

The information on this page is indicative of the module that is currently on offer. The University is constantly exploring ways to enhance and improve its degree programmes and therefore reserves the right to make variations to the content and method of delivery of modules, and to discontinue modules, if such action is reasonably considered to be necessary by the University. Where appropriate, the University will notify and consult with affected students in advance about any changes that are required in line with the University's policy on the Approval of Modifications to Existing Taught Programmes of Study.