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 conoscenza del contesto conoscenza (almeno) di base del dominio
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
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)
Applicazioni Ci occuperemo di Alcune risorse Tecnologie di supporto WordNet Tecnologie di supporto Word sense disambiguation Applicazioni basate sul significato delle parole Search engines
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
Relazioni tra lessemi Consideriamo le relazioni tra lessemi ed in particolare quelle che assumono un ruolo importante in ambito computazionale
Relazioni tra lessemi Homonymy/omonimia: Esempio 1 : Esempio 2 : 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)
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.
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
Espressioni polisemiche con verbi Which flights serve breakfast? Does America West serve Philadelphia? Does United serve breakfast and San Jose?
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 -
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
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)
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
Relazioni Relazioni paradigmatiche principali (ontologiche) Sinonimia Antonimia Iponimia Meronimia …
Risorse lessicali Terminologie Dizionari on-line Corpora … WordNet, database lessicale per la lingua inglese (esistono anche versioni per altre lingue: Italwordnet, Balkanet, Eurowordnet, …)
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
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.
WordNet (valori non aggiornati)
WordNet La parola ``bass'' ha 8 sensi in WordNet bass - (the lowest part of the musical range) bass, bass part - (the lowest part in polyphonic music) bass, basso - (an adult male singer with the lowest voice) sea bass, bass - (flesh of lean-fleshed saltwater fish of the family Serranidae) freshwater bass, bass - (any of various North American lean-fleshed freshwater fishes especially of the genus Micropterus) bass, bass voice, basso - (the lowest adult male singing voice) bass - (the member with the lowest range of a family of musical instruments) bass -(nontechnical name for any of numerous edible marine and freshwater spiny-finned fishes)
Gerarchie in WordNet
WordNet Relazioni lessicali (tra entries, sensi, set di sinonimi) indipendenti dal dominio
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
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)
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, -zione sono tutti il risultato delle azioni che rappresentano
Ruoli tematici Insieme di categorie che forniscono un linguaggio semantico superficiale per caratterizzare alcuni argomenti verbali
Esempi di ruoli tematici
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.
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
Esempio Sally gave Harry a book. Sally diede un libro ad Harry 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)
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?
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
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
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).
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à)
Rappresentazioni di relazioni ATRANS: Actor: person (Mario) Act: ATRANS Object: 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
Rappresentazioni di relazioni Teoria delle dipendenze concettuali di Schank Primitive Significato Istanze ATRANS 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,
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
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.
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
dalla logica per eat abbiamo che Eating(e) ^Agent(e,x)^ Theme(e,y)^Isa(y, Food) (aggiungendo gli opportuni quantificatori e i lambda)
da WordNet Uso degli iponimi WordNet (tipi) per codificare le selection restrictions
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
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
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
Soluzioni Eat glass Eat gold Eat Afghanistan 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
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? Analizzare sintatticamente le frasi e trovare le heads Etichettare i ruoli tematici Collezionare le statistiche sulle co-occorrenze di particolari headwords con specifici ruoli tematici Usare la struttura degli iperonimi di WordNet per trovare il livello più significativo da usare come restrizione
Motivazione Trovare l’antenato comune più basso (più specifico) che copra un numero significativo di esempi
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
WSD e Selection Restrictions Argomenti ambigui Prepare a dish Wash a dish Predicati ambigui Serve Denver Serve breakfast Entrambi Serves vegetarian dishes
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
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
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)
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).
WordNet Bass La parola ``bass'' ha 8 sensi in WordNet bass - (the lowest part of the musical range) bass, bass part - (the lowest part in polyphonic music) bass, basso - (an adult male singer with the lowest voice) sea bass, bass - (flesh of lean-fleshed saltwater fish of the family Serranidae) freshwater bass, bass - (any of various North American lean-fleshed freshwater fishes especially of the genus Micropterus) bass, bass voice, basso - (the lowest adult male singing voice) bass - (the member with the lowest range of a family of musical instruments) bass -(nontechnical name for any of numerous edible marine and freshwater spiny-finned fishes)
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)
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
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
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
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…]
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
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]
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…
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
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