## Machine Learning in Signal Processing

### Lecturers

### Details

#### Time and place:

- Tue 8:15-9:45
- Thu 14:15-15:45

#### Fields of study

- WF EEI-BA from SEM 5
- PF ASC-MA from SEM 1
- WPF CME-MA from SEM 1
- WPF ICT-MA-ES from SEM 1
- WPF ICT-MA-MPS from SEM 1
- WPF ICT-MA-NDC from SEM 1
- WPF CE-MA-TA-IT from SEM 1
- WF EEI-MA from SEM 1

#### Content

This course is an introduction into statistical machine learning and artificial intelligence. The special emphasis is on applications to modern signal processing problems. The course is focused on design principles of machine learning algorithms.

First we will study basic methods for regression and classification: linear regression, logistic regression, the nearest neighbors algorithm. Based on these examples, we will discuss the fundamental trade-off between the flexibility of the model and the ability to fit the model based on the moderate amount of training data. We will contrast learning in high-dimensional spaces vs. learning in low dimensional spaces.

Next, we will study methods that help make linear models flexible: polynomial features and splines. When these tools are used, regularization is crucial. We will discuss structured signal representations: short-time Fourier transform and wavelets. We will focus on the importance of sparsity in signal representations.

This will lead us to compressed sensing and to other modern convex-optimization-based methods for signal denoising, reconstruction, and compression. We will review key concepts in convex optimization, study the LASSO, support vector machines, the idea of kernels.

The last part of the course will focus on the breakthrough new technology for computer vision: the deep learning.

The course contains exercises: 30 percent mathematical and 70 percent programming in Python. You will be asked to implement basic machine learning and signal processing algorithms yourself. For more advanced algorithms, you will practice using powerful numerical and optimization libraries (numpy, cvxpy, scikit-learn, pywavelets, pytorch).

#### Recommended Literature

- T. Hastie, R. Tibshirani, J. Friedman: The Elements of Statistical Learning: Data Mining, Inference, and Prediction, Second Edition, Chapters 17. - A. Ng: Lecture notes and materials for Stanford CS229 class. Lecture Notes and Exercises. - M. Kon: Lecture notes on basics of wavelets. - M. Nielsen: Neural networks and deep learning.

#### ECTS information

##### Title

Machine Learning in Signal Processing

##### Credits

5

##### Content:

This course is an introduction into statistical machine learning and artificial intelligence. The special emphasis is on applications to modern signal processing problems. The course is focused on design principles of machine learning algorithms.

First we will study basic methods for regression and classification: linear regression, logistic regression, the nearest neighbors algorithm. Based on these examples, we will discuss the fundamental trade-off between the flexibility of the model and the ability to fit the model based on the moderate amount of training data. We will contrast learning in high-dimensional spaces vs. learning in low dimensional spaces.

Next, we will study methods that help make linear models flexible: polynomial features and splines. When these tools are used, regularization is crucial. We will discuss structured signal representations: short-time Fourier transform and wavelets. We will focus on the importance of sparsity in signal representations.

This will lead us to compressed sensing and to other modern convex-optimization-based methods for signal denoising, reconstruction, and compression. We will review key concepts in convex optimization, study the LASSO, support vector machines, the idea of kernels.

The last part of the course will focus on the breakthrough new technology for computer vision: the deep learning.

The course contains exercises: 30 percent mathematical and 70 percent programming in Python. You will be asked to implement basic machine learning and signal processing algorithms yourself. For more advanced algorithms, you will practice using powerful numerical and optimization libraries (numpy, cvxpy, scikit-learn, pywavelets, pytorch).

##### Literature:

- T. Hastie, R. Tibshirani, J. Friedman: The Elements of Statistical Learning: Data Mining, Inference, and Prediction, Second Edition, Chapters 17. - A. Ng: Lecture notes and materials for Stanford CS229 class. Lecture Notes and Exercises. - M. Kon: Lecture notes on basics of wavelets. - M. Nielsen: Neural networks and deep learning.

#### Additional information

Expected participants: 18