Tecnologie dei dati e del linguaggio

A.A. 2024/2025
6
Crediti massimi
40
Ore totali
SSD
INF/01
Lingua
Italiano
Obiettivi formativi
1. Fornire agli studenti una conoscenza approfondita delle tecnologie dei dati e del linguaggio.
2. Sviluppare competenze avanzate nell'uso di strumenti e framework per l'analisi di dati
3. Approfondire la comprensione dei principi di elaborazione del linguaggio naturale e delle sue applicazioni.
4. Formare gli studenti nella progettazione e implementazione di soluzioni basate su machine learning.
5. Abilitare gli studenti a progettare e implementare attività di studio e ricerca basati sui metodi di analisi dei dati e del linguaggio.
Risultati apprendimento attesi
Al termine del corso, gli studenti dovrebbero essere in grado di:
1. Applicare concetti avanzati di tecnologie dei dati in contesti pratici.
2. Utilizzare modelli di NLP per analizzare il linguaggio naturale e risolvere problemi specifici.
3. Applicare tecniche di machine learning avanzate in vari contesti applicativi.
4. Completare con successo progetti applicativi complessi che integrano tecnologie dei dati e del linguaggio.
Corso singolo

Questo insegnamento può essere seguito come corso singolo.

Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Secondo semestre

Programma
Introduzione alla Data Science per le discipline umanistiche
- Il contesto multidiciplinare della Data Science
- La rivoluzione dei dati e l'evoluzione dell'intelligenza artificiale
- Sfide e questioni aperte sull'impatto sociale e culturale delle tecnologie dei dati

Elaborazione del Linguaggio Naturale (NLP)
- Introduzione ai principi di elaborazione del linguaggio naturale
- Intelligenza artificiale e elaborazione del linguaggio naturale
- Difficoltà e caratteristiche proprie del linguaggio naturale
- Limiti dei modelli simbolici
- La nozione di Language Models e i modelli statistici

Introduzione all'apprendimento automatico (Machine Learning)
- Il cambio di paradigma da modelli basati sulla conoscenza a modelli di apprendimento
- Macchine che imparano e modelli di apprendimento
- Apprendimento non superisionato (unsupervised learning)
- Apprendimento per rinforzo (reinforcement learning)
- Apprendimento supervisionato (supervised learning)

Introduzione alle reti neurali
- I meccanismi di apprendimento delle reti neurali
- Applicazioni al linguaggio naturale (word embeding e modelli non contestuali)
- Neural Language models
- Sequence-2-Sequence learning: RNN e LSTM
- Architetture encoder-decoder, meccanismi di attenzione e large language models

Questioni legali e etiche legate all'intelligenza artificiale generativa
- Trasparenza e explainability dei modelli generativi
- Allucinazione e errore
- Stereotipi e bias nei modelli generativi

Progettazione
- Costruzione di un progetto di applicazione dei modelli generativi a problemi di interresse degli studi umanistici
- Realizzazione del progetto e raccolta dei risultati
- Presentazione del progetto
Prerequisiti
Non è necessario avere una conoscenza approfondita di tutte le tecnologie specifiche menzionate nell'insegnamento, poiché queste saranno trattate durante le lezioni. Tuttavia, alcune conoscenze preliminari in materia di programmazione, gestione e coprensione dei dati, e una buona motivazione e interesse per le applicazioni dell'intelligenza artificiale e del machine learning nelle scienze umanistiche e nella linguistica aiuteranno gli studenti a seguire le lezioni in modo più efficace e a raggiungere gli obiettivi di apprendimento previsti.
Metodi didattici
L'insegnamento è erogato in forma di lezioni frontali con ampio ricorso a esempi e materiali di supporto in forma di notebook Python. E' previsto l'uso di slide e materiali didattici che saranno progressivamente resi disponibili sul sito web dell'insegnamento in piattaforma Ariel e sul repository GitHub dell'insegnamento (https://github.com/afflint/tdl).
Materiale di riferimento
L'insegnamento si avvale principalmente di appunti, notebook e materiali forniti dal docente e pubblicati sul sito Ariel dell'insegnamento. Per approfondimenti, è possibile integrare tali materiali con alcune letture suggerite:
- Aurélien Géron, Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems, O'Reilly Media; 3rd edition (November 8, 2022) (Disponibile anche in edizione italiana)
Modalità di verifica dell’apprendimento e criteri di valutazione
Sviluppo di un progetto. L'argomento del progetto deve essere discusso in precedenza con il docente. Il progetto dovrebbe dimostrare la comprensione degli argomenti delle lezioni e la capacità di proporre e motivare soluzioni innovative a specifici problemi di ricerca.
Il progetto sarà valutato attraverso una discussione con il docente sui risultati del progetto e sugli argomenti correlati. La valutazione terrà conto sia del progetto sia del colloquio.
L'uso del servizio SIFA per partecipare all'esame è obbligatorio. Dopo la registrazione a un esame su SIFA, gli studenti sono invitati a contattare il docente per programmare la discussione.
INF/01 - INFORMATICA - CFU: 6
Lezioni: 40 ore
Docente: Ferrara Alfio
Docente/i
Ricevimento:
Su appuntamento. Il colloquio si svolgerà online fino al termine dell'emergenza Covid
Dipartimento di Informatica, via Celoria 18 Milano, Stanza 7012 (7 piano)