This course has a January 2021 start date available. For more information please see the Flexible learning 2020/21 page.
Machine learning has already revolutionised the user experience of millions of web users the world over, and yet the discipline is still comparatively young. In time, this form of artificial intelligence will have an even more profound impact on the way we use software and interact with computer technology. Study Machine Learning at Royal Holloway, University of London and you’ll equip yourself with a set of crucial skills to assist in the development of the next generation of search and analysis technologies.
Skills that you will acquire include the ability to:
- develop, validate, and use effectively machine learning and statistical models
- work with structured, unstructured, and time-series data
- extract value and insight from data
- work with methods and techniques such as clustering, regression, support vector machines, boosting, decision trees, and neural networks
- develop and use universal prediction algorithms, including universal strategies for dynamic investment
- complement predictions with provably valid measures of accuracy and reliability.
- work with software packages such as MATLAB and R
You’ll study in one of the UK’s leading research departments, and contribute to our renowned research culture with your own Independent Project. You’ll benefit from cutting-edge research-led teaching, with the department’s research strengths including Algorithms and Applications, Machine Learning, Bioinformatics and others.
You will be taught by world-leading academics. Research in Machine Learning at Royal Holloway started in the 1990’s, at which time Vladimir Vapnik and Alexey Chervonenkis, the inventors of Support Vector Machines, were both professors here. We have developed both fundamental theory and practical algorithms that have fed into the analytics methods and techniques that are in use today. Current researchers include Alexander Gammerman and Vladimir Vovk, the inventors of conformal predictors theory, and Chris Watkins, who developed ‘Q-learning’, a work that is fundamental to planning and control.
Royal Holloway’s location close to the M4 corridor – otherwise known as ‘England’s Silicon Valley’ – gives you the chance to benefit from networking and placement opportunities with some of the country’s top technology organisations. By electing to spend a year in industry you will have the opportunity to integrate theory and practice and gain real business experience. In the past, our students have secured placements in blue-chip companies such as Centrica, Data Reply, Disney, IMS Health, Rolls Royce, Shell, Sociéte Générale, VMWare and UBS, among others.
You’ll graduate with a highly desirable Masters qualification in a rapidly expanding sector with excellent graduate employability prospects. The skills and knowledge you’ll develop will be in high demand by employers including Google, Facebook, Microsoft and Yahoo, and you'll be well prepared to pursue a rewarding career.
- Gain invaluable skills and experience with a year in industry at one of the country's leading tech organisations.
- Benefit from strong industry ties, with close proximity to ‘England’s Silicon Valley’.
- Graduate with a Master's degree offering excellent graduate employability prospects.
- Tailor your learning with a wide range of engaging optional modules.
Core ModulesYear 1
This module covers algorithm-independent machine learning; unsupervised learning and clustering; exploratory data analysis; Bayesian methods; Bayes networks and causality; and applications, such as information retrieval and natural language processing. You will develop skills in data analysis, including data mining and statistics.
In this module you will develop an understanding of the basics of algorithmic thinking and problem solving using programming. You will become familiar with using the Java programming language, examining particular features and constructs as well as basics of object-oriented programming. You will use these to solve specific algorithmic tasks and evaluate programming solutions.
In this module you will learn how to use MATLAB (Matrix Laboratory) and WEKA (Waikato Environment for Knowledge Analysis) as tools for machine learning and data mining. For MATLAB, you will develop an understanding of how to input and output data using vectors, arrays and matrics; learn techniques in data visualization, including plots in 2 and 3 dimensions, scatter plots, barplots, and histograms; and learn how to implement concepts from linear algebra and statistics, including probability and matrix decompositions. For WEKA, you will develop an understanding of how to use the software as a tool for training and testing, predicting generalisation performance, and cross-validation; and learn how to implement decision trees, naïve Bayes classifiers, and clustering methods.
In this module you will develop an understanding of modern machine learning techniques and gain practical experience in developing machine learning systems. You will look at the main advantages and limitations of the various approaches to machine learning and examine the features of specific machine-learning algorithms. You will also consider how the ideas and algorithms of machine learning can be applied in other fields, including medicine and industry.
In this module you will develop an understanding of the on-line framework of machine learning for issuing predictions or decisions in real-time. You will learn about protocols, methods and applications of on-line learning, covering probabilistic models based on Markov chains and their applications, such as PageRank and Markov Chain Monte-Carlo. You will examine the time series models, exploring their connections with Kalman filters, and learning models based on the prequential paradigm, including prediction with expert advice, aggregating algorithm, sleeping and switching experts. You will also consider universal algorithms, their application to portfolio theory, and how prediction within a confidence framework is achieved.
This course is designed to enhance your awareness of the many ethical implications of working with advanced technology. The course recognises that the ethical issues in computing and AI come to the forefront through developments in technology, bringing new responsibility for novel ethical, social, and legal implications of technology almost on a daily basis.
In this module you will develop an understanding of the mathematical theory underlying the main principles and methods of statistics, in particular, parametric estimation and hypotheses testing. You will learn how to formulate statistical problems in rigorous mathematical terms, and how to select and apply appropriate tools of mathematical statistics and advanced probability. You will construct mathematical proofs of some of the main theoretical results of mathematical statistics and consider the asymptotic theory of estimation.
In this module you will develop an understanding of the principal methods of the theory of stochastic processes, and probabilistic methods used to model systems that exhibit random behaviour. You will look at methods of conditioning, conditional expectation, and how to generate functions, and examine the structure and concepts of discrete and continuous time Markov chains with countable state space. You will also examine the structure of diffusion processes.
You will spend this year on a work placement. You will be supported by the Department of Computer Science and the Royal Holloway Careers and Employability Service to find a suitable placement. This year forms an integral part of the degree programme and you will be asked to complete assessed work. The mark for this work will count towards your final degree classification.
You will carry out an extended piece of individual work under the supervision of an academic member of staff, including the preparation of a dissertation and any programs you may have written. Your project may stress theoretical, methodological, or implementation aspects of a problem or case study, and you may wish to build on the experience that you will have gained during your placement.
There are a number of optional course modules available during your degree studies. The following is a selection of optional course modules that are likely to be available. Please note that although the College will keep changes to a minimum, new modules may be offered or existing modules may be withdrawn, for example, in response to a change in staff. Applicants will be informed if any significant changes need to be made.Year 1
In this module you will develop an understanding of the underlying principles of large-scale data storage and processing frameworks. You will look at the opportunities and challenges of building massive scale analytics solutions, gaining hands-on experience in using large and unstructured data sets for analysis and prediction. You will examine the techniques and paradigms for querying and processing massive data sets, such as MapReduce, Hadoop, data warehousing, SQL for data analytics, and stream processing. You will consider the fundamentals of scalable data storage, including NoSQL databases, and will design, develop, and evaluate an end-to -nd analytics solution combining large-scale data storage and processing frameworks.
In this module you will develop an understanding of the mathematical and computational models underlying derivative securities. You will learn how to apply techniques for pricing derivatives and dynamic hedging, and look at the market efficiency hypothesis and its applications in examining financial techniques. You will also consider models of risk exposure and the techniques used for calculating value at risk.
In this module you will develop an understanding of the need for& verifying the correctness of systems against formal specifications of requirements. You will look at advanced model-checking checking techniques that have been adopted in industry, and the requirements of concurrent systems using both linear and branching temporal logic. You will analyse and model concurrent systems using automata-based design languages, and examine the principles of model checking. You will also consider the use of model-checkers such as SPIN and SMW to verify specifications against models of concurrent systems.
In this module you will develop an understanding of how modern multimedia communication work. You will look at the methods used for coding text, images, audio and video transfer over networking infrastructures, including layering, abstraction and the internet reference model. You will examine the use of compression, applications and standards, and quality of service requirements and consider internet technologies such as IP addressing, routing algorithms, and routing protocols such as RIP and OSPF.
In this module you will develop an understanding of the applications of digital audio, ranging from music production to audio enhancement. You will look at the fundamentals of sound, including nature, transmission and volume, and learn how to convert sound to and from the digital domain. You will consider how audio can be manipulated using digital signal processing algorithms, including post-processing and effects, and examine the applications for digital audio, such as music production, noise cancellation, audio enhancement and automatic music generation.
In this module you will develop an understanding of the fundamental concepts and standards of the semantic web. You will look at the notions, concepts, technologies and modelling techniques that constitute the semantic web, including standards such as RDF, RDFS and OWL. You will examine the underlying logical theory behind the semantic web, such as description logic, and consider how semantics can be used in new, more effective and intelligent ways to manage information and support applications.
In this module you will develop an understanding of how the internet works and its key protocols. You will look at the technologies used for web development, including scripting languages and their potential. You will consider how web services and related technologies can be used as a platform for business, and examine the importance of network security.
In this module you will develop an understanding of service-oriented architectures and models and their role in business information systems. You will look at some of the key computing skills, technologies, and techniques, and their application in modern organisations. You will consider interactions between service providers, consumers, brokers and aggregators, and examine the role of service level agreements and contracts for service provision. You will also evaluate service-oriented technologies and their potential for business transformation.
In this module you will develop an understanding of the principles and practices of gathering information and how it can be synthesised and used in a strategic context. You will look at the key channels and sources that may be used to gather information, and examine how internal and external information is used in organisations. You will consider the 'Big Data' revolution and the challenge that the exponential rise of external information presents to businesses as they attempt to make sense of it. You will learn how to identify patterns and trends for decision making, as well as modelling future activities.
In this module you will develop an understanding of the role of business intelligence systems in the IT environment of modern organisations. You will look at the concepts, terminology and architectures of data warehouses and business intelligence solutions, considering data modelling concepts and design solutions using dimensional modelling. You will examine the key elements of business intelligence applications such as data analysis, data mining and dashboards, and evaluate aspects of visualisation and the relationship between business intelligence solutions and CRM and ERP systems. You will also gain hands-on experience using industrial business intelligence tools.
In this module you will develop an understanding of the fundamental models of computational optimisation. You will look at the basic algorithms for solving computational optimisation problems, considering the theoretical and computational methods for analysing these. You will examine the software packages available, evaluating the linear programming model, graphical solutions, and the simplex method.
In this module you will develop an understanding of the main approaches currently in use in bioinformatics. You will look at the basic components of living cells, their functions and interactions, and other concepts essential to understanding the use of computers in biology. You will examine the analysis of DNA and protein sequences emerging from genome sequencing projects and genome-wide experimental assays, and consider the use of algorithms in bioinformatics, including dynamic programming sequence alignments, substitution matrices, and phylogenic trees.
In this module you will develop an understanding of the principles of statistical visualisation and open-ended exploratory analysis of data. You will look at the construction of linear projections of multivariate data and non-linear dimensions reduction methods. You will gain practical experience in using standard graph visualisation methods and evaluating results, and consider how to avoid data snooping. You will also critically evaluate choices in representational mode, glyph design, and colour design for presentation graphics
In his module you will develop an understanding of the methods used in the analysis of macro and financial time series data. You will analyse and critically evaluate empirical research in finance and macroeconomics, looking at linear and non-linear time series. You will consider the methodologies for large sample modelling of financial and economic data, and undertake a quantitative research project applying testing procedures on time-series data.
In this module you will be introduced to the underlying theory and empirical evidence in portfolio management and its practice in the financial sector. Portfolio theory is blended with practical issues encountered in the investment process, and you will cover topics which include identifying investor objectives and constraints, recognizing risk and return characteristics of investment vehicles, developing strategic asset allocations among equity, managing portfolio risk, increasing portfolio return, and evaluating portfolio and manager performance relative to investment objectives and other appropriate benchmarks. You will develop an understanding of how funds are allocated in portfolio construction, and look at security analysis, optimal portfolio selection and delegated portfolio management.
In this module you will develop an understanding of the most important elements of the default-free fixed income securities market, and the derivatives market. You will look at the analytical tools used in portfolio management and risk management. For bond portfolios, these will include yield curve construction, duration, convexity and formal term structure models. For derivatives, you will focus on valuation, trading mechanisms and management of credit risk.
In this module you will develop an understanding of the concepts of consistency, asymptotic normality, asymptotic efficiency, and be able to apply these to evaluate properties of microeconometric estimators. You will look at the principle and statistical theory of the gaussian mixture models (GMM) framework, including extremum estimators and maximum likelihood (ML) estimators. You will examine multiple GMM models (including FIVE, 3SLS, and SUR), analysing their statistical properties and their applications to data. You will consider panel data models, including fixed and random effects models, and the application of ML estimation to microeconometric models, including truncated and censored regression models, prohibit, and logit models.
In this module you will develop an understanding of the rational decision-making paradigm in economics, as well as its shortcomings over the past few decades. You will explore behavioural models, their formalisation and scope, including applications to finance, becoming familiar with both theoretical and experimental methods for research in decision theory and behavioural economics.
In this module you will develop an understanding of the construction of information networks, specifically the architecture and operation of the internet protocol suite. You will look at the construction of a modern computer system, considering hardware and software components which support multiprocessing. You will examine the causes and potential effects of vulnerabilities that affect computer systems and identify appropriate countermeasures, including user authentication and access control mechanisms. You will evaluate authentication and key exchange protocols, such as how SSL and TLS are applied to the internet, and analyse the key security threats faced in network environments.
In this module you will develop an understanding of the uses of cryptography. You will look at the basic cryptographic mechanisms used to provide core security services and examine differences between them, identifying situations in which they are most usefully employed. You will consider the issues that need to be addressed to secure an application, and evaluate the limitations of cryptography and methods for supporting it within a full security architecture.
The module is concerned with the protection of data transferred over digital networks, including computer and telecommunications networks. We review networking concepts, particularly the concepts of services and protocols, and study how services are incorporated in network communications by specifying protocols. We extend the discussion of services to address security concerns, considering how cryptographic primitives may be used to provide confidentiality, integrity and authentication services. We illustrate these concepts by considering case studies, including WEP/WPA/WPA2, GSM and UMTS, IPsec and SSL/TLS. We also study non-cryptographic countermeasures, including packet-filtering and intrusion detection.
In this module you will develop an understanding of the role of security mechanisms for modern computer systems, including both hardware and software. You will look at the mechanisms that are used to implement security policies, considering core concepts such as security models, subjects and objects, authorisation and access rights. You will examine the use and operation of a range of access and control methods and authentication mechanisms, such as tokens an biometrics. You will also and evaluate the main issues relating to software security and their effect on the security of computer systems, in particular, the practical implementation of access control.
In this module you will develop an understanding of the need for effective security management. You will look at alternative security strategies and examine methods for responding to security management problems. You will critically evaluate different approaches and consider security management requirements. Sessions will be delivered by a combination of security practitioners, information managers and academics and you will be encouraged to actively discuss the subject matter, engaging in an online discussion forum.
In this module you will develop an understanding of the applications of smart cards and security tokens and their use as assets in cyber security. You will look at the constituent components of common systems, analysing strengths and weaknesses in their manufacture and potential risks and security safeguards. You will consider the range of campabilities of SIM cards in smartphones and the main standards and applications of smarts cards for banking and finance. You will also examine the role of embedded smart card and RFID technology for passports, identity cards, and satellite TV, and the security measures that have protected past and current cards.
In this module you will develop an understanding of the foundations and theoretical underpinnings of how data is generated, stored, transmitted, and used as evidence. You will look at the methods used for the collection and analysis of digital evidence, and consider how the integrity of the underlying data is maintained. You will examine the general and UK legal requirements for data storage, and consider the frameworks for the handling and processing of such evidence.
In this module you will develop an understanding of the common approaches and methodologies used for carrying out and managing security and penetration testing, including legal requirements for such audits. You will look at network protocols, relevant computer system architectures, and web application systems, considering their vulnerabilities, common forms of attack, and security technologies designed to mitigate these. You will gain practical experience of exploiting vulnerabilities to penetrate a system, learning how to design secure systems and defend them against intrusion.
In this module you will develop an understanding of the importance of security in the development of applications. You will look at poor programming practices and how they can be exploited, leading to catastrophic security breaches. You will consider the threat posed by malicious software and examine some of the newer research trends that are likely to influence software security work in the coming years.
In this module you will develop an understanding of database security and concurrency control in distributed databases. You will look at methods used in failure recovery in distributed databases, and consider how security can be established within relational databases. You will examine the conflicting interactions between security requirements and concurrency control, examining the implications that security and its administration have in the context of commercial relational databases, such as Oracle. You will critically evaluate how access control policies can be adapted to relational databases, the approaches for achieving multi-level security while still permitting concurrent transaction execution, and see why confidentiality is so difficult to achieve within a statistical database.
In this module you will develop an understanding of the key areas of cyber security, with a particular focus on the critical national information (CNI) infrastructure. You will look at fault and attack models for information and cyber-physical systems, considering variants of attack trees. You will analyse large-scale networks and their robustness for both random failures and deliberate attacks, evaluating how key elements of the CNI, such as the internet and power and transport infrasturctures, can be captured by such models. You will also examine case studies of attacks by state actors and security problems in control systems protocols.
Teaching & assessment
Teaching is organized in terms of 11 weeks each. Examinations are taken in April/May of each academic year, except for Data Analysis for which the exam is in January. Your placement (internship) starts typically at the end of June or beginning of July and lasts for a maximum of one year. The individual project is taken over 12 weeks during the Summer after the placement.
A weekly seminar series runs in parallel with the academic programme, which includes talks by professionals in a variety of application areas as well as workshops that will train you to find a placement or a job and lead a successful career.
Assessment is carried out by a variety of methods including coursework, small group projects, and examinations, the proportions of which vary according to the nature of the modules. The placement is assessed as part of your degree (10% of the individual project).
Although the responsibility for finding a placement is ultimately with the student, our Careers Team will help you identify suitable opportunities, make applications and prepare for interviews. Please note that progression to the placement is conditional on good academic performance. Students who fail to qualify for or find a placement are automatically transferred to the one-year programme.
Computer Science, Economics, Mathematics, Physics, or other subjects that include a strong element of both mathematics and computing.
Normally we require a UK 2:1 (Honours) or equivalent in relevant subjects but we will consider high 2:2 or relevant work experience. Candidates with professional qualifications in an associated area may be considered. Where a ‘good 2:2’ is considered, we would normally define this as reflecting a profile of 57% or above.
International & EU requirements
English language requirements
All teaching at Royal Holloway is in English. You will therefore need to have good enough written and spoken English to cope with your studies right from the start.
The scores we require
- IELTS: 6.5 overall. No subscore lower than 5.5.
- Pearson Test of English: 61 overall. Writing 54. No subscore lower than 51.
- Trinity College London Integrated Skills in English (ISE): ISE III.
For more information about country-specific entry requirements for your country please see here.
Your future career
Demand for data scientists is buoyant, in the UK and worldwide, with salaries much higher than other IT professions and at least double the UK average full time wage. A Master's in Machine Learning at Royal Holloway, University of London offers students excellent graduate employability prospects. You’ll develop practical skills in machine learning techniques, making you an attractive candidate to employers. You’ll also be well-placed to pursue PhD study, should you choose to progress your studies further.
You’ll develop a range of highly sought-after transferable skills, while our proximity to the M4 corridor technology hub – also known as ‘England’s Silicon Valley’ – will provide you with excellent placement and networking opportunities to pave the way for a rewarding future career. We bring several companies to our campus throughout the year, both for fairs and for delivering advanced topics seminars, which are an excellent opportunity to learn about what they do and discuss possible placements or jobs. Our recent graduates have gone on to enjoy roles at organisations such as British Aerospace, Microsoft, Amazon, and American Express.
- Strong industry ties help to provide placement and networking opportunities with some of the country’s leading institutions.
- Together with our on-site Careers and Employability Service, we run one-to-one coaching sessions and workshops, helping you to find a placement or job and lead a successful career.
Fees & funding
Home and EU students tuition fee per year*: £11,900
The fee for the Year in Industry will be 20% of the first year fee for that academic year
International students tuition fee per year**: £21,500
The fee for the Year in Industry will be 20% of the first year fee for that academic year
Other essential costs***: There are no single associated costs greater than £50 per item on this course.