Esooproblemi - Dipartimento di Informatica dell ...bosco/lingue2017/NLP-2017-2-.pdf · Esooproblemi...
Transcript of Esooproblemi - Dipartimento di Informatica dell ...bosco/lingue2017/NLP-2017-2-.pdf · Esooproblemi...
E so%oproblemi
Per ges/re le difficoltà che la comprensione del linguaggio nel suo complesso comporta, si scompone il compito (task) del NLP in vari so%oproblemi (subtasks) rela/vamente indipenden/ e consisten/ con i livelli di analisi iden/fica/ a livello teorico.
Analisi morfologica
Si analizza ogni parola PRESA SINGOLARMENTE e se ne esplicitano le cara%eris/che gramma/cali:
-‐ categoria gramma/cale della parola (Part of Speech tagging), come nome, verbo, aggeNvo, ecc.
-‐ Lemma/zzazione o ricerca delle radici, come “vedere” per “vidi”, “rosso” per “rossi”, ecc.
Analisi morfologica
Deve essere chiarito cosa si intende per parola PRESA SINGOLARMENTE ovvero si deve affrontare la tokenizzazione del testo:
-‐ mangiamelo è una singola parola o sono tre?
-‐ della è una singola parola o sono due? -‐ e la punteggiatura?
• Es.: la morfologia di CANI è CANE (lemma), NOME COMUNE (categoria gramma/cale), MASCHILE (genere), SINGOLARE (numero)
• Es.: la morfologia di DORMÌ è
DORMIRE (lemma), VERBO (categoria gramma/cale), INDICATIVO (modo), PASSATO REMOTO (tempo), 3 (persona), SINGOLARE (numero)
Analisi morfologica
Un esempio di analisi morfologica di una frase
1. la (IL ART DEF F SING)
2. storia (STORIA NOUN COMMON F SING)
3. non (NON ADV NEG)
4. educa (EDUCARE VERB MAIN IND PRES 3 SING)
5. a (A PREP MONO)
6. nulla (NULLA NOUN COMMON M SING)
E se la parola è ambigua? Un esempio di analisi possibile:
1. la (IL ART DEF F SING)
2. pesca (PESCA NOUN COMMON F SING)
pesca (PESCARE VERB MAIN IND PRES 3 SING)
pesca (PESCARE VERB MAIN IMP PRES 2 SING)
3. non (NON ADV NEG)
4. è (ESSERE VERB MAIN IND PRES 3 SING)
5. un (UN ART INDEF M SING)
6. fruMo (FRUTTO NOUN COMMON M SING)
Analisi sintaNca Riguarda le informazioni a livello dell’intera frase e si può impostare secondo due modelli teorici:
-‐ riconoscimento della struMura sintagmaPca della frase, cioè dei sintagmi e del modo in cui si compongono tra di loro
-‐ riconoscimento della struMura relazionale della frase in cui gli interi sintagmi o le singole parole sono legate tra di loro
Analisi sintaNca La struMura sintagmaPca:
-‐ in cosa consiste
-‐ come si rappresenta
Analisi sintaNca: sintagmi La struMura sintagmaPca della frase, de%a anche stru%ura a cosPtuenP rappresenta la suddivisione della frase in so%ounità più piccole e così via procedendo in ordine gerarchico:
La frase è un sintagma composto (e.g.) da sintagma nominale + sintagma verbale.
Il sintagma verbale è composto (e.g.) da verbo + sintagma nominale.
Il sintagma nominale è composto da ar/colo + sintagma nominale … ecc.
Analisi sintaNca: sintagmi La struMura sintagmaPca della frase si rappresenta tradizionalmente con degli alberi, perchè sono le stru%ure che meglio consentono di mostrare un ordinamento gerarchico di elemen/.
Quindi il risultato prodo%o su una frase da un sistema di analisi sintaNca, de%o PARSER, è un albero sintaNco o albero di derivazione.
Analisi sintaNca: sintagmi
E se la frase con/ene ambiguità sintaNche? Una frase ambigua perme%e più di una analisi sintaNca, quindi verranno costruite più stru%ure per la stessa frase.
Esempio: “Giorgio vide l’uomo dentro il parco con il telescopio”
Analisi sintaNca: sintagmi
Analisi sintaNca: sintagmi
L’albero di derivazione corrisponde alla seguente interpretazione della frase ambigua:
Giorgio vide l’uomo, Giorgio lo vide dentro il parco, Giorgio lo vide u/lizzando il telescopio
Analisi sintaNca: sintagmi
Analisi sintaNca: sintagmi
L’albero di derivazione corrisponde alla seguente interpretazione della frase ambigua:
Giorgio vide l’uomo, Giorgio lo vide dentro il parco, il parco che ha il telescopio
Analisi sintaNca: sintagmi
Analisi sintaNca: sintagmi
L’albero di derivazione corrisponde alla seguente interpretazione della frase ambigua:
Giorgio vide l’uomo, l’uomo che stava dentro il parco, e Giorgio lo vide u/lizzando il telescopio
Analisi sintaNca: sintagmi
Analisi sintaNca: sintagmi
L’albero di derivazione corrisponde alla seguente interpretazione della frase ambigua:
Giorgio vide l’uomo, l’uomo che stava dentro il parco, il parco che ha il telescopio
Analisi sintaNca: sintagmi
I qua%ro alberi di derivazione non esauriscono tu%e le possibili stru%ure che si possono costruire per la frase.
In questo esempio l’ambiguità è determinata dalla presenza di sintagmi preposizionali che possono essere aggancia/ pra/camente a qualunque altro sintagma.
Analisi sintaNca: sintagmi
Analisi sintaNca La struMura relazionale:
-‐ in cosa consiste
-‐ come si rappresenta
Analisi sintaNca: relazioni La struMura relazionale, de%a anche struMura a dipendenze, mostra in che rapporto stanno tra loro le parole della frase tramite le cosidde%e relazioni gramma/cali o di dipendenza.
In “il cane dorme” cane è il SOGGETTO del verbo dorme.
In “Mario sovente mangia banane” sovente è un modificatore del verbo mangia, mentre banane è l’ogge%o del verbo mangia.
Analisi sintaNca: relazioni La struMura a dipendenze della frase si rappresenta tradizionalmente con degli alberi, perchè sono le stru%ure che meglio consentono di mostrare le relazioni sugli archi che legano le parole.
Quindi il risultato prodo%o su una frase da un sistema di analisi sintaNca, de%o PARSER, è un albero sintaNco a dipendenze.
Es.: la sintassi della frase “Giorgio ama Maria”
Giorgio
ama
Maria
SUBJ OBJ
Analisi sintaNca: relazioni
Es.: la sintassi della frase “Balzac non perse mai la sua inclinazione per la speculazione.”
Analisi sintaNca: relazioni
Es.: la sintassi della frase “Galli lae/ in castra pergunt”
Analisi sintaNca: relazioni
Es.: la sintassi della frase “Cicero consul
coniura/onem
Ca/linae
detexit”
Analisi sintaNca: relazioni
Qualunque sia la rappresentazione ado%ata per la sintassi, non si risolve il problema dell’ambiguità.
Molto sovente le ambiguità del linguaggio naturale non sono percepite dagli esseri umani. Questo ha indo%o gli studiosi di NLP a credere che tra%are il linguaggio naturale fosse molto più semplice di quello che si è poi rivelato.
Analisi sintaNca
Un esempio concreto di come l’ambiguità sintaNca non viene percepita?
Io mangio le fragole con la panna.
Quante diverse stru%ure sintaNche posso costruire?
Analisi sintaNca
mangio
le fragole
con la panna
Io
mangio
le fragole con la panna Io
?
A)
B)
Io mangio le fragole con la panna.
Nessun essere umano sceglierebbe la B ed aggancerebbe il sintagma preposizionale con la panna al sintagma verbale mangio, invece che al sintagma nominale le fragole.
Eppure la stru%ura B è assolutamente sensata dal punto di vista sintaNco se si prescinde da qualunque considerazione seman/ca.
mangio
le fragole
con il cucchiaio
Io
mangio
le fragole
con il cucchiaio Io
?A)
B)
InfaN, in altri casi, come
Io mangio le fragole con il cucchiaino.
la stru%ura B verrebbe naturalmente scelta, agganciando il sintagma preposizionale con il cucchiaino al sintagma verbale mangio, invece che al sintagma nominale le fragole.
Inoltre, la presenza di ambiguità é proporzionale alla lunghezza della frase.
3 (7): List the sales of products in 1973
10 (8): List the sales of products produced in 1973
28 (13): List the sales of products produced in 1973 with the products in 1972
455 (14): List the sales of products produced in 1973 with the products produced in 1972
Il problema dell’ambiguità provocata dalla presenza dei sintagmi preposizionali è uno dei più classici e difficili per i sistemi di NLP.
Alcuni esperimen/ hanno dimostrato che scegliere dove agganciare il sintagma preposizionale è un compito difficile anche per gli esseri umani.
Sicuramente i risulta/ dimostrano che lo è molto di più per i sistemi di NLP.
Un esperimento sull’ambiguità sintaNca provocata dall’aggancio del sintagma preposizionale
-‐ applicazione di un analizzatore sintaNco (parser) ad un corpus di 13 milioni di parole -‐ rilevazione delle associazioni lessicali, i.e. co-‐occorrenze di nomi o verbi con determinate preposizioni, ES. “to” in abbinamento con “send” nel contesto “send NP to …” NB: il parser, non può risolvere le ambiguità stru%urali e produce par/ sconnesse di stru%ure sintaNche da cui è estra%a l’associazione lessicale
Vengono estra%e 2.500.000 associazioni lessicali, di cui oltre 200.000 ambigue
Si applica il modello probabilis/co Lexical Associa/on score: LA(v,n,p) = log2 x (P(verb_a%ach p | v,n)/P(noun_a%ach p | v,n))
cioè si ca%ura la frequenza con cui cer/ nomi e verbi co-‐occorrono con certe preposizioni e la si rappresentata con il modello LA
Lo stesso task di aggancio del sintagma preposizionale viene svolto:
automaticamente con l’approccio corpus-based lessicalizzato (modello LA) >>> errore del 20%
separatamente da 2 giudici umani >>> errore del 12-15%
automaticamente con approcci strutturali: right association >>> errore del 33% minimal attachment >>> errore del 67%
L’esperimento dimostra che
1) Il task dell’aggancio del sintagma preposizionale è difficile
2) Il task non può essere affrontato con successo grazie a regolarità di /po morfologico e sintaNco, quindi non esiste una regola che ci consenta di risolverlo
3) Una certa regolarità esiste, ma solo a livello sta/s/co e probabilmente legata alla seman/ca delle parole coinvolte nella stru%ura
Questo esperimento è stato determinante per la definizione degli approcci basa/ su corpora
Se le regolarità del linguaggio non possono essere formalizzate in regole, non vuol dire che non esistono. Come il linguaggio stesso, le regole che lo governano sono complesse e hanno molte varian/, per cui diventa molto difficile descriverle e il metodo più sensato per farlo sembra essere la sta/s/ca.