MACHINE LEARNING M - Z
Academic Year 2024/2025 - Teacher: SIMONE PALAZZOExpected Learning Outcomes
Knowledge and Understanding
This course provides a basic understanding of Machine Learning techniques and algorithms, with a particular focus on regression, classification, and unsupervised learning models. Students will learn to evaluate model performance using error metrics and validation techniques, addressing topics such as overfitting and the bias-variance tradeoff. The course also explores regularization methods, ensemble algorithms like bagging and boosting, and neural networks.
Applied Knowledge and Understanding
The course includes practical examples and exercises that will allow students to apply Machine Learning methods to real-world problems, using software tools commonly used in the industry such as scikit-learn. Students will learn how to design and implement Machine Learning models, manage data loading and preprocessing, and validate performance using standard metrics.
Making Judgments
Students will develop the ability to assess the performance of Machine Learning models, identify and mitigate overfitting and bias issues, and choose between different models and optimization techniques based on the context of the problem.
Communication Skills
Students will acquire the ability to effectively communicate the results of their analyses and models, both in written and oral form. They will be able to present the outcomes of their research and projects to both technical and non-technical audiences, using appropriate language and supporting their arguments with relevant data and visualizations.
Learning Skills
The course will encourage students to develop a critical and autonomous approach to learning, fostering curiosity about new technologies and trends in the field of Machine Learning and Deep Learning. Students will be able to continue learning independently, using academic and professional resources to stay updated on the latest innovations and techniques in the sector.
Course Structure
- Lectures, to provide theoretical and methodological knowledge of the subject.
- Practical exercises, to develop problem-solving skills and apply the design methodology.
- Laboratories, to learn and test the use of related tools.
- If the course is delivered in a hybrid or remote format, modifications to the above may be required.
Required Prerequisites
Attendance of Lessons
Detailed Course Content
1. Basic Machine Learning Concepts
1.1. Models and parameters
1.2. Learning modes (supervised, unsupervised, self-supervised, reinforcement learning)
1.3. Performance evaluation (precision, recall, F1-score, ROC Curve and AUC, MAE, MSE, cross-validation and overfitting, bias-variance trade-off)
2. Supervised Learning
2.1. Linear regression
2.2. Regularization
2.3. Linear and non-linear classification
2.4. Support vector machines
2.5. Decision trees, bagging, and boosting
2.6. Non-parametric classifiers
2.7. Neural networks
3. Unsupervised Learning
3.1. Clustering
3.2. Dimensionality reduction
3.3. Basic concepts of self-supervised, constrastive, semi-supervised learning
4. Machine Learning Laboratory with Python
4.1. Syntax, data types, control structures, classes
4.2. Libraries for machine learning
Textbook Information
Course Planning
| Subjects | Text References | |
|---|---|---|
| 1 | Basic concepts | |
| 2 | Laboratory of Python: basic concepts | |
| 3 | Linear regression and optimization | |
| 4 | Laboratory on linear regression | |
| 5 | Performance evaluation | |
| 6 | Laboratory on performance evaluation | |
| 7 | Regularization | |
| 8 | Laboratory on regularization | |
| 9 | Classification | |
| 10 | Laboratory on classification | |
| 11 | PCA | |
| 12 | Laboratory on PCA | |
| 13 | Unsupervised learning | |
| 14 | Unsupervised learning laboratory | |
| 15 | Decision trees and bagging/boosting | |
| 16 | Laboratory on decision trees and bagging/boosting | |
| 17 | Neural Networks | |
| 18 | Laboratory on neural networks |
Learning Assessment
Learning Assessment Procedures
Project on topics proposed by the instructors, to be completed at home.
Oral exam with project discussion and theory questions.
Examples of frequently asked questions and / or exercises
- Explain the bias-variance trade-off and how it affects the generalization ability of a machine learning model.
- Describe the least squares method and how it is used to estimate the parameters of a linear regression model.
- What is the difference between precision and recall? In which scenarios might one be more important than the other?
- Compare Ridge regression and LASSO, specifying when it would be preferable to use one over the other.
- How does the kernel trick extend the capabilities of SVMs to solve non-linearly separable problems?
- How does the PCA algorithm work for dimensionality reduction, and what are its limitations?
- Explain how a boosting algorithm like AdaBoost works and what its advantages are compared to individual decision trees.
- Explain backpropagation and its role in training neural networks.
- Explain the role of activation functions in a neural network.