95631 - Machine Learning and Data Mining

Academic Year 2026/2027

  • Moduli: Matteo Francia (Modulo 1) Matteo Golfarelli (Modulo 2)
  • Teaching Mode: In-person learning (entirely or partially) In-person learning (entirely or partially) (Modulo 1); In-person learning (entirely or partially) (Modulo 2)
  • Campus: Cesena
  • Corso: Second cycle degree programme (LM) in Digital Transformation Management (cod. 6823)

    Also valid for Second cycle degree programme (LM) in Computer Science and Engineering (cod. 6699)

Learning outcomes

After the course the student: - kows the main machine learning techniques - knows the methodologies for handling a mining project - develops practical skills in the analysis and interpretation of results through practical exercises with commercial tools and / or open source ones.

Course contents

Module 1 (Prof. Francia)

Introduction to Machine Learning

Supervised Learning

  • Classification and regression
  • Instance-based models (k-NN) vs. model-based approaches (decision trees, random forests, neural networks)

Unsupervised Learning

  • Clustering
  • Association rules

Module 2 (Prof. Golfarelli)

Introduction to Data-Centric AI

  • From model-centric to data-centric development
  • Data quality dimensions
  • Data Understanding and Profiling

Exploratory data analysis and data visualization

  • Data profiling techniques
  • Statistical characterization of datasets
  • Detection of quality issues

Data Cleaning and Validation

  • Missing data handling
  • Duplicate detection
  • Outlier detection
  • Noise reduction
  • Data consistency and integrity validation

Feature Engineering

  • Feature construction and transformation
  • Feature encoding
  • Feature scaling and normalization
  • Feature selection
  • Dimensionality reduction techniques 

Dataset Optimization

  • Class imbalance handling
  • Sampling and resampling techniques

Data augmentation

  • Data Quality and Fairness Assessment
  • Dataset evaluation metrics
  • Bias and Fairness evaluation

Readings/Bibliography

  • Pang-Ning Tan, Michael Steinbach, Vipin Kumar Introduction to Data Mining. Pearson International, 2006.
  • Géron, Aurélien. Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow. " O'Reilly Media, Inc.", 2022.

Teaching methods

Lessons and practical exercises

Assessment methods

The assessment consists of an oral examination and the discussion of a project. The project may involve either the implementation of an advanced machine learning algorithm from the scientific literature or the analysis of a dataset using the techniques covered during the course.

The objective of the assessment is to evaluate whether students have understood the techniques studied and have developed practical skills in working with data, understanding its content, and discovering hidden patterns and information.

Grades are assigned based on an overall evaluation of the student's knowledge, competencies, analytical skills, and ability to present and discuss the topics addressed. The grading ranges can be described as follows:

  • 18–23: Satisfactory preparation and analytical skills, limited to a restricted set of topics covered in the course; generally correct use of terminology.
  • 24–27: Technically adequate preparation, with some limitations regarding the topics covered; good analytical skills, although not particularly in-depth, expressed using appropriate terminology.
  • 28–30: Excellent knowledge of a broad range of topics covered in the course; strong analytical and critical thinking skills; mastery of the relevant terminology.
  • 30 with Honors (30L): Outstanding, comprehensive, and in-depth knowledge of the course topics; excellent critical analysis and ability to make connections across topics; complete mastery of the relevant terminology.

Teaching tools

Practical exercises will be carried out using Python notebooks (e.g., on Colab)

Office hours

See the website of Matteo Francia

See the website of Matteo Golfarelli

SDGs

Quality education Industry, innovation and infrastructure

This teaching activity contributes to the achievement of the Sustainable Development Goals of the UN 2030 Agenda.