PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

Elenco notifiche



Machine learning for vision and multimedia

01URPYG, 01URPOV, 01URPQW

A.A. 2025/26

Course Language

Inglese

Degree programme(s)

Master of science-level of the Bologna process in Ingegneria Informatica (Computer Engineering) - Torino
Master of science-level of the Bologna process in Mechatronic Engineering (Ingegneria Meccatronica) - Torino

Course structure
Teaching Hours
Lezioni 37,5
Esercitazioni in laboratorio 22,5
Tutoraggio 20
Lecturers
Teacher Status SSD h.Les h.Ex h.Lab h.Tut Years teaching
Lamberti Fabrizio Professore Ordinario IINF-05/A 19,5 0 0 0 6
Co-lectures
Espandi

Context
SSD CFU Activities Area context
ING-INF/05 6 B - Caratterizzanti Ingegneria informatica
2025/26
Il corso si pone l’obiettivo di fornire allo studente una preparazione pratico-teorica sull’applicazione delle tecniche di machine e deep learning nell’ambito della visione artificiale, dell’elaborazione di informazioni multimediali e nella creazione di contenuti digitali e grafica tridimensionale. Nella parte iniziale del corso, verranno introdotti i fondamenti teorici delle reti neurali profonde. Particolare attenzione verrà data all’analisi delle architetture disponibili allo stato dell’arte per la visione artificiale. Attraverso laboratori e attività progettuali, si acquisirà esperienza pratica con i principali framework di programmazione e con le tecniche di addestramento e ottimizzazione necessarie per implementare soluzioni applicate a casi d’uso rappresentativi per gli orientamenti coinvolti.
The course goal is to provide students with practical and theoretical content on the application of machine and deep learning techniques to computer vision and multimedia . At the beginning of the course, the theoretical fundamentals of machine learning and deep neural networks will be introduced. Particular attention will be devoted to the analysis of state-of-the-art architectures available for computer vision applications. Through laboratory and project activities, students will gain practical experience with the main programming frameworks as well as with the training and optimization techniques required to implement solutions suited to representative case studies.
Obiettivo dell'insegnamento è quello di mettere lo studente in condizione di comprendere il funzionamento di applicazioni basate su tecniche di machine learning, con particolare riferimento alle reti neurali profonde, e di conoscere le principali librerie per la loro implementazione. Inoltre, lo studente imparerà ad analizzare, progettare e valutare diverse tipologie di applicazioni nel campo della visione artificiale e in generale nell’elaborazione di dati complessi, quali ad esempio segnali, audio, video, e nuvole di punti. In particolare, lo studente acquisirà le conoscenze fondamentali relative a: - fondamenti teorici sulle reti neurali artificiali e algoritmi di addestramento (back-propagation); - principali architetture di reti profonde; - librerie hardware e software per l’addestramento di reti neurali; - applicazioni del machine learning e deep learning per la visione artificiale; - applicazioni del machine learning e deep learning per l’elaborazione e la generazione di contenuti multimediali. Lo studente svilupperà quindi abilità collegate alla: - analisi e progettazione di reti neurali profonde, scegliendo l’architettura più appropriate in relazione allo specifico problema; - analisi, test ed integrazione di componenti di machine learning all’interno di applicazioni complesse; - implementazione di una rete neurale profonda con librerie allo stato dell’arte; - impostazione dei principali hyper-parameter ed addestramento di una rete neurale; - risoluzione di problemi pratici legati allo sviluppo di un componente di machine learning.
The aim of the course is to provide students with the ability to understand the functioning of applications based on machine learning, with a specific focus on deep neural networks, as well as familiarize with the main libraries for developing them. Moreover, students will learn how to analyze, design and evaluate various solutions targeted to computer vision and, more in general, to the processing of complex data like, e.g., signals, audio and video. Specifically, students will achieve basic knowledge pertaining: - theoretical fundamentals of artificial neural networks and training algorithms (back-propagation); - main families of deep networks architectures; - hardware and software stack for deep learning; - applications of machine and deep learning for computer vision; - applications of machine and deep learning for the processing and generation of multimedia content. At the end of the course, students will be able to: - design a deep neural network, selecting the most appropriate architecture and dataset for the problem at hand; - evaluate and integrate machine learning components within multimedia applications; - implement a deep neural network using state-of-the-art libraries; - select the optimal hyper-parameters for training a neural network; - solve practical problems during development of a machine learning component, such as under- and over-fitting.
Elementi di linguaggi di programmazione. Nozioni di base di matematica.
Fundamentals of computer programming. Mathematical analysis I. Linear algebra.
Il programma di massima del corso sarà articolato in lezioni teoriche in aula ed esercitazioni in laboratorio, come riportato di seguito. Introduzione al corso Fondamenti di machine learning (lezioni in aula 1 CFU) - Elementi base di probabilità - Reti neurali shallow e deep - Reti feed forward e reti ricorrenti - Statistical machine learning (supervised learning, overfitting, regularization) - Back-propagation e stochastic gradient descent Metodi per l’implementazione di reti profonde (laboratori 1 CFU) - Differenziazione automatica, elementi di programmazione per reti neurali profonde - Addestramento di reti profonde: hyperparameter tuning, data augmentation, batch normalization e transfer learning Applicazioni per la visione artificiale (lezioni 1.5 CFU + laboratori 0.7 CFU) - Panoramica e tassonomia delle principali applicazioni - Reti neurali convoluzionali (definizione e principali architetture) - Reti neurali per object detection e tracking - Reti neurali per la segmentazione di immagini (encoder-decoder) - Analisi del movimento umano: stima della posa ed action recognition Applicazioni per l’elaborazione di dati multimediali (lezioni 0.7 CFU + laboratori 0.3 CFU) - Audio/Speech processing: audio identification/fingerprinting e sound classification - Analisi ed elaborazione video: image/video recognition/labeling Cenni a tecniche di deep learning avanzate (lezioni o seminari, 0.8 CFU) - Rappresentazione e analisi di dati 3D (point cloud e mesh) - Analisi e sintesi di rappresentazioni 3D: applicazioni in ambito grafico e industriale - Modelli generativi e reti GAN
The course program will be articulated in in-class theoretical lessons and lab exercises, as reported below. Course introduction Fundamentals of machine learning (in-class lessons 0.9 CFU) - Basics of probability - Shallow and deep neural networks - Statistical machine learning (supervised learning, overfitting, regularization) - Back-propagation and stochastic gradient descent Methods for the implementation of deep networks (lab 1 CFU) - Automatic differentiation, programming in Pytorch - Training deep networks: hyperparameter tuning, data augmentation, batch normalization, and transfer learning Applications for computer vision (in-class lessons 1 CFU + lab exercises 0.6 CFU) - Overview and taxonomy of the main applications - Convolutional neural networks (definition and main architectures) - Neural networks for object detection and tracking - Neural networks for image segmentation (encoder-decoder) Applications for multimedia data processing (in-class lessons 1 CFU + lab exercises 0.3 CFU) - Recurrent neural networks and transformers - Audio/Speech processing: audio identification/fingerprinting and sound classification - Video analysis and processing: image/video recognition/labeling - Human movement analysis: pose estimation and action recognition Advanced topics (in-class lessons or seminars 0.8 CFU) - Introduction to generative models and GANs Project work (lab 0.4 CFU)
The course will be taught in English.
The course will be taught in English.
In aggiunta alle 40 ore di lezione in aula sono previste 20 ore di esercitazioni in laboratorio. Le esercitazioni in laboratorio introdurranno l’uso di stack software per l’implementazione di reti neurali e aspetti pratici legati all’allenamento di reti neurali. Le attività in laboratorio prevederanno inoltre esercizi, da svolgere individualmente o in coppia, seguiti da discussione dei principali approcci risolutivi. Tali attività saranno propedeutiche allo sviluppo di un progetto individuale o di gruppo che concorrerà a determinare il voto finale. Potrà essere prevista l’organizzazione di seminari per approfondimenti su temi avanzati.
The course will encompass approximately 37 hours of in-class lessons and 23 hours of lab exercises. Exercises will be aimed to introduce the software stack used for the implementation of neural networks and the practical aspects associated with their training. During lab activities, students will be provided with problems to solve individually on in a pair, which will be followed by a discussion of the main approaches adopted to reach the solution. These activities will be preparatory to the development of an individual or group project, which will concur to the determination of the final grade. Seminars could be organized to tackle advanced topics.
Libri di testo (da selezionare in base agli strumenti software utilizzati): - I. Goodfellow, Y. Bengio, A. Courville. Deep Learning. MIT press - Aurelie Geron, Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems, O’Reilly - F. Cholet, Deep Learning with Python, Manning Publications, oppure - Eli Stevens, Luca Antiga, and Thomas Viehmann, Deep Learning with Pytorch Ulteriori riferimenti bibliografici specifici potranno essere forniti all'inizio e durante il corso. Altro materiale fornito: - lucidi delle lezioni, dispense di laboratorio, temi d’esame ed altri contenuti sul Portale della Didattica; - videoregistrazione delle lezioni (e dei laboratori, ove possibile) - tutorial disponibili sul web.
Teaching material will be provided during the course and includes: - slides for in-class lessons, notes for lab exercises, sample exams and other content on the Portale della Didattica; - recordings of in-class lessons (and of lab exercises solutions); - selected tutorials and reading material. Books: - I. Goodfellow, Y. Bengio, A. Courville. Deep Learning. MIT press - Eli Stevens, Luca Antiga, and Thomas Viehmann, Deep Learning with Pytorch - Simone Scardapane, Alice in a differentiable wonderland
Slides; Dispense; Libro di testo; Esercizi; Esercitazioni di laboratorio; Video lezioni dell’anno corrente;
Lecture slides; Lecture notes; Text book; Exercises; Lab exercises; Video lectures (current year);
E' possibile sostenere l’esame in anticipo rispetto all’acquisizione della frequenza
You can take this exam before attending the course
Modalità di esame: Prova scritta (in aula); Prova orale obbligatoria; Elaborato progettuale individuale; Elaborato progettuale in gruppo;
Exam: Written test; Compulsory oral exam; Individual project; Group project;
... L’esame si compone di una prova scritta e di un progetto di laboratorio, che concorrono alla determinazione del voto finale nella misura di 1/3 e 2/3. L’esame è superato se la valutazione totale conseguita nelle due parti, espresse in trentesimi, è di almeno 18/30. La prova scritta, della durata indicativa di un’ora e mezza, è volta ad accertare la conoscenza degli argomenti elencati nel programma ufficiale dell’insegnamento e comprenderà domande a risposta aperta o brevi esercizi volti ad accertare la capacità di applicare i concetti teorici. Durante la prova scritta non è permesso tenere e consultare libri, appunti, fogli con esercizi, formulari, e materiale simile. Potrà essere permesso tenere una calcolatrice se funzionale all’esercizio. Il progetto di laboratorio, svolto individualmente o in gruppo di al più 3 studenti, è volto ad applicare le nozioni acquisite durante le lezioni ed esercitazioni ad un caso d’uso rappresentativo per gli orientamenti coinvolti. Il tema del progetto dovrà necessariamente prevedere l’implementazione ed addestramento di una rete profonda. A titolo di esempio, potrà essere considerata l’implementazione di un articolo di letteratura scientifica, la creazione di un’applicazione originale o la risoluzione di una challenge. L’integrazione di componenti o codice pubblicamente disponibile (ad esempio, modelli pre-allenati) dovrà essere pre-concordato con il docente. Il progetto consegnato dovrà contenere il codice sviluppato, almeno un modello allenato ed un breve elaborato (4-6 pagine) che illustri le tecniche adottate, i valori degli hyper-parameter, il dataset, le metodologie di valutazione ed i risultati ottenuti. Il progetto dovrà essere consegnato entro la data indicata all’inizio del corso e sarà discusso con i docenti (costituirà la prova orale). Durante la discussione saranno poste domande volte ad accertare il contributo individuale nella realizzazione del progetto, e potrà essere richiesto di verificare l’effettivo funzionamento del codice consegnato. Possono essere assegnati fino a 2 punti aggiuntivi sia per la prova di teoria (per il rigore espositivo) che per il progetto di laboratorio/prova orale (per l'uso di tecniche e strumenti non illustrati dal docente caratterizzate/i da una complessità significativa, o per la completezza delle prove sperimentali eseguite). Tali punti permettono di ottenere la lode. I risultati conseguiti nelle due parti e la valutazione complessiva vengono comunicati tramite il Portale della Didattica.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Written test; Compulsory oral exam; Individual project; Group project;
The exam consists of a written test and a group project, which contribute to the determination of the final grade in the measure of 1/3 and 2/3. The exam is passed if the total evaluation obtained in the two parts is at least 18/30. The written test, lasting approximately one and a half hour, is aimed at evaluating the knowledge of the topics listed in the official program of the course and will include open-ended questions or short exercises aimed at evaluating the ability to apply theoretical concepts. During the written test it is not allowed to keep and consult books, notes, sheets with exercises, forms, and similar material. It may be allowed to keep a calculator if it is functional to the exercise. The laboratory project, carried out individually or in groups of at most 3 students, is aimed at applying the notions acquired during the lessons and labs to a representative use case for the orientations involved. The project will be chosen by the group from a series of proposed topics, related to the techniques and applications addressed in the course; projects proposed by the students may be accepted pending instructors’ approval. In any case, the project shall include the implementation and training of a deep neural network. The project can consist, for instance, in the implementation of an article of scientific literature, the creation of an original application, or the resolution of a challenge. Using publicly available components or code (e.g., pre-trained models) shall be pre-agreed with the instructor. The project will define an intermediate milestone that must be completed to access the discussion phase, according to procedures and deadlines that will be communicated during the course. The project must contain the final code, at least one trained model and a short paper (6-8 pages) illustrating the techniques adopted, the values of the hyper-parameters, the dataset, the evaluation methodologies, and the results obtained. The project must be delivered one week before the discussion, which will constitute the oral exam. During the discussion, questions will ascertain the individual contribution in the implementation of the project; a demo to verify the actual functioning of the code that has been delivered may be required. Up to 2 additional points can be awarded for the lab project/oral exam (for the use of techniques and tools not illustrated by the teacher, or characterized by significant complexity, or for the completeness of the experimental tests performed), or for extra activities pertaining to the course’s content organized in the context of the Master's Degree. These points concur to obtain 30/30 with honors grade. The results achieved in the two parts and the overall evaluation are communicated through the Teaching Portal.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.
Esporta Word