SCIENZE UMANISTICHEScienze del testo per le professioni digitali Anno accademico 2024/2025
53861 - INTELLIGENZA ARTIFICIALE
Docente: Daniela GIORDANO
Risultati di apprendimento attesi
1) Conoscenza e
comprensione: conoscenza dei paradigmi di sviluppo di sistemi basati su
Intelligenza Artificiale (IA) classica e su apprendimento automatico, comprendendone
limiti e problematiche associate; conoscenza della logica di funzionamento dei
principali algoritmi di apprendimento automatico (supervisionato e non), delle
reti neurali profonde e delle architetture su cui si basano gli attuali “Large
Language Models”.
2) Capacità di applicare
conoscenza e comprensione: gli studenti sapranno autonomamente prototipare e
validare sistemi che apprendono dai dati, con particolare riferimento ai dati
testuali e ai compiti di Natural Language Processing (NLP) e Natural Language
Understanding (NLU). Sapranno effettuare l’allenamento di un modello da zero, il “fine-tuning” di un modello pre-allenato,
scegliendo le metriche appropriate per la valutazione delle prestazioni, in
funzione del compito da apprendere.
3) Autonomia di giudizio:
gli studenti sapranno valutare autonomamente se un problema può essere risolto
con tecniche di apprendimento automatico; sapranno valutare, considerando i
modelli e le architetture disponibili, quali siano quelli più appropriati per
affrontare il problema, e interpretare criticamente i risultati ottenuti.
4) Abilità comunicative: gli
studenti sapranno documentare chiaramente e con proprietà di linguaggio il
problema affrontato, le caratteristiche del dataset, la configurazione del
modello, e i risultati ottenuti. Saranno inoltre in grado di argomentare le
scelte progettuali effettuate.
5) Capacità di
apprendimento: a partire dalle nozioni apprese nel corso gli studenti saranno
in grado di conoscere nuove applicazioni dell’IA leggendo la letteratura di
riferimento nel settore delle Digital Humanities e di cimentarsi autonomamente
nell’apprendimento di nuovi modelli e nuove librerie software.
Modalità di svolgimento dell'insegnamento
Lezioni frontali, esercitazioni pratiche, discussione di casi di studio
Prerequisiti richiesti
Conoscenza del linguaggio di programmazione Python; conoscenza delle
tecniche di base di pre-elaborazione dei dati testuali
Frequenza lezioni
Obbligatoria
Contenuti del corso
Intelligenza Artificiale
“classica”: Definizione di agente autonomo intelligente in relazione
all’ambiente; Architettura di un sistema cognitivo (percezione, memoria,
ragionamento, azione, metacognizione); Tecniche di rappresentazione della
conoscenza; Tipologie di ragionamento: deduttivo e induttivo, analogico, basato
su casi, probabilistico. Incertezza e inferenza.
Apprendimento automatico:
Classificazione, regressione e predizione. Apprendimento supervisionato (Classificatori
lineari, K-Nearest Neighbours). Apprendimento non supervisionato (clustering). Il
“deep learning”: Reti neurali convoluzionali, cenni sulle Reti neurali
ricorrenti. Architetture encoder-decoder: i Transformers. Modelli BERT-based,
GPT-based e BART-based. Metodologia di creazione,
allenamento e testing dei modelli (overfitting e underfitting, split del
dataset in training, validation e testing, funzioni di Loss, Cross-entropy,
Softmax, metriche di valutazione dei modelli; cross-validazione). Modelli
auto-supervisionati. Fine-tuning di
modelli pre-allenati. Apprendimento Zero-shot, One-shot, Few-shot. Prompt
Engineering.
La libreria PyTORCH per
il Deep Learning e l’ambiente Hugging Face. Limiti dei modelli (ispezionabilità,
comprensibilità, Bias nei dataset)
Applicazioni: NLP e NLU, Recommender
system, Sentiment analysis, Agenti conversazionali (Chatbot).
Testi di riferimento
Per la parte di IA classica:
Capitoli selezionati da: “Artificial intelligence: a modern approach”. S. Russell, P. Norvig, 4th edition,
2020. Capitolo 1 (pp. 29-39, 63-93) Cap 2 (pp. 95-140), Cap 3 (pp. 147-179,
189-199), Cap 24 (pp. 856-878).
Per la parte di apprendimento automatico:
“Grokking Deep Learning”. A.W.
Trask - Manning Publications, 2019. (pp 290)
“Natural Language Processing
with Transformers: Building Language Applications with Hugging Face”. L. Tunstall, et al. - O’Reilly Media, 2022. (pp. 370)
Documentazione tecnica sulle librerie di machine learning utilizzate
per il progetto e disponibili sul sito di HuggingFace (https://huggingface.co/docs)
Si ricorda che, ai
sensi dell’art. 171 della legge 22 aprile 1941, n. 633 e successive
disposizioni, fotocopiare libri in commercio, in misura superiore al 15% del
volume o del fascicolo di rivista, è reato penale.
Per ulteriori
informazioni sui vincoli e sulle sanzioni all’uso illecito di fotocopie, è
possibile consultare le Linee guida sulla gestione dei diritti d’autore nelle
università (a cura della Associazione Italiana per i Diritti di Riproduzione
delle opere dell’ingegno - AIDRO).
I testi di riferimento
possono essere consultati in Biblioteca.
Verifica dell'apprendimento
Modalità di verifica dell'apprendimento
Gli studenti svilupperanno un progetto, concordato con la
docente, nel quale applicheranno le tecniche apprese a lezione. Il progetto
dovrà essere corredato da una relazione sui risultati ottenuti e verrà
presentato e discusso in sede di esame orale. Durante l’esame orale verrà
presentato un articolo preventivamente scelto dal candidato/a da una selezione
di articoli riguardanti applicazioni dell’IA alle Digital Humanities proposta
dalla docente e verranno anche poste alcune domande riguardanti la teoria. Il
progetto incide per il 50% sulla valutazione finale, la presentazione
dell’articolo per il 20% e la teoria per il 30%. I criteri di valutazione del progetto includono:
correttezza dell’approccio tecnico e metodologico, capacità di giustificare le
scelte progettuali e i livelli di prestazione ottenuti, presenza di elementi
innovativi.
Per la valutazione
dell’esame si terrà conto della padronanza dei contenuti e delle competenze
acquisite, dell’accuratezza linguistica e proprietà lessicale, nonché della
capacità argomentativa dimostrata dal/la candidato/a.
Esempi di domande e/o esercizi frequenti
Discussione del progetto. Differenze fra
apprendimento supervisionato e non supervisionato; Discussione del concetto di
agente intelligente razionale ; differenze fra training from scratch e
fine-tuning. Elememnti caratteristici delle reti neurali convoluzionali.
Metodologie di controllo dell’overfitting di un modello.
English version