SCIENZE UMANISTICHEScienze del testo per le professioni digitali Anno accademico 2023/2024
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 S. Russell, P. Norvig, Artificial intelligence: a modern approach,
Upper Saddle River, Pearson, 2020 (4th edition), cap. 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:
- A.W. Trask, Grokking
Deep Learning, New York, Manning Publications, 2019 (pp 290)
- L.
Tunstall, et alii, Natural Language
Processing with Transformers: Building Language Applications with Hugging Face, 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
Prova orale
Prova pratica (sviluppo di un progetto)
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
Colloquio sul programma.
English version