### Timetable

### Description

Master's Programme in Data Science is responsible for the course.

The course belongs to the Machine learning module.

The course is available to students from other degree programmes.

**Prerequisites in terms of knowledge **

Understanding of probability calculus and statistics (including multivariate statistics), linear algebra (matrix calculus) and differential calculus (differentiation and integration). One needs to be able to fluently follow mathematical description of methods and algorithms based on these concepts, as well as to perform simple derivations. Programming skills in some numerical language (typically Python or R) sufficient for implementing machine learning algorithms.

**Prerequisites for students in the Data Science programme, in terms of courses **

DATA11002 Introduction to Machine Learning

**Prerequisites for other students in terms of courses **

DATA11002 Introduction to Machine Learning

**Recommended preceding courses **

MAT22005 Bayesian Inference, DATA20001 Deep Learning, DATA12002 Probabilistic Graphical Models

Courses in the Machine Learning and Statistical Data Science modules

Other courses that support the further development of the competence provided by this

course:

Advanced Statistical Inference, Advanced Course in Bayesian Statistics, Data Science Project

Obtains deeper knowledge of domain skills in machine learning: Can describe the basic formulation of machine learning as minimising the expected risk, and recognises alternative formulations for the risk. Can derive practical loss functions starting from the formal definition, and can describe the relationship between probabilistic models and loss minimisation. Can describe clearly the core tasks of unsupervised and supervised learning, and recognises also more advanced learning setups. Is able to derive and implement in a numerical programming language at least one algorithm suitable for each typical unsupervised learning task: clustering, factor analysis and dimensionality reduction. Can derive and implement in a numerical programming language sparse and regularised linear methods for classification and regression, and can implement some non-linear classification methods such as random forests and support vector machines. Recognises various forms of neural networks and can follow derivation of the relevant learning algorithms and regularisation techniques. Is able to implement simple deep learning models using suitable software frameworks.

Recommended time/stage of studies for completion: first spring

Term/teaching period when the course will be offered: yearly in spring, fourth period

Formulation of machine learning as risk minimisation and as probabilistic modelling. Different kinds of machine learning tasks, covering also advanced setups such as transfer learning. Optimisation for machine learning: gradient-based methods, expectation maximisation, back-propagation. Unsupervised learning methods: clustering, factor analysis, matrix factorisation, non-linear dimensionality reduction. Supervised learning methods: Linear and non-linear classifiers, kernel methods, decision trees and forests, boosting. Neural networks and deep learning: multi-layer perceptron, convolutional networks, autoencoders, Boltzmann machines.

Course book: Kevin P. Murphy "Machine Learning: A Probabilistic Perspective", MIT Press, 2012.

The course book is complemented with additional publicly available material, and the course book may change in future.

The primary mode of instruction consists of lectures and exercise sessions with active guidance, supported by other forms of teaching methods when applicable. The students are encouraged to attend the lectures and they need to solve exercise problems including problems involving programming tasks to reach the learning outcomes related to implementation skills. The exercise problems are formulated in an open manner to support acquisition of problem-solving skills, and require written presentation to facilitate learning of scientific presentation skills.

Separate exams last 3 hours and 30 minutes. Renewal exam (marked with "(U)") is the first separate exam after the course and also a renewal exam of course exam(s). In a renewal exam the points student has earned during the course are taken into account. Exams marked with "(HT)" are allowed only to students who have completed the obligatory projects or other exercises included in those courses. Exams marked with "(HT/U)" are renewals to students who have completed the obligatory projects during the course. Separate exams might cover different area than the lectured course. Check the course web page and contact the responsible teacher if in doubt.

The course is completed via a combination of exam and exercises, and both parts need to be passed to complete the course. Part of the exercises involve programming.

Completing the course with separate exam requires solving a small research project.