Elaborazione del linguaggio naturale Analisi sintattica: parsing CHAOS Maria Teresa PAZIENZA a.a. 2006-07.

Slides:



Advertisements
Presentazioni simili
Dal corpus al treebank Alcune applicazioni ai Persiani di Eschilo Federico Boschetti Dal corpus al treebank Alcune applicazioni ai Persiani di Eschilo.
Advertisements

Introduzione al DTD Mario Arrigoni Neri.
Istituzioni di linguistica
Istituzioni di linguistica
Istituzioni di linguistica
Sistemi computazionali per il linguaggio naturale
Interaction Models Group. Funzionalità Interaction Models Group Consente lestrazione della struttura grammaticale di una frase La struttura grammaticale.
Semantica approcci computazionali
Intelligenza Artificiale Linguaggio naturale
Elaborazione del linguaggio naturale part of speech
Elaborazione del linguaggio naturale automi & morfologia Maria Teresa PAZIENZA a.a
Elaborazione del linguaggio naturale sintassi
Maria Teresa PAZIENZA a.a
Maria Teresa PAZIENZA a.a
Elaborazione del linguaggio naturale Analisi sintattica: parsing CHAOS
FMZ, Giugno 2001 Parsing del linguaggio naturale Fabio Massimo Zanzotto Università di Tor Vergata.
Elaborazione del linguaggio naturale Analisi sintattica: parsing
Elaborazione del linguaggio naturale automi, trasduttori & morfologia
Maria Teresa PAZIENZA a.a
Sistemi basati su conoscenza Comunicazione basata sul linguaggio naturale Prof. M.T. PAZIENZA a.a
Elaborazione del linguaggio naturale morfologia, FSA, FST, POS esercizi Maria Teresa PAZIENZA a.a
Apprendimento Automatico: Elaborazione del Linguaggio Naturale
Modeling, managing and accessing e-content Linguistic Computing Laboratory Prof. Paola Velardi.
Istituzioni di linguistica
Digressione: il linguaggio di query CQP
Chomsky La grammatica/sintassi è una proprietà della mente
Unità Didattica 2 I Linguaggi di Programmazione
INSIEMI NUMERABILI L’analisi matematica introduce il concetto di insieme numerabile come insieme i cui elementi possono essere “contati” ossia che possiede.
LINGUAGGI DI PROGRAMMAZIONE
Che cos’è l’annotazione di un corpus?
Chomsky La grammatica/sintassi è una proprietà della mente Distinta dalla capacità di comunicare E una facoltà autonoma ed innata La comunicazione è solo.
Elaborare il linguaggio naturale Cristina Bosco Corso di Informatica applicata alla comunicazione multimediale Facoltà di Lingue 23/2/2010.
Ripasso Predicato nominale e predicato verbale
Che cosa è un sintagma?.
Descrizione Semantica ad Alto Livello di Ambienti Virtuali in X3D
Linguaggi e Modelli Computazionali LS - Prof E.Denti
PROGETTO REGIONALE ELLE – EMERGENZA LINGUA- II SEMINARIO DISTRETTUALE DI RAVENNA – Ravenna, 22 novembre 2010 Pianificazione attività di Istituto Parte.
Corso di Laurea Specialistica in Ingegneria Informatica Model Drive Applicazione per il pilotaggio di veicoli Esame di Linguaggi e Modelli computazionali.
Elaborazione del linguaggio naturale
SINTASSI.
LE FASI E GLI STADI “ IL” ITALIANO L2
Grammatiche, Linguaggio e Automi R. Basili TAL - a.a
Sistemi basati su conoscenza Comunicazione basata sul linguaggio naturale (grammatica, semantica) Prof. M.T. PAZIENZA a.a
Gli Algoritmi L’algoritmo è un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si.
Sistemi basati su conoscenza Linguaggio naturale: grammatiche Prof. M.T. PAZIENZA a.a
Elaborazione del linguaggio naturale CFG: esercizi Maria Teresa PAZIENZA a.a
Ambiguità Le lingue sono, per loro natura ambigue e sfumate:
Componenti formali del linguaggio
Intelligenza Artificiale 1 Gestione della conoscenza lezione 19 Prof. M.T. PAZIENZA a.a
Elaborazione del linguaggio naturale automi & morfologia Maria Teresa PAZIENZA a.a
Corpora e linguistica computazionale Cristina Bosco Corso di Informatica applicata alla comunicazione multimediale
1 Università degli Studi di Pisa Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea in Informaticaa Corso di Intelligenza Artificiale: Trattamento.
Linguistica computazionale e approcci corpus-based
Linguistica computazionale: task sul linguaggio naturale Cristina Bosco 2015 Informatica applicata alla comunicazione multimediale.
Il progetto Turin University Treebank: corpora e NLP Cristina Bosco Dipartimento di Informatica Università di Torino Corso di informatica applicata alla.
Semantica approcci computazionali Maria Teresa PAZIENZA a.a
L'analisi dei testi per la realizzazione del Web Semantico: quali gli strumenti e le applicazioni Paolo Poto Expert System Spa.
Sistemi basati su conoscenza Linguaggio naturale: semantica Prof. M.T. PAZIENZA a.a
Elaborazione del linguaggio naturale morfologia, FSA, FST, POS esercizi Maria Teresa PAZIENZA a.a
Elaborazione del linguaggio naturale morfologia, FSA, FST, POS esercizi Maria Teresa PAZIENZA.
Parsing Sintattico con Context Free Grammars Michelangelo Falco - Seminari del Corso di Linguistica Computazionale Siena 19.
Elaborazione del linguaggio naturale sintassi
Sistemi basati su conoscenza Comunicazione basata sul linguaggio naturale (grammatica, semantica) Prof. M.T. PAZIENZA a.a
Istituzioni di linguistica
Elaborazione del linguaggio naturale Analisi sintattica: parsing Maria Teresa PAZIENZA a.a
Comprensione frasale Garden Path theory
La Comprensione frasale
Comprensione frasale – introduzione ai modelli syntax first
Parsing ricorsivo discendente Il parsing ricorsivo discendente (recursive descent parsing) è un metodo di tipo top-down che può essere facilmente codificato.
LA GRAMMATICA Grammatica è una parola che, nella sua etimologia, si riferisce alle lettere ovvero le unità minime che ci permettono di comunicare attraverso.
Transcript della presentazione:

Elaborazione del linguaggio naturale Analisi sintattica: parsing CHAOS Maria Teresa PAZIENZA a.a

Sommario Strumenti per la Sintassi Introduzione Context-Free Grammar (CFG) Definizione CFG per la sintassi Limiti e problemi Parsing –Parsing a costituenti Parsing Top-Down Parsing Bottom-Up Parsing misto (left-corner) Chart parsing Programmazione dinamica Algoritmo di Earley –Parsing a dipendenze Cenni Conversione –Parser Evaluation –Chaos

CHAOS: A robust syntactic parser for Italian and for English The system implements a modular and lexicalised approach to the syntactic parsing problem. It is based on the notion of eXtended Dependency Graph (XDG) that is considered as a useful representation mechanism in a shallow parsing approach. The system offers a collection of modules for designing parsing architectures. The overall system is seen as a JAVA library offering a standard representation for modules implemented in different programming languages.

CHAOS: eXtended Dependency Graph example

CHAOS: A robust syntactic parser for Italian and for English The pool of modules consists of: a tokenizer, matching words from character streams a yellow page look-up module that matches named entities existing in catalogues a morphologic analyser that attaches (possibly ambiguous) syntactic categories and morphological interpretations to each word a named entities matcher that recognizes complex named entities according to special purpose grammars a rule-based part-of-speech tagger a POS disambiguation module that resolves potential conflicts among the results of the POS tagger and the morphologic analyser a chunker a verb argument detector a shallow syntactic analyser

Chaos: Parsing sintattico IT Dipend. VerbaliDipend. non verbali Costituente complesso Testa verbale della frase XDG (grafo costituenti-dipendenze) costituenti : chunks Icd : inter-chunks dependecies Lanalisi viene rappresentata in una struttura unica: plausibilità

Chaos: Parsing sintattico IT Approccio ibrido:COSTITUENTI + DIPENDENZE 1.Vengono identificati i chunks (particolare tipo di costituenti) 2.Vengono identificate le dipendenze Vantaggi: -Il raggruppamento in chunks facilita lanalisi a dipendenze -Lanalisi a dipendenze consente di gestire long distance dependecies ed altri fenomeni -Lutilizzo della plausibilità (certezza nellidentificare la dipendenza) permette di gestire lambiguità Tre moduli fondamentali: -Chunker : identifica i chunks -Verb Shallow Analyzer (VSA) : identifica le dipendenze verbali principali -Syntactic Shallow Analyzer (SSA) : identifica altre dipendenze

Chaos: Parsing sintattico IT CHAOS Chunker [/data/KB/it/Chunker] Chunk I chunk sono un particolare tipo di costituenti Nucleo non ricorsivo di sintagmi Non essendoci ricorsività, i chunk possono essere riconosciuti da FSA Informazione pregressa necessaria: Morfologia POS tagging Come funziona il Chaos Chunker: Basato su prototipi di chunk in Prolog Analizza le parole da sinistra a destra, raggruppandole nel chunk più lungo possibile riconosciuto applicando le regole Individua: Governatore: parola che veicola il significato del chunk Testa sintattica (head): parola che lega il chunk al resto della frase

Chaos: Parsing sintattico IT CHAOS Chunker [/data/KB/it/Chunker] Come identificare un chunk ? Nella pratica, il chunk è il più grande costituente possibile che lascia la frase aperta a tutte le ammissibili interpretazioni sintattiche. ESEMPI: [Il bel gatto] mangia il topo Il bel gatto è chunk in quanto la sequenza DET-ADJ-NC è lunica aggregazione possibile, ovvero lADJ è legato sempre come specificazione dellNC in tutte le frasi italiane [Il gatto] [del vicino] magia il topo Il gatto del vicino è un costituente, ma non è un chunk, in quanto la sequenza DET-NC- PREP-NC non è lunica interpretazione sintattica possibile. Ovvero esistono sequenze di questo tipo in cui PREP-NC non sono specificazioni di NC, ma di un altro elemento della frase, ad esempio: Il gatto nel prato mangia, nel prato specifica mangia [Il gatto] [interessato] al topo Il gatto interessato non è un chunk, in quanto la sequenza DET-NC-ADJ non garantisce tutte le interpretazioni sintattiche possibili. Ovvero, il PREP-NC seguente in alcuni casi specifica DET-NC (es.Il gatto interessato al topo), in altri ADJ (Il gatto interessato del vicino)

Chaos: Parsing sintattico IT CHAOS Chunker [/data/KB/it/Chunker] Prototipi Prolog per il riconoscimento di semplici chunk aggettivali: constituent_class([_cst1], 'Agg', _mor, 1, 1):- adjective(_cst1), common_morfology(_cst1, _mor). constituent_class([_cst1, _cst2], 'Agg', _mor, 1, 2):- adverb(_cst1), adjective(_cst2), common_morfology(_cst1, _cst2, _mor). constituent_class([_cst1, _cst2, _cst3], 'Agg', _mor, 1, 1):- adjective(_cst1), coordinative_conjunction(_cst2), \+(comma(_cst2)), adjective(_cst3), common_morfology(_cst1, _cst3, _mor). ADJ COORD ADJ ADV ADJ

Chaos: Parsing sintattico IT CHAOS Chunker [/data/KB/it/Chunker] COMPLEX CONSTITUENT (chunk) SIMPLE CONSTITUENT (sotto-costituenti del chunk) governor head

Chaos: Parsing sintattico IT CHAOS Chunk Types in IT AggChunk aggettivali AvvChunk avverbiale CongCoChunk coordinativo CongSubChunk subordinativo NomChunk nominale PrepChunk preposizionale VerFinChunk verbale finito VerGerChunk verbale gerundivo VerInfChunk verbale infinito VerPartChunk verbale participio VerPredChunk verbale predicativo aggettivale VerNomChunk verbale nominale VerPrepChunk verbale preposizionale ?Chunk sconosciuti

Chaos: Parsing sintattico IT CHAOS VSA [/data/KB/it/SubcatLexicon] Identifica le dipendeze (icd) verbali allinterno della struttura Utilizza un lessico di patterns di sottocategorizzazione verbale (LIFUV.lex) 1844 sottocategorizzazioni Codificate manualmente ed apprese automaticamente da corpora Una dipendenza ricavata dal lessico ha plausibilità=1 pattern(accrescere,[[(oggetto,Post)]]). pattern(accucciare,[[]]). pattern(accumulare,[[(su,Post)],[(oggetto,Post)],[(oggetto,Post)]]). pattern(acquisire,[[(oggetto,Post),(a,Post)],[(oggetto,Post)]]). pattern(acquistare,[[(in,Post)],[(oggetto,Post),(da,Post)]]). pattern(adagiare,[[(su,Post)],[(oggetto,Post),(su,Post)]]). pattern(addolcire,[[(oggetto,Post)],[(oggetto,Post)]]).

Chaos: Parsing sintattico IT CHAOS SSA [/data/KB/it/SSG] Identifica le dipendeze (icd) che non sono state identificate dallVSA: Modificatori verbali: espressioni temporali / spaziali … Modificatori nominali: sintagmi preposizionali / specificatori aggettivali … Come funziona: E un parser specifico basato su una grammatica discontinua Consente di trovare dipendenze tra chunk non adiacenti (gap) anche long distance dependencies Ambiguità: più dipendenze possono essere prodotte per uno stesso chunk Viene utilizzata la pausibilità per modellare lambiguità POS tagging

Chaos: Parsing sintattico IT CHAOS ICDs Types (VSA+SSA) Grammatical Subject V_Sog Grammatical ObjectV_Obj Indirect ObjectV_NP Verb Preposition Modifier V_PP Verb Adverb Modifier V_Adv gruppo Nominale NominaleNP_NP gruppo Nominale Preposizionale NP_PP gruppo Preposizionale Preposizionale PP_PP gruppo Nominale Aggettivo NP_Adj gruppo Nominale Participio NP_VPart gruppo Preposizionale Aggettivo PP_Adj gruppo Preposizionale Participio PP_VPart gruppo Aggettivo Preposizionale Adj_PP gruppo Avverbio Preposizionale Adv_PP Congiunzione coordinativa tra costituentix_Cong_x gruppo Costituente Congiunzionex_Cong gruppo Costituente Subordinatax_Sub gruppo Verbo Congiunzione SubordinativaV_CSub

Chaos: Valutazione Utilizzare : Le misure per i parser a costituenti per valutare i chunk Le misure per i parser a dipendenze per valutare gli ICD Non considerare le plausibilità nella valutazione Esempio: GOLD: CHAOS: Chunks: Prec = 5/5 = 1 Rec = 5/5 = 1 Lab Prec = 4/5= 0.8 Lab Rec = 4/5= 0.8 ICD: Prec = 1/5 = 0.2 Rec = 1/3 =0.3

Progetto : Note ATTENZIONE: è necessario aggiornare i tipi di ICD di Chaos prima di effettuare la seconda parte del progetto!! Scaricare il file icdTypes.xml dal sito web del progetto: Sovrascrivere il vecchio file icdTypes.xml in chaos.jar con quello scaricato Chaos.jar si trova in /lib icdTypes.xml ha nel JAR il seguente percorso: chaos/alternatives/data/it

Progetto : Note Costrutti frasali complessi in Chaos: Congiunzione

Progetto : Note Costrutti frasali complessi in Chaos: Subordinazione