NATURAL LANGUAGE PROCESSING PER LINGUISTI

Obiettivi formativi

Il corso di "Natural Language Processing per linguisti" mira a formare professionisti con competenze sia teoriche che pratiche nel campo del Natural Language Processing (processamento del linguaggio naturale), con particolare attenzione agli strumenti e alle metodologie utilizzate nella linguistica computazionale. Gli obiettivi includono l'acquisizione di conoscenze fondamentali sui modelli linguistici e le tecniche di NLP, nonché sulle applicazioni pratiche di queste tecnologie nel campo umanistico, con particolare focus sul campo della linguistica. Le lezioni frontali saranno supportate da esercitazioni pratiche al computer, dove gli studenti impareranno a implementare e utilizzare software di analisi e annotazione linguistica. Al termine del corso, gli studenti saranno in grado di elaborare, analizzare e creare dati linguistici, comprendere e applicare tecniche di NLP al testo, e collaborare efficacemente con team tecnici per lo sviluppo di soluzioni NLP. Le aree trattate includeranno: l'estrazione e lo studio di collocazioni, la disambiguazione lessicale (Word Sense Disambiguation), il collegamento di entità (Entity Linking), l'etichettatura dei ruoli semantici (Semantic Role Labeling) e di rappresentazioni frasali, la creazione di benchmark per la comprensione del linguaggio e per i Large Language Model.

Canale 1
ROBERTO NAVIGLI Scheda docente

Programmi - Frequenza - Esami

Programma
Modulo 1 – Introduzione Che cos’è il Natural Language Processing (NLP): definizione, ambiti applicativi, legami con la linguistica. Breve storia: dalle regole ai modelli statistici fino al deep learning. Esempi pratici: traduzione automatica, riassunto, chatbots, ricerca semantica. Modulo 2 – Strumenti di base Introduzione ai computer e alla programmazione (concetti elementari: dati, algoritmi, memoria, input/output). Introduzione pratica a Python: uso di Jupyter Notebook/Google Colab variabili, tipi di dati, cicli, funzioni, librerie nozioni essenziali per leggere/scrivere testi e manipolare stringhe. (Obiettivo: dare autonomia minima per eseguire script NLP senza pretesa di programmazione avanzata.) Modulo 3 – Corpora e pre-processing linguistico Cos’è un corpus e perché è fondamentale in NLP. Tecniche di pulizia e tokenizzazione. Lemmatizzazione e stemming. Analisi morfologica (PoS tagging). Risorse: Universal Dependencies, corpora linguistici nazionali. (Laboratorio: costruire un mini-corpus e analizzarlo con NLTK o spaCy.) Modulo 4 – Rappresentazione delle parole Approcci espliciti: bag-of-words, TF-IDF. Embedding: word2vec, GloVe, fastText. Visualizzazione semantica (spazi vettoriali). (Laboratorio: calcolare similarità semantica tra parole con embeddings pre-addestrati.) Modulo 5 – Semantica lessicale Risorse: WordNet, BabelNet, Wikipedia, Wikidata. Task: Word Sense Disambiguation (WSD). Tecniche: basate su risorse vs. basate su modelli distribuzionali. (Laboratorio: disambiguare parole polisemiche in un testo breve.) Modulo 6 – Semantica frasale Risorse: FrameNet, PropBank, VerbAtlas, NounAtlas. Task: Semantic Role Labeling (SRL). Introduzione a inferenza in linguaggio naturale (NLI). (Laboratorio: usare un modello pre-addestrato per etichettatura dei ruoli semantici.) Modulo 7 – Grandi modelli linguistici Cos’è un LLM (es. GPT, BERT, mBERT, ChatGPT). Differenze tra modelli “classici” e reti neurali profonde. Prompting: come interagire con LLM per task linguistici. Limiti e bias dei modelli. (Laboratorio: progettare prompt per traduzione, riassunto, classificazione semantica.) Modulo 8 – Applicazioni avanzate Riassunti automatici (estrattivi vs. astrattivi). Traduzione automatica (MT tradizionale vs. NMT). Sentiment analysis e classificazione del testo. Information extraction e knowledge graph. (Laboratorio finale: ogni studente sceglie un piccolo progetto applicativo.)
Prerequisiti
Nessun prerequisito. Non sono richieste competenze informatiche per accedere al corso.
Testi di riferimento
M. Nissim, L. Pannitto. Che cos'è la linguistica computazionale?, Carocci, 2022. E. Jezek, R. Sprugnoli. Linguistica computazionale. Introduzione all'analisi automatica dei testi, Il Mulino, 2023. + materiale fornito durante le lezioni
Frequenza
In presenza.
Modalità di esame
La valutazione avverrà attraverso la consegna di compiti da svolgere durante il corso o, alternativamente, attraverso la consegna di un progetto.
Modalità di erogazione
In presenza.
  • Codice insegnamento10616149
  • Anno accademico2025/2026
  • CorsoLinguistica
  • CurriculumCurriculum unico
  • Anno2º anno
  • Semestre1º semestre
  • SSDINF/01
  • CFU6