Machine Learning (ELE520)

The course focuses on the mathematical foundations of methods for learning the underlying structures from data and to train models that can make predictions when presented with new data. Such predictions can typically involve the discrimination between different categories of data, or pattern classification, which will be the main focus of this course.

Course description for study year 2024-2025. Please note that changes may occur.


Course code




Credits (ECTS)


Semester tution start


Number of semesters


Exam semester


Language of instruction



The course starts with an introduction to the fundamental theory, Bayes decision theory. This statistical and mathematically based theory let us define optimal decision thresholds to distinguish between data elements, represented by so called feature vectors. These decision thresholds are optimal with respect to minimizing the expected error rate. The introductory theory assumes that the statistical functions describing the data are known. This will not be true in practice where we will have to estimate these functions using parametric and non-parametric methods. Alternatively to estimating the statistical functions directly, we can estimate the coefficients in the polynomials describing the decision borders directly. This is introduced with linear discriminant functions where we seek to find the polynomial coefficients the rate of error expressed by a criteria function. To do this, we use iterative gradient descent techniques. Curve fitting by regression analysis is also presented in this context. Further to this neural networks are presented as a method to use when linear discriminant functions falls short. As part of this, deep neural networks will also be discussed, which is the foundation for deep learning. In the techniques presented this far, the class to which each data element belongs is assumed known. In the application of clustering techniques we no longer make this assumption and seek to find natural clusters in the data material. Finally methods for evaluating classifier performance are presented. Another important aspect of classification is how to characterize the data material as feature vectors. Theoretical and laboratory exercises will accompany the topics. During the course illustrative examples from ongoing research projects within biomedical data analysis are presented.

Learning outcome

At the end of this course, the student should be able to recognize problems that can be handled by machine learning methods. Furthermore, the student shall be able to use the subject terminology acquired throughout the course to state the problem in a precise manner. To be able to solve the problem, the student must be able to implement a classifier by training it using a representative data material and make sure that it is capable of handling new data. The student should be able to handle different type of classifiers and know the theory for these so that specially designed solutions can be made.

Required prerequisite knowledge


Recommended prerequisites

DAT120 Introduction to Programming, MAT100 Mathematical Methods 1, STA100 Probability and Statistics 1, STA500 Probability and Statistics 2, STA510 Statistical Modeling and Simulation
In the course the different methods are communicated by presenting and explaining the mathematical details. Students who wish to follow the course must have solid prior mathematical knowledge especially in linear algebra and statistics. There is a lot of emphasis on the laboratory part of the course where one uses Scientific Python. Those who follow the course must therefore also have good programming skills, and must be prepared to write functions using iterative control structures and think about code reuse.


Form of assessment Weight Duration Marks Aid
Written exam 1/1 4 Hours Letter grades No printed or written materials are allowed. Approved basic calculator allowed

Digital exam.

Coursework requirements

Mandatory work requirements (such as theoretical exercises, laboratory assignments, project assignments and the like) must be approved by the subject lecturer within the specified deadline. The mandatory assignment plan must be approved in order to be admitted to the examination. Candidates who fail the compulsory practice program may not be able to complete this until the next time the course has ordinary teaching.

Course teacher(s)

Course coordinator:

Trygve Christian Eftestøl

Coordinator laboratory exercises:

Ivica Kostric

Head of Department:

Tom Ryen

Method of work

8 hrs per week with typically 4 hrs lectures and 2 hrs computer exercises and 2 hrs theoretical exercises per week. There might be variations to this.

It is important to work with theoretical and practical exercises to be able to solve real world problems.

Overlapping courses

Course Reduction (SP)
Pattern recognition (MIK190_1) 10
Machine Learning (E-ELE501_1) 5
Machine learning (E-MDS110_1) 5
Machine Learning, Machine learning ( E-ELE501_1 E-MDS110_1 ) 10

Open for

Data Science - Master of Science Degree Programme Computational Engineering - Master of Science Degree Programme Computer Science - Master of Science Degree Programme Industrial Economics - Master of Science Degree Programme Robot Technology and Signal Processing - Master of Science Degree Programme
Exchange programme at Faculty of Science and Technology

Course assessment

There must be an early dialogue between the course supervisor, the student union representative and the students. The purpose is feedback from the students for changes and adjustments in the course for the current semester.In addition, a digital subject evaluation must be carried out at least every three years. Its purpose is to gather the students experiences with the course.


Search for literature in Leganto