ID:
509486
Durata (ore):
112
CFU:
12
SSD:
INFORMATICA
Anno:
2024
Dati Generali
Periodo di attività
Annualità Singola (30/09/2024 - 13/06/2025)
Syllabus
Obiettivi Formativi
The course is composed of two modules, each having its own learning outcomes.
Module 1. At the end of the course, the student:
1. Understands the theoretical concepts behind the main and most spread machine learning algorithms and apply them in different application contexts;
2. Is able to classify a learning task according to the input and the output types;
3. Designs and implements a machine learning-driven project from the initial steps: data preparation and data preprocessing to model evaluation and testing;
4. Is able to think critically about the usage of machine learning algorithms in solving a specific learning task.
Module 2. At the end of the course, the student is able to:
1. Understand the foundational ideas, recent advances and application potential of deep neural systems;
2. Apply such technologies to solving classification problems in realistic domains;
3. Design and implement deep learning projects, including data processing, model design and evaluation;
4. Distill large amounts of research into coherent summaries and to think critically about work in the field.
Module 1. At the end of the course, the student:
1. Understands the theoretical concepts behind the main and most spread machine learning algorithms and apply them in different application contexts;
2. Is able to classify a learning task according to the input and the output types;
3. Designs and implements a machine learning-driven project from the initial steps: data preparation and data preprocessing to model evaluation and testing;
4. Is able to think critically about the usage of machine learning algorithms in solving a specific learning task.
Module 2. At the end of the course, the student is able to:
1. Understand the foundational ideas, recent advances and application potential of deep neural systems;
2. Apply such technologies to solving classification problems in realistic domains;
3. Design and implement deep learning projects, including data processing, model design and evaluation;
4. Distill large amounts of research into coherent summaries and to think critically about work in the field.
Prerequisiti
Linear Algebra. Analysis: functions, limits, derivatives. Programming paradigms and ability to code in Python.
Metodi didattici
The class is organized in frontal lessons based on slides projection with whiteboard support, and guided laboratory sessions with practical examples and use-cases via Python notebooks. Being the two modules held in two different semesters, no specific interplay and coordination between the two module lectures is required.
Verifica Apprendimento
The two modules have an independent evaluation expressed with a grade from 1 to 30. Grade 18 is the minimum grade required to pass the exam. A unique grade will be associated to the course, determined as the average on the grades obtained in the two modules.
Module 1. A home project on a learning task proposed or selected by the student. The project will be developed in Python. The exam will consist in the presentation of the project and an oral discussion starting from the concepts used in the project. The final evaluation takes into account the quality of the project, the design choices, and the mastery of the concepts emerging from the oral discussion.
Module 2. A written exam to solve a real-world machine learning problem, whose solution might potentially concern any of the topics studied, and a home project to implement the specific solution proposed by the student during the written exam. Projects will be delivered as Python notebook. In rare cases, when necessary, the teacher can also decide for an oral discussion about the written exam and the project delivered. The final evaluation takes into account the quality of the solution in terms of the appropriateness of selected models, the effectiveness in solving the posed problem, and the correctness of their implementation.
Module 1. A home project on a learning task proposed or selected by the student. The project will be developed in Python. The exam will consist in the presentation of the project and an oral discussion starting from the concepts used in the project. The final evaluation takes into account the quality of the project, the design choices, and the mastery of the concepts emerging from the oral discussion.
Module 2. A written exam to solve a real-world machine learning problem, whose solution might potentially concern any of the topics studied, and a home project to implement the specific solution proposed by the student during the written exam. Projects will be delivered as Python notebook. In rare cases, when necessary, the teacher can also decide for an oral discussion about the written exam and the project delivered. The final evaluation takes into account the quality of the solution in terms of the appropriateness of selected models, the effectiveness in solving the posed problem, and the correctness of their implementation.
Testi
Module 1
S. Raschka, V. Mirjalili. “Python Machine Learning” - Second Edition, Packt Publishing, 2017
Module 2
I.Goodfellow, Y.Bengio, A.Courville. “Deep Learning”, MIT Press (available online at https://www.deeplearningbook.org).
Christopher M. Bishop , Hugh Bishop. "Deep Learning Foundations and Concepts", Springer, 2024.
When necessary, the teaching material will be integrated with lecture notes and handouts provided by the teacher.
S. Raschka, V. Mirjalili. “Python Machine Learning” - Second Edition, Packt Publishing, 2017
Module 2
I.Goodfellow, Y.Bengio, A.Courville. “Deep Learning”, MIT Press (available online at https://www.deeplearningbook.org).
Christopher M. Bishop , Hugh Bishop. "Deep Learning Foundations and Concepts", Springer, 2024.
When necessary, the teaching material will be integrated with lecture notes and handouts provided by the teacher.
Contenuti
The course is composed of two distinct modules: Module 1, which introduces the principles of Machine Learning theory, is held in the first semester; Module 2, which builds upon the contents of Module 1, presents the main characteristics of deep neural systems, and is held in the second semester. Although it is not mandatory to follow and pass Module 1 to attend Module 2 lessons, it is strongly recommended.
Module 1: The course starts with an introduction of the main subareas of the machine learning and a description of the various learning tasks. It also discusses the essential pipeline for handling machine learning projects. We shall introduce the original and essential machine learning algorithms for classification, e.g. perceptron, logistic regression, support vector machine and decision tree. We shall present ensemble learning to combine multiple learning algorithm effectively. We shall also discuss and detail all the steps in a machine learning pipeline: problems in unprocessed dataset, missing
data, feature selection, feature transformation, dimensionality reduction, choice of the learning model, metrics for measuring the performances and techniques for hyper-parameter optimization. In the last part, we shall focus on unsupervised learning by introducing clustering algorithms such as k-means and density-based clustering. A sketch of the program is the following:
1. Introduction to machine learning and learning tasks;
2. Models for classification: Perceptron, Logistic Regression, Support Vector Machine, kernel SVM, Decision Tree;
3. Ensemble learning: bagging, Random Forest, XGBoost, boosting;
4. Data preprocessing for ML: Dealing with missing data, handling categorical data, feature scaling, feature selection;
5. Dimensionality reduction: PCA, LDA, kernel PCA;
6. Model evalutation and hyper-parameter tuning;
7. Clustering algorithms: k-means, hierarchical clustering and density-based clustering.
Module 2: The course starts with an introduction to Deep Learning, Neural Networks and their typical learning mechanism: The backpropagation algorithm. We shall discuss the main types of neural nets: feed forward, convolutional and recurrent, providing concrete examples and discussing successful neural architectures for real-world applications. We shall introduce modern graph neural network approaches and their most recent developments. The final part of the course will be devoted to an introduction to the explainability and interpretability of deep neural models. A sketch of the program is the following:
1. Introduction to Deep Learning and Applications;
2. Perceptron, MultiLayer Perceptron, Backpropagation;
3. Overfitting, Batch Regularization, Dropout;
4. Fundamentals of Convolutional Neural Networks;
5. Recurrent Neural Networks, Long-Short-Term-Memory, Gated Recurrent Units, Hopfield networks;
6. Unsupervised network training: Autoencoders, Variational Autoencoders;
7. Graph Neural Networks;
8. Interpretable Learning and Explainability of model behaviour.
Module 1: The course starts with an introduction of the main subareas of the machine learning and a description of the various learning tasks. It also discusses the essential pipeline for handling machine learning projects. We shall introduce the original and essential machine learning algorithms for classification, e.g. perceptron, logistic regression, support vector machine and decision tree. We shall present ensemble learning to combine multiple learning algorithm effectively. We shall also discuss and detail all the steps in a machine learning pipeline: problems in unprocessed dataset, missing
data, feature selection, feature transformation, dimensionality reduction, choice of the learning model, metrics for measuring the performances and techniques for hyper-parameter optimization. In the last part, we shall focus on unsupervised learning by introducing clustering algorithms such as k-means and density-based clustering. A sketch of the program is the following:
1. Introduction to machine learning and learning tasks;
2. Models for classification: Perceptron, Logistic Regression, Support Vector Machine, kernel SVM, Decision Tree;
3. Ensemble learning: bagging, Random Forest, XGBoost, boosting;
4. Data preprocessing for ML: Dealing with missing data, handling categorical data, feature scaling, feature selection;
5. Dimensionality reduction: PCA, LDA, kernel PCA;
6. Model evalutation and hyper-parameter tuning;
7. Clustering algorithms: k-means, hierarchical clustering and density-based clustering.
Module 2: The course starts with an introduction to Deep Learning, Neural Networks and their typical learning mechanism: The backpropagation algorithm. We shall discuss the main types of neural nets: feed forward, convolutional and recurrent, providing concrete examples and discussing successful neural architectures for real-world applications. We shall introduce modern graph neural network approaches and their most recent developments. The final part of the course will be devoted to an introduction to the explainability and interpretability of deep neural models. A sketch of the program is the following:
1. Introduction to Deep Learning and Applications;
2. Perceptron, MultiLayer Perceptron, Backpropagation;
3. Overfitting, Batch Regularization, Dropout;
4. Fundamentals of Convolutional Neural Networks;
5. Recurrent Neural Networks, Long-Short-Term-Memory, Gated Recurrent Units, Hopfield networks;
6. Unsupervised network training: Autoencoders, Variational Autoencoders;
7. Graph Neural Networks;
8. Interpretable Learning and Explainability of model behaviour.
Lingua Insegnamento
INGLESE
Corsi
Corsi
ARTIFICIAL INTELLIGENCE
Laurea
3 anni
No Results Found
Persone
Persone (3)
No Results Found