Salta al contenuto principale
CODICE 90541
ANNO ACCADEMICO 2025/2026
CFU
SETTORE SCIENTIFICO DISCIPLINARE INF/01
LINGUA Inglese
SEDE
  • GENOVA
PERIODO 1° Semestre

PRESENTAZIONE

L'insegnamento Natural Language Processing fornisce un'introduzione ai problemi più sfidanti nell'elaborazione dei linguaggi naturali, considerando i tre livelli di sintassi, semantica, pragmatica; vengono discussi i Large Language Models e le più recenti applicazioni degli strumenti di elaborazione del linguaggio naturale, compresa la progettazione e lo sviluppo di ontologie e di chatbot.

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

Learning how to represent natural language, and understanding which are the main challenges and the related technical solutions for a software system able to understand and process natural language.

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

Al termine del corso, lo studente/la studentessa sarà in grado di utilizzare strumenti esistenti e progettare e implementare nuovi strumenti per risolvere problemi di Elaborazione del Linguaggio Naturale a livello sintattico e semantico. Sarà inoltre in grado di progettare e implementare un chatbot utilizzando uno dei linguaggi più diffusi per chatbot. Verranno analizzate l’applicazione di tecniche di Machine Learning all’Elaborazione del Linguaggio Naturale, così come approcci simbolici e basati sulla conoscenza.

Gli studenti interessati (e ritenuti idonei in base ai risultati di un quiz iniziale) a seguire il corso in modalità innovativa e a migliorare le proprie soft skills acquisiranno anche le seguenti competenze trasversali:

  • competenze personali, livello base

  • competenze sociali, livello base

  • design creativo, livello avanzato

PREREQUISITI

Lo studente/la studentessa deve conoscere Python.

MODALITA' DIDATTICHE

Lezioni frontali e laboratori.
Al termine del corso deve essere sviluppato un progetto individuale.

Per gli studenti coinvolti nelle attività didattiche innovative saranno utilizzate le seguenti modalità:

  • world café

  • progetto creativo individuale (la specifica del progetto è ideata dagli studenti e validata dai docenti)

PROGRAMMA/CONTENUTO

  • Introduzione e terminologia NLP
  • Espressioni regolari
  • Sintassi a livello di parola: stop words, TF-IDF, stemming, normalizzazione, distanza minima di modifica
  • Sintassi a livello di frase: grammatiche, Part Of Speech (POS) tagging con Definite Clause Grammars, POS tagging con Hidden Markov Models, confronto critico tra DCG e HMM per il POS tagging
  • Semantica: semantica distribuzionale, word2vec, semantica dei frame, semantica modale, semantica lessicale, WordNet, BabelNet, riconoscimento di entità nominate, ontologie e Semantic Web, ontologie e loro applicazioni, apprendimento e allineamento di ontologie
  • Machine learning e il suo ruolo nella risoluzione dei problemi NLP
  • Large Language Models
  • Pragmatica
  • Applicazioni NLP e riepilogo delle funzionalità NLP più comuni (non banali), con esempi di utilizzo
  • Applicazioni: chatbot

TESTI/BIBLIOGRAFIA

Le slide e il materiale didattico fornito durante il corso sono sufficienti per seguirlo.

DOCENTI E COMMISSIONI

LEZIONI

INIZIO LEZIONI

In accordo con il calendario didattico approvato dal Consiglio dei Corsi di Studio in Informatica: https://corsi.unige.it/corsi/10852/studenti-orario

Orari delle lezioni

L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy

ESAMI

MODALITA' D'ESAME

L’esame consisterà in una parte scritta (domande aperte tradizionali, esercizi) più un progetto individuale (che richiede circa 7-10 giorni per essere completato), i cui risultati dovranno essere presentati oralmente.

I docenti potranno integrare le suddette prove con un esame orale.

Indicazioni per studenti con certificazione di DSA, di disabilità o di altri bisogni educativi speciali sono disponibili a partire da https://corsi.unige.it/corsi/10852/studenti-disabilita-dsa

 

MODALITA' DI ACCERTAMENTO

L’acquisizione delle competenze previste da questo corso sarà valutata tramite l’esame scritto e il progetto, appositamente concepiti per permettere ai docenti di verificare se lo studente sia effettivamente in grado di progettare e implementare uno strumento che risolva un problema (semplificato) di NLP, nonché di comprendere, presentare e discutere in modo critico le questioni più complesse emerse durante il suo sviluppo.

ALTRE INFORMAZIONI

Per ulteriori informazioni, consultare il modulo Aulaweb dell'insegnamento o contattare i docenti.

OpenBadge

 PRO3 - Soft skills - Creazione progettuale avanzato 1 - A
PRO3 - Soft skills - Creazione progettuale avanzato 1 - A
 PRO3 - Soft skills - Personale base 1 - A
PRO3 - Soft skills - Personale base 1 - A
 PRO3 - Soft skills - Sociale base 1 - A
PRO3 - Soft skills - Sociale base 1 - A