Programma dei Moduli del Corso:

Data Mining E Analisi Dei Dati Testuali E Visive | Docente:
Leonardo Ranaldi

Il modulo approfondisce l’intero ciclo di analisi: esplorazione, pulizia, modellazione di base e comunicazione dei risultati su dati testuali e visivi. Si parte dall’EDA guidata da domande, con sintesi numeriche e grafici, per individuare pattern, outlier e problemi di qualità. Si introducono strategie di encoding e pipeline supervisionate con scikit-learn e metriche di valutazione, insistendo su validazione e interpretabilità. Per il testo, si trattano tokenizzazione, normalizzazione (stopword, lemmi), rappresentazioni bag-of-words e TF–IDF, fino a un classificatore baseline con analisi degli errori e ispezione dei pesi. Per le immagini, si presentano i fondamenti, l’estrazione di feature semplici e un confronto tra scelte di feature in un compito di classificazione di piccola scala. I laboratori richiedono notebook riproducibili con tracciabilità delle decisioni e riflessione etica su privacy. L’esame prevede un progetto applicato (testo oppure immagini) e una discussione orale mirata a motivare le scelte metodologiche e i limiti dell’approccio. Al termine, gli studenti sapranno progettare una pipeline end-to-end, valutare in modo critico i risultati, stimare incertezza e robustezza e redigere brevi report tecnici.




Linguaggi Di Programmazione | Docente:
Leonardo Ranaldi

Questo modulo introduce gli studenti al pensiero computazionale e alla progettazione di soluzioni algoritmiche attraverso il linguaggio Python. L’obiettivo formativo è duplice: da un lato, acquisire padronanza della sintassi di base (tipi, operatori, controllo di flusso, funzioni e strutture dati); dall’altro, sviluppare buone pratiche di programmazione orientate alla leggibilità, alla gestione degli errori e alla riproducibilità. Le lezioni combinano spiegazioni teoriche e live coding, seguite da esercitazioni guidate in laboratorio. Verranno affrontati file I/O, modularità del codice, ambienti virtuali e principi essenziali di testing. Una particolare attenzione è dedicata all’analisi di dati tabellari: NumPy per il calcolo vettoriale, pandas per il wrangling (pulizia, trasformazioni, join, aggregazioni) e Matplotlib per la visualizzazione di andamenti e distribuzioni. Gli studenti realizzeranno notebook tematici, ciascuno con obiettivi chiari, commenti espliciti e risultati verificabili, in modo da consolidare una metodologia di lavoro trasparente e replicabile. Al termine, saranno in grado di decomporre un problema, scegliere strutture adeguate, scrivere funzioni testabili, diagnosticare bug e presentare analisi elementari ma corrette. La valutazione conterrà una prova scritta su concetti e sintassi e una consegna pratica focalizzata su qualità del codice (chiarezza, correttezza, efficienza proporzionata), uso appropriato delle librerie e comunicazione dei risultati. Non sono richieste conoscenze pregresse di programmazione; una familiarità con logica di base e fogli di calcolo facilita l’avvio. Il modulo fornisce competenze trasversali utili anche oltre l’informatica, come il problem solving sistematico, la documentazione essenziale e la collaborazione su risorse condivise.