IOT DATA ANALYTICS

Giuseppe POLESE IOT DATA ANALYTICS

0522500131
DIPARTIMENTO DI INFORMATICA
CORSO DI LAUREA MAGISTRALE
INFORMATICA
2024/2025



ANNO ORDINAMENTO 2016
SECONDO SEMESTRE
CFUOREATTIVITÀ
945LEZIONE
Obiettivi
L’obiettivo formativo dell’insegnamento è quello di fornire le competenze metodologiche e tecnologiche necessarie per analizzare in tempo reale enormi flussi di dati provenienti da dispositivi IoT. In sostanza, si intendono integrare conoscenze di data management acquisite nell’ambito del corso di basi di dati della laurea triennale con competenze inerenti l’estrazione di dati sensoristici, il controllo della loro qualità, i modelli analitici e le tecniche di machine learning per data stream.

Conoscenza e capacità di comprensione (knowledge and understanding):

Far acquisire allo studente conoscenze sui modelli e sulle tecnologie per la gestione di grandi flussi di dati provenienti da sensori e dispositivi IoT di vario genere, al fine di consentire analisi utili ai fini di una gestione ottimale di processi produttivi e di reti tecnologiche. In particolare, il corso mira a sviluppare nello studente le seguenti conoscenze:

-Elaborazione di dati sensoristici
-Modelli analitici per IoT
-Machine learning per IoT
-Sequence Data Mining
-Analisi di Serie Temporali


Capacità di applicare conoscenza e comprensione (applying knowledge and understanding):

Il modulo corso mira a sviluppare nello studente le seguenti capacità:

• Saper acquisire, gestire ed elaborare grandi flussi di dati provenienti da dispositivi IoT
• Saper analizzare e migliorare in tempo reale la qualità di dati provenienti da dispositivi IoT
• Saper selezionare le tecniche di analisi e di machine learning più idonee per l’analisi di dati sensoristici e di dispositivi IoT
Prerequisiti
Lo studente deve conoscere i fondamenti di data management, di sistemi distribuiti, paradigma ad oggetti ed un linguaggio di programmazione
Contenuti
Lo studente deve conoscere i fondamenti di data management, di sistemi distribuiti, paradigma ad oggetti ed un linguaggio di programmazione.

Dopo una panoramica sui sistemi IOT e sui nuovi scenari applicativi legati alla gestione di grandi sequenze di dati provenienti da dispositivi IOT, il corso si concentrerà sui seguenti argomenti:

Introduzione all’IOT Data Analytics (4 ore di teoria)
• Problematiche di Big data nel contesto IOT (2 ore di teoria)
• Casi di Studio (2 ora di teoria)

Mining di sequenze in tempo reale (10 ore di teoria)
• Il modello Data Stream (1 ora di teoria)
• Campionamento dei dati in uno Stream (1 ora di teoria)
• Filtraggio di Stream: Il filtro di Bloom (1 ora di teoria)
• Conteggio di elementi distinti in uno stream (1 ora di teoria)
• Stima dei momenti (1 ora di teoria)
• Conteggio di elementi in una finestra di uno stream (2 ore di teoria)
• Finestre decadenti (2 ore di teoria)
• Mining di pattern sequenziali (1 ora di teoria)

Machine learning per IOT (13 ore di teoria)
• Tassonomia dei Sistemi di Machine Learning (3 ore di teoria)
• Costruzione di Sistemi di Machine Learning (6 ore di teoria)
• Clustering di data stream (4 ore di teoria)

Analisi di Serie di Dati (10 ore di teoria)
• Introduzione alle Serie di Dati (1 ora di teoria)
• Rappresentazione di Serie di Dati (2 ore di teoria)
• Misure di Distanza per Serie di Dati (2 ore di teoria)
• Lower Bounding (1 ore di teoria)
• Indicizzazione di Serie di Dati (2 ore di teoria)
• Metodi di Analisi (2 ore di teoria)

Strumenti per l’IoT Data Analytics (8 ore frontali)
• Il linguaggio Python (4 ore frontali)
• Framework di Online Learning (4 ore frontali)
Metodi Didattici
L’insegnamento prevede 37 ore di didattica frontale e 8 ore su strumenti applicativi, con l’obiettivo di presentare i concetti e sviluppare capacità di progettare ed implementare soluzioni per l’analisi in tempo reale di sequenze di dati provenienti da sistemi e dispositivi IOT. Gli argomenti del programma vengono presentati con l’ausilio di presentazioni powerpoint, stimolando discussioni critiche con la classe. Per ogni argomento trattato, vengono illustrati possibili task che possono essere oggetto di un progetto di corso da parte di uno o più studenti. Per quanto riguarda gli strumenti applicativi, oltre all’utilizzo di presentazioni powerpoint, attraverso le quali vengono presentati concetti ed eventuali risorse aggiuntive, quali link a forum, manuali e siti di approfondimento, viene offerta agli studenti la possibilità di chiedere supporto, durante l’orario di ricevimento, in merito a simulazioni da essi effettuate sul proprio computer, di chiedere chiarimenti e risolvere eventuali problemi tecnici insieme ai docenti.
Verifica dell'apprendimento
l raggiungimento degli obiettivi dell’insegnamento è certificato mediante il superamento di un esame con valutazione in trentesimi. L'esame prevede una prova scritta (si può essere esonerati superando una prova in itinere, se organizzata) ed una prova orale. Inoltre, gli studenti possono optare per lo sviluppo di un progetto facoltativo. La prova scritta (o quella in itinere) è finalizzata ad accertare l’acquisizione dei concetti teorici presentati durante il corso. La prova orale dovrà essere l’ultima delle prove. Essa consiste in un colloquio con domande e discussioni sui contenuti teorici e metodologici trattati a lezione ed è finalizzata ad accertare la capacità di conoscenza e comprensione, nonché la capacità di esposizione dei concetti. Il progetto facoltativo è finalizzato ad accertare la capacità di applicare le conoscenze acquisite in scenari reali. Esso può essere svolto individualmente o in gruppi di massimo 3 persone, scegliendo la tematica tra un ventaglio di proposte fatte dai docenti. Durante lo svolgimento del progetto gli studenti dovranno interagire con i docenti al fine di comunicare gli stati di avanzamento del progetto e le eventuali criticità emerse, concordando obiettivi e modalità di prosecuzione. Al termine, gli studenti dovranno consegnare ai docenti una tesina contenente la documentazione di progetto e fare una presentazione powerpoint dello stesso della durata di circa 30 minuti. Quest’ultima può essere fatta lo stesso giorno della prova orale o in altro giorno, comunque prima della prova orale.
Il voto finale scaturisce, generalmente, dalla media dei voti in trentesimi riportati alla prova scritta (od in itinere) ed alla prova orale. Il voto così ottenuto può essere incrementato da 1 a 3 punti con lo sviluppo del progetto facoltativo.
Testi
1.Jure Leskovec, Anand Rajaraman, Jerey D. Ullman, “Mining of Massive Datasets”, 3^ Edizione, Cambridge University Press, 2020.
2.Aurélien Géron, " Hands-On Machine Learning with Scikit-Learn, Keras, and Tensorflow: Concepts, Tools, and Techniques to Build Intelligent Systems “, 2^ Edizione, O Reilly ed, 2019.
3.J. Gama, Knowledge Discovery from Data Streams, CRC PRESS, 2010.
4.A. Bifet, R. Gavaldà, G. Holmes, B, Pfahringer, Machine Learning for Data Streams – with practical examples in MOA, The MIT Press, 2018.
Altre Informazioni
La frequenza del corso è fortemente consigliata. Gli studenti devono essere preparati a trascorrere una congrua quantità di tempo nello studio al di fuori delle lezioni. Una preparazione soddisfacente richiede in media 1 ora di studio per ciascuna ora trascorsa in aula e circa 80 ore per lo sviluppo del progetto.
Il materiale delle lezioni sarà disponibile sulla piattaforma e-learning dipartimentale http://elearning.informatica.unisa.it/el-platform/

Contatti

Prof.ssa Loredana Caruccio
lcaruccio@unisa.it
  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2024-11-29]