Explore this course:

    Applications for 2024 entry are now open. Apply now or register your interest to hear about postgraduate study and events at the University of Sheffield.

    MSc
    2024 start September 

    Artificial Intelligence

    Department of Computer Science, Faculty of Engineering

    This course not only teaches you the theoretical aspects of Artificial Intelligence (AI), but also provides you with the practical skills needed to work with big data sets, a fundamental component in building robust and efficient AI systems.
    Three Computer Science postgraduates at table

    Course description

    This course is designed for students with a numerate background (for example a first degree in mathematics, economics, engineering, physics or chemistry) as well as graduates already working in industry. 

    The course focuses on managing vast amounts of information and transforming it into actionable knowledge. It teaches the key skills that are required to carry out practical analysis of the types of data sets that need to be interpreted in the modern world. These include large data sets as well as structured and unstructured data.

    The course makes use of techniques developed within a range of disciplines, including computer science, artificial intelligence, mathematics and statistics.

    Applying for this course

    We use a staged admissions process to assess applications for this course. You'll still apply for this course in the usual way, using our Postgraduate Online Application Form.

    Accreditation

    This course is accredited by the British Computer Society (BCS). The course partially meets the requirements for Chartered Information Technology Professional (CITP) and partially meets the requirements for Chartered Engineer (CEng).

    Modules

    We're revising the curriculum of this course for this year of entry and are in the process of confirming the modules. The information on this page gives you an idea of the areas we expect the course to cover. There may be changes before you start. From May of the year of entry, formal programme regulations will be available in our Programme Regulations Finder.

    Core modules:

    Scalable Machine Learning

    This module will focus on technologies and algorithms that can be applied to data at a very large scale (e.g. population level). From a theoretical perspective it will focus on parallelisation of algorithms and algorithmic approaches such as stochastic gradient descent. There will also be a significant practical element to the module that will focus on approaches to deploying scalable ML in practice such as SPARK, programming languages such as Python/Scala and deployment on high performance computing platforms/clusters.

    15 credits
    Text Processing

    This module introduces fundamental concepts and ideas in natural language text processing, covers techniques for handling text corpora, and examines representative systems that require the automated processing of large volumes of text. The module focuses on modern quantitative techniques for text analysis and explores important models for representing and acquiring information from texts. You should be aware that there are limited places available on this course. 

    15 credits
    Machine Learning and Adaptive Intelligence

    The module is about core technologies underpinning modern artificial intelligence. The module will introduce statistical machine learning and probabilistic modelling and their application to describing real-world phenomena. The module will give students a grounding in modern state-of-the-art algorithms that allow modern computer systems to learn from data. It has a considerable focus on the mathematical underpinnings of key ML approaches, requiring some knowledge of linear algebra, differentiation and probability.

    Students should be aware that there are limited places available on this module.

    15 credits
    Natural Language Processing

    This module provides an introduction to the field of computer processing of written natural language, known as Natural Language Processing (NLP). We will cover standard theories, models and algorithms, discuss competing solutions to problems, describe example systems and applications, and highlight areas of open research. You should be aware that there are limited places available on this module.

    15 credits
    Professional Issues

    This module aims to enable students to recognise the legal, social, ethical and professional issues involved in the exploitation of computer technology and be guided by the adoption of appropriate professional, ethical and legal practices. It describes the relationship between technological change, society and the law, including the powerful role that computers and computer professionals play in a technological society. It introduces key legal areas which are specific and relevant to the discipline of computing (e.g., intellectual property, liability for defective software, computer misuse, etc) and aims to provide an understanding of ethical and societal concepts that are important to computer professionals, and experience of considering ethical dilemmas.

    15 credits
    Team Project

    The Team Project provides the opportunity for you to engage in industry inspired research work. It is undertaken in groups. Projects are suggested by industrial problems and supervised by Department of Computer Science staff or industry experts. You will form groups and choose a project which interests you, then refine the scope of the research by conducting a thorough analysis of the topic area and formulating a solution also with the help of their supervisor. The project is developed under strong supervision. You will present the project overview within the first few weeks of the semester and submit a report on the work at the end of semester.

    15 credits
    Data Science with Python

    This module starts with a rapid review of basic background mathematics and statistics, and an introduction to Python. The module will then introduce students to a range of statistical and programming techniques and give practice in their implementation and interpretation using Python. It aims to help students develop the knowledge and experience to select and use appropriate techniques for a variety of problems. The emphasis will be on practical application of techniques and knowledge of their scope rather than development of theoretical underpinnings. Areas to be covered include: exploratory data analysis, simple checks on data, statistical data modelling, programming and optimization. Students will also learn the fundamentals of robust data management and reproducible scientific analysis.

    15 credits
    Artificial Intelligence Dissertation Project

    For your individual project, you can choose from a wide range of possibilities in many different environments both within and outside the University. The project is completed during the summer, and you will have a personal academic supervisor to guide you during this period.

    60 credits

    Optional modules:

    Modelling and Simulation of Natural Systems

    This module will provide a practical introduction to techniques used for modelling and simulating dynamic natural systems. Many natural systems can be modelled appropriately using differential equations, or individual based methods. In this module, you will explore and understand both modelling approaches. You will gain knowledge of the assumptions underlying these models, their limitations, and how they are derived. You will learn how to simulate and explore the dynamics of computational models, using a variety of examples mostly drawn from natural systems.  At the end of the module, we will introduce basic recurrent neural networks as examples of dynamical systems with multiple timescales. You should be aware that there are limited places available on this course.

    15 credits
    Computer Security and Forensics

    This module provides an introduction into computer security and forensics focussing on approaches and techniques for building secure systems and for the secure operation of systems. It aims to develop knowledge and understanding of fundamental principles of information security, develop familiarity with compromise of computer systems and what countermeasures can be adopted and provide practical experience of implementing secure systems. The module requires a solid understanding of mathematical concepts (e.g., modulo-arithmetic, complex numbers, group theory) and logic (set theory, predicate logic, natural deduction) a solid understanding of a programming language (e.g., Java, Ruby, or C), basic software engineering knowledge and an understanding of database and Web systems. Students should be aware that there are limited places available on this course.

    15 credits
    Network Performance Analysis

    This module considers the performance of computer networks from a statistical aspect, using queuing theory. It is shown that the performance of a computer network depends heavily on the traffic flow in the network, and different models of traffic and queues are used. These include single-server queues, multiple server queues, and the concept of blocking is discussed. Although the analysis is entirely statistical, all the relevant background is provided in the lectures, such that the course is entirely self-contained. Problem sheets are provided in order to assist you with the course material. You should be aware that there are limited places available on this module.

    15 credits
    Parallel Computing with Graphical Processing Units (GPUs)

    Accelerator architectures are discrete processing units which supplement a base processor with the objective of providing advanced performance at lower energy cost. Performance is gained by a design which favours a high number of parallel compute cores at the expense of imposing significant software challenges. This module looks at accelerated computing from multi-core central processing units (CPUs) to graphics processing unit (GPU) accelerators with many TFlops of theoretical performance. The module will give insight into how to write high performance code with specific emphasis on GPU programming with NVIDIA CUDA GPUs. A key aspect of the module will be understanding what the implications of program code are on the underlying hardware so that it can be optimised. Students should be aware that there are limited places available on this course. 

    15 credits

    The content of our courses is reviewed annually to make sure it's up-to-date and relevant. Individual modules are occasionally updated or withdrawn. This is in response to discoveries through our world-leading research; funding changes; professional accreditation requirements; student or employer feedback; outcomes of reviews; and variations in staff or student numbers. In the event of any change we'll consult and inform students in good time and take reasonable steps to minimise disruption.

    Open days

    An open day gives you the best opportunity to hear first-hand from our current students and staff about our courses.

    Find out what makes us special at our next online open day on Wednesday 17 April 2024.

    You may also be able to pre-book a department visit as part of a campus tour.Open days and campus tours

    Duration

    1 year full-time

    Teaching

    We use lectures, tutorials and group work.

    Assessment

    Assessment is by formal examinations, coursework assignments and a dissertation.

    Department

    Department of Computer Science

    Our masters courses at the University of Sheffield cover both the strong theoretical foundations and the practical issues involved in developing software systems in a business or industrial context.

    Our graduates are highly prized by industry, and provide the opportunity for you to gain an advantage in the job market, whether in the UK or overseas.

    Although it is possible to discuss many of the practical issues involved in industrial applications in lectures and seminars, there is no substitute for first-hand experience.

    We have a unique track record in developing innovative project-based courses that provide real experience for computing students, and this experience is embodied in our MSc courses.

    Our MSc programmes last 12 months, and begin in late September. You will study taught modules during two 15-week semesters. Your work is assessed either by coursework or by formal examination. During the summer you complete an individual dissertation project, which may be based within the University or at the premises of an industrial client.

    Entry requirements

    Minimum 2:1 undergraduate honours degree in a numerate discipline, such as computer science, mathematics, economics, engineering, physics or chemistry. Some previous programming experience is essential.

    We also consider a wide range of international qualifications:

    Entry requirements for international students

    Overall IELTS score of 6.5 with a minimum of 6.0 in each component, or equivalent.

    Pathway programme for international students

    If you're an international student who does not meet the entry requirements for this course, you have the opportunity to apply for a pre-masters programme in Science and Engineering at the University of Sheffield International College. This course is designed to develop your English language and academic skills. Upon successful completion, you can progress to degree level study at the University of Sheffield.

    If you have any questions about entry requirements, please contact the department.

    Apply

    We use a staged admissions process to assess applications for this course. You'll still apply for this course in the usual way, using our Postgraduate Online Application Form.

    Apply now

    Contact

    msc-compsci@sheffield.ac.uk
    +44 114 222 1800

    Any supervisors and research areas listed are indicative and may change before the start of the course.

    Our student protection plan

    Recognition of professional qualifications: from 1 January 2021, in order to have any UK professional qualifications recognised for work in an EU country across a number of regulated and other professions you need to apply to the host country for recognition. Read information from the UK government and the EU Regulated Professions Database.