Single-Course English 5 ECTS

Machine learning for signal processing

Overall Course Objectives

To provide the participants’ with knowledge of
– Fundamental and widely applied signal processing methods.
– Matlab or Python as a tool for the development of signal processing algorithms.
The course enables the participants to derive and construct a modern signal processing system based on machine learning

Learning Objectives

  • Explain, apply and analyze properties of discrete time signal processing systems
  • Apply the short time Fourier transform to compute the spectrogram of a signal and analyze the signal content
  • Explain compressed sensing and determine the relevant parameters in specific applications
  • Deduce and determine how to apply factor models such as non-negative matrix factorization (NMF), independent component analysis (ICA) and sparse coding
  • Deduce and apply correlation functions for various signal classes, in particular for stochastic signals
  • Analyze filtering problems and demonstrate the application of least squares filter components such as the Wiener filter
  • Describe, apply and derive non-linear signal processing methods based such as kernel methods and reproducing kernel Hilbert space for applications such as denoising
  • Derive maximum likelihood estimates and apply the EM algorithm to learn model parameters
  • Describe, apply and derive state-space models such as Kalman filters and Hidden Markov models
  • Solve and interpret the result of signal processing systems by use of a programming language
  • Design simple signal processing systems based on an analysis of involved signal characteristics, the objective of the processing system, and utility of methods presented in the course
  • Describe a number of signal processing applications and interpret the results

Course Content

Course content will vary from year to year, but typically the following learning modules will be included:

– Linear time-invariant systems, Decomposition of signals, DTFT
– Window functions, STFT, Spectrogram
– Independent component analysis, Non-negative matrix factorization
– Stochastic processes, correlation functions, Wiener filter, linear prediction
– Stochastic gradient descent, least mean squares adaptive algorithm, Recursive least squares
– State-space models (Kalman filters Hidden Markov models)
– Sparse aware sensing (lasso, sparse priors), compressed sensing, dictionary learning
– Kernel methods (Kernel ridge regression, Support vector regression)

Recommended prerequisites

01025/01034/01035/01037/02402/02403/02405/02323/02450/02462/22051/31606/31610/30160, Linear algebra, Fourier series, basic probability theory,
basic knowledge of machine learning, basic knowledge of linear systems and signals, and
knowledge of either Matlab or Python

Teaching Method

Lectures and exercises. Each exercise consists of hand derivations of central equations and coding of algorithms, which will then be run on either simulated or real data. Hand derivations is a substation part of the course.


This course forms together with courses 02456, 02460, and 02477 the advanced courses in the area of machine learning. The corresponding introductory machine learning course is 02450, and the corresponding introductory signal course is 22051 or 30160.

See course in the course database.





13 weeks




DTU Lyngby Campus

Course code 02471
Course type Candidate
Semester start Week 35
Semester end Week 48
Days Thurs 13-17

7.500,00 DKK