Our course finder pages contain all the most up-to-date information about the Data Analytics MSc, including details of the programme structure, compulsory and elective modules and study options.
Below is a full list of all modules which are expected to be available to students on this programme across the semesters. Please note that this is for information only and may be subject to change. Click the link above for accurate information about which of these modules are compulsory and elective for each semester of your MSc programme.
This module is offered to allow you to move beyond the basic techniques of Machine Learning, and is a core component of the MSc Data Analytics. Together with the initial module (Machine Learning with Python), this course will provide a comprehensive overview of Machine Learning and its mathematical foundations as well as an introduction to the current state of the art in the field.
The aim of this module is to introduce students to more advanced machine learning techniques. An emphasis will be on current techniques which are relevant for practical applications. In addition to practical programming assignments, the course will also give you an understanding of the mathematical underpinning of the techniques and the limitations of the methods which are crucial to correctly assessing their performance.Building on the module in semester A, linear methods will be extended to non-linear settings using kernel methods. The module will also go further in depth with topics which were introduced in the first semester such as neural networks and Monte Carlo Markov Chain methods (MCMC). It will cover specific applications and provide students with an overview of the current state of the art techniques.
The module aims to introduce you to the Bayesian paradigm. The module will show you some of the problems with frequentist statistical methods, show you that the Bayesian paradigm provides a unified approach to problems of statistical inference and prediction, enable you to make Bayesian inferences in a variety of problems, and illustrate the use of Bayesian methods in real-life examples.
The Bayesian paradigm: likelihood principle, sufficiency and the exponential family, conjugate priors, examples of prior to posterior analysis, mixtures of conjugate priors, non-informative priors, two sample problems, predictive distributions, constraints on parameters, point and interval estimation,hypothesis tests, nuisance parameters.
Complex systems can be defined as systems involving many coupled units whose collective behaviour is more than the sum of the behaviour of each unit. Examples of such systems include coupled dynamical systems, fluids, transport or biological networks, interacting particle systems, etc. The aim of this module is to introduce students to a number of mathematical tools and models used to study complex systems and to explain the mathematical meaning of key concepts of complexity science, such as self-similarity, emergence, and self-organisation. The exact topics covered will depend on the module organiser's expertise with a view to cover practical applications using analytical and numerical tools drawn from other applied modules.
Introduction to the field of complex systems via a number of representative examples and models of these systems (e.g., coupled dynamical systems, time-delayed systems, stochastic processes, networks, time series, fractals, multifractals, particle models).
This module introduces modern methods of statistical inference for small samples, which use computational methods of analysis, rather than asymptotic theory. Some of these methods such as permutation tests and bootstrapping, are now used regularly in modern business, finance and science.
The techniques developed will be applied to a range of problems arising in business, economics, industry and science. Data analysis will be carried out using the user-friendly, but comprehensive, statistics package R.
Each Data Analytics MSc student is required to complete a 60 credit project dissertation. A typical MSc project dissertation consists of about 30 word-processed pages, covering a specific research-level topic in data analytics, usually requiring the student to understand, explain and elaborate on results from one or more journal articles and/or performing computation, simulations, or analysis. An MSc project may also involve collaboration with a collaborator based in industry. An MSc project should help prepare a good student for PhD research or independent work in industry and even allow an excellent student the possibility of doing some research.
Possible areas of the MSc dissertation projects offered by the School of Mathematical Sciences include a large variety of different scientific topics, among them time series analysis, exploratory data analysis on a dataset, performance and comparative analysis of state of the art techniques, theoretical models of data, complex systems, dynamical systems, topological data analysis, experimental design with data, and statistical aspects of data analytics techniques.
This module will provide students with a general understanding of current applications of data analytics to finance and in particular to derivatives and investment banking. It will introduce a range of analytical tools such as volatility surface management, yield curve evolution and FX volatility/correlation management. It will also provide you with an overview of some standard tools in the field such as Python, R, Excel/VBA and the Power BI Excel functionality. Students are not expected to have any familiarity with coding or any of the topics above, as the module will develop these from scratch. It will provide you with the understanding of a field necessary to prepare for a career in finance in roles such as trading, structuring, management, risk management and quantitative positions in investment banks and hedge funds.
This module addresses one of the most important “hot topics” in mathematics research – the study of networks – and is essential for understanding the characteristics and universal structural properties of complex networks. Complex networks are the outcome usually of a stochastic dynamics but they are not completely random. You will learn how to disentangle randomness from structural organisational principles of complex networks and how several major types of complex network can be described and artificially generated by mathematical models. Networks characterise the underlying structure of a large variety of complex systems, from the Internet to social networks and the brain. This course is designed to teach students the mathematical language needed to describe complex networks, their basic properties and dynamics. The broad aim is to provide students with the key skills required fundamental research in complex networks, and necessary for application of network theory to specific network problems arising in academic or industrial environments. The students will acquire experience in solving problems related to complex networks and will learn the necessary language to formulate models of network-embedded systems.
This module aims to provide students with Machine Learning skills based on the Python programming language as it is currently used in industry. Some of the presented methods are regression and classification techniques (linear and logistic regression, least-square); clustering; dimensionality reduction techniques such as PCA, SVD and matrix factorisation. More advanced methods such as generalised linear models, neural networks and Bayesian inference using graphical models are also introduced. The course is self-contained in terms of the necessary mathematical tools (mostly probability) and coding techniques. At the end of the course, students will be able to formalise a ML task, choose the appropriate method in order to tackle it while being able to assess its performance, and to implement these algorithms in Python. Independently of the field, skills in Machine Learning and coding are nowadays almost mandatory in many technical careers (academia, engineering, finance, etc.). This course will provide the students with practical skills in Python for Machine Learning. A strong focus well be put on practice through exercises and projects in Python, one of the preferred language in industry.
Optimisation refers to the selection of the best alternative, according to some criterion, from a set of available alternatives.
This module introduces standard models from mathematical optimisation, like network flows and linear programmes, and their use in solving real-world optimisation problems; in staff and project scheduling, commodity trading, production, and sales. Tutorials focus on modelling of real-world optimisation problems based on data, and on the use of software such as R, Excel, and Gurobi to solve optimisation problems and make better decisions.
This module will teach the probabilistic and statistical foundations which underpin the MSc Data Analytics. This module begins by covering some of the essential theoretical notions of probability and the distributions of random variables which underpin statistical methods. It then describes different types of statistical tests of hypotheses and addresses the questions of how to use them and when to use them. This material is essential for data analytics in applications of statistics in psychology, the life or physical sciences, business and economics.
This module addresses one of the most important “hot topics” in mathematics research – the study of networks – and is essential for understanding the characteristics and universal structural properties of complex networks. Complex networks are the outcome usually of a stochastic dynamics but they are not completely random. You will learn how to disentangle randomness from structural organisational principles of complex networks and how several major types of complex network can be described and artificially generated by mathematical models.
In business environments the ability to use key software packages is vital, particularly the universally used Microsoft Office portfolio. This module will teach you how to customise and program two key aspects of Microsoft Office used in Analytics; the database package Access and the spreadsheet software Excel.
You will learn Visual Basic for Applications (VBA), the most prevalent programming language in industry and some Structured Query Language (SQL) for data manipulation. The course is taught by an actuary with 15 years industry experience in this area.
This module is key for students wishing to further their understanding of the visualisation techniques used in business decision processes using the powerful SAS Visual Analytics software.
You will apply the power of SAS analytics to massive amounts of data, gain valuable insights into visualisation techniques to uncover relevant patterns, and be empowered to make quicker informed decisions.
This module introduces you to the fundamentals of modern time series analysis. We aim to be comprehensive, looking at both theory and applications for different time series models that are widely used in practice. To this end, we will use R and RStudio as our main software for data analysis and you will gain hands-on experience in applying methods learned to real-world case studies.
Time Series Analysis refers to the use of statistical and machine learning methods for inference on datasets containing variables collected over time, with the ultimate goal of forecasting the values of these variables at some future time.
This module introduces key concepts such as trend and seasonality decomposition, autocorrelation, autoregressive and moving average models, and exponential methods. Tutorials focus on the use of the R software environment in the analysis of real-world time series data.
This module focuses on the use of computers for solving applied mathematical problems. Its aim is to provide you with proper computational tools to solve problems which you are likely to encounter while during your MSc, and to develop with a sound understanding of a programming language used in applied sciences. The topics covered will include basics of scientific programming, numerical solution of ordinary differential equations, random numbers and Monte Carlo methods, simulation of stochastic processes, algorithms for complex networks analysis and modelling. The emphasis of the module would be on numerical aspects of mathematical problems, with a focus on applications rather than theory.
This module introduces you to some of the key technologies that are widely used for developing software applications in the financial markets and banking sectors. In particular, we focus on three programming environments/languages (Excel, VBA and C++) which are often used in conjunction to build complete trading and risk management systems. It is a highly practical module, focusing on current industry practice, and therefore you will be well equipped to apply for a programming role in a financial institution.