- Machine Learning
- Summary
Course Syllabus
Obiettivi formativi
Fornire sia le conoscenze sia le capacità di utilizzare algoritmi di Machine Learning e di applicarli alla soluzione di probemi. Lo studente acquisirà padronanza delle metodologie di machine learning per affrontare problemi di classificazione e regressione. Acquisirà la capacità critica necessaria per valutare quali problemi possono essere risolti con tecniche di machine learning.
Conoscenza e comprensione. Questo insegnamento fornirà conoscenze e capacità di comprensione relativamente a: algoritmi di machine learning, categorie di problemi risolvibili con algoritmi di machine learning, principali metodologie applicabili e criticità a cui prestare attenzione.
Capacità di applicare conoscenza e comprensione. Alla fine dell'insegnamento gli studenti saranno in grado di: applicare algoritmi di machine learning per affrontare problemi di classificazione, regressione ed in generale per estrarre informazioni dai dati. Saranno in grado di svolgere sia dei test di fattibilità sia di realizzare soluzioni complete.
Contenuti sintetici
- Statistical methods for machine learning
- Beyong linear models
- Feature Engineering and Machine Learning Algorithms Tuning
- Artificial Neural Networks and Deep Learning
Programma esteso
- Statistical methods for machine learning
- Supervised and unsupervised learning
- Recall to regression analysis
- Classification analysis
- Cross validation and bootstrap
- Model selection and regularization
- Beyond linear models
- Tree-based methods
- Support vector machines
- Feature Engineering and Machine Learning Algorithms Tuning
- Feature Engineering and Selection (Bag of Words, Embeddings, Tensors, ...)
- Data Observability and Model existence issues
- Hyperparameters optimization (Grid-Search, Random-Search, Advanced Search methodologies)
- Artificial Neural Networks and Deep Learning
- Artificial Neural Networks (ANNs) and Feed Forward Neural Network introduction
- Training Algorithm: Gradient Descent, Optimization Methodology
- Deep learning and Artificial Neural Networks types (Fully Connected networks, Feed Forward networks, Convolutional networks, Recurrent networks, …)
- Industrial applications and open research issues
The teachers may decide to change the program or to focus on specific topics based on the students' previous knowledge.
Prerequisiti
Non è prevista alcuna propedeuticità formale.
Necessari: Algebra lineare, Statistica descrittiva e inferenziale, Programmazione.
Desiderabili, ma non necessarie: conoscenze del linguaggio Python e del linguaggio R
Metodi didattici
Lezione in laboratorio informatico. In caso di mancata disponibilità di aule informatizzate, le lezioni potrebbero svolgersi in aule tradizionali (elettrificate o non elettrificate) dove gli studenti potranno usare il proprio pc personale, oppure in laboratori virtuali remoti.
Circa il 90% delle lezioni sarà erogato sotto forma di "didattica erogativa" tramite lezioni frontali.
Circa il 10% del corso sarà erogato sotto forma di "didattica interattiva" tramite svolgimento di attività di laboratorio.
Modalità di verifica dell'apprendimento
L'esame orale consisterà nella discussione di un progetto, concordato preventivamente con il docente.
L'esame è lo stesso sia per studenti frequentanti sia per non frequentanti.
L'esame orale è finalizzato a valutare la conoscenza teorica dello studente sugli argomenti presentati durante il corso. Saranno valutate la capacità di ragionare e approfondire le tematiche proposte durante l'esame, nonché il rigore metodologico nell'applicare la conoscenza appresa per risolvere casi.
Periodo di erogazione dell'insegnamento
- Ciclo (1. parte del 2. Semestre)
Lingua di insegnamento
Inglese
Learning objectives
Gaining knowledge of Machine Learning algorithms, and applying them to solve problems. The student will master machine learning methodologies to deal with classification and regression problems. The student will acquire the critical thinking to evaluate which problems can be solved using machine learning techniques.
Knowledge and understanding. This course will provide knowledge and understanding about: machine learning algorithms; machine learning problem categories and the algorithms best suited for their solutions; main methodologies and related issues.
Ability to apply knowledge and understanding. At the end of the course, students will be able to: apply machine learning algorithms to tackle classification, regression problems, and to extract information from data. The students will be able to design and implement both feasibility tests and complete solutions.
Contents
- Statistical methods for machine learning
- Beyong linear models
- Feature Engineering and Machine Learning Algorithms Tuning
- Artificial Neural Networks and Deep Learning
Detailed program
- Statistical methods for machine learning
- Supervised and unsupervised learning
- Recall to regression analysis
- Classification analysis
- Cross validation and bootstrap
- Model selection and regularization
- Beyond linear models
- Tree-based methods
- Support vector machines
- Feature Engineering and Machine Learning Algorithms Tuning
- Feature Engineering and Selection (Bag of Words, Embeddings, Tensors, ...)
- Data Observability and Model existence issues
- Hyperparameters optimization (Grid-Search, Random-Search, Advanced Search methodologies)
- Artificial Neural Networks and Deep Learning
- Artificial Neural Networks (ANNs) and Feed Forward Neural Network introduction
- Training Algorithm: Gradient Descent, Optimization Methodology
- Deep learning and Artificial Neural Networks types (Fully Connected networks, Feed Forward networks, Convolutional networks, Recurrent networks, …)
- Industrial applications and open research issues
The teachers may decide to change the program or to focus on specific topics based on the students' previous knowledge.
Prerequisites
No formal pre-requisite is required.
Necessary: Linear Algebra, Foundation of descriptive and inferential statistics, Foundation of coding (knowledge of a programming language).
Optional: Python language and the R language knowledge
Teaching methods
Lectures will be given in a computer laboratory. In case computer labs were not available, the lessons may also take place in traditional classrooms (electrified or not electrified) where students can use their personal PC, or in remote virtual labs.
About 90% of the lessons will be delivered in the form of "traditional lectures", by means of lectures.
About 10% of the course will be delivered in the form of "interactive teaching" by means laboratory activities.
Assessment methods
The examination is an oral exam for a project discussion. The project must be agreed in advance with the teacher.
The examination is the same for both attending and non-attending students.
The oral exam is aimed at assessing the theoretical knowledge of the student on the topics presented during the course. The ability to reason and deepen the issues proposed during the examination, the methodological rigor of using the theoretical knowledge to solve cases will be evaluated.
Textbooks and Reading Materials
-
Gareth James, Daniela Wittens, Trevor Hastie and Robert Tibshirani (2013). An Introduction to Statistical Learning. Springer. Available at ISL
-
C.M. Bishop (2006), Pattern Recognition and Machine Learning. Springer (New York)
Other material will be communicated during the lectures.
Semester
3rd Cycle (1st part of the 2. Semester)
Teaching language
English
Key information
Staff
-
Mirko Cesarini
-
Stefano Peluso