|SCIENTIFIC DISCIPLINARY SECTOR||ING-INF/03|
|MODULES||Questo insegnamento è un modulo di:|
AIMS AND CONTENT
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
- understand the fundamental concepts of autonomous systems
- apply the concepts acquired to implement simple signal processing algorithms
- analyze and evaluate working solutions to identify their basic structure
- 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
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.
The titles of the main contents discussed during frontal lessons are provided in the following list
- 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
Lectures slides (downloadable on AulaWeb)
Source code developed during the lectures (downloadable on AulaWeb and GitHub)
To learn more:
- Ian Goodfellow, Yoshua Bengio, Aaron Courville, "Deep Learning", The MIT Press 2016
- Francois Chollet, "Deep Learning With Python", Manning Pubns Co; 2° edition, 2022
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
SANDRO ZAPPATORE (President)
ROBERTO BRUSCHI (President Substitute)
LUCIO MARCENARO (President Substitute)
L'orario di tutti gli insegnamenti è consultabile all'indirizzo EasyAcademy.
Development and presentation of a practical project work demonstrating how signal processing can be used to improve the autonomy of an artificial system.
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.
|17/02/2023||09:00||GENOVA||Esame su appuntamento|
|15/09/2023||09:00||GENOVA||Esame su appuntamento|