Module code: EEEM076

Module Overview

Machine learning, a cornerstone of computer science and artificial intelligence, integrates methods from diverse disciplines such as statistics, applied mathematics, pattern recognition, and neural network computation. This module delves into both the theoretical underpinnings and practical applications of advanced machine learning and deep learning topics. It also explores their contributions across various sectors, including natural language processing, medical imaging, healthcare, audio analysis, and fintech.
The deep learning algorithms covered in this module are extensively utilized in the industry, from innovative AI startups to leading tech giants like Google, Meta, Microsoft, Amazon, Tesla, NVIDIA etc. This curriculum provides a solid foundation in machine learning theory, equipping students with the skills to process and analyse data from different domains, such as images, videos, text, and audio. Through a combination of discussion, implementation, and demonstration, the module aims to impart a comprehensive understanding of various machine learning algorithms and their real-world applications.

Module provider

SOL - Computer Science and Elec Eng

Module Leader

DUTTA Anjan (Vet Med)

Number of Credits: 15

ECTS Credits: 7.5

Framework: FHEQ Level 7

Module cap (Maximum number of students): N/A

Overall student workload

Independent Learning Hours: 104

Tutorial Hours: 4

Guided Learning: 20

Captured Content: 22

Module Availability

Semester 1

Prerequisites / Co-requisites


Module content

Convolutional neural network (basic operations, separable convolution; skip connection), Graph Convolutional neural network (GCNN), Attention, Transformers, NLP using transformers, computer vision using transformer, MLP, Zero-shot learning, few-shot learning, Domain generalisation, transfer learning, Self-supervised learning, vision-language weakly labelled learning from noisy labels, multimodal foundation models, Multimodal analysis. Applications: Natural Language Processing (NLP), Computer vision, Fintech, Fintech documents analysis, Audio, Medical imaging.

Assessment pattern

Assessment type Unit of assessment Weighting
Coursework Coursework 25
Examination Online Examination Online (4 hours within 24 hour window) 75

Alternative Assessment


Assessment Strategy

The assessment strategy for this module is designed to provide students with the opportunity to demonstrate the skills learned within the module. Knowledge of various machine learning theories and their applications, understanding of the engineering methodologies for design and implementation of software algorithms. Knowledge of state-of-the art solutions to different machine learning and data analysis problems, their limitations, and requirements for better solutions. Skills of identifying, classifying, and describing the performance of software systems and components using analytical methods and modelling techniques. Programming skills and understanding of software tools, development environments, libraries, and reusable components such as Python, NumPy, scikit-learn, PyTorch etc libraries. These software tools will be used to perform data processing and analysis, and implementation of different machine learning algorithms.
Thus, the summative assessment for this module consists of the following: 

  • Coursework (25% weightage).

  • Examination (75% weightage).

The coursework assessments are designed to include a series of questions that require students to write code snippets for various tasks, including data processing and analysis, pattern recognition, and classification. These assessments aim to enable students to apply the theoretical concepts learned in the course materials to practical scenarios, each reflecting the module's core themes. The examination will be conducted online as an open book test. Each question is crafted to assess students' knowledge, analytical abilities, and design skills.
Formative assessment and feedback:

  • Students will receive formative assessment/feedback in the following ways:

  • During tutorial sessions providing opportunities to clarify concepts and answer questions.

  • Based in their performance in the coursework: feedback will be given based on whether their solutions pass some designated unit tests. This approach ensures that students receive targeted feedback that is directly linked to the accuracy and effectiveness of their code, helping them to pinpoint areas for development and refine their problem-solving skills.

  • Based on their performance in the online exam performance: feedback will highlight their areas of strength and identifying opportunities for further improvement.

Module aims

  • The primary objective of this module is to furnish students with a comprehensive understanding of contemporary deep neural networks and their wide-ranging applications. The versatility of modern AI and deep learning algorithms allows for their application across a multitude of fields including computer vision, robotics, natural language processing, security and surveillance, medical image analysis, multimodal analysis, and the content retrieval of extensive multimedia archives, as well as fintech. The ultimate goal is to equip students with the knowledge and skills necessary to address real-world challenges by leveraging advanced deep learning and AI algorithms. Additionally, the module is designed to provide students with opportunities to explore and learn about the following Surrey Pillars.

Learning outcomes

Attributes Developed
001 Be able to demonstrate an understanding of different principles of machine learning and data analysis. K M1
002 Be able to choose an appropriate method to a problem of computer vision, medical imaging, natural language processing, fintech etc and predict the outcome of the applied method. KCPT M3, M4
003 Be able to come out with a theoretical solution for the computer vision, medical imaging, natural language processing, and fintech problems. KCT M6, M13
004 Be able to analyse novel pattern recognition and data analysis problems, establish statistical models for their solution. KCPT M2, M16, M17

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

Methods of Teaching / Learning

The teaching and learning methodologies for this module are designed to offer a comprehensive and interactive learning experience. These methods include:

  • Captured content and guided-learning activities: Students will have access to a series of recorded materials and guided learning activities that provide in-depth coverage of the module's content. These materials allow students to learn at their own pace and revisit complex topics as needed.

  • Tutorials: Live tutorial sessions will be run at several points of the module delivery to provide opportunities for students to clarify their understanding and ask questions as they arise.

  • Self-guided labs: Practical lab activities are a critical component of the module, where students get hands-on experience with deep learning algorithms and AI technologies. Labs are self-guided, and they are designed to reinforce theoretical concepts learned in lectures through real-world applications.

The learning and teaching strategy of this module is designed to achieve the following objectives:

  • To introduce advanced deep learning concepts and their applications to promote deep understanding of the advanced AI concepts, engineering methodologies for design and implementation of software algorithms. The topics include convolutional neural network, separable convolutions, graph neural networks, attention, transformers, MLP, graph attention network, domain transfer/generalisation, zero/few-shot learning, self-supervised learning, foundation models, multimodal foundation models, vision language pretraining, multimodal analysis.

  • To introduce engineering principles for software design in advance machine/deep learning, which involves integration of software components related to verification and validation.

  • Students learn to identify, classify, and describe the performance of software systems and components using analytical methods and modelling techniques. These allow them to employ performance trade-offs and the use of appropriate metrics, to predict and evaluate performance of advanced machine/deep learning algorithms. Students learn skills of applying quantitative methods, mathematical and computer-based models, and use computer software (Python, PyTorch) to solve image processing problems. Skills involve identifying and analyse problems in advance machine/deep learning and develop software solutions to address problems in different application areas of machine/deep learning, for example, healthcare, security, and entertainment.

  • Students learn programming skills and understanding of software tools, development environments, libraries, and reusable components such as Python, PyTorch and other machine/deep learning libraries. They use these to perform classification, segmentation, localisation, regression, and other advanced machine/deep learning tasks such as self-supervised learning, multimodal foundation models and multimodal analysis.

Indicated Lecture Hours (which may also include seminars, tutorials, workshops and other contact time) are approximate and may include in-class tests where one or more of these are an assessment on the module. In-class tests are scheduled/organised separately to taught content and will be published on to student personal timetables, where they apply to taken modules, as soon as they are finalised by central administration. This will usually be after the initial publication of the teaching timetable for the relevant semester.

Reading list
Upon accessing the reading list, please search for the module using the module code: EEEM076

Other information

We are committed to developing graduates with strengths in Employability, Digital Capabilities, Global and Cultural Capabilities, Sustainability, and Resourcefulness and Resilience. This module is designed to allow students to develop knowledge, skills, and capabilities in the following areas:
Digital capabilities: By introducing students to high performance computing servers needed to complete the coursework; by enriching their programming skills for the AI discipline via Python and the various deep learning libraries.
Employability: By teaching students practical deep learning skills which is the most welcomed skillset in modern AI; by talking through practical computer vision applications, e.g., self-driving; by introducing a practical coursework component that addresses specific industrial problems 
Global and cultural capabilities: By studying ethics-related topics around computer vision; by teaching computer vision techniques around data bias and domain adaptation, which is cornerstone to deploying computer vision solutions across multiple cultures and in global scale.

Programmes this module appears in

Programme Semester Classification Qualifying conditions
People-Centred Artificial Intelligence (Online) MSc 1 Compulsory A weighted aggregate mark of 50% is required to pass the module

Please note that the information detailed within this record is accurate at the time of publishing and may be subject to change. This record contains information for the most up to date version of the programme / module for the 2025/6 academic year.