Un Tool-box per Lessicografi Claudio Giuliano ITC-irst [email protected] http://tcc.itc.it/people/giuliano/research.html Sommario Progetto TALES Lessicografia basata su corpora Demo Tool-box per Lessicografi Un caso d’uso: Valutazione del Question Answering Progetto TALES Trattamento Automatico delle lingue Ladina e Sarda 2000-2003 Progetto congiunto tra ITC-irst, Istituto Culturale Ladino e Papiros Editziones Finanziato dalla UE e da enti locali del Trentino Alto Adige Obiettivi del progetto Dati – Uniformare il formato dei dati lessicali disponibili – Ricercare/utilizzare standard – Codifica unica Strumenti – – – – – Accesso a corpora Dizionari elettronici Analisi morfologica Correttori ortografici PoS tagger Uniformare i Dati XML è usato come linguaggio di rappresentazione dei contenuti Banche Dati/ Dizionari Corpora File di Testo HyperCard FileMaker File MS Word File XML Convertire i dizionari in XML Sono state definite DTD specifiche per rappresentare le banche dati e i dizionari briciola sf. Frégola, -es; mizàcola, -es. <voce> <lemma>briciola </lemma> <cat_lessicale> <gram>sf. </gram> <accezione> <trad>frégola, -es</trad> <trad>mizàcola, -es<trad> </accezione> </cat_lessicale> </voce> Convertire i corpora in XML È stata adottata la DTD definita in CES REGULAMËNT DE POLIZAI DE CHEMUN Capitul 1 Normes genereles Art. 1 Cuntenut dl regulamënt 1. La desposizions de chësc regulamënt aldò dla L.P. 10 nuvëmber 1993, nr.21, assegurea n servisc de polizai locala bon y efiziënt, regulan l numer di posc’ tl plann dla stieres, l’echipamënt, la cualificazion funzionela, l prufil prufesciunel, l stat iuridich, la funzions y l’ativiteies dla polizai chemunela. <cesDoc> <cesHeader> … </cesHeader> <text> <body> <div type='doc'> <head> REGULAMËNT DE POLIZAI DE CHEMUN </head> <div type='cap' id='1'> <head> Capitul 1 Normes genereles </head> <div type='div1' id=''> <head> Art. 1 Cuntenut dl regulamënt </head> <p id='1.1.1'> 1. La desposizions de chësc...</p> … </div> </div> </body> </text> </cesDoc> Normalizzare la codifica È stata adottata la codifica UNICODE acadęmich, -cs, -ca, -ches accademico; studente universitario. ● C97 acadęmich, -cs, -ca, -ches accademico; studente universitario. ● M69 academich (neol.) accademico; studente universitario. (cazét) <CARD n='60' name='card id 718778'> <FIELD n='1' name='lemma'>acadèmich</FIELD> <FIELD n='4' name='voce'>acadęmich, -cs, -ca, -ches <agg. e smf.> ...</FIELD> <FIELD n='5' name='fonte'>● C97 acadęmich, -cs,...</FIELD> </CARD> Tool-box Banche dati/Dizionari – Ricerca – Inserimento/modifica (non realizzato) Corpora – Ricerca di Concordanze – Liste di Frequenze – Ricerca di Collocazioni – Allineamento di testi bi/trilingui Tool-box (2) Linguaggi di sviluppo – HTML, JavaScript (client) – Java (server) Rappresentazione dei dati – XML – Database relazionale Architettura del tool-box Server Extension Web Browser Query form Query Interpreter Data Management System Method invocation Dictionary Processor Corpora Processor Data Access XML HTML XSLT Processor Binary Data Database Index Corpora Presentazione dei dati Un processore interpreta le regole di trasformazione da XML a HTML La formattazione può essere delegata al client Possono esistere più stili associati agli stessi dati Presentazione dei dati (2) <?xml version="1.0"?> <xsl:stylesheet version="1.0"> <xsl:template match="/"> <html> <head> <title>ID</title> </head> <body bgcolor="#ffffcc"> <xsl:apply-templates select="dizionario"/> </body> </html> </xsl:template> <xsl:template match="voce"> <h3> <xsl:apply-templates select="lemma_sec/lemma"/> </h3> XSL <strike><xsl:apply-templates select="USO"/> <xsl:apply-templates select="GLOSSA"/></strike> <br/> <xsl:apply-templates select="LISTA_CAT_LEX"/> </xsl:template> ... <voce> <lemma>briciola </lemma> <cat_lessicale> <gram>sf. </gram> <accezione> <trad>frégola, -es</trad> <trad>mizàcola, -es<trad> </accezione> </cat_lessicale> XML </voce> Processore XSLT briciola sf. Frégola, -es; mizàcola, -es. HTML L’interfaccia utente WEB browser che supporti HTML dinamico – Firefox – Safari – Internet Explorer – ... Accesso alle banche dati Accesso ai dizionari Ricerca di concordanze Ricerca di concordanze (2) Frequenze delle parole Sommario Progetto TALES Lessicografia basata su corpora – Token, types, frequenze – Legge di Zipf – Concordanze – Ricerca di Collocazioni Demo Tool-box per Lessicografo Un caso d’uso: Valutazione del Question Answering Tokens, types, frequenze Token – corpus LA Times 62,790,468 Type – corpus LA Times 215,738 Frequenza – numero assoluto di occorrenze – frequenze relativa o normalizzata frequenza media (fm=token/type) – corpus Repubblica fm=85 – corpus LA Times fm=291 Frequenza di frequenze (spettro delle frequenze) Tokens, types, frequenze (2) circa il 50% dei token di un testo sono le parole piu’ comuni Tokens, types, frequenze (2) Tokens, types, frequenze (2) circa il 50% delle parole sono hapax circa il 90% delle parole hanno frequenza ≤ 10 Legge di Zipf Distribuzione di frequenza delle parole nel linguaggio f·r=k Esempio fatto da Zipf tratto dallo studio lessicale dell’Ulysses di Joyce: al rango 10 la frequenza e’ 2653 al rango 100 la frequenza e’ 265 al rango 1000 la frequenza e’ 26 al rango 10000 la frequenza e’ 26 Legge di Zipf (2) Corpus La Repubblica Legge di Zipf (3) Corpus LA Times Concordanze KWIC = Keyword in context Espressioni regolari Utilizzate per effettuare ricerche complesse Una RE descrive un insieme di stringhe caratteri speciali – ^$+?.*()[]{}|\ Esempi – ^hopef = {hopeful, hopefully, hopefulness, hopefuls} – ing$ = {being, having, solving, …} – hope(full|less) = {hopeful, hopeless} – cars? = {car, cars} – be(ing)? = {be, being} – .* = tutto il vocabolario Concordanze (2) query = ^comun[ei]$ Ricerca di Collocazioni Metodi statistici – frequenza – Media e Varianza – Test di ipotesi Corpus – New York Times – Agosto/Novembre 1990 – 115 MB – 14·106 parole Capitolo 5, Chris Manning and Hinrich Schütze, Foundations of Statistical Natural Language Processing, MIT Press. Cambridge, MA: May 1999. Frequenza sentece: a lecturer at the computer science faculty bigrammi: a lecturer lecturer at at the the computer computer science science faculty Frequenza (2) Media e Varianza Frequenza + PoS funziona bene per frasi rigide a. she knocked on his door b. they knocked at the door c. 100 women knocked on Donaldson’s door d. a man knocked on the metal front door Media e Varianza (2) 4 tokens sentece: a lecturer at the computer science faculty bigrammi: a lecturer a at lecturer at lecturer the at the at computer the computer computer science science faculty a the lecturer computer at science the science at faculty the faculty computer faculty Media e Varianza (2) 4 tokens sentece: a lecturer at the computer science faculty bigrammi: a lecturer a at lecturer at lecturer the at the at computer the computer computer science science faculty a the lecturer computer at science the science at faculty the faculty computer faculty Media e Varianza (3) OFFSET=3 a. she knocked on his door b. they knocked at the door c. 100 women knocked on Donaldson’s door d. a man knocked on the metal front door Media e Varianza (2) Media e Varianza (3) Test di ipotesi Alta frequenza e bassa possono essere casuali Quando due due parole occorrono insieme più spesso del caso? Test di ipotesi – lpotesi nulla H0: non c’e’ associazione – Calcoliamo la p che l’evento occorra se H0 fosse vera – rifiutiamo H0 se p e’ troppo bassa – livello di significatività (p<0.05, p<0.01, …) Test di ipotesi (2) t-test Pearson’s chi-squared test Likelihood ratio E’ possibile usare Google? Il Tool-Box cerca al livello di parole Sono on-line i corpora che ci interessano? I copora possono essere bilanciati Le statistiche di google sono affidabili? Sommario Progetto TALES Lessicografia basata su corpora Demo Tool-box per Lessicografo Un caso d’uso: Valutazione del Question Answering Demo http://localhost:8080/tb2/jsp/concordance.html http://localhost:8080/tb2/jsp/freq.html http://localhost:8080/tb2/jsp/collocation.html Sommario Progetto TALES Lessicografia basata su corpora Demo Tool-box per Lessicografo Un caso d’uso: Valutazione del Question Answering QA@CLEF Multilingual Question Answering (QA) – http://clef-qa.itc.it/ QA combina IR e NLP – Domanda in linguaggio naturale – Risposta precisa (non un documento) Nell’ambito di Cross Language Evaluation Forum (CLEF) NIST TREC QA ITC-irst & Celct Tool-Box e CLEF Corpora in 8 lingue Creare il set di domande per testare i sistemi di QA Valutare le risposte date dai sistemi Domande su 300 topics – “Energia alternativa” – “bancarotta Schneider” –… Tool-Box e CLEF (2) Si parte da un topic Si cercano keywords o keyphrases associate Utilizzando le concordanze si cercano risposte a possibili domande In valutazione si usa il tool-box per verificare le risposte Esempio: “bancarotta Schneider” Esempio: “bancarotta Schneider” (2) Esempio: “bancarotta Schneider” (3)