Machine Learning

A.Y. 2024/2025
6
Max ECTS
48
Overall hours
SSD
INF/01
Language
English
Learning objectives
The objective of the Machine Learning course is to provide the basic skills to analyze real problems, identify proper solutions for knowledge discovery, and design/implement analytic models. The course presents the best practices from both a theoretical and practical perspective with special focus on Human Centered application problems.
The course covers numerous well-studied methods such as classification, regression, structured prediction, clustering, and representation learning. It familiarizes the students with popular techniques for pattern recognition, knowledge discovery, and data analysis/modeling using Python, the most common language in the field.
Expected learning outcomes
At the end of the course students will be able to understand and discuss the principles of machine learning. They will be able to analyze practical problems, and to design and implement suitable solutions. They will be familiar with the most important techniques in the field and will be able to use them to build effective machine learning systems.
The students will be able to:
- Understand the broad applications of machine learning across various societal contexts
- Develop a comprehensive understanding of ML concepts and identify the best models to fit various applications
- Integrate multiple data management techniques: data preprocessing, learning, regularization, and model selection
- Develop and implement machine learning algorithms and devise solutions to real-life problems within human centric domains
- Describe the properties of models and algorithms for learning and explain the practical implications of the results
- Collaborate effectively on machine learning projects and assignments with both experts and peers.
Single course

This course can be attended as a single course.

Course syllabus and organization

Single session

Responsible
Lesson period
Second semester
Course syllabus
Basic concepts:
- introduction to Python language
- elements of probability and statistics
- classes of optimization problems
- gradient descent, regularization
- machine learning: statistical learning , regression, classification, clustering, generalization
- training approaches: k-fold cross validation, leave one out, batches or mini-batches, model selection
- data preparation
- bayesian decision theory
- regression models
- feed-forward neural networks
- linear and non-linear Support Vector Machines
- multi-class models
- generative models: autoencoders and GANs
- deep learning and convolutional neural networks
- recurrent neural networks
- genetic algorithms
Prerequisites for admission
Calculus, Elements of Python and Object Oriented programming.
Teaching methods
Frontal lessons with working examples and demos in jupyter notebooks - Laboratory tasks - Materials by the teachers
Teaching Resources
- Python Data Science Handbook by Jake VanderPlas - Publisher(s): O'Reilly Media, Inc. -
ISBN: 978-1-491-91205-8
- The Elements of Statistical Learning by Trevor Hastie , Robert Tibshirani , Jerome Friedman - Springer - ISBN: 978-0-387-84858-7
Assessment methods and Criteria
Oral exam with discussion of a final project related to the course topics, on data proposed by either the student or the professors according to the rules and criteria listed in the Ariel portal.
INF/01 - INFORMATICS - University credits: 6
Lessons: 48 hours