View syllabus
DATA MINING
RICCARDO GUIDOTTI
Academic year2022/23
CourseDATA SCIENCE AND BUSINESS INFORMATICS
Code420AA
Credits12
PeriodSemester 1 & 2
LanguageEnglish

ModulesAreaTypeHoursTeacher(s)
DATA MINING: ADVANCED TOPICS AND APPLICATIONSINF/01LEZIONI48
RICCARDO GUIDOTTI unimap
DATA MINING: FUNDAMENTALSINF/01LEZIONI48
RICCARDO GUIDOTTI unimap
DINO PEDRESCHI unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

Il corso è suddiviso in due moduli.

DATA MINING: FONDAMENTI

I formidabili progressi della potenza di calcolo, della capacità di acquisizione e memorizzazione dei dati e di connettività hanno creato quantità di dati senza precedenti. Il data mining, ovvero la scienza dell’estrazione di conoscenza da tali masse di dati, si è quindi affermato come ramo interdisciplinare dell’informatica.
Le tecniche di data mining sono state applicate a molti problemi in ambito industriale, scientifico e sociale, e si ritiene che avranno un impatto sempre più profondo sulla società. L’obiettivo del corso è quello di fornire un’introduzione ai concetti di base del data mining e del processo di estrazione della conoscenza, con approfondimenti sui modelli analitici e gli algoritmi più diffusi.

DATA MINING: ASPETTI AVANZATI E APPLICAZIONI

La seconda parte del corso completa le conoscenze del primo modulo con una rassegna delle tecniche avanzate per il mining per dati tabulari e tecniche avanzate di mining per nuove forme di dati. Le tecniche avanzate di classificazione sono relative a reti neurali, SVM, metodi ensemble. Nuovi problemi affrontati sono outlier detection, transactional clustering, time series forecasting e sequential pattern mining. Inoltre vengono analizzati problemi relativi alla explainability dei classificatori.

Knowledge

DATA MINING: FOUNDATIONS

The formidable advances in computing power, data acquisition, data storage and connectivity have created unprecedented amounts of data. Data mining, i.e., the science of extracting knowledge from these masses of data, has therefore been affirmed as an interdisciplinary branch of computer science.
Data mining techniques have been applied to many industrial, scientific, and social problems, and are believed to have an ever deeper impact on society. The course objective is to provide an introduction to the basic concepts of data mining and the process of extracting knowledge, with insights into analytical models and the most common algorithms.

DATA MINING: ADVANCED ASPECTS AND APPLICATIONS 

The second part of the course completes the knowledge of the first module with a review of advanced mining techniques for tabular data and advanced mining techniques for new forms of data. The advanced classification techniques are related to neural networks, SVM, ensemble methods. New problems addressed are outlier detection, transactional clustering, time series forecasting and sequential pattern mining. In addition, problems related to the explainability of classifiers are analyzed.

Modalità di verifica delle conoscenze

Per la verifica delle conoscenze acquisite nel corso gli studenti dovranno sostenere una prova orale che coprirà tutti gli argomenti trattati a lezione.  Inoltre sarà chiesto agli studenti di organizzarsi in gruppi per collaborare alla realizzazione di un progetto che ha l'obiettivo di analizzare un dataset con i diversi metodi di mining presentati a lezione. La modalità di esame è la stessa per i due moduli.

Assessment criteria of knowledge

To verify the knowledge acquired during the course, students will have to take a written test that will cover all the topics covered in class. Furthermore, students will be asked to organize themselves into groups to collaborate in the realization of a project that aims to analyze a dataset with the different mining methods presented in class. Finally, the student will also have to take two oral tests on the topics covered in the two modules.

Capacità

Al termine dei due moduli  lo studente sarà in grado di:

  • progettare un KDD process
  • applicare le diverse tecniche di mining sulla base delle domande analitiche a cui rispondere
  • usare strumenti di mining e librerie python
  • simulare il funzionamento di ogni algoritmo di mining presentato a lezione
Skills

At the end of the course the student will be able to 

  • design a KDD process
  • apply the diffenrt data mining techniques onthe basis of the analytical question to be answered
  • use data mining tools and python libraries 
  • simulate how the data mining algorithms work
Modalità di verifica delle capacità
  • Lo studente dovrà realizzare e presentare un progetto che richide di analizzare un dataset con i diversi metodi di mining presentati a lezione
  • A corredo del progetto, lo studente dovrà preparare anche una relazione scritta che riporti i risultati dell’attività di progetto e l'interpretazione dei risultati trovati. 
  • Lo studente svolgerà un esame orale per la verifica delle conoscenze teorichedove lo studente metterà anche in pratica la simulazione degli algoritmi di mining con esercizi scritti
Assessment criteria of skills
  • The student will have to create and present a project that requires to analyze a dataset with the different mining methods presented in class
  • In support of the project, the student must also prepare a written report showing the results of the project activity and the interpretation of the results found.
  • The student will carry out an oral exam for the verification of theoretical knowledge where the student will also put into practice the simulation of mining algorithms with written exercises
Comportamenti

Lo studente potrà maturare abilità nel lavoro di gruppo. Inoltre potrà acquisire e/o sviluppare opportune sensibilità nelle scelte progettuali e di impostazione del processo analitico. Infine, lo studente potrà imparare come intepretare i risultati analitici e come visualizzarli in modo opportuno.

Behaviors

The student can master skills in team work. It will also acquire and/or develop appropriate sensitivity in the choices for the design and set-up of an analytical process. Finally, the student will learn how to interpret analytical results and how to visualize them properly.

Modalità di verifica dei comportamenti

In fase di esame saranno valutate le scelte progettuali effettuate dal gruppo di studenti e la capacità di elaborazione dei dati con strumenti di analytica e di mining. Inoltre, saranno valutate l’accuratezza e la precisione applicata dal gruppo nello svolgere le attività progettuale.

Assessment criteria of behaviors

During the exam, the project choices made by the student group and the ability to process the data with analytical and mining tools will be evaluated. In addition, the accuracy and precision applied by the group in the design activities will be evaluated.

Indicazioni metodologiche
  • Il corso si basa su lezioni frontali, con ausilio di slide, ed esercitazioni sia sulla simulazione degli algoritmi che sull'uso di Python per l'analisi e il mining dei dati (uso del PC personale) 
  • Tutto il materiale didattico verrà caricato sulla pagina del corso presente sul portale Didawiki.
  • Lo studente potrà comunicare con il docente nelle ore di ricevimento e durante le esercitazioni
Teaching methods

Delivery: face to face

Learning activities:

  • attending lectures
  • preparation of oral/written report
  • individual study
  • group work
  • Laboratory work

Attendance: Advised

Teaching methods:

  • Lectures
  • Task-based learning/problem-based learning/inquiry-based learning
  • project work
Programma (contenuti dell'insegnamento)

DATA MINING: FONDAMENTI

  • KDD, CRIPS
  • Data Understanding
  • Data Preparation
  • Foundations of Clustering
  • - K-Means
  • - Hierarchical Clustering
  • - DBSCAN
  • Advanced Clustering
  • Frequent Pattern Mining
  • Sequential Pattern Mining
  • Foundations of Classification
  • - Instance-based Classifiers
  • - Naive Bayes Classifiers
  • - Decision Tree Classifiers
  • Foundations of Regression

DATA MINING: ASPETTI AVANZATI E APPLICAZIONI

  • Imbalanced Learning
  • Dimensionality Reduction
  • Outliers Detection
  • Support Vector Machines
  • (Deep) Neural Networks
  • Ensemble Classifiers
  • Rule-based Classifiers
  • Time Series Distances and Clustering
  • Time Series Classification
  • Transactional Clustering
  • Explainability
Syllabus

DATA MINING: FONDAMENTI

  • KDD, CRIPS
  • Data Understanding
  • Data Preparation
  • Foundations of Clustering
  • - K-Means
  • - Hierarchical Clustering
  • - DBSCAN
  • Advanced Clustering
  • Frequent Pattern Mining
  • Sequential Pattern Mining
  • Foundations of Classification
  • - Instance-based Classifiers
  • - Naive Bayes Classifiers
  • - Decision Tree Classifiers
  • Foundations of Regression

DATA MINING: ASPETTI AVANZATI E APPLICAZIONI

  • Imbalanced Learning
  • Dimensionality Reduction
  • Outliers Detection
  • Support Vector Machines
  • (Deep) Neural Networks
  • Ensemble Classifiers
  • Rule-based Classifiers
  • Time Series Distances and Clustering
  • Time Series Classification
  • Transactional Clustering
  • Explainability
Bibliografia e materiale didattico

BOOKS

  • Pang-Ning Tan, Michael Steinbach, Vipin Kumar. Introduction to Data Mining. Addison Wesley, ISBN 0-321-32136-7, 2006
  • Berthold, M.R., Borgelt, C., Höppner, F., Klawonn, F. GUIDE TO INTELLIGENT DATA ANALYSIS. Springer Verlag, 1st Edition., 2010. ISBN 978-1-84882-259-7

SOFTWARE

  • KNIME The Konstanz Information Miner. Download page
  • Python - Anaconda: Anaconda is the leading open data science platform powered by Python. Download page (the following libraries are already included)
  • Scikit-learn: python library with tools for data mining and data analysis Documentation page
  • Pandas: pandas is an open source, BSD-licensed library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language. Documentation page
Bibliography

BOOKS

  • Pang-Ning Tan, Michael Steinbach, Vipin Kumar. Introduction to Data Mining. Addison Wesley, ISBN 0-321-32136-7, 2006
  • Berthold, M.R., Borgelt, C., Höppner, F., Klawonn, F. GUIDE TO INTELLIGENT DATA ANALYSIS. Springer Verlag, 1st Edition., 2010. ISBN 978-1-84882-259-7

SOFTWARE

Indicazioni per non frequentanti

Le esercitazioni svolte in aula e le slides possono essere scaricati dal sito web del corso: http://didawiki.di.unipi.it/doku.php/dm/start

Non-attending students info

Exercises and slides may be downloaded from the web site: http://didawiki.di.unipi.it/doku.php/dm/start

Modalità d'esame

L'esame consiste in una prova orale sugli argomenti trattati a lezione per la verifica delle conoscenze teoriche dove lo studente metterà anche in pratica la simulazione degli algoritmi di mining con esercizi scritti, e un progetto svolto in gruppo con consegnat di report e discussione del progetto durante la prova orale.

 

Assessment methods

The exam consists of an oral test on the topics covered in class for the verification of theoretical knowledge where the student will also put into practice the simulation of the mining algorithms with written exercises, and a project carried out in a group with report delivery and project discussion. during the oral exam.

Updated: 01/08/2022 11:32