View syllabus
DATA MINING AND MACHINE LEARNING
FRANCESCO MARCELLONI
Academic year2023/24
CourseARTIFICIAL INTELLIGENCE AND DATA ENGINEERING
Code878II
Credits12
PeriodSemester 1 & 2
LanguageEnglish

ModulesAreaTypeHoursTeacher(s)
ADVANCED DATA AMINING AND MACHINE LEARNINGING-INF/05LEZIONI60
FRANCESCO MARCELLONI unimap
ALESSANDRO RENDA unimap
FUNDAMENTALS OF DATA MINING AND MACHINE LEARNINGING-INF/05LEZIONI60
FRANCESCO MARCELLONI unimap
ALESSANDRO RENDA unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

Gli studenti che completeranno con successo l'insegnamento avranno una solida conoscenza delle principali tecniche per pre-processare i dati, frequent pattern mining, frequent sequential pattern mining, graph mining, classificazione, predizione, clustering, outlier detection. Questa conoscenza permetterà loro di affrontare ogni tipo di problema inerente il data mining e di identificare la tecnica più adatta per risolverlo.

Knowledge

The students who successfully complete the course will have a solid knowledge of the main techniques used in data preprocessing, frequent pattern mining, frequent sequential pattern mining, graph mining, classification, prediction, clustering and outlier detection. This knowledge will allow them to tackle each type of data mining problem and to identify the most suitable technique for solving it.

Modalità di verifica delle conoscenze

Durante la verifica delle conoscenze, gli studenti devono dimostrare di aver appreso le diverse tecniche insegnate durante lo svolgimento del corso e devono essere capaci di identificare la soluzione più adatta per problemi di data mining specifici. 

I metodi sono:

  • esame orale
  • report e presentazione del progetto

Ulteriori informazioni: allo studente è richiesto di sviluppare un progetto in cui vengono utilizzate tecniche di data mining. I risultati del progetto vengono discussi durante una presentazione.

Assessment criteria of knowledge

During the oral exam the student must be able to demonstrate his/her knowledge of the course material and be able to identify the most suitable solutions for specific data mining problems.

Methods:

  • Final oral exam
  • Written report and presentation of the project

Further information:
The student is requested to develop an application employing some data mining technique. The results of the project are described in a report and discussed during the presentation of the project. 

Capacità

Al termine del corso, 

  • lo studente saprà affrontare i più comuni problemi di data mining, trovando le soluzioni più idonee per risolverli
  • lo studente saprà valutare e confrontare più soluzioni e scegliere la più adatta
Skills

At the end of the course,

  • the student will be able to tackle the most common problems in data mining, searching for the most suitable solution
  • the student will be able to evaluate and compare several possible solutions and to select the most effective
Modalità di verifica delle capacità

Lo studente dovrà preparare e presentare una relazione scritta che riporti i risultati dell'attività di progetto

Assessment criteria of skills

The student will have to prepare and present a report, which describes the development of the project and the obtained results

Comportamenti

Lo studente potrà acquisire un metodo per affrontare problemi di data mining e per selezionare le migliori soluzioni da adottare

Behaviors

The student will acquire a method to deal with data mining problems and to select the most effective solution to be adopted

Modalità di verifica dei comportamenti

Durante le sessioni di laboratorio saranno valutati il grado di accuratezza e precisione delle attività svolte dallo studente

Durante lo sviluppo del progetto saranno verificate le modalità di gestione e organizzazione delle fasi progettuali

Assessment criteria of behaviors

During the laboratory sessions the degree of accuracy and precision of the activities carried out by the student will be evaluated


During the development of the project, the procedures for managing and organizing the project phases will be verified

Prerequisiti (conoscenze iniziali)

Conoscenze di base di matematica

Conoscenze di linguaggi di programmazione

Prerequisites

Basic knowledge of mathematics

Knowledge of programming languages

Indicazioni metodologiche

Le lezioni verranno svolte frontalmente con l'ausilio di slide

Le esercitazioni verranno svolte in laboratorio con l'ausilio di slide e esempi di programmazione.

Durante il corso, verrà sviluppato dallo studente un progetto che costituirà parte della valutazione finale

 

L'intero corso è tenuto in Inglese

Teaching methods

Delivery: face to face

Learning activities:

  • attending lectures
  • individual study
  • Laboratory work
  • Practical

Attendance: Advised

Teaching methods:

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

Data Preprocessing: data cleaning, integration, reduction, transformation and discretization.

Frequent pattern mining: basic concepts, A-priori algorithm, Pattern-Growth approach, vertical data format, pattern evaluation methods, constraint-based frequent pattern mining, colossal pattern.

Classification: basic concepts, decision tree induction, Bayes classification methods, rule-based classification, lazy learners, techniques for improving accuracy, model evaluation and selection.

Clustering: basic concepts, partitioning methods, hierarchical methods, density-based methods, grid-based methods, model evaluation and selection, clustering with constraints.

Outlier detection: statistical, proximity-based, clustering-based and classification-based approaches.

Sequential Pattern Mining: basic concepts, AprioriAll, AprioriSome, AprioriDynamicSome

Graph Mining: basic concept, geodesic distance, SimRank, Density-based approaches to graph clustering.

Time series: basic concepts and machine learning for forecasting.

Text mining: basic concepts, text classification and case studies.

Trustworthy AI: basic concepts and current solutions.

Distributed frameworks: basic concepts, Hadoop, MapReduce paradigm, Spark, some examples of data mining algorithms implemented by using MapReduce

Python programming language: Introduction, Jupyter Notebook environment and Machine Learning libraries

Syllabus

Data Preprocessing: data cleaning, integration, reduction, transformation and discretization.

Frequent pattern mining: basic concepts, A-priori algorithm, Pattern-Growth approach, vertical data format, pattern evaluation methods, constraint-based frequent pattern mining, colossal pattern.

Classification: basic concepts, decision tree induction, Bayes classification methods, rule-based classification, lazy learners, techniques for improving accuracy, model evaluation and selection.

Clustering: basic concepts, partitioning methods, hierarchical methods, density-based methods, grid-based methods, model evaluation and selection, clustering with constraints.

Outlier detection: statistical, proximity-based, clustering-based and classification-based approaches.

Sequential Pattern Mining: basic concepts, AprioriAll, AprioriSome, AprioriDynamicSome

Graph Mining: basic concept, geodesic distance, SimRank, Density-based approaches to graph clustering.

Time series: basic concepts and machine learning for forecasting.

Text mining: basic concepts, text classification and case studies.

Trustworthy AI: basic concepts and current solutions.

Distributed frameworks: basic concepts, Hadoop, MapReduce paradigm, Spark, some examples of data mining algorithms implemented by using MapReduce

Python programming language: Introduction, Jupyter Notebook environment and Machine Learning libraries

Bibliografia e materiale didattico

Slides del corso

Libro: J. Han and M. Kamber. Data Mining: Concepts and Techniques. Morgan Kaufmann, 4th ed., 2022

Articoli sui differentio algoritmi descritti durante le lezioni forniti dal docente 

Bibliography

Slides of the lectures

Recommended book: J. Han and M. Kamber. Data Mining: Concepts and Techniques. Morgan Kaufmann, 4th ed., 2022.

Papers on the different algorithms described during the course provided by the teacher

Modalità d'esame

L'esame è composto dalla discussione del progetto e una prova orale.

La discussione del progetto viene tipicamente tenuta qualche giorno prima dell'esame orale. Il candidato deve presentare come il progetto è stato sviluppato, motivare le sue scelte progettuali e discutere i risultati ottenuti. Il progetto viene valutato positivamente se il candidato mostra di aver seguito un approccio corretto e di aver valutato in modo critico le possibili soluzioni, scegliendo la più appropriata 

La prova orale consiste in un colloquio tra il candidato e il docente su alcune domande che potrebbero anche assegnate in forma scritta al candidato.
La prova orale è superata  se il candidato mostra padronanza degli argomenti trattati, si esprime in modo chiaro e con terminologia corretta, mostra capacità di analisi e sintesi.

Assessment methods

The assessment method consists of a presentation of the project and an oral exam.

The presentation of the project will be hold some days before the oral exam. The candidate has to present how the project has been developed, to justify the design choices and critically discuss the obtained results. The project is positively evaluated if the candidate shows to have followed a correct approach and to have critically evaluated the possible solutions, choosing the most appropriate

The oral exam consists of a conversation between the candidate and the teacher on some questions that are assigned in writing to the candidate.
The oral exam is over if the candidate shows mastery of the topics covered, is expressed clearly and with correct terminology, shows the ability of analysis and synthesis.

Updated: 18/09/2023 17:24