Skip to main content

Unit information: Machine Learning (Teaching Unit) in 2025/26

Please note: Programme and unit information may change as the relevant academic field develops. We may also make changes to the structure of programmes and assessments to improve the student experience.

Unit name Machine Learning (Teaching Unit)
Unit code COMS30035
Credit points 0
Level of study H/6
Teaching block(s) Teaching Block 1 (weeks 1 - 12)
Unit director Dr. Cussens
Open unit status Not open
Units you must take before you take this one (pre-requisite units)

COMS10016 Imperative and Functional Programming (or equivalent)

COMS10018 Object-Oriented Programming and Algorithms (or equivalent)

COMS10014 Mathematics for Computer Science A (or equivalent)

COMS10013 Mathematics for Computer Science B (or equivalent)

COMS20017 Algorithms and Data (or equivalent)

Key knowledge and experience:

  • Proficiency programming with Python or another major programming language (Java, C).
  • Knowledge of basic linear algebra, basic statistics, some calculus, some discrete maths.
Units you must take alongside this one (co-requisite units)

EITHER COMS30081 Topics in Computer Science (Examination assessment, 20 credits) it will contribute 50% to the topics in computer science exam

OR COMS30083 Machine Learning (20 credits).

Please note: This unit is the Teaching only unit for the Computer Graphics option.

Students taking this unit choose to be assessed by EITHER the MAJOR 20 credit unit (COMS30083) OR as part of the Topics in Computer Science MINOR 20 credit examination unit. Students select the form of assessment to be taken by enrolling on the appropriate co-requisite assessment unit.

Units you may not take alongside this one

None

School/department School of Computer Science
Faculty Faculty of Engineering

Unit Information

Why is this unit important?

Machine Learning is the science of how we can build abstractions of the world from data and use them to solve problems in a data-driven way. Machine Learning is having a profound effect on many aspects of our life. This unit will allow students to both understand the principles upon which Machine Learning methods are based and learn the practical skills required to apply Machine Learning to solve real problems.

How does this unit fit into your programme of study?

This is an optional unit that can be taken during TB1 in Year 3 or 4. This positioning allows students to make use of fundamental skills and knowledge developed during the first 2 years of their study. This unit is also delivered around the time that students are selecting their final year project topics, so can have an influence on the nature of projects undertaken.

Your learning on this unit

An overview of content

This unit introduces the field of Machine Learning, and teaches students how to create and use software that improves with experience. The unit focuses on the following topics:

Introduction: machine learning concepts

Revisiting regression, Bayesian regression

Classification (including intro to neural networks)

Graphical models

Kernel machines

Clustering

Principal and independent component analysis

Sequential data

Hidden Markov Models

Trees and model ensembles

How will students, personally, be different as a result of the unit

This unit will equip students with the theoretical concepts and practical implementations of the most used machine learning techniques.

Learning Outcomes

On successful completion of this unit, ALL students (both MAJOR and MINOR) will be able to:

  1. Select an appropriate learning algorithm for a given problem.
  2. Use machine learning algorithms in solving classification and regression problems in a data-driven way.
  3. Describe theoretical and practical limitations of machine learning algorithms.

When the unit is taken as the MAJOR 20 credit variant, students will also be able to:

4. Use existing machine learning libraries to implement a fully operational machine learning system.

5. Empirically assess the performance of the system.

6. Report on and justify the approach taken, and interpret the empirical results.

How you will learn

Teaching will take place over 7 weeks and will be delivered through a combination of synchronous lectures, asynchronous teaching materials (including written materials, slides and videos) and in-person practical labs.

For the MAJOR variant of this unit, weekly support sessions will be provided during weeks 9-11 to assist students with completing their coursework.

The examination and in-class tests provide an efficient mechanism to assess individual students’ theoretical knowledge of the fundamental mathematical and statistical principles. The coursework assessment provides an opportunity to assess students’ practical skills and abilities when applied to Machine Learning.

How you will be assessed

Tasks which help you learn and prepare you for summative tasks (formative):

Teaching will take place over the first 8 weeks of the term (excluding the reading week), with coursework support sessions in weeks 9-11 and consolidation and revision sessions taking place in week 12. During the taught phase of the unit, students will work on machine learning tasks using the Jupyter lab environment (Python). Students work on these tasks during timetabled lab sessions (during which there is dedicated teaching support) and typically also outside of scheduled labs. Answers to lab exercises are provided after the lab session with clarifications supplied via the unit Teams channel. In addition quizzes on the topics covered are available via blackboard.

Tasks which count towards your unit mark (summative):

For students taking this unit with the Topics in Computer Science (MINOR) examination unit, it will contribute 50% towards the 20cp Topics in Computer Science exam, (equivalent to 1 hour of exam time) that will be sat during the winter examination period. This closed-book exam will assess Learning Outcomes 1,2 and 3.

For students taking this unit as a 20CP MAJOR variant, there will be two elements of assessment:

  • A mid-term in-class test that will assess Learning Outcomes 1,2 and 3 (worth 30% of the unit)
  • An end-of-term coursework (involving programming and a written report), (taking place during weeks 9-11) that will assess Learning Outcomes 1,2,4,5 and 6 (worth 70% of the unit)

When assessment does not go to plan

Students will retake relevant assessments in a like-for-like fashion in accordance with the University rules and regulations.

Resources

If this unit has a Resource List, you will normally find a link to it in the Blackboard area for the unit. Sometimes there will be a separate link for each weekly topic.

If you are unable to access a list through Blackboard, you can also find it via the Resource Lists homepage. Search for the list by the unit name or code (e.g. COMS30035).

How much time the unit requires
Each credit equates to 10 hours of total student input. For example a 20 credit unit will take you 200 hours of study to complete. Your total learning time is made up of contact time, directed learning tasks, independent learning and assessment activity.

See the University Workload statement relating to this unit for more information.

Assessment
The Board of Examiners will consider all cases where students have failed or not completed the assessments required for credit. The Board considers each student's outcomes across all the units which contribute to each year's programme of study. For appropriate assessments, if you have self-certificated your absence, you will normally be required to complete it the next time it runs (for assessments at the end of TB1 and TB2 this is usually in the next re-assessment period).
The Board of Examiners will take into account any exceptional circumstances and operates within the Regulations and Code of Practice for Taught Programmes.

Feedback