Semantica approcci computazionali

66
Semantica approcci computazionali Maria Teresa PAZIENZA a.a. 2005-06

description

Semantica approcci computazionali. Maria Teresa PAZIENZA a.a. 2005-06. Analisi semantica. Il significato delle frasi viene ricavato a partire da : i significati delle parole i significati associati alle strutture sintattiche la conoscenza della struttura del discorso - PowerPoint PPT Presentation

Transcript of Semantica approcci computazionali

Page 1: Semantica approcci computazionali

Semanticaapprocci computazionali

Maria Teresa PAZIENZA

a.a. 2005-06

Page 2: Semantica approcci computazionali

Analisi semantica

Il significato delle frasi viene ricavato a partire da :

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

Page 3: Semantica approcci computazionali

Significato delle parole

Per l’analisi semantica delle frasi non abbiamo finora considerato il ruolo delle parole di per sè.

Abbiamo considerato i verbi per quanto concerne l’organizzazione a template della loro struttura predicati/argomenti.

• Numero di argomenti• Posizione e tipo sintattico• Nome degli argomenti

– In tale approccio i nomi sono stati considerati praticamente come costanti-senza-significato , mentre c’è molto da capire grazie a loro

Page 4: Semantica approcci computazionali

Semantica lessicale

Per semantica lessicale facciamo riferimento ad un insieme praticamente infinito di fatti casuali relativi alle parole

In un approccio formale possiamo considerare :

– la struttura relazionale esterna tra più parole (paradigmatica)

– la struttura interna delle parole che determina dove esse possono posizionarsi e che cosa possono fare (syntagmatica)

Page 5: Semantica approcci computazionali

Applicazioni

Ci occuperemo di – Alcune risorse

• WordNet

– Tecnologie di supporto• Word sense disambiguation

– Applicazioni basate sul significato delle parole• Search engines

Page 6: Semantica approcci computazionali

Lessico

Cos’è in effetti una parola? A cosa si riferisce esattamente questo termine?– Tipi, tokens, stems, roots, inflected forms,

etc....

– Lexeme/Lessema: una qualunque entry di un lessico consiste di una coppia - una forma linguistica superficiale associata ad un ben determinato significato -

– Lexicon/Lessico : una collezione di lessemi

Page 7: Semantica approcci computazionali

Relazioni tra lessemi

Consideriamo le relazioni tra lessemi ed in particolare quelle che assumono un ruolo importante in ambito computazionale

Page 8: Semantica approcci computazionali

Relazioni tra lessemi

Homonymy/omonimia:– Lessemi diversi che assumono significati totalmente diversi ma

condividono una stessa forma • Fonologica, ortografica o entrambe

– Esempio 1 :• bat (wooden stick-like thing) vs• bat (flying scary mammal thing)

– Esempio 2 :• piano (progetto) vs• piano (piano di un edificio) vs• piano (pianoforte)

Non è esempio di omonimia (bensì di omografia):• pesca (frutto) • pesca (di pesci)

Page 9: Semantica approcci computazionali

Omonimia

La parte problematica dell’omonimia non è tanto nella identificazione di una forma di tal tipo, quanto nella identificazione del suo significato.

Influenza applicazioni di information retrieval.

Page 10: Semantica approcci computazionali

Polisemia

Polysemy/polisemia:– Lo stesso lessema che assume più significati tra-loro-collegati

Moltissime parole anche di uso comune hanno più significati (es. banca – istituto bancario, banca dati, banca del sangue, banca del tempo)

– Lexeme/Lessema: una qualunque entry di un lessico consiste di una forma linguistica superficiale associata ad un insieme di significati tra loro collegati -

Il numero di significati di una parola dipende dal dominio di analisi

I verbi tendono alla polisemia

Page 11: Semantica approcci computazionali

Espressioni polisemiche con verbi

– Which flights serve breakfast?– Does America West serve Philadelphia?

– Does United serve breakfast and San Jose?

Page 12: Semantica approcci computazionali

Sinonimia

Synonymy/sinonimia:– Lessemi diversi che assumono lo stesso significato

Due lessemi sono considerati sinonimi se possono essere sostituiti all’interno di una frase senza alterarne il significato o il suo valore (es. grande, grosso) (principio di sostituibilità) - anche se non vale in tutti i casi -

Page 13: Semantica approcci computazionali

Iponimia

Una relazione di iponimia ha luogo tra due lessemi laddove il significato dei due sottiene una relazione di inclusione (is-a, isa, IS-A, ISA,..) iponimia/iperonimia; si applica tra nomi di entità

Poichè i cani sono dei canidi , si può dire che • Cane è un iponimo di canide• Canide è un iperonimo di cane

Poichè i cani sono dei mammiferi , si può dire che • cane è un iponimo di mammifero• mammifero è un iperonimo di cane

Page 14: Semantica approcci computazionali

Meronimia

La relazione part-of è transitiva e riflessiva

part-of(Bucarest, Romania)

part-of(Romania, EuropaOrientale)

part-of(EuropaOrientale, Europa)

part-of(Europa, Terra)

part-of(x,x)

Page 15: Semantica approcci computazionali

Meronimia

Le due relazioni di tassonomia (is-a-kind-of) e meronimia (part-of) hanno punti di similarità.

Le differenze tra di loro hanno importanti riflessi nella organizzazione e rappresentazione della conoscenza

Page 16: Semantica approcci computazionali

Relazioni

Relazioni paradigmatiche principali (ontologiche) – Sinonimia – Antonimia – Iponimia – Meronimia – …

Page 17: Semantica approcci computazionali

Risorse lessicali

– Terminologie – Dizionari on-line– Corpora– …– WordNet, database lessicale per la lingua

inglese (esistono anche versioni per altre lingue: Italwordnet, Balkanet, Eurowordnet, …)

Page 18: Semantica approcci computazionali

WordNet

WordNet consiste di tre distinti database rispettivamente per

• nomi• verbi• aggettivi ed avverbi

Ciascuno dei quali consiste di un insieme di entries lessicali corrispondenti ad una unica forma ortografica; a ciascuna forma sono associati insiemi di sensi

Page 19: Semantica approcci computazionali

WordNet

L’aspetto più importante di Wordnet è la nozione di synset; attraverso il synset si definisce un senso (così come un concetto )

esempio: table usato come verbo per indicate defer– > {postpone, hold over, table, shelve, set back, defer,

remit, put off}

Per WordNet, il significato di questo senso di table è esattamente questa lista.

Page 20: Semantica approcci computazionali

WordNet

(valori non aggiornati)

Page 21: Semantica approcci computazionali

WordNet

La parola ``bass'' ha 8 sensi in WordNet

1. bass - (the lowest part of the musical range)2. bass, bass part - (the lowest part in polyphonic music)3. bass, basso - (an adult male singer with the lowest voice)4. sea bass, bass - (flesh of lean-fleshed saltwater fish of the family Serranidae)5. freshwater bass, bass - (any of various North American lean-fleshed

freshwater fishes especially of the genus Micropterus)6. bass, bass voice, basso - (the lowest adult male singing voice)7. bass - (the member with the lowest range of a family of musical instruments)8. bass -(nontechnical name for any of numerous edible marine and freshwater spiny-finned fishes)

Page 22: Semantica approcci computazionali

Gerarchie in WordNet

Page 23: Semantica approcci computazionali

WordNet

Relazioni lessicali (tra entries, sensi, set di sinonimi) indipendenti dal dominio

Page 24: Semantica approcci computazionali

Struttura interna delle parole

Le relazioni paradigmatiche permettono di collegare tra loro dei lessemi in una qualche maniera, ma non ci dicono nulla relativamente a cosa consiste la rappresentazione del significato di un lessema

Page 25: Semantica approcci computazionali

Struttura interna delle parole –sintagmatica-

Verifichiamo se le rappresentazioni del significato associate ai lessemi abbiano strutture interne analizzabili, ovvero se queste strutture, combinate grazie ad una grammatica, determinano le relazioni tra lessemi in una frase ben formata.

• Ruoli tematici: suggeriscono similitudini all’interno del comportamento dei verbi

• Qualia theory: cosa si può capire nei nomi (che non solo solo delle costanti)

Page 26: Semantica approcci computazionali

Comportamento dei Verbi

Generalizzazione a livello semantico sui ruoli che occorrono insieme a verbi specifici

• Es. Takers, givers, eaters, makers, doers, killers,

hanno tutti qualcosa in comune– -er

– sono tutti gli agenti delle azioni che rappresentano

Alla stessa maniera è possibile generalizzare altri ruoli• Es. occupazione, amministrazione, composizione,

hanno tutti qualcosa in comune– -zione

– sono tutti il risultato delle azioni che rappresentano

Page 27: Semantica approcci computazionali

Ruoli tematici

Insieme di categorie che forniscono un linguaggio semantico superficiale per caratterizzare alcuni argomenti verbali

Page 28: Semantica approcci computazionali

Esempi di ruoli tematici

Page 29: Semantica approcci computazionali

Ruoli tematici

I verbi non sono tutti totalmente distinti (ciascun verbo non è unico nel suo significato) per cui possiamo considerare dei nomi unici per ciascun ruolo condivisibile da più di un verbo.

I ruoli tematici indicano e specificano un insieme finito di ruoli.

In tal modo è possibile distinguere tra semantica superficiale e semantica profonda.

Page 30: Semantica approcci computazionali

Interrelazioni

Ruoli semantici, categorie sintattiche e la posizione che esse assumono all’interno di strutture sintattiche più ampie sono assolutamente intercorrelate in modi a volte complessi.

Es.– AGENTS sono spesso i soggetti – In una regola del tipo– VP->V NP NP la prima NP può essere spesso un GOAL mentre la

seconda è un THEME

Page 31: Semantica approcci computazionali

Esempio

– Sally gave Harry a book.

• Giver(Sally)^Givee(Harry)^Given(book)

• Agent(Sally)^Goal(Harry)^Theme(book)

– Sally diede un libro ad Harry

(ruoli tematici a supporto anche della traduzione automatica)

Page 32: Semantica approcci computazionali

Problemi aperti

• Che cos’è esattamente un ruolo tematico?• Qual è l’insieme completo di ruoli? • I ruoli sono degli universali indipendenti da lingua

e cultura? • Esistono dei ruoli atomici?

– Es. Agente– Animate, Volitional, Direct causers, etc

• E’ possibile etichettare automaticamente costituenti sintattici con ruoli tematici?

Page 33: Semantica approcci computazionali

Shallow semantic analysis

Si definisce shallow semantic analysis

l’assegnazione di nomi opportuni agli argomenti di un verbo all’interno di una frase (esempio d’uso di ruoli tematici)

• Case role assignment

• Thematic role assignment

Page 34: Semantica approcci computazionali

Rappresentazioni di relazioni ipotesi 1:Le relazioni possono essere rappresentate come una

“case grammar” (Charles Fillmore) ed offrono una prospettiva particolare dell’evento descritto

Es.colpire (agent, recipient, instrument)

collidere (object1, object2) predicati argomenti

E’ necessario definire quali oggetti possano corrispondere a ciascun argomento, ovvero assumere il caso specifico in una situazione specifica

Page 35: Semantica approcci computazionali

Rappresentazioni di relazioni

ipotesi 1:

“case grammar” (Charles Fillmore)

Molte reti semantiche si rifanno alla rappresentazione della grammatica dei casi.

Le relazioni sono rappresentate da archi orientati (ed etichettati) tra i nodi concetto della rete (grafo).

Page 36: Semantica approcci computazionali

Rappresentazioni di relazioni

ipotesi 2:Teoria delle dipendenze concettuali (Roger

Schank): act

Necessità di specificare le primitive semantiche sottostanti una particolare relazione.

Il significato fondamentale di un set di verbi di azione è catturato da 12-15 primitive usate con un approccio case-frame

(Es. ATRANS descrive un qualunque verbo che richiede un trasferimento di proprietà)

Page 37: Semantica approcci computazionali

Rappresentazioni di relazioni

ATRANS:

Actor: person (Mario)Act: ATRANSObject: physical object (anello)direction-TO: person-1 (Maria)

FROM: person-2 (Mario)

Actor, Act,.. sono le variabili di questo schema e possono assumere certi valori

ES. Mario diede/regalò/vendette un anello a Maria

Page 38: Semantica approcci computazionali

Rappresentazioni di relazioni

Teoria delle dipendenze concettuali di Schank Primitive Significato IstanzeATRANS trasf. di proprietà dare, prendere

PTRANS trasf. fisico da a muoversi, camminare

MTRANS trasf. di informaz. mentali ordinare, suggerire

ATTEND ricevere impulsi sensoriali vedere, sentire

PROPEL applic. forza a ogg. fisici spingere, colpire

INGEST assunzione di cibo o aria respirare, mangiare

EXPEL inverso di ingest vomitare,

Page 39: Semantica approcci computazionali

Esempio semantica profonda

Dal WSJ– He melted her reserve with a husky-voiced paean to her

eyes.

Se etichettiamo i costituenti He e reserve come il Melter e il Melted, allora quelle etichette perdono ogni significato che avrebbero potuto avere letteralmente.

Se li chiamiamo Agent e Theme allora non si hanno problemi di disallineamento semantico

Page 40: Semantica approcci computazionali

Selectional restrictions

Le selectional restrictions possono essere usate per aumentare i ruoli tematici permettendo ai lessemi di porre alcune restrizioni semantiche su ulteriori lessemi e frasi che possono accompagnarli all’interno di un periodo.

Le selectional restrictions costituiscono un vincolo semantico imposto da un lessema relativamente al concetto che può corrispondere ai diversi ruoli argomentali a lui associati.

Le selectional restrictions possono essere associate a qualche senso di un lessema e non al lessema in toto.

Page 41: Semantica approcci computazionali

Selection restrictions

Consideriamo la frase

I want to eat someplace near campus

Usando i ruoli tematici possiamo dire che eat è un predicato che ha un AGENT e un THEME

• Qualcos’altro?

specifichiamo che l’ AGENT deve essere capace di mangiare e il THEME deve essere qualcosa che può essere mangiato

Page 42: Semantica approcci computazionali

dalla logica

per eat abbiamo che

Eating(e) ^Agent(e,x)^ Theme(e,y)^Isa(y, Food)

(aggiungendo gli opportuni quantificatori e i lambda)

Page 43: Semantica approcci computazionali

da WordNet

Uso degli iponimi WordNet (tipi) per codificare le selection restrictions

Page 44: Semantica approcci computazionali

Specificità delle restrizioni

Consideriamo i verbi to imagine, to lift e to diagonalize così come appaiono in questi esempi:

– To diagonalize a matrix is to find its eigenvalues– Atlantis lifted Galileo from the pad– Imagine a tennis game

Cosa possiamo dire a proposito del THEME del verbo in ciascuna frase?

In alcuni casi possiamo utilizzare la gerarchia WordNet salendo (generalizzando) di qualche livello, in altri non tanto

Page 45: Semantica approcci computazionali

Selection restrictions

Concetti, categorie e feature

che sono utilizate come selectional restrictions

non costituiscono una parte specifica e finita di un linguaggio,

bensì costituiscono un insieme non finito come lo stesso lessico

Page 46: Semantica approcci computazionali

Alcuni problemi

Sappiamo che da un lato i verbi sono polisemici, dall’altro il linguaggio naturale è creativo…

Si considerino i seguenti esempi presi dal WSJ

… ate glass on an empty stomach accompanied only by water and tea– you can’t eat gold for lunch if you’re hungry– … get it to try to eat Afghanistan

Page 47: Semantica approcci computazionali

Soluzioni

• Eat glass– Si tratta in ogni caso di un evento del tipo eat

• Eat gold– Ancora un esempio di eat, anche se il can’t crea uno

scopo che permette che il THEME del verbo sia anche non mangiabile (contrariamente alle aspettative)

• Eat Afghanistan– Si tratta di un caso sicuramente complesso, non ci si

riferisce per nulla al mangiare

Page 48: Semantica approcci computazionali

Identificazione delle restrictions

Se si dispone di un corpus opportunamente grande e si può accedere a WordNet è possibile identificare automaticamente le restrizioni di un verbo?

1. Analizzare sintatticamente le frasi e trovare le heads

2. Etichettare i ruoli tematici

3. Collezionare le statistiche sulle co-occorrenze di particolari headwords con specifici ruoli tematici

4. Usare la struttura degli iperonimi di WordNet per trovare il livello più significativo da usare come restrizione

Page 49: Semantica approcci computazionali

Motivazione

Trovare l’antenato comune più basso (più specifico) che copra un numero significativo di esempi

Page 50: Semantica approcci computazionali

WSD e Selection Restrictions

Word sense disambiguation si riferisce al processo di selezione del senso corretto per una parola all’interno dei sensi che si conosce essere associati alla parola stessa

Selection restrictions semantiche possono essere usate per disambiguare – Argomenti ambigui di predicati non ambigui – Predicati ambigui con argomenti non ambigui – Ambiguità a tutto campo

Page 51: Semantica approcci computazionali

WSD e Selection Restrictions

Argomenti ambigui – Prepare a dish– Wash a dish

Predicati ambigui – Serve Denver– Serve breakfast

Entrambi– Serves vegetarian dishes

Page 52: Semantica approcci computazionali

WSD e Selection Restrictions

Approccio complementare all’approccio dell’analisi composizionale

Si parte da un parse tree e da una analisi di predicate-argument derivata da

• L’albero sintattico ed i suoi attachment • Tutti i sensi delle parole corrispondenti ai lessemi

delle foglie dell’albero • Analisi errate vengono eliminate notando le

violazioni alle selection restriction

Page 53: Semantica approcci computazionali

Problemi

In genere, le selection restrictions sono costantemente violate (vedasi esempi precedenti), anche se ciò non implica che le frasi siano mal formate o meno usate in tali casi

Si possono usare i corpora per fare analisi ad ampio spettro (qualche forma di categorizzazione) ed analizzare nello specifico i casi di violazione delle selection restrictions

Page 54: Semantica approcci computazionali

Supervised ML

Negli approcci di supervised machine learning,

si può usare un training corpus di parole taggate all’interno di un contesto con i loro sensi specifici,

allo scopo di addestrare un classificatore che possa, quindi,

taggare nuove parole in un nuovo contesto (che rispecchi ovviamente le caratteristiche del corpus di addestramento – training)

Page 55: Semantica approcci computazionali

WSD Tag

Che cos’è il tag per una parola?

– Il senso di un dizionario?

per esempio, in WordNet la voce “bass” ha 8 possibili tag (o labels).

Page 56: Semantica approcci computazionali

WordNet Bass

La parola ``bass'' ha 8 sensi in WordNet

1. bass - (the lowest part of the musical range)2. bass, bass part - (the lowest part in polyphonic music)3. bass, basso - (an adult male singer with the lowest voice)4. sea bass, bass - (flesh of lean-fleshed saltwater fish of the family Serranidae)5. freshwater bass, bass - (any of various North American lean-fleshed

freshwater fishes especially of the genus Micropterus)6. bass, bass voice, basso - (the lowest adult male singing voice)7. bass - (the member with the lowest range of a family of musical instruments)8. bass -(nontechnical name for any of numerous edible marine and freshwater spiny-finned fishes)

Page 57: Semantica approcci computazionali

Rappresentazioni

La maggior parte degli approcci supervisionati di ML richiede una rappresentazione molto semplice relativamente ai dati di addestramento (input training data).– Vettori di insiemi di coppie feature/value

• ovvero files di valori separati da virgole

Compito primario è quello di estrarre dei dati di addestramento da un corpus rispetto ad una particolare istanza di parola taggata – Ovvero bisogna appropriatamente definire una finestra

di testo attorno all’obiettivo (parola da taggare)

Page 58: Semantica approcci computazionali

Rappresentazioni superficiali

Informazioni sulle collocation e sulle co-occurrence– Collocational

• Codifica le features delle parole che appaiono in posizioni specifiche a destra ed a sinistra della parola da taggare

– Spesso limitate alle parole stesse come part of speech

– Co-occurrence• Features che caratterizzano le parole che occorrono in una posizione

qualunque nella finestra senza tener conto della posizione – Tipicamente relative a conteggi di frequenza

Page 59: Semantica approcci computazionali

Esempi

Esempio: testo dal WSJ

– An electric guitar and bass player stand off to one side not really part of the scene, just as a sort of nod to gringo expectations perhaps

– Si consideri una finestra di +/- 2 dall’obiettivo

Page 60: Semantica approcci computazionali

Esempi

Esempio: testo dal WSJ

– An electric guitar and bass player stand off to one side not really part of the scene, just as a sort of nod to gringo expectations perhaps

– Si consideri una finestra di +/- 2 dall’obiettivo

Page 61: Semantica approcci computazionali

Collocational

Informazioni specifiche sulle parole all’interno della finestra

• guitar and bass player stand– [guitar, NN, and, CJC, player, NN, stand, VVB]– Ovvero un vettore consistente in – [position n word, position n part-of-speech…]

Page 62: Semantica approcci computazionali

Co-occurrence

Informazioni sulle parole che co-occorrono alla parola, all’interno della finestra.

• Dapprima si identifica un insieme di termini da porre nel vettore.

• Quindi si calcola quante volte ciascuno di questi termini occorre in una data finestra

Page 63: Semantica approcci computazionali

Esempio di co-occorrenza

Assumiamo di disporre di un vocabolario di 12 parole che comprenda guitar e player ma non and e stand; si avrà

• guitar and bass player stand– [0,0,0,1,0,0,0,0,0,1,0,0]

Page 64: Semantica approcci computazionali

Classificatori

Una volta definito il problema di WSD come un problema di classificazione, allora si può usare un qualunque approccio possibile

– Naïve Bayes (da cui è sempre bene cominciare)

– Decision lists

– Decision trees

– Neural nets

– Support vector machines

– Nearest neighbor methods…

Page 65: Semantica approcci computazionali

Problemi

Assunti come acquisiti gli approcci di ML, quanti classificatori dobbiamo avere per effettuare in modo robusto un task di WSD?

– Uno per ciascuna parola ambigua del linguaggio

Come decidere quale insieme di tags/labels/senses usare per una data parola?

– Dipende dall’applicazione

Page 66: Semantica approcci computazionali

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