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