Il corso intende introdurre il discente alla teoria ed alle applicazioni del machine learning.
The course aims at introducing the learner to fundamental state of the art knowledge and tools on machine learning algorithms/models. The goal is for students to become able to tackle real-world problems, using supervised and unsupervised learning techniques.
L’obiettivo principale del corso è che lo studente giunga a possedere un’ampia conoscenza delle tecniche fondamentali di machine learning allo stato dell’arte (fino alle reti neurali dense). Per ogni argomento trattato, lo studente avrà l’opportunità di apprendere le basi teoriche, e di studiare alcuni esempi applicativi. Esempi ed esercizi sono proposti, e solitamente risolti in classe, per ogni argomento, al fine di stimolare l’applicazione e verificare l’acquisizione delle conoscenze. Gli esempi ed esercizi del corso utilizzeranno il linguaggio python e le librerie sk-learn e Keras/Tensorflow.
I risultati di apprendimento riguardano la realizzazione degli obiettivi formativi di cui sopra, anche attraverso l’analisi di casi applicativi.
Fondamenti di programmazione (in particolare linguaggio python)
Lezioni frontali, con utilizzo di slide, ed esempi/esercizi svolti al PC, utilizzando principalmente le librerie sk-learn e Keras/Tensorflow, in linguaggio python. Ricevimento studenti. Proposta, realizzazione e discussione di un progetto.
Machine learning
A. Geron, Hands-On Machine Learning With Scikit-Learn and Tensorflow: Concepts, Tools, and Techniques to Build Intelligent, O’ Reilly
I. Goodfellow, Y. Bengio and A. Courville, Deep Learning, The MIT Press
Appunti del corso e altro materiale suggerito dal docente durante il corso
Ricevimento: Su appuntamento: mail (francesco.bellotti@unige.it) o Teams o dopo lezione
FRANCESCO BELLOTTI (Presidente)
MATTEO FRESTA
RICCARDO BERTA (Presidente Supplente)
https://easyacademy.unige.it
Lo studente proporrà e concorderà preliminarmente con il docente un dataset su cui preparare un Jupyter notebook (simile a quelli visti a lezione) per implementare criticamente un compito di machine lerarning (ad esempio, classificazione, regressione, clustering). Questo include anche il pre-processing, il training di vari modelli, la regolazione degli iperparametri e il test complessivo.
Durante l'esame lo studente presenterà questo lavoro. Poi, i docenti faranno domande potenzialmente su tutti gli argomenti del corso.
La verifica delle conoscenze acquisite e la capacità di applicarle anche in contesti diversi da quelli presentatui a lezione verranno valutate tramite domande nel colloquio d’esame.
La valutazione terrà anche presente la partecipazione dello studente durante il corso.