93915 - Biomedical Signal Processing And Machine Learning

Academic Year 2021/2022

  • Moduli: Stefano Diciotti (Modulo 1) Chiara Marzi (Modulo 2)
  • Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
  • Campus: Cesena
  • Corso: Second cycle degree programme (LM) in Biomedical Engineering (cod. 9266)

Learning outcomes

At the end of the course, the student has the main theoretical and practical tools for the acquisition and numerical processing, also through machine learning algorithms, of data and signals with particular emphasis on medical-biological problems. He/she has the theoretical knowledge on time-discrete signals, on stochastic processes, on the evaluation of the power spectral density of a stationary stochastic process, on time-frequency or time-scale methods for the analysis of non-stationary signals. He/she is able to process data and signals using a computer applying filtering and machine learning techniques. He/she is able to deepen further innovative topics by evaluating their pros and cons.

Course contents

1) Review of biomedical signals. Characteristics and properties: deterministic and stochastic signals, stationarity, ergodicity, spontaneous and induced signals. Signals classification.

2) Main characteristics of discrete time signals. The analog-digital conversion. The discrete time Fourier transform and the Z transform. Characteristics of time invariant systems in the discrete domain: the FIR and IIR systems and their implementation. The discrete time Fourier series and its relationship with the discrete time Fourier transform. Practice exercises: discrete time signals, sampling and frequency analysis.

3) The design of numerical filters. The main design parameters for a filter. Characteristics of IIR filters: Butterworth, Chebyshev and elliptic filters. The design of IIR filters with the bilinear transform. Characteristics of FIR filters and their design with the window technique. Practical exercises: filtering synthetic and biological signals.

4) Random variables. The fundamental properties of random variables. The joint and conditional probability density function. Bayes theorem. Practical exercise: probability and correlation.

5) Stochastic processes and power spectral density. Fundamentals of stochastic processes. Classical methods for the estimation of power spectral density: correlogram, periodogram, Welch method. Modern methods for power density estimation: main characteristics of AR, MA and ARMA models. Algorithms for parameter determination in these models: the Yule-Walker equations. Practical exercises: application of several spectral estimation methods to synthetic and biomedical signals.

6) Non-stationary processes. The time-frequency localisation of a non-stationary signal. The constancy of the product “duration/frequency band”. The short-time Fourier transform and its limitations. Introduction to wavelets and their advantages. The spectrogram. The continuous and the discrete wavelet transforms. The scalogram.

7) Machine learning. Introduction to machine learning. Cross-validation, stratified cross-validation, nested cross-validation. Complexity of a model and determination of hyperparameters. The Bayes classifiers with minimum error and with minimum risk. Introduction to Support Vector Machines. Empirical evaluation of the error: cross-validation and leave one out. Methods for the estimation of the probability density. ROC analysis: confusion matrix, ROC plane and curves. Practical exercise: ROC analysis.


Notes provided by the Professor.

A. Oppenheim, R. Schafer. "Discrete-Time Signal Processing", Prentice Hall, 2009.

F. Argenti, L. Mucchi, E. Del Re. “Elaborazione numerica dei segnali”, McGraw-Hill, 2011.

E. Alpaydin. “Introduction to Machine Learning”, Cambridge: The MIT Press, 2009.

B. Boashash, ed.. "Time Frequency Signal Analysis and Processing - A Comprehensive Reference", Elsevier, 2003.

A. Subasi, "Guide for Biomedical Signals Analysis Using Machine Learning TechniquesA MATLAB® Based Approach", Academic Press, 2019.

M. Lutz, "Learning Python", O'Reilly, 2013

Teaching methods

The course comprehends both ex-cathedra lessons and practical exercises on the personal computer, in Python language. The aim of the lessons is to provide the students with a theoretical knowledge about the main signal processing methods, and to make them aware about the advantages and limitations of each available technique. The practical exercises aim at training the students on the resolution of simple real biomedical problems, and at showing the potential benefits but also the shortcomings and difficulties introduced by processing techniques and software packages.

Assessment methods

Written (including Python exercise in the lab) and oral exam. The Matlab practical exercises carried out during the course must be sent by email 7 days before the written examination. The exam aims at assessing the pursuing of the main objectives:
- knowledge of the main mathematical methods for the analysis of discrete signals;
- knowledge of the main digital filter techniques;
- knowledge of the techniques for the study of stationary and non-stationary stochastic processes;
- knowledge of the methods for statistical classification.
The analytical and synthetic attitudes of the student, and his/her exposition capability are also evaluated during the exam.

Teaching tools

Document camera, videoprojector.

Notes provided by the Professor.

Personal computer laboratory.

Python environment, for performing practical exercises in the computer science laboratory.

Office hours

See the website of Stefano Diciotti

See the website of Chiara Marzi


Good health and well-being Quality education

This teaching activity contributes to the achievement of the Sustainable Development Goals of the UN 2030 Agenda.