Skip to main content
CODE 104780
ACADEMIC YEAR 2023/2024
CREDITS
SCIENTIFIC DISCIPLINARY SECTOR ING-INF/03
LANGUAGE English
TEACHING LOCATION
  • GENOVA
SEMESTER 2° Semester
MODULES Questo insegnamento è un modulo di:
TEACHING MATERIALS AULAWEB

AIMS AND CONTENT

LEARNING OUTCOMES

The course is aimed at providing machine learning basic and advanced techniques for data driven signal processing models to be used within autonomous systems design. In particular, perception and control modules in autonomous systems rely more and more on signal processing approaches whose parametrization can be learned from observing multimedia heterogeneous signals produced by the artificial system while performing specific tasks. The course analyses data acquisition and processing tradeoffs between edge and cloud resources on the basis of real-time, computational and energy consumption requirements. Specific attention will be devoted to high dimensional data processing on the edge (with real practical examples in Python), showing how deep learning approaches can be adapted and optimized for working with limited computational capabilities.

AIMS AND LEARNING OUTCOMES

The student who has successfully followed the teaching of "Multimedia Signal Processing for Autonomous Systems" will be able to

  1. understand the fundamental concepts of autonomous systems
  2. apply the concepts acquired to implement simple signal processing algorithms
  3. analyze and evaluate working solutions to identify their basic structure
  4. design, create and verify the functioning of a signal processing algorithm starting from theoretical models

In particular, during this teaching the student will learn to:

  • Understand the computational foundation of multimedia signal processing through Python's scientific computing stack
  • Understand single-layer neural networks and the perceptron algorithm
  • Apply linear algebra and calculus for deep learning, optimize parameters with gradient descent approach
  • Use automatic differentiation with PyTorch
  • Train, use and evaluate a variety of deep learning architecture with specific applications to autonomous systems, such as: multilayer perceptrons, convolutional neural networks, recurrent neural networks, autoencoders, variational autoencoders, generative adversarial networks, self-attention and transformer networks.
  • Design and develop simple deep neural networks based architecture for adding new functionalities to autonomous systems

TEACHING METHODS

The lessons alternate theoretical explanations with practical exercises. Theoretical explanations are frequently exemplified with the analysis, execution, and debugging of code fragments directly on the teacher's PC. All the material seen in class (slides and practical examples) is shared through the AulaWeb and Teams platforms. Students can interact directly with the teacher during lessons or through the Teams platform.

SYLLABUS/CONTENT

The titles of the main contents discussed during frontal lessons are provided in the following list

  • Introduction
  • Computational foundations
    • Python, Python’s scientific computing stack, data preprocessing and machine learning with scikit-learn)
  • Single-layer neural networks: The perceptron algorithm
  • Mathematical and computational foundations
    • Linear algebra and calculus for deep learning, Parameter optimization with gradient descent, Automatic differentiation with PyTorch
  • Introduction to neural networks
    • Multinomial logistic regression / Softmax regression, Multilayer perceptrons and backpropration, Regularization to avoid overfitting, Input normalization and weight initialization, Learning rates and advanced optimization algorithms
  • Deep learning for computer vision and language modeling
    • Introduction to convolutional neural networks, Convolutional neural networks architectures, Introduction to recurrent neural networks
  • Deep generative models
    • Autoencoders, Variational autoencoders, Introduction to generative adversarial networks, Self-attention and transformer networks

By dealing with topics of scientific-technological interest such as autonomous systems, this teaching contributes to the achievement of the following Sustainable Development Goals of the UN 2030 Agenda:

8.2 (Achieving higher standards of economic productivity through diversification, technological progress and innovation, also with particular attention to high added value and labor intensive sectors)

9.5 (Increase scientific research, improve the technological capabilities of the industrial sector in all states - especially in developing countries - as well as encourage innovations and substantially increase, by 2030, the number of employees for every million people, in the research and development sector and expenditure on research – both public and private – and on development)

RECOMMENDED READING/BIBLIOGRAPHY

Lectures slides (downloadable on AulaWeb)

Source code developed during the lectures (downloadable on AulaWeb and GitHub)

To learn more:

Students with learning disorders ("disturbi specifici di apprendimento", DSA) will be allowed to use specific modalities and supports that will be determined on a case-by-case basis in agreement with the delegate of the Engineering courses in the Committee for the Inclusion of Students with Disabilities.

TEACHERS AND EXAM BOARD

Exam Board

ALESSANDRO CARREGA (President)

LUCIO MARCENARO (President)

LESSONS

Class schedule

The timetable for this course is available here: Portale EasyAcademy

EXAMS

EXAM DESCRIPTION

Development and presentation of a practical project work demonstrating how signal processing can be used to improve the autonomy of an artificial system.

ASSESSMENT METHODS

The student who takes the "Multimedia Signal Processing for Autonomous Systems" exam is assigned a practical project to be solved through the implementation of signal processing algorithms by using one of the techniques described during the lectures. The implemented system should be able to increase the degree of autonomy of an artificial system by adding smart functionality to it. Through the analysis of the solution developed and presented by the student, it is verified at what level the fundamental concepts of autonomous systems have been understood, how these concepts have been applied for the implementation of the project, if the student is able to analyze and evaluate the functioning of the programs created and how the theoretical models studied in class are applied to design and create the required software. The evaluation of the exams is based on the effectiveness of the system implemented and its performance, on the quality of the project carried out and on the clarity of presentation.​

Exam schedule

Data Ora Luogo Degree type Note
16/02/2024 09:00 GENOVA Esame su appuntamento
18/06/2024 09:00 GENOVA Orale
02/07/2024 09:00 GENOVA Orale
16/07/2024 09:00 GENOVA Orale
05/09/2024 09:00 GENOVA Orale
13/09/2024 09:00 GENOVA Esame su appuntamento

FURTHER INFORMATION

Students with disabilities or learning disorders can use specific modalities and supports that will be determined on a case-by-case basis in agreement with the Delegate of the Engineering courses in the Committee for the Inclusion of Students with Disabilities. Students are invited to contact the teacher of this course and copy the Delegate (https://unige.it/commissioni/comitatoperlinclusionedeglistudenticondisabilita.html) without sending documents about their disability

Agenda 2030 - Sustainable Development Goals

Agenda 2030 - Sustainable Development Goals
Decent work and economic growth
Decent work and economic growth
Industry, innovation and infrastructure
Industry, innovation and infrastructure