Why this course?
This course will allow you to select leading classes that span the breadth of both computer and information sciences, including theoretical computer science, human-computer interaction, information sciences, software engineering, machine learning and big data.
You'll gain an understanding of the new challenges posed by the advent of the big data revolution, particularly in relation to its modelling, storage, and access. You'll also come to understand the key algorithms and techniques embodied within data analytics solutions, and be exposed to a number of different big data technologies and techniques, seeing how they can achieve efficiency and scalability, while also addressing design trade-offs and their impacts.
You'll learn key technologies that are at the heart of big data analytics such as NoSQL databases and Hadoop and the Map-Reduce programming paradigm. You will also be equipped with a sound understanding of the principles of machine learning and a range of popular approaches, along with the knowledge of how and when to apply these.
You will also have the opportunity to implement and experiment with these machine learning algorithms using the most popular languages such as R and Python, and explore their applications to areas as diverse as analysing activity-related data captured using a smartphone to financial time-series prediction.
You’ll take on an individual research project on an approved topic related to your selected pathway. You’ll pursue a specific interest in further depth, giving scope for original thought, research and technical presentation of complex ideas.
Legal, ethical and professional issues for the information society
Distributed Information Systems
The aim of this class is:
- to appreciate the characteristics of professionalism as it relates to modern data management
- to recognise and appreciate the professional aspects of other engineering and related classes in their curriculum, and how those aspects influence practice
- to form a sound basis on which they will subsequently be able to practise
- information Systems Engineering with a due regard for legal, ethical and social issues
This class will give you an extended understanding of the deep, technical issues underlying information systems in the particular context of distributing content over the world-wide web.
Big Data Technologies
Machine Learning for Data Analytics
The aim of the class is to:
- understand the fundamentals of Python to enable the use of various big data technologies
- understand how classical statistical techniques are applied in modern data analysis
- understand the potential application of data analysis tools for various problems and appreciate their limitations;
- be familiar with a number of different cloud NoSQL systems and their design and implementation, showing how they can achieve efficiency and scalability, while also addressing design trade-offs and their impacts
- be familiar with the Map-Reduce programming paradigm, to enable students to write programs which can execute in massively parallel cloud-based infrastructures
The aim of the class is to:
- understand the aims and fundamental principles of machine learning
- understand a range of the key algorithms and approaches to machine learning
- be able to apply the algorithms covered and interpret the outcomes
- understand the applicability of the algorithms to different types of data and problems along with their strengths and limitations
Cutting-edge research and development project at one of our industrial partners. This might involve developing or validating a test setup, characterising a product, raw materials, instrumentation or vendor parts, improving the performance of a product or process, or participating in research and development of a new technology or product.
Choose two from the following:
Advanced Topics in Software Engineering
Mobile Software Applications
This class aims to:
- make students aware of key aspects of current software engineering research
- familiarise students with the state-of-the-art in terms of what problems can be solved and what are the current exciting challenges
- develop the necessary skills in students to allow them to contribute to the software engineering research community
- equip students with the skills and background to appreciate the contributions to software engineering research across the full range of material presented at the key international conferences in the field
Evolutionary Computing for Finance
You'll develop an understanding of the theories, paradigms, algorithms and architectures for building software applications to function in mobile computing environments.
On completion of this class students will:
- gain an understanding of a range of evolutionary computational and machine learning techniques
- gain an understanding of the relative advantages and disadvantages of each technique for different financial applications
- be able to evaluate the results of a financial problem investigated using evolutionary computation and machine learning techniques
Learning & teaching
Teaching methods include lectures, tutorials and practical laboratories. Dissertation is by supervision.
You’ll also have the opportunity to meet industry employers and participate in recruitment events.
- first or second-class Honours degree
- overseas equivalent, in computer science or a closely related mathematical or engineering discipline
English language: IELTS 6.5 (no individual score lower than 5.5) is required for all non- English speakers.
Fees & funding
Rest of UK
The fees shown are annual and may be subject to an increase each year. Find out more about fees.