Questa è una vecchia versione del documento!
Indice
Data Mining (309AA) - 9 CFU A.Y. 2025/2026
Instructors:
- Anna Monreale
- KDDLab, Università di Pisa
- Mattia Setzu
- KDDLab, Università di Pisa
Teaching Assistant:
- * Lorenzo Mannocci
- University of Pisa
News
[23-09-2025]: Please register yourself and your group for the project .Group registration available here.
Learning Goals
The Data Mining course tackles the analysis of large collections of data, and the extraction of information and patterns. It aims to explore core components of the Knowledge Discovery from Data (KDD) process, and focuses on:
- Data understanding
- Data cleaning, preparation, and transformation
- Data analysis: outlier detection and data representation
- Data clustering
- Pattern extraction: itemset, rules, association rules, and sequential patterns
- Inference models: trees, and ensemble models
- Responsible data use: privacy and interpretability
Schedule
Classes
Day of Week | Hour | Room |
---|---|---|
Tuesday | 11:00 - 13:00 | Room C |
Wednesday | 14:00 - 16:00 | Room C |
Thursday | 14:00 - 16:00 | Room A1 |
Office hours - Ricevimento:
- Anna Monreale:TBD- Online using Teams or in my Office (Appointment by email).
- Mattia Setzu: Infos on Unimap
A Teams Channel will be used ONLY to post news, Q&A, and other stuff related to the course. The lectures will be only in presence and will NOT be live-streamed.
Teaching Material
Books
Title | Authors | Edition |
---|---|---|
Introduction to Data Mining | Pang-Ning Tan, Michael Steinbach, Vipin Kumar | 2nd |
Introduction to Data Science: A Python Approach to Concepts, Techniques and Applications | Laura Igual, Santi Seguí | 2nd |
Python Data Science Handbook: Essential Tools for Working with Data | Jake VanderPlas | 1st |
Deep Learning | Ian Goodfellow, Yoshua Bengio, Aaron Courville | |
Introduction to Linear Algebra | Gilbert Strang | 5th |
Online tutorials
Authors | |
---|---|
Digital Signals Theory | Brian McFee |
An introduction to Dynamic Time Warping | Romain Tavenard |
Introduction to Python | Mattia Setzu |
Slides
The slides used in the course will be inserted in the calendar after each class. Some are part of the slides provided by the textbook's authors Slides per "Introduction to Data Mining".
Class Calendar (2025/2026)
First Semester
Day | Topic | Teaching material | References | Teacher | |
---|---|---|---|---|---|
1. | 18.09 | Course Overview. Introduction to Data Mining | Introduction to DM | Chap. 1 Kumar Book | Setzu |
23.09 | Canceled for Teacher's health issues | ||||
2. | 24.09 | Data Understanding + Data Preparation | data_understanding.pdf Data Preparation | Chap. 2 Kumar Book and additioanl resource of Kumar Book: Data Exploration Chap. If you have the first ed. of KUMAR this is the Chap 3 | Setzu |
3. | 25.09 | Data representation | data_representation.pdf | References: Introduction to linear algebra (Sections 1, 3.1, 4.2, 6.1, 6.4, 6.5, 7.3), t-SNE paper, UMAP paper (Section 3) | Setzu |
4. | 30.09 | Data Cleaning + Transformations. PyLab: Data Understanding | Data Cleaning & Transformations | Monreale, Mannocci | |
5. | 01.10 | PyLab: Data Understanding + Preparation | 1_basics_and_understanding.ipynb.zip 2_feature_engineering_and_data_representation.ipynb.zip data_notebook.zip | Monreale, Mannocci | |
6. | 02.10 | Similarities + Introduction to Clustering and Centroid-based clustering | Monreale |
Exam
The exam can be taken in one of two ways:
Project track:
- Project (70% of the final score) to be delivered after the end of the course
- Oral exam (30% of the final score)
During the course, you will have some “Project presentation” sessions wherein you’ll briefly (~3 minutes) present your work, and receive feedback from the lecturers. These sessions do not contribute to your grade.
Written test track
- Written exam (70% of the final score): to be delivered after the end of the course during the exam sessions and can include both theoretical questions and exercises.
- Oral exam (30% of the final score)
Note that a passing grade for the project/written exam is required to be admitted to the oral exam.
Project Guidelines: A project consists in data analyses based on the use of data mining tools. The project has to be performed by a team of 3 students. It has to be performed by using Python. The guidelines require to address specific tasks. Results must be reported in a unique paper. The total length of this paper must be max 25 pages of text including figures. The students must deliver both: paper (single column) and well commented Python Notebooks.
Specifically, if any of these tasks appear in the project track, make sure to focus on the following:
Data understanding
- An analysis of all variables, their relations, distributions, and quality
- An eventual feature imputation and/or selection
- The engineering of additional features, including the aforementioned analyses
Clustering Analysis
- A properly justified feature selection phase
- Tackling all clusternig families, exploring their respective hyperparameters
- An analysis of the best clusterings per family, including cluster description
- A comparison of the best clusterings per family
Anomaly detection
- A selection of outliers through appropriate algorithms
- An interpretation of such outliers
- An analysis of the impact of the outliers on the previously performed data understanding
Time series analysis
- Appropriate representation choice for the task at hand
Supervised learning
- Feature selection
- Test different families of models
- Proper model validation, including both model performance and model complexity
- Comparison of the best models of each family
Explainability
- Justified selection of instances to explain
- Analysis of the explanations
Project and Deadlines Information about the dataset to be analyzed and project description:
- Dataset.
- Project description.
- Deadline.
- Delivery instructions.