Semantica approcci computazionali Maria Teresa PAZIENZA a.a. 2005-06 Analisi semantica Il significato delle frasi viene ricavato a partire da : 1. 2. 3. 4. 5. 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 • 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: – 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 1. 2. 3. 4. 5. 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) 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) 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 –sintagmaticaVerifichiamo 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, hanno tutti qualcosa in comune – -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. • 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 caseframe (Es. ATRANS descrive un qualunque verbo che richiede un trasferimento di proprietà) Rappresentazioni di relazioni ATRANS: Actor: person Act: ATRANS Object: physical object direction-TO: person-1 FROM: person-2 (Mario) (anello) (Maria) (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 ATRANS PTRANS MTRANS ATTEND PROPEL INGEST EXPEL Significato trasf. di proprietà trasf. fisico da a trasf. di informaz. mentali ricevere impulsi sensoriali applic. forza a ogg. fisici assunzione di cibo o aria inverso di ingest Istanze dare, prendere muoversi, camminare ordinare, suggerire vedere, sentire spingere, colpire respirare, mangiare 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 – 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? 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 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 1. 2. 3. 4. 5. 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) 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) 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