Semantica
approcci computazionali
Maria Teresa PAZIENZA
a.a. 2005-06
Analisi semantica
Gli approcci computazionali all’analisi semantica si
riferiscono al processo in base a cui le diverse
rappresentazioni del significato di una frase vengono
composte per poi essere poste in corrispondenza dei vari
elementi linguistici.
Necessità di usare sorgenti di conoscenza diversificate a
supporto della rappresentazione del significato; tra esse:
1. i significati delle parole
2. i significati associati alle strutture sintattiche
3. la conoscenza della struttura del discorso
4. conoscenza del contesto
5. conoscenza (almeno) di base del dominio
Analisi semantica guidata dalla sintassi
Le frasi sono composte da parole ciascuna delle quali
assume un significato; le parole si organizzano tra loro
secondo regole specifiche e relazionano tra loro per
formare una frase con un determinato significato.
Il principio di composizionalità (in base al quale il
significato di una frase è la risultante del significato di
tutte le sue componenti) deve tener conto di tali
interrelazioni; nell’analisi semantica basata sulla
sintassi la composizionalità dei significati terrà quindi
conto delle diverse componenti sintattiche e delle
relazioni esistenti.
Analisi semantica guidata dalla sintassi
L’analizzatore semantico elaborerà il risultato
dell’analisi sintattica nelle diverse (ambigue)
risultanze con un (probabile) incremento
dell’ambiguità.
Le ambiguità residue potranno essere risolte grazie
sia alla conoscenza di dominio che di contesto che
permetteranno di selezionare la rappresentazione
(più) corretta.
Esempio
AyCaramba serves meat
e Serving (e)^ Server(e, AyCaramba)^ Served (e, Meat )
Analisi composizionale
Augmented Rules
We’ll accomplish this by attaching semantic
formation rules to our syntactic CFG rules
Augmented rules will be as
A   1...n
{ f ( 1.sem,...n.sem)}
where each α is a rule’s syntactic constituent.
This should be read as: the semantics we attach to A
can be computed from some function applied to
the semantics of A’s parts.
Analisi composizionale
Example
AyCaramba serves meat
• Attachments
• Easy parts…
{PropNoun.sem}
NP -> PropNoun
{MassNoun.sem}
NP -> MassNoun
{AyCaramba}
PropNoun -> AyCaramba
{Meat}
MassMoun -> meat
• These attachments consist of
assigning constants and copying
from children up to parents.
Esempio
AyCaramba serves meat
Esempio
AyCaramba serves meat
VP domina sia serves che meat.
E’ necessario “incorporare” il significato della NP nel
significato del verbo e assegnare la “rappresentazione
risultante” alla VP.sem
Ciò consiste nel sostituire la variabile y con il termine
logico meat come secondo argomento del ruolo Served
dell’evento Serves
e, yIsa ( e, Serving )^ Server( e, AyCaramba)^ Served ( e, y )
Esmpio
AyCaramba serves meat
Possiamo ora combinare composizionalmente quanto
fatto per i vari costituenti sintattici
E’ necessario “incorporare” il significato sia della NP che
della VP nel significato della frase e assegnare la
“rappresentazione risultante” alla S
Ciò consiste nel sostituire la variabile x con il termine
logico AyCaramba come secondo argomento del ruolo
Server dell’evento Serves
e, x, yIsa ( e, Serving )^ Server ( e, x )^ Served ( e, y )
Esempio
notazione lambda estensione FOPC
• S -> NP VP
• VP -> Verb NP
• Verb -> serves
• {VP.sem(NP.sem)}
• {Verb.sem(NP.sem)
xy e Serving (e)^ Server(e, x )^ Served (e, y )
Ciò consiste nel prendere la semantica di un
figlio ed applicarla come una funzione alla
semantica dell’altro figlio
Composizionalità forte
La semantica del tutto (la frase) è stata
derivata solamente dalla semantica delle
singole componenti/parti
(i.e. noi ignoriamo cosa ci sia nelle altre parti
dell’albero).
Esempio complesso
• Dov’è la complessità?
• Quale ruolo assume
Harry?
Esempio complesso
La VP per told è VP -> V NP Vpto
Quale dovrebbe essere il suo attachment semantico?
– Associare la funzione semantica collegata a Vpto con la
semantica della NP; ciò fa emergere Harry come l’attore
(goer) dell’azione dell’andare.
– Associare la semantica di V alla semantica della NP; ciò fa
emergere Harry come l’oggetto (tellee) dell’azione del dire
Quindi il risultato delle associazioni ci fornisce il giusto
valore delle cose dette.
V.Sem(NP.Sem, Vpto.Sem(NP.Sem))
Esempio (a)
Consideriamo gli attachment per VP
VP -> Verb NP NP
VP -> Verb NP PP
(gave Mary a book)
(gave a book to Mary)
Assumiamo che le rappresentazioni del significato di entrambe
siano le stesse.
Associando una valenza forte al lessico, i VP attachments sono:
VP.Sem(NP.Sem, NP.Sem)
VP.Sem(NP.Sem, PP.Sem)
Esempio (b)
Associando una valenza forte alla sintassi noi
potremmo avere qualcosa del genere
• VP -> V NP NP
V.sem ^ Recip(NP1.sem) ^ Object(NP2.sem)
• VP -> V NP P
V.Sem ^ Recip(PP.Sem) ^ Object(NP1.sem)
Ovvero il verbo contribuisce da solo al predicato, la
grammatica “conosce” i ruoli.
Integrazione
Se si integra l’analisi semantica nel parser
mentre è in funzione …
+ Si possono usare i constraint semantici per
eliminare interpretazioni sintattiche senza senso
- Si assegna una rappresentazione del significato
ai costituenti che non prendono parte nella
maniera corretta alla analisi sintattica
Frasi con quantificazioni
Consideriamo la frase inglese
A restaurant serves meat.
• assumiamo che A restaurant possa essere rappresentato
come
x Isa ( x, Restaurant )
• con la notazione lambda si ha
eServing (e)  Server(e, xIsa( x, Restaurant ))  Served(e,Meat ))
Termini complessi
Permettere al sistema composizionale di utilizzare
rappresentazioni (come oggetti con le parti) del tipo:
Complex-Term
→
<Quantifier var body>
  x Isa (x, Restaurant ) 
Conversione
Termini complessi vengono racchiusi (embedded)
all’interno di predicati.
Quindi vengono fatti emergere opportunamente per
ridistribuire le componenti della rappresentazione
P(<quantifier, var, body>)
diventa
Quantifier var body connective P(var)
Esempio
Server(e,   x Isa ( x, Restaurant ) )

 x Isa ( x, Restaurant )  Server(e, x)
Quantificatori e connetivi logici
Se si è in presenza del quantificatore esistenziale,
allora il connettivo è ^ (and)
Se si è in presenza del quantificatore universale,
allora il connettivo è -> (implicazione)
(più) Termini complessi
La tecnica della conversione sposta i
quantificatori fuori e prima dell’inizio della
forma logica …
Ciò causa ambiguità se c’è più di un termine
complesso all’interno della stessa frase.
Ambiguità dei quantificatori
Consideriamo la frase
Every restaurant has a menu
che può avere più di un significato :
ogni ristorante ha un menù
– oppure
esiste qualche (mega) menù e tutti i ristoranti
hanno quel menù
Ambiguità dello scopo del quantificatore
xRestaurant ( x) 
e, yHaving (e)  Haver (e, x)  Had (e, y )  Isa ( y, Menu )
yIsa ( y, Menu )  xIsa( x, Restaurant ) 
eHaving (e)  Haver (e, x)  Had (e, y )
Ambiguità
Questo problema è simile al problema dell’ attachment
delle frasi preposizionali (prepositional phrase
attachment )
Il numero delle possibili interpretazioni cresce
esponenzialmente con il numero di termini complessi
presenti nella frase
In assenza di soluzioni generali, ciò che possiamo fare è
utilizzare metodi “deboli” (weak methods) per
preferire una interpretazione ad un’altra
Non-composizionalità
Nel linguaggio corrente esistono molti casi in cui
non ha senso applicare il principio della
composizionalità, il significato (mal definito) del
termine non può essere derivato dal significato
delle sue componenti/parti
– Idiomi, giochi di parole, espressioni ironiche o
sarcastiche, metafore, richieste indirette, …
Non-composizionalità
Occhio di bue, prendere al volo l’offerta, di palo in
frasca, due piccioni con una fava, cadere dalle
nuvole, la grande guerra, etc…
In molte di queste… costruzioni il significato
dell’espressione come unico evento è a seconda
dei casi
– totalmente scorrelato dal significato delle singole parti
– correlato in qualche modo oscuro e molto vago
Esempio
La punta dell’iceberg
Di questa frase possiamo dire varie cose; trattasi di
1. Una frase specifica con un significato particolare
2. Una frase flessibile sintatticamente e lessicalmente
con un significato particolare
3. Una frase flessibile sintatticamente e lessicalmente
con un con un significato parzialmente
composizionale
4. …
Esempio
Si consideri la frase:
Enron is the tip of the iceberg.
NP -> “the tip of the iceberg”
Non va proprio bene… per esempio…
– the tip of Mrs. Ford’s iceberg
– the tip of a 1000-page iceberg
– the merest tip of the iceberg
• E cosa dire di
– That’s just the iceberg’s tip.
Esempio
NP -> “the tip of the iceberg”
Ciò che sembra che ci serva è qualcosa del tipo
NP ->
una NP iniziale con tip come sua head seguita da
una successiva PP con of come sua head e che abbia
iceberg come head della sua NP
e che permetta modificatori del tipo merest, Mrs. Ford, e
1000-page per modificare le forme semantiche rilevanti
vedremo…
Altri approcci all’analisi semantica
– Semantic grammars
– Information extraction
– Probabilistic labeling
Ulteriori informazioni su costruzioni non
proprio composizionali
Word meanings
Riferimenti
La presentazione utilizza alcune informazioni
esemplificative tratte dal libro:
D.Jurafsky, J. H. Martin:
Speech and Language Processing,
Prentice Hall, 2000, cap.14,15,16
Scarica

Semantica2