Nuova ricerca

Laura PO

Professore Associato
Dipartimento di Ingegneria "Enzo Ferrari"

Insegnamento: Graph Analytics

Ingegneria informatica (Offerta formativa 2022)

Obiettivi formativi

Internet e i social media hanno completamente cambiato il modo in cui viviamo e interagiamo con altre persone in tutto il mondo. Milioni di connessioni e interazioni avvengono ogni giorno a una velocità incredibile e i grafici sono uno strumento chiave per comprendere e descrivere questi fenomeni. L'obiettivo del corso Graph Analytics è introdurre gli studenti al mondo dei grafi e insegnare come analizzare i grafi su scala sia in teoria che in pratica.
Il corso mira a insegnare come creare e analizzare database a grafo, inoltre, descriverà tecniche di pianificazione delle query rapide per cercare in modo efficiente attraverso i grafi ed esplorare le tecniche basate sull'intelligenza artificiale, le loro proprietà e l'idoneità per la risoluzione delle entità.
Il corso si svolge con lezioni frontali che introducono concetti teorici e algoritmi utilizzati nell'analisi dei grafi, e con progetti individuali in cui gli studenti applicheranno quanto appreso ad applicazioni reali e problemi aperti. Gli studenti saranno seguiti con sessioni di tutoraggio ad hoc.

Prerequisiti

Non sono richieste propedeuticità.
E' apprezzata una conoscenza di base di basi di dati, big data, e del linguaggio SQL

Programma del corso

-introduzione ai grafi e alla scienza delle reti
-proprietà del grafi
-tecniche e algoritmi per l'analisi dei grafi
-gestione dei dati del grafi
-piattaforme informatiche per l'analisi dei grafi
-grafico rete convoluzionale (GCN)
-analisi dei grafi e data science applicata a grafi con NEO4J/Apache Spark

Metodi didattici

L’insegnamento viene erogato in lingua italiana mediante lezioni frontali in presenza che vengono svolte con l’ausilio di mezzi audiovisivi (presentazioni in Power Point rese disponibili agli studenti, prevalentemente in lingua inglese). Sono previste diverse esercitazioni pratiche che prevedono l’uso di strumenti software e attività pratiche di laboratorio. La frequenza non è obbligatoria.

Nel caso in cui, l’attività in presenza non fosse possibile (come verificatosi durante l’emergenza covid) le lezioni sono svolte in diretta streaming e videoregistrate; le registrazioni rimangono a disposizione per tutto l’anno accademico per favorire e supportare gli studenti che non hanno potuto frequentare alcune o la totalità delle lezioni.

Testi di riferimento

Per affrontare alla verifica dell’apprendimento, gli studenti devono prepararsi utilizzando le slide e il materiale fornito dai docenti durante le lezioni, oltre che i tool software analizzati, e le esercitazioni svolte.

Tutte le slide e il materiale didattico sono rese disponibili man mano che vengono affrontate durante le lezioni sul sito MOODLE https:// https://moodle.unimore.it/

Materiali didattici aggiuntivi per l'approfondimento, come libri e articoli di ricerca saranno menzionati durante le lezioni o elencati come materiali per lo svolgimento della tesina.

---
To address the verification of learning, students must prepare using the slides and material provided by the teachers during the lessons, as well as the software tools analyzed, and the exercises carried out.

All the slides and teaching material are made available as they are addressed during the lessons on the MOODLE website https:// https://moodle.unimore.it/

Additional teaching materials for in-depth study, such as books and research articles will be mentioned during the lessons or listed as materials for carrying out the dissertation.

Verifica dell'apprendimento

La verifica si compone di esame orale svolto tramite un colloquio orale e di una tesina individuale su un argomento scelto a piacere dallo studente a partire da suggerimenti forniti dal docente.
Sono previste due prove intermedie, una a metà delle lezioni, durante l’interruzione didattica e una alla fine delle lezioni. Le date delle prove intermedie sono concordate con gli studenti frequentanti le lezioni. Le liste d'iscrizione sono pubblicate su esse3.
La prova completa, così come ciascuna prova intermedia, consta di un orale della durata di circa mezz’ora. Gli orali tratteranno tutti gli argomenti svolti a lezione da ciascun docente e potranno contenere sia domande di teoria che esercizi. Le domande (aperte e chiuse) sono finalizzate a valutare l’acquisizione da parte dello studente delle conoscenze e delle capacità di comprensione della parte nozionistica/teorica dell’insegnamento. Gli esercizi svolti, anche tramite l’ausilio di software, sono finalizzati a valutare la capacità di applicare conoscenza e comprensione. Al termine di ciascuna prova orale il docente comunicherà la valutazione dell’orale.

La tesina individuale richiede all’incirca 3 settimane di lavoro e può consistere nel l’ideazione ed elaborazione di un progetto o in un rapporto su uno studio di ricerca. Terminato il lavoro della tesina, lo studente compone un articolo di 4/6 pagine in formato ACM o IEEE oppure una presentazione power point di 10-15 slide e la presenta al docente referente. In fase di esposizione della tesina il docente referente comunicherà la valutazione.
La tesina è finalizzata a valutare la capacità di applicare conoscenza e comprensione oltre che l’autonomia di giudizio. Può essere svolta prima o dopo la prova completa/le prove intermedie.

Ciascuna prova orale, e la tesina, si intende superata con un voto pari almeno a 18/30. La valutazione della tesina incide per 1/3 sul voto finale, mentre la prova completa incide per i 2/3. Nel caso si svolgano i due parziali, al posto della prova completa, ciascuno incide 1/3 sul voto finale.

Durante lo svolgimento degli esercizi il candidato potrà accedere a tutta la documentazione del corso (slide, libri, appunti etc.)

Risultati attesi

Lo studente sarà in grado di strutturare una propria rete di dati e di modellare un problema attraverso database a grafo ed eseguire attività analitiche sul grafo in modo scalabile. Sarà in grado di applicare queste tecniche per comprendere il significato dei propri set di dati per i suoi futuri progetti.

1) Conoscenza e capacità di comprensione
Al termine dell’insegnamento e della verifica dell’apprendimento, si auspica che lo/a studente/essa sia in grado di:
a) orientarsi all’interno dei database a grafo riconoscendo e confrontando le funzionalità di sistemi diversi;
b) descrivere i passi da intraprendere per modellare, archiviare, recuperare e analizzare i dati strutturati in grafi
c) applicare tecniche avanzate per individuare ed estrarre informazioni di interesse grafi.

2) Conoscenza e capacità di comprensione applicate
a) svolgere una analisi di dettaglio di uno o più set di dati e suggerire un processo di integrazione dati efficace ed efficiente all’interno di un database a grafo;
b) padroneggiare gli strumenti software utilizzati durante l’insegnamento e l’esame;
c) strutturare o estendere una ontologia/tassonomia di dominio a un caso applicativo;
d) collegare un grafo a una ontologia/tassonomia;
e) applicare tecniche di analisi e esplorazione del grafo anche per big graph.

3) Autonomia di giudizio
a) verificare il proprio grado di apprendimento e comprensione dei concetti esposti grazie alla possibilità d’intervento a lezione e alla possibilità rappresentata dalla tesina individuale;
b) riorganizzare le conoscenze apprese ed implementare la propria capacità di valutazione critica ed autonoma di quanto appreso;
c) valutare soluzioni informatiche avanzate nell’ambito dell’integrazione, analisi e visualizzazione dei dati.


4) Abilità comunicative
a) esprimere in modo corretto e logico le proprie conoscenze, riconoscendo l’argomento richiesto e rispondendo in modo puntuale e completo alle domande d’esame orale;
b) sintetizzare ed elaborare compiutamente le ricerche condotte sull’argomento della tesina illustrandone i concetti chiave e gli elementi di distinzione del proprio lavoro individuale rispetto allo stato dell’arte;
c) padroneggiare una terminologia accurata e propria dell’ingegneria dell’informazione e dei database a grafo

5) Capacità di apprendimento
a) approfondire le nozioni apprese per provvedere autonomamente al proprio aggiornamento particolarmente cruciale in un ambito di database a grafo dove le tecnologie sono in continua evoluzione;
b) impadronirsi ed affinare il proprio linguaggio scientifico e tecnico.