MSc in Computer Science - Specialization in Advanced Machine Learning and Data Science
Aarhus, Denmark
DURATION
4 Semesters
LANGUAGES
English
PACE
Full time
APPLICATION DEADLINE
Request application deadline *
EARLIEST START DATE
Aug 2025
TUITION FEES
EUR 16,300 / per year **
STUDY FORMAT
On-Campus
* 15 January for non-EU citizens and 1 March for EU citizens
** for non-EU/EEA students only | EU/EEA/Swiss citizen students study for free
Introduction
Specializations in Computer Science
The master’s programme runs over two years with four semesters. Three semesters are dedicated to specialisations or electives. The last semester is for your master’s thesis, which some choose to write in collaboration with a company. Once enrolled, our programme manager will help you complete your master’s programme based on your interests.
Specialization
- Two 30 ECTS specializations
Elective
- The recommendation is a 3rd specialization.
- A small number of elective courses in computer science are offered in addition to specializations. Project work (partly) is also a possibility.
- Elective courses may be supportive rather than core computer science, e.g. extra mathematics courses.
- There may be requirements for the composition of the study program in connection with possible admission.
- In this case, mandatory courses replace elective courses (partly).
Thesis
- Written within the area of specialization 1 or 2.
Advanced Machine Learning and Data Science Specialization*
1st Sem (Fall): Deep Learning for Visual Recognition (10 ECTS)
2nd Sem (Spring): Cluster Analysis (10 ECTS)
3rd Sem (Fall): Algorithms, Incentives, and Data (10 ECTS)
*Semesters are independent – and can be taken in any order
*Machine Learning is a prerequisite for this specialization
Admissions
Curriculum
Deep Learning for Visual Recognition
Course content
Deep learning has enabled today’s AI systems to drive cars autonomously, beat humans in computer games, and paint whatever you tell them to. The deep learning revolution is upon us, transforming many businesses and changing how we write software.
This course is a deep dive into the details of deep learning with a focus on solving computer vision tasks, like image classification, object detection, image segmentation, face recognition, human pose estimation, and image captioning. Computer vision is a prominent field within deep learning.
During the 14-week course, students will learn to implement, train and debug their neural networks and gain a theoretical understanding of neural network architectures and optimization strategies. The weekly hands-on exercises will involve setting up computer vision problems, like image recognition, and applying learning algorithms and practical engineering tricks for training and fine-tuning the networks.
The mandatory course allows students to apply what they have learned in class to a problem of their interest (in groups of 1-3 students).
Description of qualifications
Objectives of the course:
The participants will after the course have detailed knowledge of deep neural networks and will be able to solve complex visual recognition tasks with deep learning.
Learning outcomes and competencies:
At the end of the course, the participants will be able to:
- Identify and describe visual recognition tasks that can be solved with deep learning.
- Describe and compare different neural network architectures.
- Explain and compare techniques for training neural networks.
- Apply deep learning to standard visual recognition tasks and interpret the results.
- Design their course project, implement it, experiment with it, and analyse and relate the results to techniques and theories in deep learning for visual recognition.
Cluster Analysis
Course content
This course will introduce several clustering algorithms along with techniques by which we can analyze them. In the beginning, we will study center-based clustering algorithms such as the popular k-means objective. We will see approximation algorithms for these problems based on (basic) rounding for linear programs and sampling techniques. In addition, we will introduce several methods to compress data sets concerning these objectives.
In the next step, we move on to cut-based clustering problems. Here we will introduce both spectral methods (Cheeger's inequality), metric embeddings (Leighton-Rao), and semi-definite programming (Max-Cut).
Finally, we will move on to clustering instances with stability assumptions. We first motivate stability assumptions by showing how they challenge Kleinberg's impossibility axioms. Next, we will consider a stability assumption for which practical successful heuristics have provable guarantees. These include k-means++ and Llyods algorithm (cost-stability) and hierarchical clustering (perturbation resilience and planted partition models).
This course mainly focuses on those clustering algorithms that are important in both theory and practice. While the lectures will focus on the theoretical analysis, a greater (but not exclusive) focus on practical aspects is placed on the implementation of these algorithms for the hand-ins.
List of topics (some topics will take multiple lectures)
- Introduction and Kleinberg’s Impossibility Theorem
- k-Means: Lloyd’s Algorithm and k-Means++
- Facility location/k-Median: LP-based approximation
- Corsets
- Cut-Based Clustering
- Spectral Clustering
- Dimension Reduction
- Stability Conditions
- Hierarchical Clustering
Description of qualifications
Objectives of the course
The course introduces theoretical aspects of cluster analysis, along with strong application ties justifying why these problems and algorithms are studied. We will survey most variants of algorithms that have widespread impact in practice and are simultaneously amenable to theoretical analysis. The course will also introduce approximation algorithms based on linear programming and spectral methods, as well as sampling techniques for clustering and compressing large data sets.
Algorithms, Incentives, and Data
Course content
The course will cover recent advances in the area of algorithmic game theory, with a particular focus on the role of data in the design of algorithms that are simultaneously efficient and robust to the strategic behaviour of the entities involved in computation. It will first cover the theory of mechanism design for single-parameter settings, with a focus on optimizing social welfare and revenue in auctions. Applications to sponsored search will also be discussed. Then, the design principles for designing simple but approximately optimal auctions will be explored. In addition to the classical theory that assumes accurate statistical information about the input, scenarios in which optimal auctions have to be learned using available samples of input data will be considered. Other topics include mechanism design in multi-parameter settings (including the VCG mechanism for social welfare maximization), mechanism design with payment constraints, and mechanisms without money, with applications to matching problems, kidney exchange, and simple machine learning tasks. The last part of the course will focus on non-truthful mechanisms and the games they induce between the entities involved in computation. Issues such as game dynamics and efficiency of equilibria (price of anarchy) will be addressed in congestion games and auctions.
Indicative list of lectures
- Basics of mechanism design, examples of rules that lead to undesired strategic behaviour, introduction to the inefficiency of selfish behaviour
- Single-item auctions, sponsored search ad auctions, ad auction data
- Myerson's monotonicity lemma
- Algorithmic mechanism design, Knapsack auctions, revelation principle
- Revenue-maximizing auctions
- Simple near-optimal auctions, prophet inequalities
- Learning optimal auctions from samples
- Multi-parameter mechanism design, combinatorial auctions, spectrum auctions
- Mechanism design with payment constraints
- Mechanism design without money, stable matchings, kidney exchange
- Mechanism design for machine learning tasks: truthful mean estimation, regression, classification
- Games and equilibria, potential games, congestion games, action games
- Price of anarchy (congestion games)
- Price of anarchy (auctions)
- Welfare guarantees from data
- Best-response dynamics
- No-regret dynamics
- Swap regret and the minimax theorem
Description of qualifications
Purpose
After the course, the participants will have obtained a good knowledge of the basic design principles for truthful mechanisms in single and multi-parameter settings and of analysis techniques for non-truthful mechanisms. These include the general theoretical background necessary for solving problems when the use of monetary transfers (payments) between the computing entities is allowed as well as mechanism design without money. In addition, the participants will become familiar with mechanism design from sampled data, which is the most important design and analysis scenario in practice.