MACHINE LEARNING

Academic Year 2025/2026 - Teacher: GIOVANNI MARIA FARINELLA

Expected Learning Outcomes

The aim of the course is to provide an in-depth introduction to the main techniques of Machine Learning. To this purpose, the fundamental models and the state-of-the-art techniques for classification and regression will be formally presented. The modern approach of machine learning will be introduced. Application cases will be discussed considering different contexts with relevance on both research and  industrial field (e.g. object detector, image and video understanding). We will discuss the methodologies for creating and optimizing machine learning algorithms, and those useful for evaluating the performance of Machine Learning systems. The presentation of the topics is developed through theoretical and laboratory lessons in which the students will implement and use the algorithms presented in the course exploiting the Python language and other open source software libraries (eg PyTorch). Algorithms will be adapted to address specific problems through a project developed by students.

The course aims to train students to:

  • provide key concepts underlying Machine Learning techniques;
  • know a wide range of learning algorithms to solve classic Machine Learning problems (classification and regression);
  • understand how to design and tune algorithms in order to apply them to new datasets;
  • evaluate machine learning algorithms so that the best model can be selected;
  • develop new Machine Learning algorithms in Python or to adapt existing algorithms to new use cases

Course Structure

Frontal Lessons and Laboratory (in Python)

Should teaching be carried out in mixed mode or remotely, it may be necessary to introduce changes with respect to previous statements, in line with the programme planned and outlined in the syllabus. Learning assessment may also be carried out on line, should the conditions require it.

Course Material: https://www.dmi.unict.it/farinella/ML/CourseSchedule.html

Required Prerequisites

None

Attendance of Lessons

Attendance to the lessons is strongly recommended

Detailed Course Content

  • Introduction to Machine Learning - Basic Concepts [1,2,3,4,7]
  • Decision trees [1,2,3,4]
  • Random Forests [1]
  • Linear/Logistic Regression [1, 2, 3, 4] 
  • Polynomial Linear/Logistic Regression [1, 2, 3, 4]
  • Perceptron [4,6] 
  • SoftMax [4,5]
  • Kernel Machines - SVM [4]
  • Combining Methods [1,2,3,4]

Textbook Information

  1. Material provided by the teacher
  2. R. O. Duda, P. E. Hart, D. G. Stork, "Pattern Classification", Wiley, 2000
  3. C. Bishop, “Pattern Recognition and Machine Learning", Springer, 2006
  4. E. Alpaydin, “Introduction to Machine Learning”, MIT Press, 2014
  5. I. Goodfellow, Y. Bengio and A. Courville, "Deep Learning", MIT Press, 2016
  6. Raul Rojas, Neural Networks - A Systematic Introduction, Springer, 1996
  7. M. P. Deisenroth, A A. Faisal, and C. Soon On, Mathematics for Machine Learning, MIT Press, 2019

Course Planning

 SubjectsText References
1Introduction to Machine Learning - Basic Concepts[1,2,3,4,7]
2Decision trees[1,2,3,4]
3Random Forests[1]
4Linear/Logistic Regression[1, 2, 3, 4] 
5Polynomial Linear/Logistic Regression[1, 2, 3, 4]
6Perceptron [4,6]
7SoftMax[4,5]
8Kernel Machines - SVM[4]
9Combining Methods[1,2,3,4]

Learning Assessment

Learning Assessment Procedures

The final exam consists of two parts:

  • Written Examination
  • Project

The grading is expressed in thirtieths according to the following scheme:

Grade 29-30 with honors

The students have an in-depth knowledge of the fundamental concepts and of the main Machine Learning. They are able to formalize Machine learning problems  by identifying the most suitable algorithms and techniques for solving the considered problems independently and critically. They have excellent communication skills and language proficiency.

Grade 26-28

The students have a good understanding of fundamental concepts and major Machine Learning. They are able to formalize Machine learning problems identifying appropriate algorithms and techniques for the considered problems. They have good communication skills and language proficiency.

Grade 22-25

The students have a fair understanding of fundamental concepts and of the main Machine Learning. They are able to formalize Machine learning problems, although not always exhaustively, identifying suitable algorithms and techniques for the considered problems. They have moderate communication skills and language proficiency.

Grade 18-21

The students have minimal knowledge of fundamental concepts and of the main Machine Learning. They have modest ability to formalize Machine learning problems and to identify suitable algorithms and techniques for the considered problems. They have sufficient communication skills, although not always appropriate language proficiency.

Failed Exam

The students lack of the minimum required knowledge of the main course contents. Their ability to formalize Machine learning problems is very poor or nonexistent, and they are unable to apply the acquired knowledge independently.

Examples of frequently asked questions and / or exercises

- Discuss the logistic regression

- Discuss about the overfitting problem and its possible solutions

- Discuss the Softmax classifier

VERSIONE IN ITALIANO