Skip to main content

Unit information: Algorithms and Machine Learning in 2022/23

Please note: you are viewing unit and programme information for a past academic year. Please see the current academic year for up to date information.

Unit name Algorithms and Machine Learning
Unit code MATH20017
Credit points 20
Level of study I/5
Teaching block(s) Teaching Block 1 (weeks 1 - 12)
Unit director Dr. Reeve
Open unit status Not open
Units you must take before you take this one (pre-requisite units)

Algorithms and Programming in R and C++

Units you must take alongside this one (co-requisite units)

None

Units you may not take alongside this one

None

School/department School of Mathematics
Faculty Faculty of Science

Unit Information

Lecturers: Henry Reeve

Unit aims: To provide a solid foundation in analysis of algorithms, basic data structures, and introduce some common machine learning algorithms.

For algorithms and complexity, students would be familiar with, for example:

  • proving algorithm correctness, including algorithms with loops or recursive algorithms
  • analyzing the asymptotic complexity of simple algorithms in the RAM model
  • basic data structures such as vectors, linked lists, trees, and some of their properties solving problems by solving subproblems.

For machine learning, students would be familiar with topics such as:

  • the role of sparse matrices and iterative algorithms in computing principal eigenvectors
  • backpropagation and role of stochastic gradient descent in training artificial neural networks
  • standard approaches to high-dimensional regression via regularization
  • basic clustering algorithms for unsupervised learning
  • basic numerical integration methods such as Monte Carlo and importance sampling

Unit description: An essential aspect of Data Science is the use of algorithms to analyse data. This unit will introduce students to standard techniques in the analysis of algorithms and some common machine learning algorithms.

Your learning on this unit

At the end of the unit, the students should:

  • Be able to prove the correctness of simple algorithms.
  • Be able to analyse the complexity of simple algorithms.
  • Be able to formulate and solve simple recurrence relations.
  • Understand the importance of data structures in algorithm design.
  • Understand how larger problems can be approached by solving a sequence of smaller problems.
  • Be able to use, understand and analyze some elements of algorithms used in machine learning, such as stochastic gradient descent for artificial neural networks, ridge and kernel ridge regression, computing principal eigenvectors, clustering, simple Monte Carlo integration

How you will learn

Lectures (2x per week), Lab (1x per week), problem sheets and computer practicals.

How you will be assessed

Examination (50%) and computer practicals (50%, one at the end of each teaching block).

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. MATH20017).

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 Faculty 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. If you have self-certificated your absence from an assessment, you will normally be required to complete it the next time it runs (this is usually in the next assessment period).
The Board of Examiners will take into account any extenuating circumstances and operates within the Regulations and Code of Practice for Taught Programmes.

Feedback