Natural Language Processing (NLP)
Natural Language Processing (NLP)
 settore
di ricerca integrato all'Intelligenza
Artificiale e alla linguistica computazionale
 si occupa del trattamento automatico del
linguaggio naturale
 scopo: implementare strumenti informatici
per analizzare, comprendere e generare
testi nel linguaggio naturale
Natural Language Understanding
(NLU)
 problema
dell’Intelligenza Artificiale
completo
 richiede conoscenza estesa del mondo e
una grande capacità di manipolarlo
 differenza profonda tra linguaggio formale di
programmazione e linguaggio naturale
Un po’ di Linguistica

Morfologia: parte della Grammatica che studia le forme
linguistiche, le norme che regolano la struttura, la
flessione, la composizione e la derivazione delle parole

Sintassi: studia l'insieme delle relazioni grammaticali tra
le parole che costituiscono una frase o, in generale,
un'espressione linguistica di più elementi

Semantica: studia il linguaggio dal punto di vista del
significato

Pragmatica: studia il linguaggio in rapporto all’uso che ne
fa il parlante
Esempio: “Sai che ore sono?”
Trasformazione dell’input
scritto e orale in una
rappresentazione
macchina interna
Analisi lessicale

Nome: DELIMITATORE DI FRASE

Compito: suddividere un testo in singole frasi

Osservazioni: non sempre i segni d’interpunzione indicano
la fine di una frase
Esempio: “Geom. Rossi”

Nome: TOKENIZER

Compito: segmentare un flusso di caratteri in unità minime
lessicali significative (=parole)

Osservazioni: una parola non può essere sempre vista
come la sequenza di caratteri fra due spazi bianchi
Esempi: “Città del Vaticano”
Analisi grammaticale

Nome: STEMMER

Compito: ridurre la forma flessa di una parola al suo
lemma (=parola scelta per convenzione per rappresentare
tutte le forme di una flessione)
Esempio: riduzione di “dormirò” a “dormire”

Osservazioni: spesso vengono usati dei cosiddetti
stemmer euristici che eliminano gli elementi lessicali di
superficie (prefissi e suffissi) al fine di scoprire il tema della
parola (=parte della parola composta di radice del tema
più vocale tematica, a esclusione dei suffissi)
Esempio: riduzione di “addormentato” a “dorm”
Analisi grammaticale

Nome: PART OF SPEECH TAGGER

Compito: etichettare ogni parola con la corretta parte del
discorso

Osservazioni: frequenti problemi di ambiguità
Esempio: “Visiting aunts can be a nuisance.”
“Visiting” deve essere etichettato come verbo o come
aggettivo?
Risoluzione dell’ambiguità con regole sintattiche o facendo
riferimento ad un corpus (=collezione di testi) taggato
manualmente
Analisi sintattica

Nome: PARSER

Compito: costruire la struttura sintattica di una frase per
verificarne la correttezza;
indicare quali combinazioni di parti del discorso generano
strutture sintatticamente corrette
“Colorless green ideas sleep furiously.”

usata nel 1957 dal linguista statunitense Noam Chomsky,
fondatore della grammatica generativo-trasformazionale

evidenzia la necessità di distinguere sintassi e semantica

frase sintatticamente corretta, ma priva di significato
Rappresentazioni di strutture sintattiche
 Struttura inscatolata
(S: (NP: (ADJ: Colorless) (ADJ: green) (N: ideas))
(VP: (V: sleep) (ADV: furiously))
 Parse tree
SHRDLU

programma sviluppato da T. Winograd alla fine degli anni ’60

il nome deriva dalla sequenza ETAOIN SHRDLU, la
disposizione dei tasti su una macchina Linotype

l’utente interagisce con un braccio robot all’interno del piccolo
“blocks world” scrivendo dei comandi

la comprensione del
linguaggio naturale da
parte del programma
risulta credibile grazie
alla semplicità del
mondo in cui opera
http://www.uv.es
Scarica

Presentazione quarta ora di lezione